Package fj.data.hlist
Type-safe, extensible, heterogeneous lists
- Version:
- %build.number%
-
Class Summary Class Description HList<A extends HList<A>> Type-safe heterogeneous lists.HList.Apply<F$,A,R> Type-level function application operators.HList.HAppend<A,B,C> The concatenation of two heterogeneous lists.HList.HCons<E,L extends HList<L>> The nonempty listHList.HFoldr<G,V,L,R> The catamorphism over heterogeneous lists.HList.HNil The empty listHPre A basic prelude of values lifted into the type system.HPre.HAdd<A extends HPre.HNat<A>,B extends HPre.HNat<B>,C extends HPre.HNat<C>> Type-level integer arithmeticHPre.HAnd<A extends HPre.HBool,B extends HPre.HBool,C extends HPre.HBool> Type-level boolean conjunction.HPre.HBool A type-level BooleanHPre.HCond<T,X,Y,Z> A type-level conditional.HPre.HEq<X,Y,B extends HPre.HBool> Type-level equality.HPre.HFalse Boolean falseHPre.HNat<A extends HPre.HNat<A>> Type-level natural numbers.HPre.HOr<A extends HPre.HBool,B extends HPre.HBool,C extends HPre.HBool> Type-level boolean disjunction.HPre.HSucc<N extends HPre.HNat<N>> A natural number N + 1HPre.HTrue Boolean trueHPre.HZero Type-level zero