pub fn select<T, S>(rs: Vec<Recv<T, S>>) -> (BoxError<T, S>, VecRecv<T, S>)
where
    T: marker::Send,
    S: Session,
{
    let mut rs = rs;
    let res = select_mut(&mut rs);
    (res, rs)
}
/// Selects the first active session. Receives from the selected session.
/// Returns the received value, the continuation of the selected session, and a
/// copy of the input vector without the selected session.
Selects the first active session. Receives from the selected session.
Returns the received value, the continuation of the selected session, and a
copy of the input vector without the selected session.
Selects the first active session . Receives from the selected session . Returns the received value the continuation of the selected session and a copy of the input vector without the selected session .
pub fn select<T, S>(rs: Vec<Recv<T, S>>) -> (BoxError<T, S>, VecRecv<T, S>)
where
    T: marker::Send,
    S: Session,
{
    let mut rs = rs;
    let res = select_mut(&mut rs);
    (res, rs)
}
pub fn select < T , S > ( rs : Vec < Recv < T , S > > ) -> ( BoxError < T , S > , VecRecv < T , S > ) where T : marker :: Send , S : Session , { let mut rs = rs ; let res = select_mut ( & mut rs ) ; ( res , rs ) }
Selects the first active session.
Selects the first active session .
rs
Vec<Recv<T, S>>
rs
Vec<Recv<T, S>>