package refl

  1. Overview
  2. Docs

Module Tools.ConstructorSource

Sourceval 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
Sourceval 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
Sourcemodule Map (M : Mapper) : sig ... end
Sourcetype ('types, 'structure, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) kind =
  1. | 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
  2. | 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
Sourcetype ('cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) destruct =
  1. | Destruct : {
    1. constructors : ('cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.constructors;
    2. index : ([ `Select of 'index ], 'cases, 'value, _) Refl__.Desc.binary_selection;
    3. index_desc : ([ `Select of 'index ], 'structures, 'constructor, _) Refl__.Desc.binary_selection;
    4. constructor : ('value, 'constructor, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.constructor;
    5. values : 'values;
    6. name : string;
    7. kind : ('values, 'structure, 'subarity, 'rec_group, 'kinds, 'subpositive, 'subnegative, 'subdirect, 'gadt) kind;
    } -> ('cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) destruct
Sourceval 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
Sourceval destruct : ('a, 'b, 'c, 'd, 'e, 'f, 'g, 'h, 'i) Refl__.Desc.constructors -> 'a Refl__.Desc.binary_choice -> ('a, 'b, 'c, 'd, 'e, 'f, 'g, 'h, 'i) destruct
OCaml

Innovation. Community. Security.