T | |
TagType, SerializationTag | |
Test | |
TEST | |
Text, SerializationTag | |
Text()const, SerializationTag | |
The Two Faces of Reflection | |
TheClass | |
ThrowError, JavaScriptContext | |
ToNameMap, EnumType | |
ToString, Variant | |
ToValueMap, EnumType | |
translucent_cast | |
TranslucentCast | |
Tutorial | |
Type | |
~ | Type, Type |
Type()const, SerializationTag | |
Type:: | |
TypeOf | |
TypeOf(by array value) | |
TypeOf(by value) | |
Types | |
U | |
Unit Testing | |
UnloadTypes, Type | |
UpdateAliases, Variant | |
Using Reflection | |
V | |
ValidForFunction, Parameters | |
ValueMap, EnumType | |
Values, EnumType:: | |
ValueType, MapProperty | |
Variant | |
Variant()(constructor), Variant | |
Variant()(copy constructor), Variant | |
VariantAliasRef | |
VariantProperty | |
Variants | |
vformat, MutableString | |
Void, Variant | |
W | |
Whining-No | |
Write, OutputStream | |
Write(Reflector&)const, PropertyPath | |
WriteData | |
WriteEnum, EnumType | |
Writef, PropertyPath | |
WriteProperty, PersistentClass | |
WriteRefProperty, PersistentClass | |
WriteStringProperty, PersistentClass |
Each subclass of Test implements a unit test.
class ReflectExport( reflect ) Test : public Dynamic
a mutable version of the text
string::MutableString Text()
a const version of the text
string::ConstString Text() const
This function is always hidden by subclasses and used during static construction to construct the class hierarchy.
static ClassType *TheClass()
Throws an error from a function to the JavaScript runtime.
void ThrowError( const char * format, ... ) const
typedef std::map<int, string::SharedString> ToNameMap
Serializes with the StandardSerializer.
string::String ToString() const
typedef std::map<string::SharedString, int> ToValueMap
Turns an opaque pointer (of type void *) into a typed pointer of the specified type.
template<typename Type> inline Type translucent_cast( void * value )
Casts a void * from OpaqueCast (template/static) back to a T *.
template<typename T> static T *TranslucentCast( void * ptr )
Casts a void * from OpaqueCast back to a Type.
template<typename T> static T *TranslucentCast( void * ptr )
class ReflectExport( reflect ) Type : public Dynamic
a reference to the Type
TagType &Type()
Constructs a class.
Type( void (*init_cb)() = 0 )
Destructs this class and unlinks it from the class hierarchy.
~Type()
the type
TagType Type() const
Template base class for description helpers, used in reflection definitions.
template<typename T> class Type::DescriptionHelper
Templated function, returns the Class of a reflected type.
template<typename T> inline typename Signature<T>::ClassType *TypeOf()
Returns a pointer type for an array.
template<typename T, unsigned size> inline typename Signature<T>::ClassType *TypeOf( const T (&)[size] )
Returns the Class type of an expression with a reflected type.
template<typename T> inline typename Signature<T>::ClassType *TypeOf( const T & )
Reverses the effect of Type::LoadTypes.
static void UnloadTypes( Type * )
Updates aliased variants with this one’s value.
void UpdateAliases() const
Checks if this parameter list is valid to call a particular function.
bool ValidForFunction( const Function * function ) const
const ToValueMap &ValueMap() const
This member of EnumType::DescriptionHelper is used to help register enums in a reflection definition.
ValueHelper Values
Retrieves the type of values represented by this map property.
virtual const Type *ValueType() const = 0
Variants represent objects of any reflected type.
class ReflectExport( reflect ) Variant
constructs a blank variant.
Variant()
The VariantAliasRef automates flushing modified by-reference parameters back into their source values.
template<typename T> class VariantAliasRef
An implemetation of Property using a callback and a Reflector to access the data.
template<typename ObjectType> class VariantProperty : public Property
VariantProperty( void (ObjectType::*serializer)(Reflector &) const, void (ObjectType::*deserializer)(Reflector &) )
prints into the string, like vprintf.
size_type vformat( const char * format, std::va_list )
Returns the variant representing a void “value.”
static Variant &Void()
Writes binary data out.
virtual size_type Write( const void * buffer, size_type bufmax ) = 0
void Write( Reflector & reflector ) const
Writes the Variant value to the array.
virtual bool WriteData( void * object, unsigned item_index, const Variant & value ) const = 0
Writes this property with the Variant value.
virtual bool WriteData( void * object, const Variant & value ) const = 0
Writes a (possibly new) map entry.
virtual bool WriteData( void * in, const Variant & key, const Variant & value ) const = 0
void WriteEnum( void * , int )
bool Writef( const char * format, ... ) const
Writes a property using a StandardDeserializer to parse the data.
bool WriteProperty( Persistent * , string:: Fragment path, string:: Fragment value ) const
Writes a reference property (a property representing a Dynamic *).
bool WriteRefProperty( Persistent * , string:: Fragment path, Dynamic * value ) const
bool WriteStringProperty( Persistent * , string:: Fragment path, string:: Fragment value ) const