Container for execution frame stack. More...
#include <frames.hpp>
Public Member Functions | |
| void | dump () const override |
Public Member Functions inherited from by::tnarr< frame > | |
| tnarr (const Es &... elems) | |
| tnarr (const me &rhs) | |
| me & | operator= (const me &rhs)=default |
| frame & | operator[] (nidx n) override |
| ncnt | len () const override |
| nbool | in (nidx n) const override |
| frame * | get (nidx n) override |
| nbool | set (const iter &at, const frame &new1) override |
| nbool | set (nidx n, const frame &new1) override |
| nbool | add (const iter &e, const frame &new1) override |
| nbool | add (nidx n, const frame &new1) override |
| void | add (const iter &here, const iter &from, const iter &to) override |
| nbool | del (const iter &from, const iter &end) override |
| nbool | del (const iter &it) override |
| nbool | del (nidx n) override |
| void | rel () override |
| clonable * | clone () const override |
| void | onCloneDeep (const clonable &from) override |
| std::string | asStr () const |
Public Member Functions inherited from by::tucontainable< T, R, RSquare > | |
| nbool | in (const T &it) const |
| nbool | in (const T *it) const BY_SIDE_FUNC(in) |
| nbool | in (std::function< nbool(const T &)> l) const |
| template<typename T1 > | |
| nbool | in (std::function< nbool(const T1 &)> l) const |
| nbool | isEmpty () const |
| template<typename T1 > | |
| std::conditional_t< _IS_POINTER, T1 *, tmay< T1 > > | get (std::function< nbool(const T1 &)> l) |
| std::conditional_t< _IS_POINTER, R, tmay< R > > | get (std::function< nbool(const T &)> l) |
| template<typename T1 > | |
| void | each (std::function< nbool(T1 &)> l) |
| void | each (std::function< nbool(T &)> l) |
| virtual iter | end () const |
| virtual iter | rend () const |
| virtual iter | last () const |
| iter | iterate (ncnt step) const |
| iter | iterate (const T &it) const |
| iter | riterate (ncnt step) const |
| iter | riterate (const T &it) const |
| virtual nbool | set (const iter &at, const T &new1)=0 |
| virtual nbool | set (const iter &at, const T *new1) BY_SIDE_FUNC(new1 |
| virtual nbool | set (at, *new1) |
| virtual nbool | add (const iter &at, const T &new1)=0 |
| nbool | add (const iter &at, const T *new1) BY_SIDE_FUNC(new1 |
| nbool | add (at, *new1) |
| nbool | add (std::initializer_list< const T * > elems) |
| nbool | add (const T &new1) |
| nbool | add (const T *it) BY_SIDE_FUNC(add) |
| virtual void | add (const iter &here, const iter &from, const iter &to)=0 |
| void | add (const iter &from, const iter &to) |
| void | add (const iter &here, me &rhs) |
| void | add (const me &rhs) |
| void | add (const me *rhs) BY_SIDE_FUNC(rhs |
| void add | void ()) |
| template<typename E > | |
| ncnt | add (const typename tucontainable< E >::iter &from, const typename tucontainable< E >::iter &to) |
| template<typename E > | |
| ncnt | add (const tucontainable< E > &rhs) |
| template<typename K , typename V > | |
| ncnt | add (const tbicontainable< K, V > &rhs) |
| nbool | del () |
| nbool | del (const T &it) |
| nbool | del (const T *it) BY_SIDE_FUNC(del) |
| virtual nbool | del (const iter &it)=0 |
| virtual nbool | del (const iter &from, const iter &end)=0 |
| nbool | del (const me &rhs) |
| nbool | del (const me *rhs) BY_SIDE_FUNC(rhs |
Public Member Functions inherited from by::tarrayable< T, R, RSquare > | |
| const RSquare | operator[] (nidx n) const BY_CONST_FUNC(operator[](n)) virtual nbool in(nidx n) const =0 |
| const R | get (nidx n) const BY_CONST_FUNC(get(n)) virtual nbool set(nidx n |
| nbool | set (nidx n, const T *new1) BY_SIDE_FUNC(new1 |
| nbool | set (n, *new1) |
| virtual nbool | add (nidx n, const T &new1)=0 |
| nbool | add (nidx n, const T *new1) BY_SIDE_FUNC(new1 |
| nbool | add (n, *new1) |
Additional Inherited Members | |
Public Types inherited from by::tnarr< frame > | |
| typedef tstr< frame, strTactic > | wrap |
| typedef super::iter | iter |
| typedef super::iteration | iteration |
Public Attributes inherited from by::tucontainable< T, R, RSquare > | |
| template<typename T1 > | |
| std::conditional_t< _IS_POINTER, const T1 *, tmay< T1 > > get(std::function< nbool(const T1 &)> l) const std tnarr< T, strTactic | getAll )(std::function< nbool(const T &)> l) const |
| template<typename T1 > | |
| void each(std::function< nbool(const T1 &)> l) const BY_CONST_FUNC(each(l)) void each(std ite | rbegin )() const |
| virtual nbool | false |
| nbool | false |
| void add | rhs |
| nbool del | rhs |
| nbool del | false |
Public Attributes inherited from by::tarrayable< T, R, RSquare > | |
| const R const T & | new1 = 0 |
| nbool | false |
Protected Member Functions inherited from by::tnarr< frame > | |
| iteration * | _onMakeIteration (ncnt step, nbool isReversed) const override |
Container for execution frame stack.
Stack-based container managing execution frames for nested function calls. Since frames are closely related to the call stack, the frame created by the most recently called function comes first — in other words, it follows a LIFO (Last-In-First-Out) structure.
Each is required to run an autopod instance owns a frames object. When a function is called during program execution, a new frame is pushed onto the frames stack. When the function returns, the frame is popped. This maintains the execution context for nested function calls and provides proper scoping for variables.
Frames follow RAII principles - they are created when entering a function context and removed when exiting. However, as mentioned in baseErr documentation, frames may continue to exist even after being removed from the stack if they are referenced by error objects (for callstack preservation).