Reflex::MemberBase Class Reference
[Reflex]

#include <Reflex/internal/MemberBase.h>

List of all members.

Public Member Functions

 MemberBase (const char *name, const Type &type, TYPE memberType, unsigned int modifiers)
virtual ~MemberBase ()
 operator Member () const
Scope DeclaringScope () const
Type DeclaringType () const
virtual void GenerateDict (DictionaryGenerator &generator) const
virtual Object Get (const Object &obj) const
virtual void Invoke (const Object &obj, Object *ret, const std::vector< void * > &paramList=std::vector< void * >()) const
virtual void Invoke (Object *ret, const std::vector< void * > &paramList=std::vector< void * >()) const
bool IsAbstract () const
bool IsArtificial () const
bool IsAuto () const
bool IsConstructor () const
bool IsConst () const
bool IsConverter () const
bool IsCopyConstructor () const
bool IsDataMember () const
bool IsDestructor () const
bool IsExplicit () const
bool IsExtern () const
bool IsFunctionMember () const
bool IsInline () const
bool IsMutable () const
bool IsOperator () const
bool IsPrivate () const
bool IsProtected () const
bool IsPublic () const
bool IsRegister () const
bool IsStatic () const
bool IsTemplateInstance () const
bool IsTransient () const
bool IsVirtual () const
bool IsVolatile () const
TYPE MemberType () const
std::string MemberTypeAsString () const
virtual std::string Name (unsigned int mod=0) const
const char * Name_c_str () const
virtual size_t Offset () const
virtual void InterpreterOffset (char *)
virtual char *& InterpreterOffset () const
virtual size_t FunctionParameterSize (bool required=false) const
virtual std::string FunctionParameterDefaultAt (size_t nth) const
virtual StdString_Iterator FunctionParameterDefault_Begin () const
virtual StdString_Iterator FunctionParameterDefault_End () const
virtual Reverse_StdString_Iterator FunctionParameterDefault_RBegin () const
virtual Reverse_StdString_Iterator FunctionParameterDefault_REnd () const
virtual std::string FunctionParameterNameAt (size_t nth) const
virtual StdString_Iterator FunctionParameterName_Begin () const
virtual StdString_Iterator FunctionParameterName_End () const
virtual Reverse_StdString_Iterator FunctionParameterName_RBegin () const
virtual Reverse_StdString_Iterator FunctionParameterName_REnd () const
PropertyList Properties () const
virtual void Set (const Object &instance, const void *value) const
void SetScope (const Scope &scope) const
virtual void * Stubcontext () const
virtual StubFunction Stubfunction () const
virtual Type TemplateArgumentAt (size_t nth) const
virtual size_t TemplateArgumentSize () const
virtual Type_Iterator TemplateArgument_Begin () const
virtual Type_Iterator TemplateArgument_End () const
virtual Reverse_Type_Iterator TemplateArgument_RBegin () const
virtual Reverse_Type_Iterator TemplateArgument_REnd () const
virtual MemberTemplate TemplateFamily () const
Type TypeOf () const
virtual void UpdateFunctionParameterNames (const char *parameters)

Protected Member Functions

void * CalculateBaseObject (const Object &obj) const

Protected Attributes

Type fType
unsigned int fModifiers

Private Attributes

LiteralString fName
Scope fScope
TYPE fMemberType
OwnedPropertyList fPropertyList
MemberfThisMember


Detailed Description

Author:
Stefan Roiser
Date:
24/11/2003

Definition at line 33 of file MemberBase.h.


Constructor & Destructor Documentation

Reflex::MemberBase::MemberBase ( const char *  name,
const Type type,
TYPE  memberType,
unsigned int  modifiers 
)

default constructor

virtual Reflex::MemberBase::~MemberBase (  )  [virtual]

destructor


Member Function Documentation

Reflex::MemberBase::operator Member (  )  const

operator member will return the member object of this MemberBase

Scope Reflex::MemberBase::DeclaringScope (  )  const

DeclaringScope will return the scope which the member lives in

Returns:
the declaring scope of the member

Referenced by Reflex::Member::DeclaringScope(), Reflex::Member::DeclaringType(), and Name().

Type Reflex::MemberBase::DeclaringType (  )  const

