Package com.jnape.palatable.lambda.adt.hlist
package com.jnape.palatable.lambda.adt.hlist
-
ClassesClassDescriptionAn immutable heterogeneous list supporting arbitrary depth type-safety via a linearly recursive type signature.HList.HCons<Head,
Tail extends HList> The consing of a head element to a tailHList
.The emptyHList
.Index<Target,TargetList extends HList.HCons<?, ?>> HList indexes representing a value at arbitrary depth in some compatible HList.Index.N<Target,Head, List extends HList.HCons<?, ?>, PreviousIndex extends Index<Target, List>> Index.Z<Target>SingletonHList<_1>A singleton HList.Tuple2<_1,_2> A 2-element tuple product type, implemented as a specialized HList.Tuple3<_1,_2, _3> A 3-element tuple product type, implemented as a specialized HList.Tuple4<_1,_2, _3, _4> A 4-element tuple product type, implemented as a specialized HList.Tuple5<_1,_2, _3, _4, _5> A 5-element tuple product type, implemented as a specialized HList.Tuple6<_1,_2, _3, _4, _5, _6> A 6-element tuple product type, implemented as a specialized HList.Tuple7<_1,_2, _3, _4, _5, _6, _7> A 7-element tuple product type, implemented as a specialized HList.Tuple8<_1,_2, _3, _4, _5, _6, _7, _8> An 8-element tuple product type, implemented as a specialized HList.