Expand description
The types
module contains the base types for type-level primitives, as well as the “kind”
traits, which are used to emulate the idea of a kind (a “type-of-types”.) The type operators
themselves are kept in the strong
module, in preparation for the eventual support of both
“weak” (SFINAE-style) and “strong” (trait bounds always required) type operators.
Modules§
- balanced
- Signed, unbounded type-level integers represented in balanced ternary form.
Int
constants are provided, fromSN81
(signed, negative 81) toS0
(signed zero) toSP81
(signed, positive 81).SN243
andSP243
are also provided. - boolean
- Type-level booleans.
- ternary
- Unsigned, unbounded type-level integers through a ternary representation.
Nat
constants are provided, fromU0
(unsigned zero) toU81
(unsigned 81) as well as3^5
(U243
.)