This namespace implements internals of namespace alib::boxing.
Type Index: | |
struct | DbgStringTable |
struct | FunctionTable |
struct | StructArray |
struct | T_VTableFactory |
struct | TArrayOf |
struct | TDefaultBoxing |
struct | TNotBoxable |
struct | TPlain |
union | UnionFloatingPoints |
union | UnionIntegrals |
union | UnionPointers |
struct | VTable |
class | VTableTT |
Function Index: | |
void | bootStrapCFM () |
Bootstrap helper method. | |
ALIB_API void | DbgCheckIsInitialized () |
ALIB_API void | DbgCheckRegistration (detail::VTable *vtable, bool increaseUsageCounter) |
void | DbgRegisterVTable (detail::VTable *vtable, detail::VTable::DbgFactoryType productionType) |
Variable Index: | |
FunctionTable | DEFAULT_FUNCTIONS |
The default box-functions set. | |
void DbgCheckIsInitialized | ( | ) |
Checks if ALib Boxing was correctly initialized. This is done with the creation of dynamic vtables, to detect global or static box objects which are initialized with data that is mapped to a type that no static vtable is defined for.
Available and used only in debug-compilations.
Definition at line 1103 of file boxing.cpp.
void DbgCheckRegistration | ( | detail::VTable * | vtable, |
bool | increaseUsageCounter ) |
Checks for doubly-defined vtables, as well as for unregistered static vtables.
Available and used only in debug-compilations.
vtable | The vtable to check. |
increaseUsageCounter | Denotes if this is a use of the vtable or just a check. |
Definition at line 1112 of file boxing.cpp.
ALIB_API void DbgRegisterVTable | ( | detail::VTable * | vtable, |
detail::VTable::DbgFactoryType | productionType ) |
Registers a virtual table for debug purposes. This function is invoked internally, when a dynamic vtable is created and when a static vtable is registered.
Statically created vtables have to be registered during bootstrap in debug-compilations. For this, macro ALIB_BOXING_BOOTSTRAP_VTABLE_DBG_REGISTER is available, which is empty in release compilations.
vtable | The vtable to register. |
productionType | Denotes whether the vtable is a static constexpr object or dynamically created from template type VTableTT. |
Definition at line 79 of file dbgboxing.cpp.
ALIB_API FunctionTable DEFAULT_FUNCTIONS |
The default box-functions set.
Definition at line 112 of file vtable.cpp.