Legend:
Library
Module
Module type
Parameter
Class
Class type
Library
Module
Module type
Parameter
Class
Class type
type pattern = Parsetree.pattern
and expression = Parsetree.expression
and mismatch__structure = [
| `Name of
[ `Record of
[ `Mono of [ `Builtin of [ `String ] ] ]
* ([ `Mono of
[ `SubGADT of [ `Rec of [ `Zero of [ `Zero of [ `Start ] ] ] ] ] ]
* ([ `Mono of
[ `Apply of
[ `SubGADT of
[ `RecGroup of
Refl.Builtins.option__structure
* Refl.Builtins.option__rec_group ] ]
* ([ `SubGADT of
[ `Rec of [ `Zero of [ `One of [ `Start ] ] ] ] ]
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.option__variable_positive0
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.option__variable_negative0
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.option__variable_direct0
* unit)
* ((unit * unit * unit) * unit) ] ]
* unit)) ]
]
and failure__structure = [
| `Name of
[ `Record of
[ `Mono of
[ `SubGADT of [ `Rec of [ `Zero of [ `Zero of [ `Start ] ] ] ] ] ]
* ([ `Mono of
[ `Apply of
[ `SubGADT of
[ `RecGroup of
Refl.Builtins.list__structure
* Refl.Builtins.list__rec_group ] ]
* ([ `SubGADT of
[ `Rec of [ `One of [ `Zero of [ `Start ] ] ] ] ]
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.list__variable_positive0
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.list__variable_negative0
* unit)
* (([ `Present ], [ `Absent ])
Refl.Builtins.list__variable_direct0
* unit)
* ((unit * unit * unit) * unit) ] ]
* unit) ]
]
and pattern__rec_group =
((pattern__arity * pattern__structure) ref
* (mismatch__arity * mismatch__structure) ref)
* ((expression__arity * expression__structure) ref
* (failure__arity * failure__structure) ref)
and pattern__gadt = Parsetree.pattern * unit
and expression__rec_group = pattern__rec_group
and expression__gadt = Parsetree.expression * unit
and mismatch__rec_group = pattern__rec_group
and failure__rec_group = pattern__rec_group
and failure__kinds = [
| Refl.Builtins.option__kinds
| Refl.Builtins.list__kinds
| `String
| `Record
| `Opaque
]
type Refl.sub_gadt_ext +=
| Mismatch__sub_2 : (mismatch__gadt, expression Refl.Builtins.option__gadt)
Refl.sub_gadt_ext
type Refl.sub_gadt_ext +=
| Failure__sub_2 : (failure__gadt, mismatch Refl.Builtins.list__gadt)
Refl.sub_gadt_ext
val pattern_refl :
(pattern,
pattern__structure,
unit,
pattern__rec_group,
[> `Attributes | `Constr | `Opaque | `Record | `String | `Variable ],
unit,
unit,
unit,
pattern__gadt)
Refl.desc
val expression_refl :
(expression,
expression__structure,
unit,
expression__rec_group,
[> `Attributes | `Constr | `Opaque | `Record | `String | `Variable ],
unit,
unit,
unit,
expression__gadt)
Refl.desc
val mismatch_refl :
(mismatch,
mismatch__structure,
unit,
mismatch__rec_group,
[> `Attributes | `Constr | `Opaque | `Record | `String | `Variable ],
unit,
unit,
unit,
mismatch__gadt)
Refl.desc
val failure_refl :
(failure,
failure__structure,
unit,
failure__rec_group,
[> `Attributes | `Constr | `Opaque | `Record | `String | `Variable ],
unit,
unit,
unit,
failure__gadt)
Refl.desc
type ('present, 'unknown) pattern_result__variable_positive0 =
('present, 'unknown) Refl.Builtins.result__variable_positive0
and ('present, 'unknown) pattern_result__variable_negative0 =
('present, 'unknown) Refl.Builtins.result__variable_negative0
and ('present, 'unknown) pattern_result__variable_direct0 =
('present, 'unknown) Refl.Builtins.result__variable_direct0
and pattern_result__structure = [
| `Name of
[ `Apply of
[ `SubGADT of
[ `RecGroup of
Refl.Builtins.result__structure * Refl.Builtins.result__rec_group ] ]
* ([ `Variable of [ `Zero ] ]
* ([ `Apply of
[ `SubGADT of
[ `RecGroup of failure__structure * failure__rec_group ] ]
* unit
* unit
* unit
* unit
* unit ]
* unit))
* (([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_positive0
* (([ `Present ], [ `Absent ])
Refl.Builtins.result__variable_positive1
* unit))
* (([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_negative0
* (([ `Present ], [ `Absent ])
Refl.Builtins.result__variable_negative1
* unit))
* (([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_direct0
* (([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_direct1
* unit))
* ((([ `Present ] * unit) * ([ `Absent ] * unit) * ([ `Present ] * unit))
* ((([ `Absent ] * unit) * ([ `Absent ] * unit) * ([ `Absent ] * unit))
* unit)) ]
]
and pattern_result__rec_group =
(pattern_result__arity * pattern_result__structure) ref
type Refl.sub_gadt_ext +=
| Pattern_result__sub_1 : ('a0 pattern_result__gadt,
('a, failure) Refl.Builtins.result__gadt)
Refl.sub_gadt_ext
type Refl.sub_gadt_ext +=
| Pattern_result__sub_0 : ('a0 pattern_result__gadt, failure__gadt)
Refl.sub_gadt_ext
val pattern_result_refl :
'a0. ('a0 pattern_result,
pattern_result__structure,
'a0 * unit,
pattern_result__rec_group,
[> `Attributes | `Constr | `Opaque | `Record | `String | `Variable ],
([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_positive0
* unit,
([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_negative0
* unit,
([ `Present ], [ `Absent ]) Refl.Builtins.result__variable_direct0
* unit,
'a0 pattern_result__gadt)
Refl.desc
type ('a, 'b) matcher = ?quoted:Parsetree.expression -> 'a -> 'b pattern_result
val check :
('a -> Parsetree.expression) ->
'a ->
('a, 'b) matcher ->
'b pattern_result
val format_failure : Format.formatter -> failure -> unit
val elim_type_constraints : Parsetree.expression -> Parsetree.expression
val pp_failure : Format.formatter -> failure -> unit
val pp_pattern_result :
(Format.formatter -> 'a -> unit) ->
Format.formatter ->
'a pattern_result ->
unit