use pipecircuit::{Pipe, PipeDriver, PipeOutputHandler, PipeSender, ScopedSender};
struct Bytes;
impl Pipe for Bytes {
type In<'message> = &'message [u8];
type Out<'message> = &'message [u8];
}
struct Escape;
impl<Driver: PipeDriver<Bytes>> PipeOutputHandler<Bytes, Driver> for Escape {
type Failure = &'static [u8];
fn output<'message, Sender>(
&mut self,
output: &'message [u8],
_outgoing: &mut Sender,
) -> Result<(), Self::Failure>
where
Sender: ScopedSender<'message, Bytes>
+ for<'input> PipeSender<Bytes, Outcome<'input> = Driver::Submission<'input>>,
{
Err(output)
}
}
fn main() {}