Trait ctrlgen::AsyncReturnval
source · pub trait AsyncReturnval {
type Sender<T>;
type Receiver<T>;
type SendError;
type RecvResult<T>;
type SendFuture<T>: Future<Output = Result<(), Self::SendError>>;
type RecvFuture<T>: Future<Output = Self::RecvResult<T>>;
// Required methods
fn create<T>() -> (Self::Sender<T>, Self::Receiver<T>);
fn async_send<T>(tx: Self::Sender<T>, msg: T) -> Self::SendFuture<T>;
fn async_recv<T>(rx: Self::Receiver<T>) -> Self::RecvFuture<T>;
}