ROSE 0.11.145.192
|
Represents a class property definition.
A property is somewhat like a class data member, except it has accessors and mutators. This node represents a property definition.
#include <Rosebud/Ast.h>
Public Types | |
using | Ptr = PropertyPtr |
Shared-ownership pointer. | |
Public Types inherited from Rosebud::Ast::Definition | |
using | Ptr = DefinitionPtr |
Shared-ownership pointer. | |
Public Types inherited from Rosebud::Ast::Node | |
using | Ptr = NodePtr |
Public Types inherited from Sawyer::Tree::Vertex< Node > | |
using | UserBase = Node |
User's base class. | |
using | UserBasePtr = std::shared_ptr< UserBase > |
Pointer to user's base class. | |
using | TraversalEvent = Sawyer::Tree::TraversalEvent |
Alias for traversal events. | |
Static Public Member Functions | |
static Ptr | instance () |
Allocating constructor. | |
Public Attributes | |
Edge< TokenList > | cType |
Optional pointer to tokens that define the property type. | |
Edge< TokenList > | cInit |
Optional pointer to tokens that define the property's initial value. | |
Sawyer::Optional< std::string > | dataMemberName |
Optional data member name override. | |
Sawyer::Optional< std::vector< std::string > > | accessorNames |
Optional override for accessor names. | |
Sawyer::Optional< std::vector< std::string > > | mutatorNames |
Optional override for mutator names. | |
Sawyer::Optional< std::string > | serializerBaseName |
Optional override for the serializer name. | |
Public Attributes inherited from Rosebud::Ast::Definition | |
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. | |
Public Attributes inherited from Sawyer::Tree::Vertex< Node > | |
ReverseEdge | parent |
Pointer to the parent in the tree. | |
Protected Member Functions | |
Property () | |
Default constructor used only by derived classes. | |
Protected Member Functions inherited from Rosebud::Ast::Definition | |
Definition () | |
Default constructor used only by derived classes. | |
Protected Member Functions inherited from Sawyer::Tree::Vertex< Node > | |
virtual void | destructorHelper () |
Additional Inherited Members | |
Public Member Functions inherited from Rosebud::Ast::Definition | |
AttributePtr | findAttribute (const std::string &fqName) |
Finds an attribute with the specified fully qualified name. | |
Public Member Functions inherited from Rosebud::Ast::Node | |
template<class T > | |
std::shared_ptr< T > | findAncestor () |
Public Member Functions inherited from Sawyer::Tree::Vertex< Node > | |
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. | |
Sawyer::Optional<std::string> Rosebud::Ast::Property::dataMemberName |
Sawyer::Optional<std::vector<std::string> > Rosebud::Ast::Property::accessorNames |
Sawyer::Optional<std::vector<std::string> > Rosebud::Ast::Property::mutatorNames |
Sawyer::Optional<std::string> Rosebud::Ast::Property::serializerBaseName |