Function mz_transform::normalize_lets::let_motion::digest_lets
source ยท fn digest_lets(expr: &mut MirRelationExpr)Expand description
Promotes all available let bindings to the root of the expression.
The method only extracts bindings that can be placed in the same LetRec scope, so in particular
it does not continue recursively through LetRec nodes and stops once it arrives at the first one
along each path from the root. Each of values and body may need further processing to promote
all bindings to their respective roots.
If the resulting expr is not a LetRec node, then it contains no further Let or LetRec nodes.