DeclaringType will return the type which the member lives in

Returns:
the declaring type of the member

virtual void Reflex::MemberBase::GenerateDict ( DictionaryGenerator &  generator  )  const [virtual]

GenerateDict will produce the dictionary information of this type

Parameters:
generator a reference to the dictionary generator instance

Reflex::Object Reflex::MemberBase::Get ( const Object obj  )  const [inline, virtual]

Get the member value

Definition at line 389 of file MemberBase.h.

References Reflex::Dummy::Object().

void Reflex::MemberBase::Invoke ( const Object obj,
Object ret,
const std::vector< void * > &  paramList = std::vector< void * >() 
) const [inline, virtual]

Invoke the member function

Definition at line 406 of file MemberBase.h.

void Reflex::MemberBase::Invoke ( Object ret,
const std::vector< void * > &  paramList = std::vector< void * >() 
) const [inline, virtual]

Invoke the function (for static functions)

Definition at line 423 of file MemberBase.h.

bool Reflex::MemberBase::IsAbstract (  )  const [inline]

check whether abstract is set for the data member

Definition at line 431 of file MemberBase.h.

References Reflex::ABSTRACT, and fModifiers.

Referenced by Reflex::Member::IsAbstract().

bool Reflex::MemberBase::IsArtificial (  )  const [inline]

check whether artificial is set for the data member

Definition at line 439 of file MemberBase.h.

References Reflex::ARTIFICIAL, and fModifiers.

Referenced by Reflex::Member::IsArtificial().

bool Reflex::MemberBase::IsAuto (  )  const [inline]

check whether auto is set for the data member

Definition at line 447 of file MemberBase.h.

References Reflex::AUTO, and fModifiers.

Referenced by Reflex::Member::IsAuto().

bool Reflex::MemberBase::IsConstructor (  )  const [inline]

check whether the function member is a constructor

Definition at line 455 of file MemberBase.h.

References Reflex::CONSTRUCTOR, and fModifiers.

Referenced by Reflex::Member::IsConstructor().

bool Reflex::MemberBase::IsConst (  )  const [inline]

check whether a member is const qualified

Definition at line 463 of file MemberBase.h.

References Reflex::CONST, and fModifiers.

Referenced by Reflex::Member::IsConst().

bool Reflex::MemberBase::IsConverter (  )  const [inline]

check whether the function member is a user defined conversion function

Definition at line 471 of file MemberBase.h.

References Reflex::CONVERTER, and fModifiers.

Referenced by Reflex::Member::IsConverter().

bool Reflex::MemberBase::IsCopyConstructor (  )  const [inline]

check whether the function member is a copy constructor

Definition at line 479 of file MemberBase.h.

References Reflex::COPYCONSTRUCTOR, and fModifiers.

Referenced by Reflex::Member::IsCopyConstructor().

bool Reflex::MemberBase::IsDataMember (  )  const [inline]

return true if this is a data member

Definition at line 487 of file MemberBase.h.

References Reflex::DATAMEMBER, and fMemberType.

Referenced by Reflex::Member::IsDataMember().

bool Reflex::MemberBase::IsDestructor (  )  const [inline]

check whether the function member is a destructor

Definition at line 495 of file MemberBase.h.

References Reflex::DESTRUCTOR, and fModifiers.

Referenced by Reflex::Member::IsDestructor().

bool Reflex::MemberBase::IsExplicit (  )  const [inline]

check whether explicit is set for the function member

Definition at line 503 of file MemberBase.h.

References Reflex::EXPLICIT, and fModifiers.

Referenced by Reflex::Member::IsExplicit().

bool Reflex::MemberBase::IsExtern (  )  const [inline]

check whether extern is set for the data member

Definition at line 511 of file MemberBase.h.

References Reflex::EXTERN, and fModifiers.

Referenced by Reflex::Member::IsExtern().

bool Reflex::MemberBase::IsFunctionMember (  )  const [inline]

return true if this is a function member

Definition at line 519 of file MemberBase.h.

References fMemberType, and Reflex::FUNCTIONMEMBER.

Referenced by Reflex::Member::IsFunctionMember().

bool Reflex::MemberBase::IsInline (  )  const [inline]

check whether inline is set for the function member

Definition at line 527 of file MemberBase.h.

