Module Pickles_types.Poly_types

The following module types define the different kinds of terms at the type level by their arity. These types are manipulated and passed around as parameters of the various functors defined in Hlist.

Each term is represented by a module containing a single n-ary type.

module type T0 = sig ... end

The kind of values (no type parameters).

module type T1 = sig ... end

Unary type functions (1 type parameter).

module type T2 = sig ... end

Binary type functions (2 type parameters).

module type T3 = sig ... end

Ternary type functions (3 type parameters).

module type T4 = sig ... end

Quaternary type functions (4 type parameters).

module type T5 = sig ... end

Quinary type functions (5 type parameters).

module type T6 = sig ... end

Order-6 type functions (6 type parameters).