ALib C++ Library
Library Version: 2312 R0
Documentation generated by doxygen
Public Types | Inner Classes | Public Fields | Public Methods | Private Methods | List of all members
EnumRecordHook< TEnum > Struct Template Reference
Inheritance diagram for EnumRecordHook< TEnum >:
[legend]
Collaboration diagram for EnumRecordHook< TEnum >:
[legend]

Class Description

template<typename TEnum>
struct aworx::lib::enums::detail::EnumRecordHook< TEnum >


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.

Template Parameters
TEnumThe enumeration type associated with enum records.

Definition at line 63 of file enumrecords.inl.

Public Types

using TIntegral = typename std::underlying_type< TEnum >::type
 
using TRecord = typename T_EnumRecords< TEnum >::Type
 

Inner Classes

struct  Node
 

Public Fields

Nodefirst
 

Public Methods

Node ** getPointerToLast ()
 
- Public Methods inherited from Singleton< TDerivedClass >
virtual ~Singleton ()
 

Private Methods

 EnumRecordHook ()
 

Additional Inherited Members

- Public Static Methods inherited from Singleton< TDerivedClass >
static TDerivedClass & GetSingleton ()
 
- Protected Static Fields inherited from Singleton< TDerivedClass >
static TDerivedClass * singleton = nullptr
 

Member Typedef Documentation

◆ TIntegral

using TIntegral = typename std::underlying_type<TEnum>::type

The enum's underlying integer type.

Definition at line 70 of file enumrecords.inl.

◆ TRecord

using TRecord = typename T_EnumRecords<TEnum>::Type

The enum's associated record type.

Definition at line 73 of file enumrecords.inl.

Constructor & Destructor Documentation

◆ EnumRecordHook()

EnumRecordHook ( )
inlineprivate

Private default constructor, what makes this type a strict singleton.

Note
As enum record types are trivially destructible types, no destructor is given.

Definition at line 132 of file enumrecords.inl.

Member Function Documentation

◆ getPointerToLast()

Node** getPointerToLast ( )
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.

Returns
A pointer to the pointer of the last element or this hook.

Definition at line 117 of file enumrecords.inl.

Member Data Documentation

◆ first

Node* first

The hook to the first record defined.

Definition at line 108 of file enumrecords.inl.


The documentation for this struct was generated from the following file: