libcaf
0.13.2
|
Implements all pure virtual functions of uniform_type_info
except serialize() and deserialize().
More...
#include <abstract_uniform_type_info.hpp>
Public Member Functions | |
const char * | name () const override |
Get the internal name for this type. More... | |
message | as_message (void *instance) const override |
Returns instance encapsulated as an message . | |
bool | equal_to (const std::type_info &tinfo) const override |
Determines if this uniform_type_info describes the same type than tinfo . More... | |
bool | equals (const void *lhs, const void *rhs) const override |
Compares two instances of this type. More... | |
uniform_value | create (const uniform_value &other) const override |
Creates a copy of other . | |
![]() | |
uniform_type_info (uniform_type_info &&)=delete | |
uniform_type_info (const uniform_type_info &)=delete | |
uniform_type_info & | operator= (uniform_type_info &&)=delete |
uniform_type_info & | operator= (const uniform_type_info &)=delete |
uniform_value | deserialize (deserializer *source) const |
Deserializes an object of this type from source . | |
virtual void | serialize (const void *instance, serializer *sink) const =0 |
Serializes instance to sink . More... | |
virtual void | deserialize (void *instance, deserializer *source) const =0 |
Deserializes instance from source . More... | |
uint16_t | type_nr () const |
Returns a unique number for builtin types or 0. | |
Protected Member Functions | |
abstract_uniform_type_info (std::string tname) | |
virtual bool | pod_mems_equals (const T &, const T &) const |
![]() | |
uniform_type_info (uint16_t typenr=0) | |
template<class T > | |
uniform_value | create_impl (const uniform_value &other) const |
Static Protected Member Functions | |
static const T & | deref (const void *ptr) |
static T & | deref (void *ptr) |
Protected Attributes | |
std::string | name_ |
const std::type_info * | native_ |
Additional Inherited Members | |
![]() | |
static const uniform_type_info * | from (const std::string &uniform_name) |
Get instance by uniform name. More... | |
static const uniform_type_info * | from (const std::type_info &tinfo) |
Get instance by std::type_info. More... | |
static std::vector< const uniform_type_info * > | instances () |
Get all instances. More... | |
![]() | |
using | uniform_type_info_ptr = std::unique_ptr< uniform_type_info > |
bool | operator== (const uniform_type_info &lhs, const uniform_type_info &rhs) |
bool | operator!= (const uniform_type_info &lhs, const uniform_type_info &rhs) |
Implements all pure virtual functions of uniform_type_info
except serialize() and deserialize().
|
overridevirtual |
Determines if this uniform_type_info describes the same type than tinfo
.
true
if tinfo
describes the same type as this
. Implements caf::uniform_type_info.
|
overridevirtual |
Compares two instances of this type.
instance1 | Left hand operand. |
instance2 | Right hand operand. |
true
if *instance1 == *instance2. @pre
instance1and
instance2have the type of
this`. Implements caf::uniform_type_info.
|
overridevirtual |
Get the internal name for this type.
Implements caf::uniform_type_info.