jon.recoil.org

Module Flambda.Expr

type t = expr

The type of equivalence classes of expressions up to alpha-renaming of bound Variables and Continuations.

type descr = expr_descr
include Expr_std.S_no_free_names with type t := t
val print : Format.formatter -> t -> unit
val apply_renaming : t -> Flambda2_nominal.Renaming.t -> t
val ids_for_export : t -> Flambda2_nominal.Ids_for_export.t
val descr : t -> expr_descr

Extract the description of an expression.

val create_let : let_expr -> t
val create_apply : Apply_expr.t -> t

Create an application expression.

val create_apply_cont : Apply_cont_expr.t -> t

Create a continuation application (in the zero-arity case, "goto").

val create_switch : Switch_expr.t -> t
val create_invalid : Invalid.t -> t