• Skip to content
  • Skip to link menu
Trinity API Reference
  • Trinity API Reference
  • KDevelop AutoTools Parser
 

KDevelop AutoTools Parser

  • AutoTools
  • ProjectAST
Public Types | Public Member Functions | Public Attributes | List of all members
AutoTools::ProjectAST Class Reference

#include <autotoolsast.h>

Inheritance diagram for AutoTools::ProjectAST:
AutoTools::AST

Public Types

enum  Kind {
  Project, Target, ConditionalScope, Rule,
  Empty
}
 
- Public Types inherited from AutoTools::AST
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
 
- Public Member Functions inherited from AutoTools::AST
 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

- Protected Attributes inherited from AutoTools::AST
NodeType m_nodeType
 
TQValueList< AST * > m_children
 

Detailed Description

Project AST node.

Represents complete projects, scopes and function scopes. Examples:

scopename{
var=value
}
function(args){
var=value
}

Definition at line 122 of file autotoolsast.h.

Member Enumeration Documentation

◆ Kind

enum AutoTools::ProjectAST::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()

AutoTools::ProjectAST::ProjectAST ( Kind  kind = Project)
inline

Constructs a project node of given kind.

Definition at line 136 of file autotoolsast.h.

Member Function Documentation

◆ addChildAST()

void AutoTools::ProjectAST::addChildAST ( AST *  node)
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()

bool AutoTools::ProjectAST::isConditionalScope ( ) const
inline
Returns
true if this node is an automake conditional

Definition at line 147 of file autotoolsast.h.

◆ isEmpty()

bool AutoTools::ProjectAST::isEmpty ( ) const
inline
Returns
true if this node is empty.

Definition at line 150 of file autotoolsast.h.

◆ isProject()

bool AutoTools::ProjectAST::isProject ( ) const
inline
Returns
true if this node is a project.

Definition at line 142 of file autotoolsast.h.

◆ writeBack()

void AutoTools::ProjectAST::writeBack ( TQString &  buffer)
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:
  • autotoolsast.h
  • autotoolsast.cpp

KDevelop AutoTools Parser

Skip menu "KDevelop AutoTools Parser"
  • Main Page
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members

KDevelop AutoTools Parser

Skip menu "KDevelop AutoTools Parser"
  • buildtools
  •   lib
  •     base
  •     parsers
  •       autotools
  •       qmake
  •     widgets
  •   api
  • languages
  •   lib
  •     debugger
  •     designer_integration
  •     interfaces
  • lib
  •   catalog
  •   interfaces
  •     extensions
  •     external
  •     extras
  •   util
  •   widgets
  •     propeditor
  • parts
  •   documentation
  •     interfaces
  • src
  •   profileengine
  •     lib
Generated for KDevelop AutoTools Parser by doxygen 1.8.13
This website is maintained by Timothy Pearson.