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.