98 bool valid()
const noexcept ;
102 bool deleted()
const noexcept ;
117 bool m_valid {
true} ;
149 m_outer(stack.push(
this))
157 m_stack.pop( m_outer ) ;
An object to represent a nested execution context.
bool valid() const noexcept
Returns true if not invalidate()d.
bool deleted() const noexcept
Returns !valid().
~CallFrame() noexcept
Destructor.
void invalidate() noexcept
Invalidates the call-frame.
CallFrame(CallStack &) noexcept
Constructor.
CallFrame * outer() noexcept
Returns the next frame in the stack going from innermost to outermost.
A linked list of CallFrame pointers.
~CallStack() noexcept
Destructor. Calls invalidate() on all the frames in the stack.
CallFrame * push(CallFrame *) noexcept
Pushes a new innermost call frame onto the stack.
void pop(CallFrame *) noexcept
Makes the given frame the innermost.