| 104 | } |
| 105 | |
| 106 | void clear() |
| 107 | { |
| 108 | blrToSrc.clear(); |
| 109 | varIndexToName.clear(); |
| 110 | argInfoToName.clear(); |
| 111 | declaredCursorIndexToName.clear(); |
| 112 | forCursorOffsetToName.clear(); |
| 113 | |
| 114 | { // scope |
| 115 | LeftPooledMap<Jrd::MetaName, DbgInfo*>::Accessor accessor(&subFuncs); |
| 116 | |
| 117 | for (bool found = accessor.getFirst(); found; found = accessor.getNext()) |
| 118 | delete accessor.current()->second; |
| 119 | |
| 120 | subFuncs.clear(); |
| 121 | } |
| 122 | |
| 123 | { // scope |
| 124 | LeftPooledMap<Jrd::MetaName, DbgInfo*>::Accessor accessor(&subProcs); |
| 125 | |
| 126 | for (bool found = accessor.getFirst(); found; found = accessor.getNext()) |
| 127 | delete accessor.current()->second; |
| 128 | |
| 129 | subProcs.clear(); |
| 130 | } |
| 131 | } |
| 132 | |
| 133 | MapBlrToSrc blrToSrc; // mapping between blr offsets and source text position |
| 134 | RightPooledMap<USHORT, Jrd::MetaName> varIndexToName; // mapping between variable index and name |