DynamicPointerType

class ReflectExport(reflect) DynamicPointerType : public Type
Summary
DynamicPointerType
Class
Functions
CastThe object cast to a Dynamic if it is a subclass of this, or NULL otherwise.
OpaqueCastCasts a type represented by this Class to a void *, used by <Serialize>.
TranslucentCastCasts a void * from <OpaqueCast (template/static)> back to a T *.
SerializePointer
DeserializePointer
Members
mDynamicPointerTypeThe Type object representing pointers to this type.
mSerializationClassThe Class that pointers use when serializing.

Class

class ReflectExport(reflect) Class : public ObjectType
Summary
Functions
CastThe object cast to a Dynamic if it is a subclass of this, or NULL otherwise.
OpaqueCastCasts a type represented by this Class to a void *, used by <Serialize>.
TranslucentCastCasts a void * from <OpaqueCast (template/static)> back to a T *.
SerializePointer
DeserializePointer
Members
mDynamicPointerTypeThe Type object representing pointers to this type.
mSerializationClassThe Class that pointers use when serializing.

Functions

Cast

Dynamic *Cast(Dynamic *object) const

The object cast to a Dynamic if it is a subclass of this, or NULL otherwise.  (there are const and non-const versions of this function)

There is no little to use this directly.

See Also

OpaqueCast

template<typename T> static void *OpaqueCast(*ptr)

Casts a type represented by this Class to a void *, used by <Serialize>.  (there are const and non-const versions of this function)

See Also

TranslucentCast

template<typename T> static T *TranslucentCast(void *ptr)

Casts a void * from <OpaqueCast (template/static)> back to a T *.  (there are const and non-const versions of this function)

See Also

  • <OpaqueCast (template/static)>

SerializePointer

virtual void SerializePointer(const Dynamic *in,
Reflector &reflector) const

DeserializePointer

virtual void DeserializePointer(Dynamic *&out,
Reflector &reflector) const

Members

mDynamicPointerType

mutable DynamicPointerType mDynamicPointerType

The Type object representing pointers to this type.

mSerializationClass

const Class *mSerializationClass

The Class that pointers use when serializing.  (this Type.Derives mSerializationClass).

class ReflectExport(reflect) DynamicPointerType : public Type
class ReflectExport(reflect) Class : public ObjectType
Dynamic *Cast(Dynamic *object) const
The object cast to a Dynamic if it is a subclass of this, or NULL otherwise.
class ReflectExport(reflect) Dynamic
This class defines the core interface for all runtime type identification (RTTI) in reflect.
template<typename T> static void *OpaqueCast(*ptr)
Casts a type represented by this Class to a void *, used by Serialize.
template<typename T> static T *TranslucentCast(void *ptr)
Casts a void * from OpaqueCast (template/static) back to a T *.
virtual void SerializePointer(const Dynamic *in,
Reflector &reflector) const
virtual void DeserializePointer(Dynamic *&out,
Reflector &reflector) const
mutable DynamicPointerType mDynamicPointerType
The Type object representing pointers to this type.
class ReflectExport(reflect) Type : public Dynamic
const Class *mSerializationClass
The Class that pointers use when serializing.
static const struct autocast_token { autocast_token(){} } autocast
Provides an easy way to downcast Dynamics without having to specify the downcast target type, and with minimal interruption to the legible program flow.
bool DerivesType(const Type *other) const
Checks if this class represents a subclass of another.
Close