Trait linera_witty::HList
source · pub trait HList: Sized {
const LEN: usize;
// Required method
fn static_len() -> usize;
// Provided methods
fn len(&self) -> usize { ... }
fn is_empty(&self) -> bool { ... }
fn prepend<H>(self, h: H) -> HCons<H, Self> { ... }
}
Expand description
Typeclass for HList-y behaviour
An HList is a heterogeneous list, one that is statically typed at compile time. In simple terms, it is just an arbitrarily-nested Tuple2.
Required Associated Constants§
Required Methods§
sourcefn static_len() -> usize
👎Deprecated since 0.1.31: Please use LEN instead
fn static_len() -> usize
Returns the length of a given HList type without making use of any references, or in fact, any values at all.
§Examples
use frunk::prelude::*;
use frunk_core::HList;
assert_eq!(<HList![i32, bool, f32]>::static_len(), 3);
Provided Methods§
sourcefn len(&self) -> usize
fn len(&self) -> usize
Returns the length of a given HList
§Examples
use frunk_core::hlist;
let h = hlist![1, "hi"];
assert_eq!(h.len(), 2);
Object Safety§
This trait is not object safe.