org.apache.poi.ss.formula.functions
Class BooleanFunction
java.lang.Object
org.apache.poi.ss.formula.functions.BooleanFunction
- All Implemented Interfaces:
- Function
public abstract class BooleanFunction
- extends java.lang.Object
- implements Function
Here are the general rules concerning Boolean functions:
- Blanks are ignored (not either true or false)
- Strings are ignored if part of an area ref or cell ref, otherwise they must be 'true' or 'false'
- Numbers: 0 is false. Any other number is TRUE
- Areas: *all* cells in area are evaluated according to the above rules
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AND
public static final Function AND
OR
public static final Function OR
FALSE
public static final Function FALSE
TRUE
public static final Function TRUE
NOT
public static final Function NOT
BooleanFunction
public BooleanFunction()
evaluate
public final ValueEval evaluate(ValueEval[] args,
int srcRow,
int srcCol)
- Specified by:
evaluate
in interface Function
- Parameters:
args
- the evaluated function arguments. Empty values are represented with
BlankEval
or MissingArgEval
, never null
.srcRow
- row index of the cell containing the formula under evaluationsrcCol
- column index of the cell containing the formula under evaluation
- Returns:
- The evaluated result, possibly an
ErrorEval
, never null
.
Note - Excel uses the error code #NUM! instead of IEEE NaN, so when
numeric functions evaluate to Double.NaN
be sure to translate the result to ErrorEval.NUM_ERROR
.
getInitialResultValue
protected abstract boolean getInitialResultValue()
partialEvaluate
protected abstract boolean partialEvaluate(boolean cumulativeResult,
boolean currentValue)