Struct extra_safe::traits::Cons
source · pub struct Cons<Item, Next: List> { /* private fields */ }Expand description
The concrete type constructor for our HList trait
Trait Implementations§
source§impl<U, B, N, T> Consume<Absorb<UInt<U, B>>> for Cons<Absorb<N>, T>where
U: Unsigned,
B: Bit,
N: Unsigned + Sub<UInt<U, B>>,
T: List,
Cons<Absorb<Diff<N, UInt<U, B>>>, T>: Normalize,
impl<U, B, N, T> Consume<Absorb<UInt<U, B>>> for Cons<Absorb<N>, T>where U: Unsigned, B: Bit, N: Unsigned + Sub<UInt<U, B>>, T: List, Cons<Absorb<Diff<N, UInt<U, B>>>, T>: Normalize,
source§impl<U, B, N, T> Consume<Squeeze<UInt<U, B>>> for Cons<Squeeze<N>, T>where
U: Unsigned,
B: Bit,
N: Unsigned + Sub<UInt<U, B>>,
T: List,
Cons<Squeeze<Diff<N, UInt<U, B>>>, T>: Normalize,
impl<U, B, N, T> Consume<Squeeze<UInt<U, B>>> for Cons<Squeeze<N>, T>where U: Unsigned, B: Bit, N: Unsigned + Sub<UInt<U, B>>, T: List, Cons<Squeeze<Diff<N, UInt<U, B>>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, M: Unsigned, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Absorb<M>, T>>where
UInt<U, B>: Add<M>,
Cons<Absorb<Sum<UInt<U, B>, M>>, T>: Normalize,
impl<U: Unsigned, B: Bit, M: Unsigned, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Absorb<M>, T>>where UInt<U, B>: Add<M>, Cons<Absorb<Sum<UInt<U, B>, M>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Squeeze<U0>, T>>where
Cons<Absorb<UInt<U, B>>, T>: Normalize,
impl<U: Unsigned, B: Bit, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Squeeze<U0>, T>>where Cons<Absorb<UInt<U, B>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, U2: Unsigned, B2: Bit, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Squeeze<UInt<U2, B2>>, T>>where
Cons<Squeeze<UInt<U2, B2>>, T>: Normalize,
impl<U: Unsigned, B: Bit, U2: Unsigned, B2: Bit, T: List> Normalize for Cons<Absorb<UInt<U, B>>, Cons<Squeeze<UInt<U2, B2>>, T>>where Cons<Squeeze<UInt<U2, B2>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Absorb<U0>, T>>where
Cons<Squeeze<UInt<U, B>>, T>: Normalize,
impl<U: Unsigned, B: Bit, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Absorb<U0>, T>>where Cons<Squeeze<UInt<U, B>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, U2: Unsigned, B2: Bit, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Absorb<UInt<U2, B2>>, T>>where
Cons<Absorb<UInt<U2, B2>>, T>: Normalize,
impl<U: Unsigned, B: Bit, U2: Unsigned, B2: Bit, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Absorb<UInt<U2, B2>>, T>>where Cons<Absorb<UInt<U2, B2>>, T>: Normalize,
source§impl<U: Unsigned, B: Bit, M: Unsigned, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Squeeze<M>, T>>where
UInt<U, B>: Add<M>,
Cons<Squeeze<Sum<UInt<U, B>, M>>, T>: Normalize,
impl<U: Unsigned, B: Bit, M: Unsigned, T: List> Normalize for Cons<Squeeze<UInt<U, B>>, Cons<Squeeze<M>, T>>where UInt<U, B>: Add<M>, Cons<Squeeze<Sum<UInt<U, B>, M>>, T>: Normalize,
source§impl<Item: ToSpongeOp, T: List + ToIOPattern> ToIOPattern for Cons<Item, T>
impl<Item: ToSpongeOp, T: List + ToIOPattern> ToIOPattern for Cons<Item, T>
source§fn to_iopattern() -> IOPattern
fn to_iopattern() -> IOPattern
Converts the type-level pattern to its term-level representation