Loading...
Searching...
No Matches
casacore::TaQLNodeVisitor Class Referenceabstract
tables package (libcasa_tables) » TaQL_module » TaQL_module_internal_classes

More...

`#include <TaQLNodeVisitor.h>`

## 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
virtual TaQLNodeResult | visitCopyColNode (const TaQLCopyColNodeRep &node)=0
virtual TaQLNodeResult | visitDropTabNode (const TaQLDropTabNodeRep &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

- TaQLNode
- Note 199 describing TaQL

### 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 71 of file TaQLNodeVisitor.h.

## Constructor & Destructor Documentation

## ~TaQLNodeVisitor()

virtual casacore::TaQLNodeVisitor::~TaQLNodeVisitor | ( |  | ) |

virtual

## Member Function Documentation

## visitAddColNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAddColNode | ( | const TaQLAddColNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitAddRowNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAddRowNode | ( | const TaQLAddRowNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitAltTabNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitAltTabNode | ( | const TaQLAltTabNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitBinaryNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitBinaryNode | ( | const TaQLBinaryNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitCalcNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCalcNode | ( | const TaQLCalcNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitColNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColNode | ( | const TaQLColNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitColSpecNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColSpecNode | ( | const TaQLColSpecNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitColumnsNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitColumnsNode | ( | const TaQLColumnsNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitConcTabNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitConcTabNode | ( | const TaQLConcTabNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitConstNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitConstNode | ( | const TaQLConstNodeRep & | node | ) |

pure virtual

Define the functions to visit each node type.

Implemented in casacore::TaQLNodeHandler.

## visitCopyColNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCopyColNode | ( | const TaQLCopyColNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitCountNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCountNode | ( | const TaQLCountNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitCreTabNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitCreTabNode | ( | const TaQLCreTabNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitDeleteNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitDeleteNode | ( | const TaQLDeleteNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitDropTabNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitDropTabNode | ( | const TaQLDropTabNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitFuncNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitFuncNode | ( | const TaQLFuncNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitGivingNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitGivingNode | ( | const TaQLGivingNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitGroupNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitGroupNode | ( | const TaQLGroupNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitIndexNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitIndexNode | ( | const TaQLIndexNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitInsertNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitInsertNode | ( | const TaQLInsertNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitJoinNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitJoinNode | ( | const TaQLJoinNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitKeyColNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitKeyColNode | ( | const TaQLKeyColNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitLimitOffNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitLimitOffNode | ( | const TaQLLimitOffNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitMultiNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitMultiNode | ( | const TaQLMultiNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitNode()

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().

## visitRangeNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRangeNode | ( | const TaQLRangeNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitRecFldNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRecFldNode | ( | const TaQLRecFldNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitRegexNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRegexNode | ( | const TaQLRegexNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitRenDropNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitRenDropNode | ( | const TaQLRenDropNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitSelectNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSelectNode | ( | const TaQLSelectNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitSetKeyNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSetKeyNode | ( | const TaQLSetKeyNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitShowNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitShowNode | ( | const TaQLShowNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitSortKeyNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSortKeyNode | ( | const TaQLSortKeyNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitSortNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitSortNode | ( | const TaQLSortNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitTableNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitTableNode | ( | const TaQLTableNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitUnaryNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUnaryNode | ( | const TaQLUnaryNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitUnitNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUnitNode | ( | const TaQLUnitNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitUpdateNode()

virtual TaQLNodeResult casacore::TaQLNodeVisitor::visitUpdateNode | ( | const TaQLUpdateNodeRep & | node | ) |

pure virtual

Implemented in casacore::TaQLNodeHandler.

## visitUpdExprNode()

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:

- tables/TaQL/TaQLNodeVisitor.h