BeeeOn Gateway  v2020.3.1-2-g6f737dc
Platform to interconnect the IoT world
Data Structures | Public Member Functions | Static Public Member Functions | Static Protected Member Functions
BeeeOn::ClassInfo Class Reference

Public Member Functions

 ClassInfo (const std::type_index &index)
 
 ClassInfo (const std::type_info &info)
 
template<typename T >
 ClassInfo (const T &t)
 
std::string id () const
 
std::string name () const
 
std::type_index index () const
 
template<typename T >
bool is () const
 
bool operator< (const ClassInfo &info) const
 
bool operator== (const ClassInfo &info) const
 
bool operator!= (const ClassInfo &info) const
 

Static Public Member Functions

template<typename T >
static ClassInfo forPointer (const T *t)
 
template<typename T >
static ClassInfo forClass ()
 
static ClassInfo byName (const std::string &name)
 
template<typename T >
static void registerClass (const std::string &name)
 
template<typename T >
static std::string repr (const T *t)
 

Static Protected Member Functions

static void registerClassInfo (const std::string &name, const std::type_info &info)
 
static std::string reprImpl (const ClassInfo &c, const void *p)
 

Member Function Documentation

template<typename T >
static ClassInfo BeeeOn::ClassInfo::forPointer ( const T *  t)
inlinestatic

Determine class type info for the value of the given pointer. If the pointer is NULL, it returns ClassInfo(), i.e. type info of ClassInfo::NoneType.

template<typename T >
bool BeeeOn::ClassInfo::is ( ) const
inline

Test whether the ClassInfo represents the given type T. It does not work for inheritance.


The documentation for this class was generated from the following files: