val of_expr : expr -> expr t
Takes the time required to calculate the free variables of the given term (proportional to the size of the term, except that the calculation for
Let
is O(1)).
val of_named : named -> named t
val create_let_reusing_defining_expr : Variable.t -> named t -> expr -> expr
Takes the time required to calculate the free variables of the given
expr
.
val create_let_reusing_body : Variable.t -> named -> expr t -> expr
Takes the time required to calculate the free variables of the given
named
.
val contents : 'a t -> 'a
val free_variables : _ t -> Variable.Set.t
O(1) time.