package refl

  1. Overview
  2. Docs
type ('types, 'structure, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) argument =
  1. | None : (unit, unit, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) argument
val map_choice : 'a_cases 'b_cases 'structures. ('a_arity, 'b_arity, 'rec_group, 'kinds_a, 'kinds_b, 'positive, 'negative, 'direct, 'gadt) map -> ('a_cases, 'structures, 'a_arity, 'rec_group, 'kinds_a, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.variant_constructors -> ('b_cases, 'structures, 'b_arity, 'rec_group, 'kinds_b, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.variant_constructors -> 'a_cases Refl__.Desc.choice -> 'b_cases Refl__.Desc.choice
type ('types, 'structure, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) kind =
  1. | Constructor : {
    1. name : string;
    2. argument : ('types, 'structure, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) argument;
    } -> ('types, [ `Constr of 'structure ], '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. ('cases, 'structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.variant_constructors -> ('index, 'cases, 'types, 'tail_cases) Refl__.Desc.selection -> ('index, 'structures, 'structure, 'tail_structures) Refl__.Desc.selection -> ('tail_cases, 'tail_structures, 'arity, 'rec_group, 'kinds, 'positive, 'negative, 'direct, 'gadt) Refl__.Desc.variant_constructors -> 'tail_cases Refl__.Desc.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.variant_constructors -> 'j Refl__.Desc.choice -> ('a, 'b, 'c, 'd, 'e, 'f, 'g, 'h, 'i) destruct