CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
Enum.define.hpp File Reference
#include "Enum.hpp"
#include "Type.define.hpp"

Go to the source code of this file.

Classes

class  CeresEngine::TEnum< T >
 

Namespaces

namespace  CeresEngine
 

Macros

#define CE_META_ENUM_DEFINE_BASE(...)
 
#define CE_META_ENUM_DEFINE(...)
 

Macro Definition Documentation

◆ CE_META_ENUM_DEFINE

#define CE_META_ENUM_DEFINE (   ...)
Value:
template<> CE_META_ENUM_DEFINE_BASE(__VA_ARGS__); \
template<> const ::CeresEngine::TypeInfo& ::CeresEngine::GetTypeInfo<__VA_ARGS__>::get() { \
static const TUserTypeInfo<__VA_ARGS__> kType; \
return kType; \
} \
void ::CeresEngine::TUserTypeInfo<__VA_ARGS__>::define(TUserTypeInfo& define)
#define CE_META_ENUM_DEFINE_BASE(...)
Definition Enum.define.hpp:30
static const TypeInfo & get()

◆ CE_META_ENUM_DEFINE_BASE

#define CE_META_ENUM_DEFINE_BASE (   ...)
Value:
class ::CeresEngine::TUserTypeInfo<__VA_ARGS__> final : public TEnum<__VA_ARGS__> { \
using EnumType = __VA_ARGS__; \
\
public: \
explicit TUserTypeInfo() : TEnum<__VA_ARGS__>() { define(*this); } \
\
private: \
inline void define(TUserTypeInfo& define); \
}