Module Flambda2_terms.Function_declarations
The part of a Set_of_closures that describes the functions therein (as opposed to the captured variables).
include Expr_std.S with type t := t
val print : Format.formatter -> t -> unitinclude Flambda2_nominal.Contains_names.S with type t := t
val free_names : t -> Flambda2_nominal.Name_occurrences.tCompute the free names of a term. Such computation covers all kinds of bindable names (variables, continuations, ...)
val apply_renaming : t -> Flambda2_nominal.Renaming.t -> tApply a renaming throughout a term.
include Flambda2_nominal.Contains_ids.S with type t := t
val ids_for_export : t -> Flambda2_nominal.Ids_for_export.tGather all table identifiers to export them.
type code_id_in_function_declaration = | Deleted of {function_slot_size : int;dbg : Debuginfo.t;
}| Code_id of {code_id : Flambda2_identifiers.Code_id.t;only_full_applications : bool;
}
val empty : tval is_empty : t -> boolCreate a set of function declarations in the given order.
The function(s) defined by the set of function declarations, indexed by function slot.
val funs_in_order :
t ->
code_id_in_function_declaration Flambda2_identifiers.Function_slot.Lmap.tThe function(s) defined by the set of function declarations, in the order originally given.
val find :
t ->
Flambda2_identifiers.Function_slot.t ->
code_id_in_function_declarationfind f t raises Not_found if f is not in t.
val binds_function_slot : t -> Flambda2_identifiers.Function_slot.t -> boolval filter :
t ->
f:
(Flambda2_identifiers.Function_slot.t ->
code_id_in_function_declaration ->
bool) ->
t