casacore::TaQLNodeVisitor Class Reference

Class to visit the nodes in the raw TaQL parse tree. More...

#include <TaQLNodeVisitor.h>

Inheritance diagram for casacore::TaQLNodeVisitor:
casacore::TaQLNodeHandler

List of all members.

Public Member Functions

virtual ~TaQLNodeVisitor ()
virtual TaQLNodeResult visitConstNode (const TaQLConstNodeRep &node)=0
 Define the functions to visit each node type.
virtual TaQLNodeResult visitRegexNode (const TaQLRegexNodeRep &node)=0
virtual TaQLNodeResult visitUnaryNode (const TaQLUnaryNodeRep &node)=0
virtual TaQLNodeResult visitBinaryNode (const TaQLBinaryNodeRep &node)=0
virtual TaQLNodeResult visitMultiNode (const TaQLMultiNodeRep &node)=0
virtual TaQLNodeResult visitFuncNode (const TaQLFuncNodeRep &node)=0
virtual TaQLNodeResult visitRangeNode (const TaQLRangeNodeRep &node)=0
virtual TaQLNodeResult visitIndexNode (const TaQLIndexNodeRep &node)=0
virtual TaQLNodeResult visitKeyColNode (const TaQLKeyColNodeRep &node)=0
virtual TaQLNodeResult visitTableNode (const TaQLTableNodeRep &node)=0
virtual TaQLNodeResult visitColNode (const TaQLColNodeRep &node)=0
virtual TaQLNodeResult visitColumnsNode (const TaQLColumnsNodeRep &node)=0
virtual TaQLNodeResult visitJoinNode (const TaQLJoinNodeRep &node)=0
virtual TaQLNodeResult visitGroupNode (const TaQLGroupNodeRep &node)=0
virtual TaQLNodeResult visitSortKeyNode (const TaQLSortKeyNodeRep &node)=0
virtual TaQLNodeResult visitSortNode (const TaQLSortNodeRep &node)=0
virtual TaQLNodeResult visitLimitOffNode (const TaQLLimitOffNodeRep &node)=0
virtual TaQLNodeResult visitGivingNode (const TaQLGivingNodeRep &node)=0
virtual TaQLNodeResult visitUpdExprNode (const TaQLUpdExprNodeRep &node)=0
virtual TaQLNodeResult visitSelectNode (const TaQLSelectNodeRep &node)=0
virtual TaQLNodeResult visitUpdateNode (const TaQLUpdateNodeRep &node)=0
virtual TaQLNodeResult visitInsertNode (const TaQLInsertNodeRep &node)=0
virtual TaQLNodeResult visitDeleteNode (const TaQLDeleteNodeRep &node)=0
virtual TaQLNodeResult visitCountNode (const TaQLCountNodeRep &node)=0
virtual TaQLNodeResult visitCalcNode (const TaQLCalcNodeRep &node)=0
virtual TaQLNodeResult visitCreTabNode (const TaQLCreTabNodeRep &node)=0
virtual TaQLNodeResult visitColSpecNode (const TaQLColSpecNodeRep &node)=0
virtual TaQLNodeResult visitRecFldNode (const TaQLRecFldNodeRep &node)=0
virtual TaQLNodeResult visitUnitNode (const TaQLUnitNodeRep &node)=0
virtual TaQLNodeResult visitAltTabNode (const TaQLAltTabNodeRep &node)=0
virtual TaQLNodeResult visitAddColNode (const TaQLAddColNodeRep &node)=0
virtual TaQLNodeResult visitSetKeyNode (const TaQLSetKeyNodeRep &node)=0
virtual TaQLNodeResult visitRenDropNode (const TaQLRenDropNodeRep &node)=0
virtual TaQLNodeResult visitAddRowNode (const TaQLAddRowNodeRep &node)=0
virtual TaQLNodeResult visitConcTabNode (const TaQLConcTabNodeRep &node)=0
virtual TaQLNodeResult visitShowNode (const TaQLShowNodeRep &node)=0

Protected Member Functions

TaQLNodeResult visitNode (const TaQLNode &node)
 A convenience function to visit the given node using this visitor.

Detailed Description

Class to visit the nodes in the raw TaQL parse tree.

Intended use:

Internal

Review Status

Test programs:
tTableGram

Prerequisite

Synopsis

TaQLNodeVisitor is the abstract base class for classes that want to visit a TaQLNode tree, i.e. traverse the tree. Each visit results in a TaQLNodeResult object which acts as the basis for the actual result object.
A specialization of TaQLNodeVisitor (e.g. class TaQLNodeHandler needs to implement the various visitXXNode functions. A visit function will process a node which usually means visiting its children, etc.\.

Motivation

The visitor design pattern separates the tree from the way it is processed. In this way any handler can be created. For instance, a query optimizer could be a future other handler.

Definition at line 73 of file TaQLNodeVisitor.h.


Constructor & Destructor Documentation

virtual casacore::TaQLNodeVisitor::~TaQLNodeVisitor (  )  [virtual]

Member Function Documentation

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAddColNode ( const TaQLAddColNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAddRowNode ( const TaQLAddRowNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAltTabNode ( const TaQLAltTabNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitBinaryNode ( const TaQLBinaryNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCalcNode ( const TaQLCalcNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColNode ( const TaQLColNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColSpecNode ( const TaQLColSpecNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColumnsNode ( const TaQLColumnsNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitConcTabNode ( const TaQLConcTabNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitConstNode ( const TaQLConstNodeRep &  node  )  [pure virtual]

Define the functions to visit each node type.

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCountNode ( const TaQLCountNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCreTabNode ( const TaQLCreTabNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitDeleteNode ( const TaQLDeleteNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitFuncNode ( const TaQLFuncNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitGivingNode ( const TaQLGivingNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitGroupNode ( const TaQLGroupNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitIndexNode ( const TaQLIndexNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitInsertNode ( const TaQLInsertNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitJoinNode ( const TaQLJoinNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitKeyColNode ( const TaQLKeyColNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitLimitOffNode ( const TaQLLimitOffNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitMultiNode ( const TaQLMultiNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

TaQLNodeResult casacore::TaQLNodeVisitor::visitNode ( const TaQLNode &  node  )  [inline, protected]

A convenience function to visit the given node using this visitor.

Definition at line 120 of file TaQLNodeVisitor.h.

References casacore::TaQLNode::visit().

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRangeNode ( const TaQLRangeNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRecFldNode ( const TaQLRecFldNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRegexNode ( const TaQLRegexNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRenDropNode ( const TaQLRenDropNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSelectNode ( const TaQLSelectNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSetKeyNode ( const TaQLSetKeyNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitShowNode ( const TaQLShowNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSortKeyNode ( const TaQLSortKeyNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSortNode ( const TaQLSortNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitTableNode ( const TaQLTableNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUnaryNode ( const TaQLUnaryNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUnitNode ( const TaQLUnitNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUpdateNode ( const TaQLUpdateNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUpdExprNode ( const TaQLUpdExprNodeRep &  node  )  [pure virtual]

Implemented in casacore::TaQLNodeHandler.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 31 Aug 2016 for casa by  doxygen 1.6.1