[][src]Trait sunrise_libuser::twili::IPipeAsync

pub trait IPipeAsync {
    fn read<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        out_buf: &'a mut [u8]
    ) -> FutureObj<'a, Result<u64, Error>>;
fn write<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        out_buf: &'a [u8]
    ) -> FutureObj<'a, Result<(), Error>>; fn dispatch<'a>(
        &'a mut self,
        work_queue: WorkQueue<'static>,
        cmdid: u32,
        buf: &'a mut [u8]
    ) -> FutureObj<Result<(), Error>> { ... } }

IPC Pipe Object

Required methods

fn read<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    out_buf: &'a mut [u8]
) -> FutureObj<'a, Result<u64, Error>>

Reads data from the pipe.

May block if there isn't enough data to return.

fn write<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    out_buf: &'a [u8]
) -> FutureObj<'a, Result<(), Error>>

Writes data to the other side of the pipe.

May block if the other side isn't reading fast enough.

Loading content...

Provided methods

fn dispatch<'a>(
    &'a mut self,
    work_queue: WorkQueue<'static>,
    cmdid: u32,
    buf: &'a mut [u8]
) -> FutureObj<Result<(), Error>>

Handle an incoming IPC request.

Loading content...

Implementors

Loading content...