LiveData.Tracked.FlatAst.Pass.RewriteAst.ExpandDependencies (live_data v0.1.0-alpha0)

Second subpass of rewriting.

Given a set of initial nodes, will collect a set of all cumulative dependencies these involves.

This has the effect of doing dead code elimination, and duplicating any expressions that are used in both the return value position and regular value positions.

Link to this section Summary

Link to this section Functions

Link to this function

child_exprs_without_traversed(expr)

Link to this function

expand_dependencies(to_visit, data, ast)

Link to this function

expand_dependencies_inner(list, original, visited, data, ast)

Link to this function

process_expr_id(expr_id, parent, data)