|
QJCC homepage | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectbiz.chitec.quarterback.util.logic.EvaluatorExpr
Convenience method small evaluating expressions which grounds everything without evaluate(). If the whole engine of logical expressions is not needed for a certain use case, this class can be used as a convenience parent class for a tiny logical expression which just wants to implement evaluate().
| Nested Class Summary |
| Nested classes inherited from class biz.chitec.quarterback.util.logic.LogicExpr |
LogicExpr.Converter, LogicExpr.UniverseGenerator |
| Constructor Summary | |
EvaluatorExpr()
|
|
| Method Summary | |
java.lang.Object |
clone()
Deep-copy the logic expression. |
void |
convertValues(LogicExpr.Converter c)
Conversion of values in the expressions (e.g. for replacing external representations of database entries with their internal key) |
java.lang.Object[] |
getInternalVars()
Only for GJSA class parsers: get class variables to create object from a parsed string. |
int[] |
getResultSet(LogicExpr.UniverseGenerator generator)
Return all elements of the universe which match the expression |
boolean |
isReady()
Returns if the expression is actually evaluable, i.e. any of the evaluating methods can be called. |
boolean |
isTreeReady()
Returns whether this and all deeper expressions are evaluable. |
java.lang.String |
sqlString(java.util.Map identifiers)
Returns an SQL representation of the expression with the constant names replaced by the ones in the given Map. |
| Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface biz.chitec.quarterback.util.logic.LogicExpr |
evaluate |
| Constructor Detail |
public EvaluatorExpr()
| Method Detail |
public java.lang.Object clone()
throws java.lang.CloneNotSupportedException
LogicExprNote: This method must be defined in a way that makes it quite complicated to call it for simply cloning a logic expression tree: It returns an Object (which always happens to be a LogicExpr) and it might throw a CloneNotSupportedException - which will (a) never happen and is (b) no RuntimeException, so a caller would always have to catch it.
To make life simpler, there is a static method LogicExprUtilties.cloneLogicExpr() which will call clone() on the root object and take care of return value and exceptions.
clone in interface LogicExprjava.lang.CloneNotSupportedExceptionpublic void convertValues(LogicExpr.Converter c)
LogicExpr
convertValues in interface LogicExprpublic java.lang.Object[] getInternalVars()
LogicExpr
getInternalVars in interface LogicExprpublic int[] getResultSet(LogicExpr.UniverseGenerator generator)
LogicExpr
getResultSet in interface LogicExprpublic boolean isReady()
LogicExpr
isReady in interface LogicExprpublic boolean isTreeReady()
LogicExpr
isTreeReady in interface LogicExprpublic java.lang.String sqlString(java.util.Map identifiers)
LogicExpr
sqlString in interface LogicExpr
|
QJCC homepage | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||