AusweisApp2
EnumHelper.h-Dateireferenz
#include "Initializer.h"
#include <QDebug>
#include <QMetaEnum>
#include <type_traits>
Include-Abhängigkeitsdiagramm für EnumHelper.h:
Dieser Graph zeigt, welche Datei direkt oder indirekt diese Datei enthält:

gehe zum Quellcode dieser Datei

Klassen

class  governikus::Enum< EnumTypeT >
 

Namensbereiche

namespace  governikus
 A simple template renderer.
 

Makrodefinitionen

#define defineQHash(enumName)
 
#define defineEnumOperators(enumName)
 
#define defineTypedEnumType(enumName, enumType, ...)
 
#define defineEnumType(enumName, ...)   defineTypedEnumType(enumName, int, __VA_ARGS__)
 

Funktionen

template<typename T >
QLatin1String governikus::getEnumName (T pType)
 

Makro-Dokumentation

◆ defineEnumOperators

#define defineEnumOperators (   enumName)

◆ defineEnumType

#define defineEnumType (   enumName,
  ... 
)    defineTypedEnumType(enumName, int, __VA_ARGS__)

◆ defineQHash

#define defineQHash (   enumName)
Wert:
inline size_t qHash(enumName pKey, size_t pSeed)\
{\
return ::qHash(static_cast<std::underlying_type_t<enumName>>(pKey), pSeed);\
}
auto qHash(const Oid &pOid)
Definition: Oid.h:162

◆ defineTypedEnumType

#define defineTypedEnumType (   enumName,
  enumType,
  ... 
)
Wert:
class Enum##enumName\
{\
Q_GADGET\
\
Q_DISABLE_COPY(Enum##enumName)\
\
private:\
Enum##enumName();\
\
public:\
enum class enumName : enumType\
{\
__VA_ARGS__\
};\
\
Q_ENUM(enumName)\
};\
\
using enumName = Enum##enumName::enumName;\
namespace governikusEnum##enumName\
{\
INIT_FUNCTION([]\
{\
qRegisterMetaType<enumType>(#enumName);\
})\
}\
#define defineEnumOperators(enumName)
Definition: EnumHelper.h:31