Class RemapCRsVisitor
java.lang.Object
org.apache.derby.impl.sql.compile.RemapCRsVisitor
- All Implemented Interfaces:
Visitor
Remap/unremap the CRs to the underlying
expression.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
skipChildren
(Visitable node) No need to go below a SubqueryNode.boolean
Method that is called to see if query tree traversal should be stopped before visiting all nodes.Don't do anything unless we have a ColumnReference node.boolean
visitChildrenFirst
(Visitable node) Method that is called to see ifvisit()
should be called on the children ofnode
before it is called onnode
itself.
-
Field Details
-
remap
private boolean remap
-
-
Constructor Details
-
RemapCRsVisitor
RemapCRsVisitor(boolean remap)
-
-
Method Details
-
visit
Don't do anything unless we have a ColumnReference node.- Specified by:
visit
in interfaceVisitor
- Parameters:
node
- the node to process- Returns:
- me
- Throws:
StandardException
- on error
-
skipChildren
No need to go below a SubqueryNode.- Specified by:
skipChildren
in interfaceVisitor
- Parameters:
node
- the node to process- Returns:
- Whether or not to go below the node.
-
visitChildrenFirst
Description copied from interface:Visitor
Method that is called to see ifvisit()
should be called on the children ofnode
before it is called onnode
itself. If this method always returnstrue
, the visitor will walk the tree bottom-up. If it always returnsfalse
, the tree is visited top-down.- Specified by:
visitChildrenFirst
in interfaceVisitor
- Parameters:
node
- the top node of a sub-tree about to be visited- Returns:
true
ifnode
's children should be visited beforenode
,false
otherwise
-
stopTraversal
public boolean stopTraversal()Description copied from interface:Visitor
Method that is called to see if query tree traversal should be stopped before visiting all nodes. Useful for short circuiting traversal if we already know we are done.- Specified by:
stopTraversal
in interfaceVisitor
- Returns:
- true/false
-