Install per-constant metadata extension tables. - `meta_sharing` → dedicated `self.meta_sharing` (separate from the block sharing, see struct docs). Overwrites any previous per-constant table so the cache can be reused across constants within a projection-bearing block. - `meta_refs` / `meta_univs` — these are never populated by the current compiler (grep: only pushed by serde paths in `src/ix/ix
(&mut self, meta: &ConstantMeta)
| 126 | |
| 127 | if let Some(hit) = self.expr_intern.get(root.get_hash().as_bytes()) { |
| 128 | return hit.clone(); |
| 129 | } |
| 130 | |
| 131 | // Per-walk memo keyed by node pointer: within-constant sharing |
| 132 | // makes the same `Arc` reachable from several parents. |
| 133 | let mut memo: FxHashMap<*const ED, LeanExpr> = FxHashMap::default(); |
| 134 | // (node, children_done) |
| 135 | let mut stack: Vec<(LeanExpr, bool)> = vec![(root.clone(), false)]; |
no test coverage detected