| Puma Reference Manual | Puma: Puma::CRecord Class Reference |
Semantic information about a class or union. More...
#include <Puma/CRecord.h>
Inherits Puma::CStructure.
Inherited by Puma::CClassInfo, and Puma::CUnionInfo.
Public Member Functions | |
| ~CRecord () | |
| Destructor. | |
| CTemplateInfo * | TemplateInfo () const |
| Get the template information if this is a class or union template. | |
| void | TemplateInfo (CTemplateInfo *info) |
| Set the template information of a class/union template. | |
| void | QualifiedScope (CStructure *scope) |
| Set the qualification scope of a nested class or union or class/union declared in a namespace. | |
| bool | isComplete (unsigned long pos=0) const |
| Check if the class/union is complete (defined) at the given source code position. | |
| bool | isDefined () const |
| Check if the class/union is defined. | |
| bool | isTemplate () const |
| Check if the class/union is a template. | |
| bool | isHiddenForwardDecl () const |
| Check if this is a class/union forward declaration hidden by another declaration in the same scope. | |
| bool | hasTrivialAssign () const |
| Yields true if the class has a trivial copy assignment operator. | |
| bool | hasTrivialCopy () const |
| Yields true if the class has a trivial copy constructor. | |
| bool | hasTrivialCtor () const |
| Yields true if the class has a trivial default constructor. | |
| bool | hasTrivialDtor () const |
| Yields true if the class has a trivial destructor. | |
| void | isTemplate (bool v) |
| Set whether this class/union is a template. | |
| void | isHiddenForwardDecl (bool v) |
| Set whether this is a class/union forward declaration hidden by another declaration in the same scope. | |
Protected Member Functions | |
| CRecord (ObjectId id) | |
| Constructor. | |
Semantic information about a class or union.
| Puma::CRecord::CRecord | ( | CObjectInfo::ObjectId | id | ) | [inline, protected] |
Constructor.
| id | The object type. |
| Puma::CRecord::~CRecord | ( | ) |
Destructor.
| bool Puma::CRecord::hasTrivialAssign | ( | ) | const |
Yields true if the class has a trivial copy assignment operator.
| bool Puma::CRecord::hasTrivialCopy | ( | ) | const |
Yields true if the class has a trivial copy constructor.
| bool Puma::CRecord::hasTrivialCtor | ( | ) | const |
Yields true if the class has a trivial default constructor.
| bool Puma::CRecord::hasTrivialDtor | ( | ) | const |
Yields true if the class has a trivial destructor.
| bool Puma::CRecord::isComplete | ( | unsigned long | pos = 0 |
) | const |
Check if the class/union is complete (defined) at the given source code position.
The position is specified by the unique number of the CT_Token tree node representing the name of the class/union.
| pos | The source code position. |
| bool Puma::CRecord::isDefined | ( | ) | const |
Check if the class/union is defined.
| void Puma::CRecord::isHiddenForwardDecl | ( | bool | v | ) | [inline] |
Set whether this is a class/union forward declaration hidden by another declaration in the same scope.
| v | true if it is a hidden forward declaration. |
| bool Puma::CRecord::isHiddenForwardDecl | ( | ) | const [inline] |
Check if this is a class/union forward declaration hidden by another declaration in the same scope.
| void Puma::CRecord::isTemplate | ( | bool | v | ) | [inline] |
Set whether this class/union is a template.
| v | true if it is a template. |
| bool Puma::CRecord::isTemplate | ( | ) | const [inline] |
Check if the class/union is a template.
Reimplemented from Puma::CObjectInfo.
| void Puma::CRecord::QualifiedScope | ( | CStructure * | scope | ) | [inline] |
Set the qualification scope of a nested class or union or class/union declared in a namespace.
| scope | The qualification scope. |
| void Puma::CRecord::TemplateInfo | ( | CTemplateInfo * | info | ) | [inline] |
Set the template information of a class/union template.
| info | The template information. |
| CTemplateInfo * Puma::CRecord::TemplateInfo | ( | ) | const [inline] |
Get the template information if this is a class or union template.
Reimplemented from Puma::CObjectInfo.