Package org.apache.poi.ss.formula.eval
Class RelationalOperationEval
java.lang.Object
org.apache.poi.ss.formula.functions.Fixed2ArgFunction
org.apache.poi.ss.formula.eval.RelationalOperationEval
- All Implemented Interfaces:
ArrayFunction
,Function
,Function2Arg
Base class for all comparison operator evaluators
- Author:
- Amol S. Deshmukh < amolweb at ya hoo dot com >
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract boolean
convertComparisonResult
(int cmpResult) Converts a standard compare result (-1, 0, 1) totrue
orfalse
according to subclass' comparison type.This is a description of how the relational operators apply in MS Excel.evaluateArray
(ValueEval[] args, int srcRowIndex, int srcColumnIndex) Methods inherited from class org.apache.poi.ss.formula.functions.Fixed2ArgFunction
evaluate
-
Field Details
-
EqualEval
-
GreaterEqualEval
-
GreaterThanEval
-
LessEqualEval
-
LessThanEval
-
NotEqualEval
-
-
Constructor Details
-
RelationalOperationEval
public RelationalOperationEval()
-
-
Method Details
-
convertComparisonResult
protected abstract boolean convertComparisonResult(int cmpResult) Converts a standard compare result (-1, 0, 1) totrue
orfalse
according to subclass' comparison type. -
evaluate
This is a description of how the relational operators apply in MS Excel. Use this as a guideline when testing/implementing the evaluate methods for the relational operators Evals.Bool.TRUE > any number. Bool > any string. ALWAYS Bool.TRUE > Bool.FALSE Bool.FALSE == Blank Strings are never converted to numbers or booleans String > any number. ALWAYS Non-empty String > Blank Empty String == Blank String are sorted dictionary wise Blank > Negative numbers Blank == 0 Blank invalid input: '<' Positive numbers
- Specified by:
evaluate
in interfaceFunction2Arg
-
evaluateArray
- Specified by:
evaluateArray
in interfaceArrayFunction
- Parameters:
args
- the evaluated function arguments. Empty values are represented withBlankEval
orMissingArgEval
, nevernull
.srcRowIndex
- row index of the cell containing the formula under evaluationsrcColumnIndex
- column index of the cell containing the formula under evaluation- Returns:
- The evaluated result, possibly an
ErrorEval
, nevernull
. Note - Excel uses the error code #NUM! instead of IEEE NaN, so when numeric functions evaluate toDouble.NaN
be sure to translate the result toErrorEval.NUM_ERROR
.
-