@Override public void visit( FullTextSearchScore score ) { strategy.visit(score); visitNext(); }
@Override public void visit( ChildCount childCount ) { strategy.visit(childCount); visitNext(); }
@Override public void visit( ArithmeticOperand arithmeticOperation ) { strategy.visit(arithmeticOperation); enqueue(arithmeticOperation.getLeft()); enqueue(arithmeticOperation.getRight()); visitNext(); }
@Override public void visit( UpperCase upperCase ) { strategy.visit(upperCase); enqueue(upperCase.getOperand()); visitNext(); }
@Override public void visit( SameNode sameNode ) { strategy.visit(sameNode); visitNext(); }
@Override public void visit( Query query ) { strategy.visit(query); enqueue(query.source()); enqueue(query.columns()); enqueue(query.constraint()); enqueue(query.orderings()); visitNext(); }
@Override public void visit( Not not ) { strategy.visit(not); enqueue(not.getConstraint()); visitNext(); }
@Override public void visit( NodeLocalName nodeLocalName ) { strategy.visit(nodeLocalName); visitNext(); }
@Override public void visit( NodePath path ) { strategy.visit(path); visitNext(); }
@Override public void visit( Literal literal ) { strategy.visit(literal); visitNext(); }
@Override public void visit( DescendantNode descendant ) { strategy.visit(descendant); visitNext(); }
@Override public void visit( BindVariableName variableName ) { strategy.visit(variableName); visitNext(); }
@Override public void visit( SetQuery setQuery ) { strategy.visit(setQuery); enqueue(setQuery.getLeft()); enqueue(setQuery.getRight()); visitNext(); }
@Override public void visit( SetCriteria setCriteria ) { strategy.visit(setCriteria); enqueue(setCriteria.leftOperand()); for (StaticOperand right : setCriteria.rightOperands()) { enqueue(right); } visitNext(); }
@Override public void visit( Ordering ordering ) { strategy.visit(ordering); enqueue(ordering.getOperand()); visitNext(); }
@Override public void visit( NodePath path ) { strategy.visit(path); visitNext(); }
@Override public void visit( Length length ) { strategy.visit(length); visitNext(); }
@Override public void visit( Relike relike ) { strategy.visit(relike); enqueue(relike.getOperand1()); enqueue(relike.getOperand2()); visitNext(); }
@Override public void visit( ChildNodeJoinCondition joinCondition ) { strategy.visit(joinCondition); visitNext(); }
@Override public void visit( And and ) { strategy.visit(and); enqueue(and.left()); enqueue(and.right()); visitNext(); }