Melange_compiler_libs.Matching
let call_switcher_variant_constant:
Stdlib.ref((Lambda.scoped_location =>
option(Lambda.lambda) =>
Lambda.lambda =>
list((int, (string, Lambda.lambda))) =>
option(Lambda.switch_names) =>
Lambda.lambda));
let call_switcher_variant_constr:
Stdlib.ref((Lambda.scoped_location =>
option(Lambda.lambda) =>
Lambda.lambda =>
list((int, (string, Lambda.lambda))) =>
option(Lambda.switch_names) =>
Lambda.lambda));
let make_test_sequence_variant_constant:
Stdlib.ref((option(Lambda.lambda) =>
Lambda.lambda =>
list((int, (string, Lambda.lambda))) =>
Lambda.lambda));
let for_function:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
option(Stdlib.ref(int)) =>
Lambda.lambda =>
list((Typedtree.pattern, Lambda.lambda)) =>
Typedtree.partial =>
Lambda.lambda;
let for_trywith:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
Lambda.lambda =>
list((Typedtree.pattern, Lambda.lambda)) =>
Lambda.lambda;
let for_let:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
Lambda.lambda =>
Typedtree.pattern =>
Lambda.lambda =>
Lambda.lambda;
let for_multiple_match:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
list(Lambda.lambda) =>
list((Typedtree.pattern, Lambda.lambda)) =>
Typedtree.partial =>
Lambda.lambda;
let for_tupled_function:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
list(Ident.t) =>
list((list(Typedtree.pattern), Lambda.lambda)) =>
Typedtree.partial =>
Lambda.lambda;
let for_optional_arg_default:
scopes:Debuginfo.Scoped_location.scopes =>
Location.t =>
Typedtree.pattern =>
default_arg:Lambda.lambda =>
param:Ident.t =>
Lambda.lambda =>
Lambda.lambda;
for_optional_arg_default pat body ~default_arg ~param
is:
let $pat =
match $param with
| Some x -> x
| None -> $default_arg
in
$body
let flatten_pattern: int => Typedtree.pattern => list(Typedtree.pattern);
let expand_stringswitch:
Lambda.scoped_location =>
Lambda.lambda =>
list((string, Lambda.lambda)) =>
option(Lambda.lambda) =>
Lambda.lambda;
let inline_lazy_force:
Lambda.lambda =>
Lambda.scoped_location =>
Lambda.lambda;
let names_from_construct_pattern:
Stdlib.ref((Typedtree.pattern_data(Patterns.Head.desc) =>
option(Lambda.switch_names)));