This struct is used internally with ALib Boxing to provide run-time type information and virtual method invocations to boxed values. A singleton instance of a derived type of this class is attached to each Box. Such derived type is generated using templated derived struct VTable.
Definition at line 28 of file vtable.inl.
Public Fields | |
| uinteger | DbgCntInvocationsFAppend =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFClone =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFEquals =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFHashcode =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFIsLess =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFIsNotNull =0 |
| Debug-compilation counter for the number of invocations. | |
| uinteger | DbgCntInvocationsFIsTrue =0 |
| Debug-compilation counter for the number of invocations. | |
| FAppend< character >::Signature | fAppend = nullptr |
| Entry for built-in function FAppend<character>. | |
| FClone ::Signature | fClone = nullptr |
| Entry for built-in function FClone. | |
| FEquals ::Signature | fEquals = nullptr |
| Entry for built-in function FEquals. | |
| FHashcode ::Signature | fHashcode = nullptr |
| Entry for built-in function FHashcode. | |
| FIsLess ::Signature | fIsLess = nullptr |
| Entry for built-in function FIsLess. | |
| FIsNotNull ::Signature | fIsNotNull = nullptr |
| Entry for built-in function FIsNotNull. | |
| FIsTrue ::Signature | fIsTrue = nullptr |
| Entry for built-in function FIsTrue. | |
Public Methods | |
| template<typename TFDecl > | |
| TFDecl::Signature | Get (bool isInvocation) const |
| template<typename TFDecl > | |
| void | Set (typename TFDecl::Signature implementation) |
Protected Methods | |
| ALIB_API void * | getCustom (const std::type_info &rtti, bool isInvocation) const |
| ALIB_API void | setCustom (const std::type_info &rtti, void *implementation) |
| TFDecl::Signature Get | ( | bool | isInvocation | ) | const |
Receives the function of type TFDecl.
| TFDecl | The function type to get. |
| isInvocation | If true, the invocation counter is increased. This parameter is defined only in debug-compilations. |
nullptr in case it was not defined.
|
protected |
Non-inline implementation of Get used in the case of non-built-in functions.
| rtti | The typeid of the function to get. |
| isInvocation | If true, the invocation counter is increased. This parameter is defined only in debug-compilations. |
Definition at line 132 of file vtable.cpp.
| void Set | ( | typename TFDecl::Signature | implementation | ) |
Registers an implementation of the function of type TFDecl.
| TFDecl | The function type to register. |
| implementation | The implementation of the function. |
|
protected |
Non-inline implementation of Set Get used in the case of non-built-in functions.
| rtti | The typeid of the function to register. |
| implementation | The implementation of the function. |
Definition at line 148 of file vtable.cpp.