org.apache.poi.hssf.record.formula.eval
Class TwoOperandNumericOperation

java.lang.Object
  extended by 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

Field Summary
static Function AddEval
           
static Function DivideEval
           
static Function MultiplyEval
           
static Function PowerEval
           
static Function SubtractEval
           
 
Constructor Summary
TwoOperandNumericOperation()
           
 
Method Summary
protected abstract  double evaluate(double d0, double d1)
           
 ValueEval evaluate(ValueEval[] args, int srcCellRow, short srcCellCol)
           
protected  double singleOperandEvaluate(ValueEval arg, int srcCellRow, int srcCellCol)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

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
Constructor Detail

TwoOperandNumericOperation

public TwoOperandNumericOperation()
Method Detail

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 evaluation
srcCellCol - 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.