This is a templated derivate of class VTable. It is needed to create singletons for arbitrary mapped types.
class aworx::lib::singletons,Singleton,Singleton< VTableTT<TPlainOrArray, TMapped> > "singletons,Singleton,Singleton< VTableTT<TPlainOrArray, TMapped> >"
TPlainOrArray | Either type detail::TPlain or detail::TArrayOf. |
TMapped | The mapped type. |
Definition at line 357 of file vtable.inl.
Private Methods | |
ALIB_CPP14_REL_CONSTEXPR | VTableTT () |
Additional Inherited Members | |
![]() | |
enum | DbgFactoryType { Unregistered, Static, Dynamic } |
enum | MappingType : integer { Value = 0, Pointer = -1, Enum = -2 } |
![]() | |
uinteger | DbgCntUsage = 0 |
DbgFactoryType | DbgProduction = DbgFactoryType::Unregistered |
const std::type_info & | ElementType |
FunctionTable | Functions |
const MappingType | Mapping |
const unsigned int | PlaceholderUsage |
const std::type_info & | Type |
![]() | |
static TDerivedClass & | GetSingleton () |
![]() | |
VTable (const std::type_info &type, const std::type_info &elementType, MappingType mapping, unsigned int placeholderUsage) | |
virtual | ~VTable () |
bool | IsArray () const |
bool | IsEnum () const |
bool | IsPointer () const |
![]() | |
virtual | ~Singleton () |
![]() | |
static TDerivedClass * | singleton = nullptr |
|
inlineprivate |
Constructor. Passes parameters as expected by parent class VTable.
This constructor is private and class Singleton is a friend, which makes each template instance of this class being a 'strict' singleton (only that singleton instance exists).
Definition at line 372 of file vtable.inl.