Macro frust::hlist [] [src]

macro_rules! hlist {
    ($single: expr) => { ... };
    ($last: expr, $( $repeated: expr ), +) => { ... };
    ([$(($acc: expr),)*] =>$next: expr, $( $repeated:expr, )*) => { ... };
    ([($h:expr), $( ($repeated: expr), )*] => ) => { ... };
}

Create an HList


let h = hlist![13.5f32, "hello", Some(41)];
let (h1, tail1) = h.pop();
let (h2, tail2) = tail1.pop();
let (h3, tail3) = tail2.pop();
assert_eq!(h1, 13.5f32);
assert_eq!(h2, "hello");
assert_eq!(h3, Some(41));
assert_eq!(tail3, HNil);