References fModifiers, and Reflex::INLINE.

Referenced by Reflex::Member::IsInline().

bool Reflex::MemberBase::IsMutable (  )  const [inline]

check whether mutable is set for the data member

Definition at line 535 of file MemberBase.h.

References fModifiers, and Reflex::MUTABLE.

Referenced by Reflex::Member::IsMutable().

bool Reflex::MemberBase::IsOperator (  )  const [inline]

check whether the function member is an operator

Definition at line 543 of file MemberBase.h.

References fModifiers, and Reflex::OPERATOR.

Referenced by Reflex::Member::IsOperator().

bool Reflex::MemberBase::IsPrivate (  )  const [inline]

check whether the function member is private

Definition at line 551 of file MemberBase.h.

References fModifiers, and Reflex::PRIVATE.

Referenced by Reflex::Member::IsPrivate().

bool Reflex::MemberBase::IsProtected (  )  const [inline]

check whether the function member is protected

Definition at line 559 of file MemberBase.h.

References fModifiers, and Reflex::PROTECTED.

Referenced by Reflex::Member::IsProtected().

bool Reflex::MemberBase::IsPublic (  )  const [inline]

check whether the function member is public

Definition at line 567 of file MemberBase.h.

References fModifiers, and Reflex::PUBLIC.

Referenced by Reflex::Member::IsPublic().

bool Reflex::MemberBase::IsRegister (  )  const [inline]

check whether register is set for the data member

Definition at line 575 of file MemberBase.h.

References fModifiers, and Reflex::REGISTER.

Referenced by Reflex::Member::IsRegister().

bool Reflex::MemberBase::IsStatic (  )  const [inline]

check whether static is set for the data member

Definition at line 583 of file MemberBase.h.

References fModifiers, and Reflex::STATIC.

Referenced by Reflex::Member::IsStatic().

bool Reflex::MemberBase::IsTemplateInstance (  )  const [inline]

IsTemplateInstance returns true if the type represents a ClassTemplateInstance

Returns:
true if type represents a InstantiatedTemplateClass

Definition at line 591 of file MemberBase.h.

References fMemberType, and Reflex::MEMBERTEMPLATEINSTANCE.

Referenced by Reflex::Member::IsTemplateInstance().

bool Reflex::MemberBase::IsTransient (  )  const [inline]

check whether transient is set for the data member

Definition at line 599 of file MemberBase.h.

References fModifiers, and Reflex::TRANSIENT.

Referenced by Reflex::Member::IsTransient().

bool Reflex::MemberBase::IsVirtual (  )  const [inline]

check whether virtual is set for the function member

Definition at line 607 of file MemberBase.h.

References fModifiers, and Reflex::VIRTUAL.

Referenced by Reflex::Member::IsVirtual().

bool Reflex::MemberBase::IsVolatile (  )  const [inline]

check whether a member is volatile qualified

Definition at line 615 of file MemberBase.h.

References fModifiers, and Reflex::VOLATILE.

Referenced by Reflex::Member::IsVolatile().

Reflex::TYPE Reflex::MemberBase::MemberType (  )  const [inline]

return the type of the member (function or data member)

Definition at line 623 of file MemberBase.h.

References fMemberType.

Referenced by Reflex::Member::MemberType().

std::string Reflex::MemberBase::MemberTypeAsString (  )  const

returns the string representation of the member species

Referenced by Reflex::Member::MemberTypeAsString().

std::string Reflex::MemberBase::Name ( unsigned int  mod = 0  )  const [inline, virtual]

return the name of the member

Definition at line 631 of file MemberBase.h.

References Reflex::LiteralString::c_str(), DeclaringScope(), fName, Reflex::S, s, and Reflex::SCOPED.

Referenced by Reflex::Member::Name().

const char * Reflex::MemberBase::Name_c_str (  )  const [inline]

Name_c_str returns a char* pointer to the unqualified Name @ return c string to unqualified Name

Definition at line 648 of file MemberBase.h.

References Reflex::LiteralString::c_str(), and fName.

Referenced by Reflex::Member::Name_c_str().

size_t Reflex::MemberBase::Offset (  )  const [inline, virtual]

return the offset of the member

Definition at line 656 of file MemberBase.h.

