Class RemapCRsVisitor

java.lang.Object
org.apache.derby.impl.sql.compile.RemapCRsVisitor
All Implemented Interfaces:
Visitor

class RemapCRsVisitor extends Object implements Visitor
Remap/unremap the CRs to the underlying expression.
  • Field Details

    • remap

      private boolean remap
  • Constructor Details

    • RemapCRsVisitor

      RemapCRsVisitor(boolean remap)
  • Method Details

    • visit

      public Visitable visit(Visitable node) throws StandardException
      Don't do anything unless we have a ColumnReference node.
      Specified by:
      visit in interface Visitor
      Parameters:
      node - the node to process
      Returns:
      me
      Throws:
      StandardException - on error
    • skipChildren

      public boolean skipChildren(Visitable node)
      No need to go below a SubqueryNode.
      Specified by:
      skipChildren in interface Visitor
      Parameters:
      node - the node to process
      Returns:
      Whether or not to go below the node.
    • visitChildrenFirst

      public boolean visitChildrenFirst(Visitable node)
      Description copied from interface: Visitor
      Method that is called to see if visit() should be called on the children of node before it is called on node itself. If this method always returns true, the visitor will walk the tree bottom-up. If it always returns false, the tree is visited top-down.
      Specified by:
      visitChildrenFirst in interface Visitor
      Parameters:
      node - the top node of a sub-tree about to be visited
      Returns:
      true if node's children should be visited before node, 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 interface Visitor
      Returns:
      true/false