![]() |
Elm
2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
|
#include <elm/rtti/Tuple.h>
Inheritance diagram for AbstractTuple< T >:Public Member Functions | |
| AbstractTuple (cstring name) | |
| void * | instantiate (void) const override |
| void | free (void *obj) const override |
| const Tuple * | toTuple () const override |
| const Vector< const rtti::Type * > & | types () const override |
Public Member Functions inherited from AbstractClass | |
| AbstractClass (CString name, const AbstractClass &base) | |
| AbstractClass (const make &m) | |
| AbstractClass (const make &m, const AbstractClass &base) | |
| const AbstractClass & | base (void) const |
| bool | baseOf (const AbstractClass *clazz) |
| virtual bool | isClass (void) const |
| virtual const AbstractClass & | asClass (void) const |
| virtual void * | upCast (void *ptr) const |
| virtual void * | downCast (void *ptr) const |
| void * | upCast (void *ptr, const AbstractClass &cls) const |
| void * | downCast (void *ptr, const AbstractClass &cls) const |
| const void * | upCast (const void *ptr) const |
| const void * | downCast (const void *ptr) const |
| const void * | upCast (const void *ptr, const AbstractClass &cls) const |
| const void * | downCast (const void *ptr, const AbstractClass &cls) const |
| const List< Operation * > & | operations (void) const |
| const List< const Type * > | params (void) const |
Public Member Functions inherited from Type | |
| Type (string name="") | |
| virtual | ~Type (void) |
| string | name (void) const |
| const PointerType & | pointer (void) const |
| virtual bool | canCast (const Type *t) const |
| virtual bool | isVoid (void) const |
| virtual bool | isBool (void) const |
| virtual bool | isInt (void) const |
| virtual bool | isFloat (void) const |
| virtual bool | isPtr (void) const |
| virtual const PointerType & | asPtr (void) const |
| virtual bool | isEnum (void) const |
| virtual const Enumerable & | asEnum (void) const |
| virtual bool | isSerial (void) const |
| virtual const Serializable & | asSerial (void) const |
| virtual const TemplateType * | asTemplate (void) const |
| virtual const InstanceType * | asInstance (void) const |
| virtual const ParamType * | asParam (void) const |
| void | initialize (void) |
| bool | operator== (const Type &t) const |
| bool | operator!= (const Type &t) const |
Public Member Functions inherited from Tuple | |
| virtual | ~Tuple () |
| virtual void | split (void *ptr, Vector< Variant > &values) const =0 |
| virtual void * | make (const Vector< Variant > &values, int i=0) const =0 |
| int | count () const |
Protected Member Functions | |
| void | add (const rtti::Type *t) |
Additional Inherited Members | |
Public Types inherited from Type | |
| typedef HashMap< string, const Type * >::Iter | TypeIter |
Static Public Member Functions inherited from Type | |
| static const Type * | get (string name) |
| static TypeIter | types (void) |
Static Public Attributes inherited from Type | |
| static const Type & | param0 |
| static const Type & | param1 |
| static const Type & | param2 |
| static const Type & | param3 |
|
inline |
|
inlineprotected |
Referenced by Tuple1< T, A >::Tuple1().
Free an object corresponding to the current class.
| obj | Object to free. |
Implements AbstractClass.
Call this function to get a new allocated fresh object of the corresponding class. This function must be overridden to perform the actual allocation and the class must support constructor without any argument.
Implements AbstractClass.
|
inlineoverridevirtual |
Try to get the value interface of a tuple class. Class that can be considered as tuples are classes which identity (address) is not important. They are used as values as int, float, etc.
Reimplemented from AbstractClass.
|
inlineoverridevirtual |