Index
$#! · 0-9 · A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z
A
 A Note on Properties
 Abstract, Type
 AccessorAccessProperty
 AccessorDirectProperty
 AccessorIndirectProperty
 AccessorProperty
 AddMember, StructType
 AddProperty, PersistentClass
 AddString, StringBlock
 AddValue, EnumType
 Alias, Variant
 Alignment, Type
 Annotation, PropertyPath
 AnnotationAs, PropertyPath
 AnnotationMap, ObjectType
 Annotations
 AnyRootType, Type
 Application
 ApplicationClass
 ApplicationClass::DescriptionHelper
 arg, Parameters
 Array, PropertyPath
 ArrayItem, PropertyPath
 ArrayProperty
 ArrayResize, PropertyPath
 ArraySize, PropertyPath
 AsConstRef, Variant
 AsRef, Variant
 ASSOCIATE
 AsValue, Variant
 AttributeTag, SerializationTag
 Author
 autocast
B
 BaseClassProperty
mBaseJumper, BaseClassProperty
 begin, MutableString
 Begin
 BindType, Variant
 BlockString
 bool
Properties are Dynamic objects, reflected as different types for different levels of interfaces.
bool Abstract() const
Checks if the class is Abstract.
template<typename ObjectType, typename Type> class AccessorAccessProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to access a reference (const and non-const).
template<typename ObjectType, typename MemberType> class AccessorDirectProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write a reference.
template<typename ObjectType, typename MemberType> class AccessorIndirectProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write an indirect reference.
AccessorIndirectProperty(void (ObjectType::*)(MemberType &) const,
void (ObjectType::*)(const MemberType &))
Constructs an AccessorIndirectProperty
template<typename ObjectType, typename MemberType> class AccessorProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write a direct reference.
Creates an accessor property capable of reading and writing a property through the getter and setter pointer-to-member functions provided.
Creates an accessor property capable of reading and writing a property through the getter and setter pointer-to-member functions provided.
void AddMember(Property *)
Adds the property to the property map.
BlockString AddString(const Fragment &)
void AddValue(int value,
const char *name)
bool Alias(Variant &value)
This is a special function, for reflected parameters to reflected function calls.
unsigned Alignment() const
The minimum required alignment of the object represented by this class.
Variant Annotation(string::Fragment name) const
Returns the annotation by name for the current property.
template<typename T> T AnnotationAs(string::Fragment name) const
Returns the annotation by name for the current property.
typedef std::map<string::SharedString, Annotations *> AnnotationMap
A map of annotations for the class by name.
typedef std::map<string::SharedString, Variant> Annotations
const PersistentClass::Annotations *Annotations() const
Returns the annotations for the current property.
static Type *AnyRootType()
Retrieves a root (any root) of the type hierarchy.
class ReflectExport(reflect) Application : public Dynamic
Base class of “runnable” classes.
class ReflectExport(reflect) ApplicationClass : public Class
A class which reflects “runnable” classes.
template<typename ApplicationType> struct ApplicationClass::DescriptionHelper : public Class::DescriptionHelper<ApplicationType>
Helper class for Application reflection definitions.
Assign (non-mutable) values to parameter.
represents a property of many items (see: ArrayProperty).
PropertyPath ArrayItem(unsigned index) const
gets an array item as a property path, requires IsArray() to be true.
class ReflectExport(reflect) ArrayProperty : public Property
ArrayProperties represent numerically indexed data.
bool ArrayResize(unsigned newsize) const
sets the array size, requires IsArray() to be true, and the property should be ArrayProperty.Resizable.
unsigned ArraySize() const
get the array size, requires IsArray() to be true.
template<typename T> const T &AsConstRef() const
Returns the value of this variant as the requested type.
template<typename T> T &AsRef() const
Returns the value of this variant as the requested type.
associates a type with a test, used to tell the test framework which types have been tested.
template<typename T> T AsValue() const
Returns the value of this variant as the requested type.
Starts an Attribute, the text specifies the Attribute name.
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.
template<typename BaseObjectType> class BaseClassProperty : public DataProperty
An implemetation of Property which serializes a base class of another class.
BaseClassProperty(BaseObjectType *(*base_jumper)(void *))
BaseObjectType *(*mBaseJumper)(void *)
const_iterator begin() const
the const_iterator at the begining of the string.
virtual bool Begin(SerializationTag &,  
 SerializationTag::TagType =  SerializationTag::UnknownTag) = 0
Deserializes an opening tag in the stream.
virtual bool Begin(const SerializationTag &) = 0
Starts a group, annotated by the tag’s type and text.
bool Begin(const SerializationTag &)
Writes a serialization start tag.
void BindType(const Type *type)
Sets the class type for this variant.
class BlockString
BlockStrings are good for serializing strings when read/write order is not guarenteed.
BlockString()
Constructs an empty block string.
operator bool() const
false if the string is not set.
operator bool() const
false if the string is not set.
Close