Referenced by Reflex::Member::Offset().

void Reflex::MemberBase::InterpreterOffset ( char *   )  [inline, virtual]

Definition at line 664 of file MemberBase.h.

Referenced by Reflex::Member::InterpreterOffset().

char *& Reflex::MemberBase::InterpreterOffset (  )  const [inline, virtual]

Definition at line 671 of file MemberBase.h.

References p.

size_t Reflex::MemberBase::FunctionParameterSize ( bool  required = false  )  const [inline, virtual]

number of parameters

Definition at line 680 of file MemberBase.h.

Referenced by Reflex::Member::FunctionParameterSize().

std::string Reflex::MemberBase::FunctionParameterDefaultAt ( size_t  nth  )  const [inline, virtual]

FunctionParameterDefaultAt returns the nth default value if declared

Definition at line 688 of file MemberBase.h.

Referenced by Reflex::Member::FunctionParameterDefaultAt().

Reflex::StdString_Iterator Reflex::MemberBase::FunctionParameterDefault_Begin (  )  const [inline, virtual]

Definition at line 696 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterDefault_Begin().

Reflex::StdString_Iterator Reflex::MemberBase::FunctionParameterDefault_End (  )  const [inline, virtual]

Definition at line 704 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterDefault_End().

Reflex::Reverse_StdString_Iterator Reflex::MemberBase::FunctionParameterDefault_RBegin (  )  const [inline, virtual]

Definition at line 712 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterDefault_RBegin().

Reflex::Reverse_StdString_Iterator Reflex::MemberBase::FunctionParameterDefault_REnd (  )  const [inline, virtual]

Definition at line 720 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterDefault_REnd().

std::string Reflex::MemberBase::FunctionParameterNameAt ( size_t  nth  )  const [inline, virtual]

FunctionParameterNameAt returns the nth name if declared

Definition at line 728 of file MemberBase.h.

Referenced by Reflex::Member::FunctionParameterNameAt().

Reflex::StdString_Iterator Reflex::MemberBase::FunctionParameterName_Begin (  )  const [inline, virtual]

Definition at line 736 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterName_Begin().

Reflex::StdString_Iterator Reflex::MemberBase::FunctionParameterName_End (  )  const [inline, virtual]

Definition at line 744 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterName_End().

Reflex::Reverse_StdString_Iterator Reflex::MemberBase::FunctionParameterName_RBegin (  )  const [inline, virtual]

Definition at line 752 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterName_RBegin().

Reflex::Reverse_StdString_Iterator Reflex::MemberBase::FunctionParameterName_REnd (  )  const [inline, virtual]

Definition at line 760 of file MemberBase.h.

References Reflex::Dummy::StdStringCont().

Referenced by Reflex::Member::FunctionParameterName_REnd().

PropertyList Reflex::MemberBase::Properties (  )  const

Properties will return a pointer to the property list attached to this item

Returns:
pointer to property list

Referenced by Reflex::Member::Properties().

void Reflex::MemberBase::Set ( const Object instance,
const void *  value 
) const [inline, virtual]

Set the member value

Definition at line 774 of file MemberBase.h.

void Reflex::MemberBase::SetScope ( const Scope scope  )  const [inline]

Set the type of the member

Definition at line 782 of file MemberBase.h.

References fScope.

Referenced by Reflex::Member::SetScope().

void * Reflex::MemberBase::Stubcontext (  )  const [inline, virtual]

return the context of the member

Definition at line 790 of file MemberBase.h.

Referenced by Reflex::Member::Stubcontext().

Reflex::StubFunction Reflex::MemberBase::Stubfunction (  )  const [inline, virtual]

return the pointer to the stub function

Definition at line 798 of file MemberBase.h.

Referenced by Reflex::Member::Stubfunction().

virtual Type Reflex::MemberBase::TemplateArgumentAt ( size_t  nth  )  const [virtual]

TemplateArgumentAt will return a pointer to the nth template argument

Parameters:
nth nth template argument
Returns:
pointer to nth template argument

Referenced by Reflex::Member::TemplateArgumentAt().

size_t Reflex::MemberBase::TemplateArgumentSize (  )  const [inline, virtual]

TemplateArgumentSize will return the number of template arguments

Returns:
number of template arguments

