Module Flambda2_terms.Function_declarations
The part of a Set_of_closures that describes the functions therein (as opposed to the captured variables).
include Flambda2_terms.Expr_std.S
with type t := Flambda2_terms.Function_declarations.t
val print :
Stdlib.Format.formatter ->
Flambda2_terms.Function_declarations.t ->
unitinclude Flambda2_nominal.Contains_names.S
with type t := Flambda2_terms.Function_declarations.t
val free_names :
Flambda2_terms.Function_declarations.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 :
Flambda2_terms.Function_declarations.t ->
Flambda2_nominal.Renaming.t ->
Flambda2_terms.Function_declarations.tApply a renaming throughout a term.
include Flambda2_nominal.Contains_ids.S
with type t := Flambda2_terms.Function_declarations.t
val ids_for_export :
Flambda2_terms.Function_declarations.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 : Flambda2_terms.Function_declarations.tval is_empty : Flambda2_terms.Function_declarations.t -> boolval create :
Flambda2_terms.Function_declarations.code_id_in_function_declaration
Flambda2_identifiers.Function_slot.Lmap.t ->
Flambda2_terms.Function_declarations.tCreate a set of function declarations in the given order.
val funs :
Flambda2_terms.Function_declarations.t ->
Flambda2_terms.Function_declarations.code_id_in_function_declaration
Flambda2_identifiers.Function_slot.Map.tThe function(s) defined by the set of function declarations, indexed by function slot.
val funs_in_order :
Flambda2_terms.Function_declarations.t ->
Flambda2_terms.Function_declarations.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 :
Flambda2_terms.Function_declarations.t ->
Flambda2_identifiers.Function_slot.t ->
Flambda2_terms.Function_declarations.code_id_in_function_declarationfind f t raises Not_found if f is not in t.
val binds_function_slot :
Flambda2_terms.Function_declarations.t ->
Flambda2_identifiers.Function_slot.t ->
boolval compare :
Flambda2_terms.Function_declarations.t ->
Flambda2_terms.Function_declarations.t ->
int