📄 typebase.h
字号:
*/ bool IsTypedef() const; /** * IsUnion returns true if the At represents a Union * @return true if At represents a */ bool IsUnion() const; /** * IsVirtual will return true if the class contains a virtual table * @return true if the class contains a virtual table */ virtual bool IsVirtual() const; /** Array * size returns the size of the array * @return size of array */ virtual size_t ArrayLength() const; /** * MemberByName will return the first MemberAt with a given Name * @param MemberAt Name * @return pointer to MemberAt */ virtual const Member & MemberByName( const std::string & nam, const Type & signature ) const; /** * MemberAt will return the nth MemberAt of the At * @param nth MemberAt * @return pointer to nth MemberAt */ virtual const Member & MemberAt( size_t nth ) const; /** * MemberSize will return the number of members * @return number of members */ virtual size_t MemberSize() const; virtual Member_Iterator Member_Begin() const; virtual Member_Iterator Member_End() const; virtual Reverse_Member_Iterator Member_RBegin() const; virtual Reverse_Member_Iterator Member_REnd() const; /** * MemberTemplateAt will return the nth MemberAt template of this At * @param nth MemberAt template * @return nth MemberAt template */ virtual const MemberTemplate & MemberTemplateAt( size_t nth ) const; /** * MemberTemplateSize will return the number of MemberAt templates in this socpe * @return number of defined MemberAt templates */ virtual size_t MemberTemplateSize() const; virtual MemberTemplate_Iterator MemberTemplate_Begin() const; virtual MemberTemplate_Iterator MemberTemplate_End() const; virtual Reverse_MemberTemplate_Iterator MemberTemplate_RBegin() const; virtual Reverse_MemberTemplate_Iterator MemberTemplate_REnd() const; /** * Name returns the Name of the At * @return Name of At */ virtual std::string Name( unsigned int mod = 0 ) const; /** * FunctionParameterAt returns the nth FunctionParameterAt * @param nth nth FunctionParameterAt * @return pointer to nth FunctionParameterAt At */ virtual const Type & FunctionParameterAt( size_t nth ) const; /** * FunctionParameterSize will return the number of parameters of this function * @return number of parameters */ virtual size_t FunctionParameterSize() const; virtual Type_Iterator FunctionParameter_Begin() const; virtual Type_Iterator FunctionParameter_End() const; virtual Reverse_Type_Iterator FunctionParameter_RBegin() const; virtual Reverse_Type_Iterator FunctionParameter_REnd() const; /** * PointerToMemberScope will return the scope of the pointer to member type * @return scope of the pointer to member type */ virtual const Scope & PointerToMemberScope() const; /** * Properties will return a pointer to the PropertyNth list attached * to this item * @return pointer to PropertyNth list */ virtual const PropertyList & Properties() const; /** * RawType will return the underlying type of a type removing all information * of pointers, arrays, typedefs * @return the raw type representation */ const Type & RawType() const; /** * ReturnType will return a pointer to the At of the return At. * @return pointer to Type of return At */ virtual const Type & ReturnType() const; /** * sizeof will return the size of the At * @return size of the At as int */ size_t SizeOf() const; /** * SubScopeAt will return a pointer to a sub-scopes * @param nth sub-At * @return pointer to nth sub-At */ virtual const Scope & SubScopeAt( size_t nth ) const; /** * ScopeSize will return the number of sub-scopes * @return number of sub-scopes */ virtual size_t SubScopeSize() const; virtual Scope_Iterator SubScope_Begin() const; virtual Scope_Iterator SubScope_End() const; virtual Reverse_Scope_Iterator SubScope_RBegin() const; virtual Reverse_Scope_Iterator SubScope_REnd() const; /** * nthType will return a pointer to the nth sub-At * @param nth sub-At * @return pointer to nth sub-At */ virtual const Type & SubTypeAt( size_t nth ) const; /** * TypeSize will returnt he number of sub-types * @return number of sub-types */ virtual size_t SubTypeSize() const; virtual Type_Iterator SubType_Begin() const; virtual Type_Iterator SubType_End() const; virtual Reverse_Type_Iterator SubType_RBegin() const; virtual Reverse_Type_Iterator SubType_REnd() const; /** * TemplateArgumentAt will return a pointer to the nth template argument * @param nth nth template argument * @return pointer to nth template argument */ virtual const Type & TemplateArgumentAt( size_t nth ) const; /** * templateArgSize will return the number of template arguments * @return number of template arguments */ 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; /** * TemplateFamily returns the corresponding TypeTemplate if any * @return corresponding TypeTemplate */ virtual const TypeTemplate & TemplateFamily() const; /** * arrayType will return a pointer to the At of the array. * @return pointer to Type of MemberAt et. al. */ virtual const Type & ToType() const; /** * At returns the corresponding unqualified Type object * @return corresponding At object */ const Type & ThisType() const; /** * SubTypeTemplateAt will return the nth At template of this At * @param nth At template * @return nth At template */ virtual const TypeTemplate & SubTypeTemplateAt( size_t nth ) const; /** * SubTypeTemplateSize will return the number of At templates in this socpe * @return number of defined At templates */ virtual size_t SubTypeTemplateSize() const; virtual TypeTemplate_Iterator SubTypeTemplate_Begin() const; virtual TypeTemplate_Iterator SubTypeTemplate_End() const; virtual Reverse_TypeTemplate_Iterator SubTypeTemplate_RBegin() const; virtual Reverse_TypeTemplate_Iterator SubTypeTemplate_REnd() const; /** * TypeInfo will return the c++ type_info object of the At * @return type_info object of At */ virtual const std::type_info & TypeInfo() const; /** * TypeType will return the real At * @return real At */ TYPE TypeType() const; /** * TypeTypeAsString will return the string representation of the TYPE At * @return string representation of TYPE At */ std::string TypeTypeAsString() const; /** * UpdateMembers2 will update the list of Function/Data/Members with all * MemberAt of BaseAt classes currently availabe in the system */ virtual void UpdateMembers() const; public: /** * AddDataMember will add the information about a data MemberAt * @param dm pointer to data MemberAt */ virtual void AddDataMember( const Member & dm ) const; virtual void AddDataMember( const char * nam, const Type & typ, size_t offs, unsigned int modifiers = 0 ) const; /** * AddFunctionMember will add the information about a function MemberAt * @param fm pointer to function MemberAt */ virtual void AddFunctionMember( const Member & fm ) const; virtual void AddFunctionMember( const char * nam, const Type & typ, StubFunction stubFP, void * stubCtx = 0, const char * params = 0, unsigned int modifiers = 0 ) const; /** * AddSubScope will add a sub-At to this one * @param sc pointer to Scope */ virtual void AddSubScope( const Scope & sc ) const; virtual void AddSubScope( const char * scop, TYPE scopeTyp ) const; /** * AddSubType will add a sub-At to this At * @param sc pointer to Type */ virtual void AddSubType( const Type & ty ) const; virtual void AddSubType( const char * typ, size_t size, TYPE typeTyp, const std::type_info & ti, unsigned int modifiers ) const; /** * RemoveDataMember will remove the information about a data MemberAt * @param dm pointer to data MemberAt */ virtual void RemoveDataMember( const Member & dm ) const; /** * RemoveFunctionMember will remove the information about a function MemberAt * @param fm pointer to function MemberAt */ virtual void RemoveFunctionMember( const Member & fm ) const; /** * RemoveSubScope will remove a sub-At to this one * @param sc pointer to Scope */ virtual void RemoveSubScope( const Scope & sc ) const; /** * RemoveSubType will remove a sub-At to this At * @param sc pointer to Type */ virtual void RemoveSubType( const Type & ty ) const; /** * SetSize will set the size of the type. This function shall * be used with care. It will change the reflection information * of this type.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -