Represents a class definition.
Definition at line 363 of file Ast.h.
|
EdgeVector< Property > | properties |
| Non-null list of zero or more properties.
|
|
Inheritance | inheritance |
| Information about base classes.
|
|
std::string | endText |
| Text after the last member definition.
|
|
Token | endTextToken |
| Token that encloses endText.
|
|
std::string | tag |
| If non-empty, overrides the tag name for this type.
|
|
std::string | qualifiedNamespace |
| If non-empty, the qualified namespace in which this class is defined.
|
|
Token | startToken |
| Token at the start of the definition.
|
|
std::string | name |
| Unqualified name for the definition.
|
|
Token | nameToken |
| Token for the definition's unqualified name.
|
|
std::string | doc |
| Doxygen documentation comment.
|
|
Token | docToken |
| Token associated with the Doxygen comment.
|
|
Edge< CppStack > | cppStack |
| C preprocessor pending conditional compilation directives.
|
|
std::string | priorText |
| Input text before the definition.
|
|
Token | priorTextToken |
| Token describing the location of the prior text.
|
|
EdgeVector< Attribute > | attributes |
| Non-null pointer to the list of attributes controlling this property.
|
|
ReverseEdge | parent |
| Pointer to the parent in the tree.
|
|
|
AttributePtr | findAttribute (const std::string &fqName) |
| Finds an attribute with the specified fully qualified name.
|
|
template<class T > |
std::shared_ptr< T > | findAncestor () |
|
UserBasePtr | pointer () |
| Returns a shared pointer to this vertex.
|
|
std::shared_ptr< T > | isa () |
| Tests whether this object is a certain type.
|
|
auto | traverseReverse (const Visitor &visitor) |
| Traverse in reverse direction from children to parents.
|
|
auto | traverse (const Visitor &visitor) |
| Traverse in forward direction from parents to children.
|
|
auto | traversePre (const Visitor &visitor) |
| Pre-order forward traversal.
|
|
auto | traversePost (const Visitor &visitor) |
| Post-order forward traversal.
|
|
std::shared_ptr< T > | findFirstAncestor () |
| Traversal that finds the closest ancestor of type T or derived from T.
|
|
std::shared_ptr< T > | findLastAncestor () |
| Traversal that finds the farthest ancestor of type T or derived from T.
|
|
std::vector< std::shared_ptr< T > > | findDescendants () |
| Traversal that finds all the descendants of a particular type.
|
|
UserBasePtr | child (size_t i) const |
| Returns the pointer for a child.
|
|
size_t | nChildren () const |
| Returns the number of children.
|
|
std::string Rosebud::Ast::Class::endText |
Text after the last member definition.
This is the input text that appears after the last property definition and before the end of the entire class definition. It ends just before the closing curly brace for the class definition. If the class has no properties, then this is the entire body of the class definition (everthing between the opening and closing curly braces, excluding the braces).
The text is modified by removing trailing white space from each line, replacing consecutive blank lines with a single blank line, and removing leading and trailing blank lines.
Definition at line 386 of file Ast.h.