(env: &'a mut KEnv<M>)
| 194 | /// Local context for fvar-based binder opening. Some validation paths still |
| 195 | /// use the legacy `ctx`/`let_vals` stack, so `depth()` accounts for both |
| 196 | /// during the transition. |
| 197 | pub lctx: super::lctx::LocalContext<M>, |
| 198 | } |
| 199 | |
| 200 | impl<'a, M: KernelMode> TypeChecker<'a, M> { |
| 201 | pub fn new(env: &'a mut KEnv<M>) -> Self { |
| 202 | let prims = env.prims().clone(); |
| 203 | TypeChecker { |
| 204 | env, |
| 205 | lazy_ixon: None, |
| 206 | lazy_anon: None, |
| 207 | prims, |
| 208 | ctx: Vec::new(), |
| 209 | let_vals: Vec::new(), |
| 210 | num_let_bindings: 0, |
| 211 | ctx_id: empty_ctx_addr(), |
| 212 | ctx_id_stack: Vec::new(), |
| 213 | equiv_manager: EquivManager::new(), |
| 214 | infer_only: false, |
| 215 | in_native_reduce: false, |
| 216 | cheap_recursion_depth: 0, |
| 217 | eager_reduce: false, |
| 218 | def_eq_depth: 0, |
| 219 | def_eq_trace_depth: 0, |
| 220 | def_eq_peak: 0, |
| 221 | rec_fuel: max_rec_fuel(), |
| 222 | debug_label: None, |
| 223 | cur_const: None, |
| 224 | delta_targets: FxHashSet::default(), |
| 225 | hot_misses: FxHashMap::default(), |
| 226 | ctx_addr_cache: FxHashMap::default(), |
| 227 | lctx: super::lctx::LocalContext::new(), |
nothing calls this directly
no test coverage detected