[][src]Function ferrite_session::cut

pub fn cut<X, C, C1, C2, A, B, Func, Fut>(
    cont1: PartialSession<C1, A>,
    cont2: Func
) -> PartialSession<C, B> where
    A: Protocol,
    B: Protocol,
    C: Context,
    C1: Context,
    C2: Context,
    X: SplitContext<C, Left = C1, Right = C2>,
    C2: AppendContext<(A, ())>,
    Func: FnOnce(C2::Length) -> Fut,
    Fut: Future<Output = PartialSession<C2::Appended, B>> + Send + 'static,