refl

PPX deriver for reflection
IN THIS PACKAGE
Module Refl . Tools . Constructor
val map_eqs : 'a_eqs 'structure_eqs 'b_eqs 'kinds_a 'kinds_b. ( 'a_eqs, 'structure_eqs, 'kinds_a, 'gadt ) Refl__Desc.constructor_eqs -> ( 'b_eqs, 'structure_eqs, 'kinds_b, 'gadt ) Refl__Desc.constructor_eqs -> 'a_eqs -> 'b_eqs
val map_choice : 'a_arity 'b_arity 'rec_group 'a_cases 'b_cases 'structures 'positive 'negative 'direct 'gadt. ( 'a_arity, 'b_arity, 'rec_group, [> `Exists of unit | `Poly of unit ] as 'a, 'kinds_b, 'positive, 'negative, 'direct, 'gadt ) map -> ( 'a_cases, 'structures, 'a_arity, 'rec_group, 'a, 'positive, 'negative, 'direct, 'gadt ) Refl__Desc.constructors -> ( 'b_cases, 'structures, 'b_arity, 'rec_group, 'kinds_b, 'positive, 'negative, 'direct, 'gadt ) Refl__Desc.constructors -> 'a_cases Refl__Desc.binary_choice -> 'b_cases Refl__Desc.binary_choice
module Map (M : Mapper) : sig ... end
type ('types, 'structure, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) kind =
| Tuple : ( 'types, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) Tuple.t -> ( 'types, [ `Tuple of 'structures ], 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) kind
| Record : ( 'types, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) Record.t -> ( 'types, [ `Record of 'structures ], 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) kind
type ('cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) destruct
val destruct_choice : 'index 'types 'structure 'tail_cases 'tail_structures 'arity 'rec_group 'kinds 'positive 'negative 'direct 'gadt. ( 'cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) Refl__Desc.constructors -> ( 'index, 'cases, 'types, 'tail_cases ) Refl__Desc.binary_selection -> ( 'index, 'structures, 'structure, 'tail_structures ) Refl__Desc.binary_selection -> ( 'tail_cases, 'tail_structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) Refl__Desc.constructors -> 'tail_cases Refl__Desc.binary_choice -> ( 'cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt ) destruct
val destruct : ( 'a, 'b, 'c, 'd, 'e, 'f, 'g, 'h, 'i ) Refl__Desc.constructors -> 'j Refl__Desc.binary_choice -> ( 'a, 'b, 'c, 'd, 'e, 'f, 'g, 'h, 'i ) destruct