(expr, memo=None)
| 705 | |
| 706 | |
| 707 | def clone(expr, memo=None): |
| 708 | if memo is None: |
| 709 | memo = {} |
| 710 | nodes = dfs(expr) |
| 711 | for node in nodes: |
| 712 | if node not in memo: |
| 713 | new_inputs = [memo[arg] for arg in node.inputs()] |
| 714 | new_node = node.clone_from_inputs(new_inputs) |
| 715 | memo[node] = new_node |
| 716 | return memo[expr] |
| 717 | |
| 718 | |
| 719 | def clone_merge(expr, memo=None, merge_literals=False): |