org.apache.poi.hssf.record.formula.eval
Class TwoOperandNumericOperation
java.lang.Object
org.apache.poi.hssf.record.formula.eval.TwoOperandNumericOperation
- All Implemented Interfaces:
- Function
public abstract class TwoOperandNumericOperation
- extends java.lang.Object
- implements Function
- Author:
- Josh Micich
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AddEval
public static final Function AddEval
DivideEval
public static final Function DivideEval
MultiplyEval
public static final Function MultiplyEval
PowerEval
public static final Function PowerEval
SubtractEval
public static final Function SubtractEval
TwoOperandNumericOperation
public TwoOperandNumericOperation()
singleOperandEvaluate
protected final double singleOperandEvaluate(ValueEval arg,
int srcCellRow,
int srcCellCol)
throws EvaluationException
- Throws:
EvaluationException
evaluate
public final ValueEval evaluate(ValueEval[] args,
int srcCellRow,
short srcCellCol)
- Specified by:
evaluate
in interface Function
- Parameters:
args
- the evaluated function arguments. Empty values are represented with
BlankEval
or MissingArgEval
, never null
.srcCellRow
- row index of the cell containing the formula under evaluationsrcCellCol
- 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
.
evaluate
protected abstract double evaluate(double d0,
double d1)
throws EvaluationException
- Throws:
EvaluationException
Copyright 2009 The Apache Software Foundation or
its licensors, as applicable.