#include <autotoolsast.h>

Public Types | |
enum | Kind { Project, Target, ConditionalScope, Rule, Empty } |
![]() | |
enum | NodeType { ProjectAST, AssignmentAST, TargetAST, MakefileConditionalAST, NewLineAST, CommentAST } |
Public Member Functions | |
ProjectAST (Kind kind=Project) | |
virtual void | writeBack (TQString &buffer) |
virtual void | addChildAST (AST *node) |
bool | isProject () const |
bool | isRule () const |
bool | isConditionalScope () const |
bool | isEmpty () const |
![]() | |
AST (NodeType nodeType) | |
virtual NodeType | nodeType () const |
void | setDepth (int depth) |
int | depth () const |
virtual TQString | indentation () |
bool | hasChildren () const |
TQValueList< AST * > | children () const |
Public Attributes | |
TQString | scopedID |
TQString | args |
bool | hasElse |
TQValueList< AutoTools::AST * > | statements |
Additional Inherited Members | |
![]() | |
NodeType | m_nodeType |
TQValueList< AST * > | m_children |
Detailed Description
Project AST node.
Represents complete projects, scopes and function scopes. Examples:
Definition at line 122 of file autotoolsast.h.
Member Enumeration Documentation
◆ Kind
The kind of a project node.
Enumerator | |
---|---|
Project | Project. |
Target | Custom Automake Target. |
ConditionalScope | Automake Conditional. |
Rule | Automake Rule. |
Empty | Project does not exist. the AST is empty. |
Definition at line 126 of file autotoolsast.h.
Constructor & Destructor Documentation
◆ ProjectAST()
Constructs a project node of given kind
.
Definition at line 136 of file autotoolsast.h.
Member Function Documentation
◆ addChildAST()
|
virtual |
Adds child AST node to this node.
Despite this function is virtual, reimplementations should call it to make automatic destruction of AST tree possible.
Reimplemented from AutoTools::AST.
Definition at line 84 of file autotoolsast.cpp.
◆ isConditionalScope()
|
inline |
- Returns
- true if this node is an automake conditional
Definition at line 147 of file autotoolsast.h.
◆ isEmpty()
|
inline |
- Returns
- true if this node is empty.
Definition at line 150 of file autotoolsast.h.
◆ isProject()
|
inline |
- Returns
- true if this node is a project.
Definition at line 142 of file autotoolsast.h.
◆ writeBack()
|
virtual |
Writes information stored in the AST into the buffer
.
This is a default implementation which iterates over child nodes and calls writeBack for each child node.
Reimplemented from AutoTools::AST.
Definition at line 73 of file autotoolsast.cpp.
Member Data Documentation
◆ args
TQString AutoTools::ProjectAST::args |
Function arguments.
Empty for other kinds of projects.
Definition at line 156 of file autotoolsast.h.
◆ hasElse
bool AutoTools::ProjectAST::hasElse |
The automake conditional has an else attached.
Definition at line 159 of file autotoolsast.h.
◆ scopedID
TQString AutoTools::ProjectAST::scopedID |
Scoped identifier (scope name or rule).
Definition at line 153 of file autotoolsast.h.
◆ statements
TQValueList<AutoTools::AST*> AutoTools::ProjectAST::statements |
List of statements.
Definition at line 162 of file autotoolsast.h.
The documentation for this class was generated from the following files: