jon.recoil.org

Module Flambda2_reaper.Rev_expr

type tail_expr =
  1. | Invalid of {
    1. message : string;
    }
  2. | Apply_cont of Flambda2_terms.Apply_cont_expr.t
  3. | Switch of Flambda2_terms.Switch_expr.t
  4. | Apply of Flambda2_terms.Apply_expr.t
and rev_static_const_or_code =
  1. | Code of Flambda2_reaper.Rev_expr.rev_code
  2. | Deleted_code
  3. | Static_const of Flambda2_reaper.Rev_expr.rev_static_const
and rev_static_const =
  1. | Set_of_closures of Flambda2_reaper.Rev_expr.rev_set_of_closures
  2. | Other of Flambda2_terms.Static_const.t
    (*

    The Set_of_closures case in Static_const is not allowed in conjunction with Other.

    *)
and rev_code = {
  1. params_and_body : Flambda2_reaper.Rev_expr.rev_params_and_body;
  2. free_names_of_params_and_body : Flambda2_nominal.Name_occurrences.t;
  3. code_metadata : Flambda2_terms.Code_metadata.t;
}
and cont_handler = {
  1. bound_parameters : Flambda2_bound_identifiers.Bound_parameters.t;
  2. is_exn_handler : bool;
  3. is_cold : bool;
  4. expr : Flambda2_reaper.Rev_expr.rev_expr;
}