This is the internal singleton that provides a link to the first ALib Enum Record. The class inherit's Singleton and has a private default constructor, what makes this type a strict singleton.
Because enum record types are ensured to be trivially destructible types, no destructor is given.
| TEnum | The enumeration type associated with enum records. |
Definition at line 57 of file enumrecords.inl.
Inner Type Index: | |
| struct | Node |
| A node of the forward list that contains the custom record data. More... | |
Public Type Index: | |
| using | TIntegral = typename std::underlying_type<TEnum>::type |
| The enum's underlying integer type. | |
| using | TRecord = typename T_EnumRecords<TEnum>::Type |
| The enum's associated record type. | |
Public Field Index: | |
| Node * | first |
| The hook to the first record defined. | |
Public Method Index: | |
| Node ** | getPointerToLast () |
Public Method Index: inherited from Singleton< TDerivedClass > | |
| virtual | ~Singleton () |
| Virtual destructor. | |
Private Method Index: | |
| EnumRecordHook () | |
Additional Inherited Members | |
Public Static Method Index: inherited from Singleton< TDerivedClass > | |
| static TDerivedClass & | GetSingleton () |
Protected Static Field Index: inherited from Singleton< TDerivedClass > | |
| static TDerivedClass * | singleton = nullptr |
| A pointer to the one and only singleton. | |
| using TIntegral = typename std::underlying_type<TEnum>::type |
The enum's underlying integer type.
Definition at line 64 of file enumrecords.inl.
| using TRecord = typename T_EnumRecords<TEnum>::Type |
The enum's associated record type.
Definition at line 67 of file enumrecords.inl.
| Node* first |
The hook to the first record defined.
Definition at line 100 of file enumrecords.inl.
|
inlineprivate |
Private default constructor, what makes this type a strict singleton.
Definition at line 120 of file enumrecords.inl.
|
inline |
Helper methods that returns the address of field EnumRecordHook::Node::next the last element contained in the list. If no elements have been initialized, yet, the address of field first is returned.
Definition at line 107 of file enumrecords.inl.