Module Flambda.Recursive_let_cont_handlers
The representation of the alpha-equivalence class of a group of possibly (mutually-) recursive continuation handlers that are bound both over a body and their own handler code.
val pattern_match :
Flambda2_terms.Flambda.Recursive_let_cont_handlers.t ->
f:
(invariant_params:Flambda2_bound_identifiers.Bound_parameters.t ->
body:Flambda2_terms.Flambda.expr ->
Flambda2_terms.Flambda.Continuation_handlers.t ->
'a) ->
'aDeconstruct a continuation binding to get the bound continuations, together with the expressions and handlers over which they are scoped.
val pattern_match_pair :
Flambda2_terms.Flambda.Recursive_let_cont_handlers.t ->
Flambda2_terms.Flambda.Recursive_let_cont_handlers.t ->
f:
(invariant_params:Flambda2_bound_identifiers.Bound_parameters.t ->
body1:Flambda2_terms.Flambda.expr ->
body2:Flambda2_terms.Flambda.expr ->
Flambda2_terms.Flambda.Continuation_handlers.t ->
Flambda2_terms.Flambda.Continuation_handlers.t ->
'a) ->
'aDeconstruct two continuation bindings using the same bound continuations.