Pop returns the parent frame, releasing the current frame back to the pool.
()
| 145 | |
| 146 | // Pop returns the parent frame, releasing the current frame back to the pool. |
| 147 | func (f *ExecutionFrame) Pop() *ExecutionFrame { |
| 148 | if f.parent == nil { |
| 149 | return f |
| 150 | } |
| 151 | parent := f.parent |
| 152 | activationStack.release(f.Activation) |
| 153 | f.Activation = nil |
| 154 | f.parent = nil |
| 155 | f.ctx = nil |
| 156 | frameStack.Put(f) |
| 157 | return parent |
| 158 | } |
| 159 | |
| 160 | // ResolveName implements the Activation interface by proxying to the internal activation. |
| 161 | func (f *ExecutionFrame) ResolveName(name string) (any, bool) { |