Frunk provides developers with a number of functional programming tools like HList, Coproduct, Generic, LabelledGeneric, Validated, Monoid, Semigroup and friends.
// Makes sure that the hlist macros in frunk_core are reexported by frunk
usefrunk::{hlist, hlist_pat, HList};#[test]fnuse_frunk_macros(){let h1 =hlist![1i32,2u32];let h2 =hlist!["cool",...h1];lethlist_pat![a,...bs]: HList![&'staticstr,i32,...HList![u32]]= h2;assert_eq!(a,"cool");assert_eq!(bs, h1);}