#include <Reflex/Builder/ClassBuilder.h>
Public Member Functions | |
| ClassBuilderImpl (const char *nam, const std::type_info &ti, size_t size, unsigned int modifiers=0, TYPE typ=CLASS) | |
| ClassBuilderImpl (Class *cl) | |
| virtual | ~ClassBuilderImpl () |
| void | AddBase (const Type &bas, OffsetFunction offsFP, unsigned int modifiers=0) |
| void | AddDataMember (const char *nam, const Type &typ, size_t offs, unsigned int modifiers=0) |
| void | AddFunctionMember (const char *nam, const Type &typ, StubFunction stubFP, void *stubCtx=0, const char *params=0, unsigned int modifiers=0) |
| void | AddTypedef (const Type &typ, const char *def) |
| void | AddEnum (const char *nam, const char *values, const std::type_info *ti, unsigned int modifiers=0) |
| void | AddProperty (const char *key, Any value) |
| void | AddProperty (const char *key, const char *value) |
| void | AddProperty (const char *key, const Literal &value) |
| void | AddOnDemandDataMemberBuilder (OnDemandBuilderForScope *odb) |
| void | AddOnDemandFunctionMemberBuilder (OnDemandBuilderForScope *odb) |
| void | SetSizeOf (size_t size) |
| Type | ToType () |
Protected Member Functions | |
| void | EnableCallback (bool enable=true) |
Private Attributes | |
| Class * | fClass |
| Member | fLastMember |
| bool | fNewClass |
| bool | fCallbackEnabled |
Friends | |
| class | ClassBuilder |
| class | ClassBuilderT |
Definition at line 39 of file ClassBuilder.h.
| Reflex::ClassBuilderImpl::ClassBuilderImpl | ( | const char * | nam, | |
| const std::type_info & | ti, | |||
| size_t | size, | |||
| unsigned int | modifiers = 0, |
|||
| TYPE | typ = CLASS | |||
| ) |
constructor
| Reflex::ClassBuilderImpl::ClassBuilderImpl | ( | Class * | cl | ) |
| virtual Reflex::ClassBuilderImpl::~ClassBuilderImpl | ( | ) | [virtual] |
destructor
| void Reflex::ClassBuilderImpl::AddBase | ( | const Type & | bas, | |
| OffsetFunction | offsFP, | |||
| unsigned int | modifiers = 0 | |||
| ) |
AddBase will add the information about one BaseAt class
| Name | of the BaseAt class | |
| OffsetFP | function pointer for Offset calculation | |
| modifiers | the modifiers of the class |
Referenced by Reflex::ClassBuilder::AddBase(), and Reflex::ClassBuilderT< C >::AddBase().
| void Reflex::ClassBuilderImpl::AddDataMember | ( | const char * | nam, | |
| const Type & | typ, | |||
| size_t | offs, | |||
| unsigned int | modifiers = 0 | |||
| ) |
AddDataMember will add the information about one data MemberAt of the class
| Name | of the data MemberAt | |
| At | of the data MemberAt | |
| Offset | of the data MemberAt | |
| modifiers | the modifiers of the data MemberAt |
Referenced by Reflex::ClassBuilderT< C >::AddDataMember(), and Reflex::ClassBuilder::AddDataMember().
| void Reflex::ClassBuilderImpl::AddFunctionMember | ( | const char * | nam, | |
| const Type & | typ, | |||
| StubFunction | stubFP, | |||
| void * | stubCtx = 0, |
|||
| const char * | params = 0, |
|||
| unsigned int | modifiers = 0 | |||
| ) |
AddFunctionMember will add the information about one function MemberAt of the class
| Name | of the function MemberAt | |
| At | of the function MemberAt | |
| stubFP | Stub function pointer for the function | |
| stubCxt | Stub user context for the stub function | |
| params | parameter names and default values (semi-colon separated) | |
| modifiers | the modifiers of the function MemberAt |
Referenced by Reflex::ClassBuilder::AddFunctionMember(), and Reflex::ClassBuilderT< C >::AddFunctionMember().
| void Reflex::ClassBuilderImpl::AddTypedef | ( | const Type & | typ, | |
| const char * | def | |||
| ) |
Referenced by Reflex::ClassBuilderT< C >::AddTypedef(), and Reflex::ClassBuilder::AddTypedef().
| void Reflex::ClassBuilderImpl::AddEnum | ( | const char * | nam, | |
| const char * | values, | |||
| const std::type_info * | ti, | |||
| unsigned int | modifiers = 0 | |||
| ) |
Referenced by Reflex::ClassBuilder::AddEnum(), and Reflex::ClassBuilderT< C >::AddEnum().
| void Reflex::ClassBuilderImpl::AddProperty | ( | const char * | key, | |
| Any | value | |||
| ) |
AddProperty will add a PropertyNth to the PropertyNth stack which will be emtpied with the next call of a builder class and attached to the item built with this call
| key | the PropertyNth key | |
| value | the value of the PropertyNth |
Referenced by Reflex::ClassBuilderT< C >::AddProperty(), and Reflex::ClassBuilder::AddProperty().
| void Reflex::ClassBuilderImpl::AddProperty | ( | const char * | key, | |
| const char * | value | |||
| ) |
| void Reflex::ClassBuilderImpl::AddProperty | ( | const char * | key, | |
| const Literal & | value | |||
| ) | [inline] |
| void Reflex::ClassBuilderImpl::AddOnDemandDataMemberBuilder | ( | OnDemandBuilderForScope * | odb | ) |
Register an on demand builder for data members with this class.
Referenced by Reflex::ClassBuilderT< C >::AddOnDemandDataMemberBuilder().
| void Reflex::ClassBuilderImpl::AddOnDemandFunctionMemberBuilder | ( | OnDemandBuilderForScope * | odb | ) |
Register an on demand builder for function members with this class.
Referenced by Reflex::ClassBuilderT< C >::AddOnDemandFunctionMemberBuilder().
| void Reflex::ClassBuilderImpl::SetSizeOf | ( | size_t | size | ) |
SetSizeOf will set the SizeOf property for this class. It currently ignore all actual content. Size of the class
Referenced by Reflex::ClassBuilderT< C >::SetSizeOf().
| Type Reflex::ClassBuilderImpl::ToType | ( | ) |
Referenced by Reflex::ClassBuilderT< C >::ToType().
| void Reflex::ClassBuilderImpl::EnableCallback | ( | bool | enable = true |
) | [protected] |
EnableCallback Enable or disable the callback call in the destructor
| enable | true to enable callback call, false to disable callback call |
Referenced by Reflex::ClassBuilderT< C >::EnableCallback().
friend class ClassBuilder [friend] |
Definition at line 138 of file ClassBuilder.h.
friend class ClassBuilderT [friend] |
Definition at line 139 of file ClassBuilder.h.
Class* Reflex::ClassBuilderImpl::fClass [private] |
current class being built
Definition at line 149 of file ClassBuilder.h.
Member Reflex::ClassBuilderImpl::fLastMember [private] |
last added MemberAt
Definition at line 152 of file ClassBuilder.h.
bool Reflex::ClassBuilderImpl::fNewClass [private] |
flag, true if this is truly building a new class
Definition at line 155 of file ClassBuilder.h.
bool Reflex::ClassBuilderImpl::fCallbackEnabled [private] |
flag, fire callback in destructor
Definition at line 158 of file ClassBuilder.h.
1.5.1