pub fn channel<T>() -> (Sender<T>, Receiver<T>) {
    let inner = Rc::new(RefCell::new(Inner {
        value: None,
        tx_task: LocalWaker::new(),
        rx_task: LocalWaker::new(),
    }));
    let tx = Sender {
        inner: Rc::downgrade(&inner),
    };
    let rx = Receiver {
        state: State::Open(inner),
    };
    (tx, rx)
}
/// Creates a new futures-aware, one-shot channel.
///
/// This function is the same as `sync::oneshot::channel` except that the
/// returned values cannot be sent across threads.
Creates a new futures-aware, one-shot channel.
This function is the same as `sync::oneshot::channel` except that the
returned values cannot be sent across threads.
Creates a new futures - aware one - shot channel . This function is the same as ` sync :: oneshot :: channel ` except that the returned values cannot be sent across threads .
pub fn channel<T>() -> (Sender<T>, Receiver<T>) {
    let inner = Rc::new(RefCell::new(Inner {
        value: None,
        tx_task: LocalWaker::new(),
        rx_task: LocalWaker::new(),
    }));
    let tx = Sender {
        inner: Rc::downgrade(&inner),
    };
    let rx = Receiver {
        state: State::Open(inner),
    };
    (tx, rx)
}
pub fn channel < T > ( ) -> ( Sender < T > , Receiver < T > ) { let inner = Rc :: new ( RefCell :: new ( Inner { value : None , tx_task : LocalWaker :: new ( ) , rx_task : LocalWaker :: new ( ) , } ) ) ; let tx = Sender { inner : Rc :: downgrade ( & inner ) , } ; let rx = Receiver { state : State :: Open ( inner ) , } ; ( tx , rx ) }
Creates a new futures-aware, one-shot channel.
Creates a new futures - aware one - shot channel .