org.apache.poi.ss.formula
Class OperationEvaluationContext

java.lang.Object
  extended by org.apache.poi.ss.formula.OperationEvaluationContext

public final class OperationEvaluationContext
extends java.lang.Object

Contains all the contextual information required to evaluate an operation within a formula For POI internal use only


Field Summary
static FreeRefFunction UDF
           
 
Constructor Summary
OperationEvaluationContext(WorkbookEvaluator bookEvaluator, EvaluationWorkbook workbook, int sheetIndex, int srcRowNum, int srcColNum, org.apache.poi.ss.formula.EvaluationTracker tracker)
           
OperationEvaluationContext(WorkbookEvaluator bookEvaluator, EvaluationWorkbook workbook, int sheetIndex, int srcRowNum, int srcColNum, org.apache.poi.ss.formula.EvaluationTracker tracker, boolean isSingleValue)
           
 
Method Summary
 FreeRefFunction findUserDefinedFunction(java.lang.String functionName)
           
 ValueEval getArea3DEval(Area3DPtg aptg)
           
 ValueEval getArea3DEval(Area3DPxg aptg)
           
 ValueEval getAreaEval(int firstRowIndex, int firstColumnIndex, int lastRowIndex, int lastColumnIndex)
           
 int getColumnIndex()
           
 ValueEval getDynamicReference(java.lang.String workbookName, java.lang.String sheetName, java.lang.String refStrPart1, java.lang.String refStrPart2, boolean isA1Style)
          Resolves a cell or area reference dynamically.
 ValueEval getNameXEval(NameXPtg nameXPtg)
           
 ValueEval getNameXEval(NameXPxg nameXPxg)
           
 ValueEval getRef3DEval(Ref3DPtg rptg)
           
 ValueEval getRef3DEval(Ref3DPxg rptg)
           
 ValueEval getRefEval(int rowIndex, int columnIndex)
           
 org.apache.poi.ss.formula.SheetRangeEvaluator getRefEvaluatorForCurrentSheet()
           
 int getRowIndex()
           
 int getSheetIndex()
           
 EvaluationWorkbook getWorkbook()
           
 boolean isSingleValue()
          default true
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

UDF

public static final FreeRefFunction UDF
Constructor Detail

OperationEvaluationContext

public OperationEvaluationContext(WorkbookEvaluator bookEvaluator,
                                  EvaluationWorkbook workbook,
                                  int sheetIndex,
                                  int srcRowNum,
                                  int srcColNum,
                                  org.apache.poi.ss.formula.EvaluationTracker tracker)

OperationEvaluationContext

public OperationEvaluationContext(WorkbookEvaluator bookEvaluator,
                                  EvaluationWorkbook workbook,
                                  int sheetIndex,
                                  int srcRowNum,
                                  int srcColNum,
                                  org.apache.poi.ss.formula.EvaluationTracker tracker,
                                  boolean isSingleValue)
Method Detail

getWorkbook

public EvaluationWorkbook getWorkbook()

getRowIndex

public int getRowIndex()

getColumnIndex

public int getColumnIndex()

getRefEvaluatorForCurrentSheet

public org.apache.poi.ss.formula.SheetRangeEvaluator getRefEvaluatorForCurrentSheet()

getDynamicReference

public ValueEval getDynamicReference(java.lang.String workbookName,
                                     java.lang.String sheetName,
                                     java.lang.String refStrPart1,
                                     java.lang.String refStrPart2,
                                     boolean isA1Style)
Resolves a cell or area reference dynamically.

Parameters:
workbookName - the name of the workbook containing the reference. If null the current workbook is assumed. Note - to evaluate formulas which use multiple workbooks, a CollaboratingWorkbooksEnvironment must be set up.
sheetName - the name of the sheet containing the reference. May be null (when workbookName is also null) in which case the current workbook and sheet is assumed.
refStrPart1 - the single cell reference or first part of the area reference. Must not be null.
refStrPart2 - the second part of the area reference. For single cell references this parameter must be null
isA1Style - specifies the format for refStrPart1 and refStrPart2. Pass true for 'A1' style and false for 'R1C1' style. TODO - currently POI only supports 'A1' reference style
Returns:
a RefEval or AreaEval

findUserDefinedFunction

public FreeRefFunction findUserDefinedFunction(java.lang.String functionName)

getRefEval

public ValueEval getRefEval(int rowIndex,
                            int columnIndex)

getRef3DEval

public ValueEval getRef3DEval(Ref3DPtg rptg)

getRef3DEval

public ValueEval getRef3DEval(Ref3DPxg rptg)

getAreaEval

public ValueEval getAreaEval(int firstRowIndex,
                             int firstColumnIndex,
                             int lastRowIndex,
                             int lastColumnIndex)

getArea3DEval

public ValueEval getArea3DEval(Area3DPtg aptg)

getArea3DEval

public ValueEval getArea3DEval(Area3DPxg aptg)

getNameXEval

public ValueEval getNameXEval(NameXPtg nameXPtg)

getNameXEval

public ValueEval getNameXEval(NameXPxg nameXPxg)

getSheetIndex

public int getSheetIndex()

isSingleValue

public boolean isSingleValue()
default true

Returns:
flag indicating whether evaluation should "unwrap" the result to a single value based on the context row/column