Loading...
Searching...
No Matches
by::frames Class Reference

Container for execution frame stack. More...

#include <frames.hpp>

Inheritance diagram for by::frames:
by::tnarr< frame > by::dumpable by::tnucontainer< T, R, RSquare > by::tarrayable< T, R, RSquare > by::instance by::tucontainable< T, R, RSquare > by::typeProvidable by::clonable

Public Member Functions

void dump () const override
 Dump object state for debugging.
 
- Public Member Functions inherited from by::tnarr< frame >
 tnarr (const Es &... elems)
 
 tnarr (const me &rhs)
 
me & operator= (const me &rhs)=default
 
frameoperator[] (nidx n) override
 
ncnt len () const override
 
nbool in (nidx n) const override
 
frameget (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
 
clonableclone () const override
 
void onCloneDeep (const clonable &from) override
 
std::string asStr () const
 
- Public Member Functions inherited from by::instance
 instance (id newId)
 
 instance (const me &rhs)
 
me & operator= (const me &rhs)=default
 
void * operator new (size_t sz) noexcept
 
void operator delete (void *pt, size_t sz) noexcept
 
virtual id getId () const
 
virtual nbool isHeap () const
 Checks if this instance is allocated on the heap.
 
const lifegetBindTag () const
 Returns a pointer to the associated life object for reference counting.
 
- Public Member Functions inherited from by::typeProvidable
nbool operator== (const me &rhs) const
 
nbool operator!= (const me &rhs) const
 
virtual const typegetType () const =0
 
nbool isSub (const type &it) const
 
nbool isSub (const type *it) const BY_SIDE_FUNC(isSub)
 
nbool isSub (const me &it) const
 
nbool isSub (const me *it) const BY_SIDE_FUNC(isSub)
 
nbool isSuper (const type &it) const
 
nbool isSuper (const type *it) const BY_SIDE_FUNC(isSuper)
 
nbool isSuper (const me &it) const
 
nbool isSuper (const me *it) const BY_SIDE_FUNC(isSuper)
 
template<typename T >
nint isSub () const
 
template<typename T >
nint isSuper () const
 
template<typename T >
T * cast ()
 
template<typename T >
const T * cast () const BY_CONST_FUNC(cast< T >()) virtual void *cast(const type &to)
 Safe cast to target type using type hierarchy information.
 
const void * cast (const type &to) const BY_CONST_FUNC(cast(to)) void *cast(const type *it) BY_SIDE_FUNC(cast)
 
- Public Member Functions inherited from by::clonable
virtual me * cloneDeep () const
 
virtual void onCloneDeep (const me &from)
 
- 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, strTacticwrap
 
typedef super::iter iter
 
typedef super::iteration iteration
 
- Static Public Member Functions inherited from by::instance
static vaultgetVault ()
 
- 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
 
- Protected Member Functions inherited from by::instance
nbool _setId (id new1)
 
- Static Protected Member Functions inherited from by::instance
static instancer_getMgr ()
 

Detailed Description

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.

Relationship with thread

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.

Frame Lifecycle

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).

Member Function Documentation

◆ dump()

void by::frames::dump ( ) const
overridevirtual

Dump object state for debugging.

Implements by::dumpable.


The documentation for this class was generated from the following file:
to Top