pub trait JoinValidExt: Interface {
    type E: Interface;

    // Required method
    fn join_valid(self) -> Self::E;
}
Expand description

Extension trait for join_valid

Required Associated Types§

source

type E: Interface

Egress interface.

Required Methods§

source

fn join_valid(self) -> Self::E

Join valid.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<P1: Copy, P2: Copy> JoinValidExt for (Valid<P1>, Valid<P2>)

source§

fn join_valid(self) -> Valid<(P1, P2)>

A variation of join for valid interfaces, that has the correct resolver type.

  • Payloads: Zipped to one interface. Note that a payload may get dropped if the other interface’s payload is None.
  • Resolver: The resolver carries no information.
InterfaceIngressEgress
Fwd(HOption<P1>, HOption<P2>)HOption<(P1, P2)>
Bwd((), ())()
§

type E = I<ValidH<(P1, P2), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6, P7)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy, P8: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>, Valid<P8>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6, P7, P8)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7, P8), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy, P8: Copy, P9: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>, Valid<P8>, Valid<P9>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6, P7, P8, P9)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7, P8, P9), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy, P8: Copy, P9: Copy, P10: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>, Valid<P8>, Valid<P9>, Valid<P10>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy, P8: Copy, P9: Copy, P10: Copy, P11: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>, Valid<P8>, Valid<P9>, Valid<P10>, Valid<P11>)

source§

fn join_valid(self) -> Valid<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11), ()>, { Dep::Helpful }>

source§

impl<P1: Copy, P2: Copy, P3: Copy, P4: Copy, P5: Copy, P6: Copy, P7: Copy, P8: Copy, P9: Copy, P10: Copy, P11: Copy, P12: Copy> JoinValidExt for (Valid<P1>, Valid<P2>, Valid<P3>, Valid<P4>, Valid<P5>, Valid<P6>, Valid<P7>, Valid<P8>, Valid<P9>, Valid<P10>, Valid<P11>, Valid<P12>)

source§

fn join_valid( self ) -> Valid<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12)>

A variation of join_valid for 3-12 valid interfaces. See the 2-tuple version for more information.

§

type E = I<ValidH<(P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11, P12), ()>, { Dep::Helpful }>

source§

impl<P: Copy, const N: usize> JoinValidExt for [Valid<P>; N]

source§

fn join_valid(self) -> Valid<Array<P, N>>

A variation of join for valid interfaces, that has the correct resolver type.

  • Payloads: Zipped to one interface. Note that a payload may get dropped if the other interface’s payload is None.
  • Resolver: The resolver carries no information.
InterfaceIngressEgress
FwdArray<HOption<P>, N>HOption<Array<P, N>>
BwdArray<(), N>()
§

type E = I<ValidH<Array<P, N>, ()>, { Dep::Helpful }>

Implementors§