Package org.apache.poi.ss.formula
Class OperationEvaluationContext
- java.lang.Object
-
- 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
Fields Modifier and Type Field Description static FreeRefFunction
UDF
-
Constructor Summary
Constructors Constructor Description 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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FreeRefFunction
findUserDefinedFunction(java.lang.String functionName)
ValueEval
getArea3DEval(Area3DPtg aptg)
ValueEval
getArea3DEval(Area3DPxg aptg)
ValueEval
getAreaEval(int firstRowIndex, int firstColumnIndex, int lastRowIndex, int lastColumnIndex)
ValueEval
getAreaValueEval(int firstRowIndex, int firstColumnIndex, int lastRowIndex, int lastColumnIndex, java.lang.Object[][] tokens)
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
isArraymode()
boolean
isSingleValue()
default truevoid
setArrayMode(boolean value)
-
-
-
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
-
isArraymode
public boolean isArraymode()
-
setArrayMode
public void setArrayMode(boolean value)
-
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. Ifnull
the current workbook is assumed. Note - to evaluate formulas which use multiple workbooks, aCollaboratingWorkbooksEnvironment
must be set up.sheetName
- the name of the sheet containing the reference. May benull
(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 benull
.refStrPart2
- the second part of the area reference. For single cell references this parameter must benull
isA1Style
- specifies the format for refStrPart1 and refStrPart2. Passtrue
for 'A1' style andfalse
for 'R1C1' style. TODO - currently POI only supports 'A1' reference style- Returns:
- a
RefEval
orAreaEval
-
findUserDefinedFunction
public FreeRefFunction findUserDefinedFunction(java.lang.String functionName)
-
getRefEval
public ValueEval getRefEval(int rowIndex, int columnIndex)
-
getAreaEval
public ValueEval getAreaEval(int firstRowIndex, int firstColumnIndex, int lastRowIndex, int lastColumnIndex)
-
getAreaValueEval
public ValueEval getAreaValueEval(int firstRowIndex, int firstColumnIndex, int lastRowIndex, int lastColumnIndex, java.lang.Object[][] tokens)
-
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
-
-