[−][src]Module enso_generics::hlist
HList provides many operations to create and manipulate heterogenous lists (HLists) whose length and element types are known at compile-time. HLists can be used to implement records, variants, type-indexed products (TIP), type-indexed co-products (TIC), or keyword arguments.
Structs
Cons | Non-empty |
Nil | Empty |
Traits
GetHead | Head element accessor. |
GetHeadClone | Head element clone. |
GetHeadMut | Mutable head element accessor. |
GetInitClone | Init element clone. |
GetLast | Last element accessor. |
GetLastClone | Last element clone. |
GetLastMut | Mutable last element accessor. |
GetTail | Tail element accessor. |
GetTailClone | Tail element clone. |
GetTailMut | Mutable tail element accessor. |
HasLength | Compile-time known length value. |
KnownHead | Head element accessor. |
KnownInit | Init elements accessor (all but last). |
KnownLast | Last element accessor. |
KnownTail | Tail element accessor. |
PopBack | Remove the last element of the list and return it and the new list. |
PushBack | Add a new element to the back of the list. |
Functions
len | Compile-time known length value. |
Type Definitions
Head | Head element type accessor. |
Init | Init elements type accessor. |
Last | Last element type accessor. |
Tail | Tail element type accessor. |
Trait aliases
HList | Type of every |