Definition at line 806 of file MemberBase.h.

Referenced by Reflex::Member::TemplateArgumentSize().

Reflex::Type_Iterator Reflex::MemberBase::TemplateArgument_Begin (  )  const [inline, virtual]

Definition at line 814 of file MemberBase.h.

References Reflex::Dummy::TypeCont().

Referenced by Reflex::Member::TemplateArgument_Begin().

Reflex::Type_Iterator Reflex::MemberBase::TemplateArgument_End (  )  const [inline, virtual]

Definition at line 822 of file MemberBase.h.

References Reflex::Dummy::TypeCont().

Referenced by Reflex::Member::TemplateArgument_End().

Reflex::Reverse_Type_Iterator Reflex::MemberBase::TemplateArgument_RBegin (  )  const [inline, virtual]

Definition at line 830 of file MemberBase.h.

References Reflex::Dummy::TypeCont().

Referenced by Reflex::Member::TemplateArgument_RBegin().

Reflex::Reverse_Type_Iterator Reflex::MemberBase::TemplateArgument_REnd (  )  const [inline, virtual]

Definition at line 838 of file MemberBase.h.

References Reflex::Dummy::TypeCont().

Referenced by Reflex::Member::TemplateArgument_REnd().

Reflex::MemberTemplate Reflex::MemberBase::TemplateFamily (  )  const [inline, virtual]

TemplateFamily returns the corresponding MemberTemplate if any

Returns:
corresponding MemberTemplate

Definition at line 846 of file MemberBase.h.

References Reflex::Dummy::MemberTemplate().

Referenced by Reflex::Member::TemplateFamily().

Reflex::Type Reflex::MemberBase::TypeOf (  )  const [inline]

return pointer to member type

Definition at line 854 of file MemberBase.h.

References fType.

Referenced by Reflex::Member::TypeOf().

void Reflex::MemberBase::UpdateFunctionParameterNames ( const char *  parameters  )  [inline, virtual]

UpdateFunctionParameterNames updates the names of parameters

Parameters:
parameters new list of ';' separated parameter names, must not specify default values

Definition at line 862 of file MemberBase.h.

Referenced by Reflex::Member::UpdateFunctionParameterNames().

void* Reflex::MemberBase::CalculateBaseObject ( const Object obj  )  const [protected]

CalculateBaseObject will calculate the inheritance between an object and the local type if necessary

Parameters:
obj the object from which the calculation should start
Returns:
memory address of new local object relative to obj


Member Data Documentation

Type Reflex::MemberBase::fType [protected]

characteristics of the Member Member 1 1

Definition at line 324 of file MemberBase.h.

Referenced by TypeOf().

unsigned int Reflex::MemberBase::fModifiers [protected]

all modifiers of the member

Definition at line 328 of file MemberBase.h.

Referenced by IsAbstract(), IsArtificial(), IsAuto(), IsConst(), IsConstructor(), IsConverter(), IsCopyConstructor(), IsDestructor(), IsExplicit(), IsExtern(), IsInline(), IsMutable(), IsOperator(), IsPrivate(), IsProtected(), IsPublic(), IsRegister(), IsStatic(), IsTransient(), IsVirtual(), and IsVolatile().

LiteralString Reflex::MemberBase::fName [private]

name of member

Definition at line 332 of file MemberBase.h.

Referenced by Name(), and Name_c_str().

Scope Reflex::MemberBase::fScope [mutable, private]

scope of the member member scope 1 1

Definition at line 343 of file MemberBase.h.

Referenced by SetScope().

TYPE Reflex::MemberBase::fMemberType [private]

the kind of member ( data/function-member) member type 1 1

Definition at line 353 of file MemberBase.h.

Referenced by IsDataMember(), IsFunctionMember(), IsTemplateInstance(), and MemberType().

OwnedPropertyList Reflex::MemberBase::fPropertyList [private]

property list propertylist 1 0..1

Definition at line 363 of file MemberBase.h.

Member* Reflex::MemberBase::fThisMember [private]

pointer back to the member object this member 1 1

Definition at line 373 of file MemberBase.h.


The documentation for this class was generated from the following file:
Generated on Tue Jul 5 16:56:46 2011 for ROOT_528-00b_version by  doxygen 1.5.1