CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
Type.hpp File Reference

Go to the source code of this file.

Classes

class  CeresEngine::Type
 Represents a reflected C++ type. Can be used to get metadata from a C++ type. More...
 
struct  CeresEngine::internal::ConvertFunctionBase
 
struct  CeresEngine::internal::ConvertFunctor< From, To, F >
 
struct  CeresEngine::internal::ConvertFunctorOk< From, To, F >
 
struct  CeresEngine::internal::ConvertMethod< From, To >
 
struct  CeresEngine::internal::ConvertMethodOk< From, To >
 
struct  CeresEngine::TypeAutoRegistrationBase
 
struct  CeresEngine::TypeAutoRegistration< T >
 

Namespaces

namespace  CeresEngine
 
namespace  CeresEngine::internal
 

Macros

#define CE_META_CONCAT_IMPL(A, B)   A##B
 
#define CE_META_CONCAT(A, B)   CE_META_CONCAT_IMPL(A, B)
 
#define CE_META_TYPE_AUTO_REGISTRATION_NAME(T)   CE_META_CONCAT(gTypeAutoRegistrator, __COUNTER__)
 
#define CE_META_TYPE_AUTO_REGISTRATION(T)   static const ::CeresEngine::TypeAutoRegistration<T> CE_META_TYPE_AUTO_REGISTRATION_NAME(T)
 

Typedefs

using CeresEngine::TypeIdentityHash = UInt64
 A type that represents a Type hash value.
 

Functions

template<typename T >
constexpr TypeID CeresEngine::getTypeID ()
 
template<>
CE_FLATTEN_INLINE TypeID CeresEngine::getTypeID< void > ()
 
template<typename T >
CE_FLATTEN_INLINE Type CeresEngine::getType ()
 
template<typename T >
CE_FLATTEN_INLINE Type CeresEngine::getType (T &&)
 
template<typename From , typename To >
To CeresEngine::internal::defaultConvert (const From &value)
 
std::ostream & CeresEngine::operator<< (std::ostream &stream, Type type)
 Writes a string representation of the type type to the given stream.
 
template<typename T >
CE_FLATTEN_INLINE constexpr TypeID CeresEngine::getTypeID ()
 

Macro Definition Documentation

◆ CE_META_CONCAT

#define CE_META_CONCAT (   A,
 
)    CE_META_CONCAT_IMPL(A, B)

◆ CE_META_CONCAT_IMPL

#define CE_META_CONCAT_IMPL (   A,
 
)    A##B

◆ CE_META_TYPE_AUTO_REGISTRATION

#define CE_META_TYPE_AUTO_REGISTRATION (   T)    static const ::CeresEngine::TypeAutoRegistration<T> CE_META_TYPE_AUTO_REGISTRATION_NAME(T)

◆ CE_META_TYPE_AUTO_REGISTRATION_NAME

#define CE_META_TYPE_AUTO_REGISTRATION_NAME (   T)    CE_META_CONCAT(gTypeAutoRegistrator, __COUNTER__)