Push a declaration. The caller is responsible for ensuring `id` is fresh (typically from [`NameGenerator::fresh`]).
(&mut self, id: FVarId, decl: LocalDecl<M>)
| 107 | /// Push a declaration. The caller is responsible for ensuring `id` is |
| 108 | /// fresh (typically from [`NameGenerator::fresh`]). |
| 109 | pub fn push(&mut self, id: FVarId, decl: LocalDecl<M>) { |
| 110 | let pos = self.decls.len(); |
| 111 | self.decls.push((id, decl)); |
| 112 | self.index.insert(id, pos); |
| 113 | } |
| 114 | |
| 115 | /// Truncate the context to the given length, dropping any declarations |
| 116 | /// pushed since. The dropped fvars become unresolvable via [`Self::find`]. |