com.metamatrix.query.sql.visitor
Class EvaluatableVisitor

java.lang.Object
  extended by com.metamatrix.query.sql.LanguageVisitor
      extended by com.metamatrix.query.sql.visitor.EvaluatableVisitor

public class EvaluatableVisitor
extends LanguageVisitor

This visitor class will traverse a language object tree, and determine if the current expression can be evaluated

The public visit() methods should NOT be called directly.

There are three possible scenarios: duringPlanning | fullyEvaluatable --------------------------------- false | false = will become processing time constant false | true = processing time evaluation possible true | true = planning time evaluation possible (should always be deterministic)


Field Summary
protected  boolean evaluationPossible
           
 
Constructor Summary
EvaluatableVisitor(boolean duringPlanning, boolean fullyEvaluatable)
           
 
Method Summary
 boolean isEvaluationPossible()
           
 void visit(AggregateSymbol obj)
           
 void visit(DependentSetCriteria obj)
           
 void visit(ElementSymbol obj)
           
 void visit(ExistsCriteria obj)
           
 void visit(ExpressionSymbol obj)
           
 void visit(Function obj)
           
 void visit(Reference obj)
           
 void visit(ScalarSubquery obj)
           
 void visit(StoredProcedure proc)
           
 void visit(SubqueryCompareCriteria obj)
           
 void visit(SubquerySetCriteria obj)
           
 
Methods inherited from class com.metamatrix.query.sql.LanguageVisitor
setAbort, shouldAbort, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

evaluationPossible

protected boolean evaluationPossible
Constructor Detail

EvaluatableVisitor

public EvaluatableVisitor(boolean duringPlanning,
                          boolean fullyEvaluatable)
Method Detail

visit

public void visit(Function obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(ElementSymbol obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(ExpressionSymbol obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(AggregateSymbol obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(Reference obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(StoredProcedure proc)
Overrides:
visit in class LanguageVisitor

visit

public void visit(ScalarSubquery obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(DependentSetCriteria obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(ExistsCriteria obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(SubquerySetCriteria obj)
Overrides:
visit in class LanguageVisitor

visit

public void visit(SubqueryCompareCriteria obj)
Overrides:
visit in class LanguageVisitor

isEvaluationPossible

public boolean isEvaluationPossible()


Copyright © 2009. All Rights Reserved.