public class FormulaEngineImpl extends java.lang.Object implements FormulaEngine
Modifier and Type | Class and Description |
---|---|
protected static class |
FormulaEngineImpl.EvalContext |
protected static class |
FormulaEngineImpl.EvaluationResultImpl |
protected static interface |
FormulaEngineImpl.FormulaAdjuster |
protected static class |
FormulaEngineImpl.FormulaExpressionImpl |
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
KEY_EVALUATORS |
protected static IStabilityClassifier |
noCacheClassifier |
KEY_EXTERNAL_BOOK_NAMES, KEY_SHEET_INDEXES
Constructor and Description |
---|
FormulaEngineImpl() |
Modifier and Type | Method and Description |
---|---|
void |
clearCache(FormulaClearContext context) |
static EvaluationResult |
convertToEvaluationResult(ValueEval value) |
EvaluationResult |
evaluate(FormulaExpression expr,
FormulaEvaluationContext context) |
protected EvaluationResult |
evaluateFormula(FormulaExpression expr,
FormulaEvaluationContext context,
EvalBook evalBook,
WorkbookEvaluator evaluator) |
protected ValueEval |
evaluateFormulaExpression(WorkbookEvaluator evaluator,
int sheetIndex,
FormulaExpression expr,
boolean ignoreDereference,
Ref dependent) |
FormulaExpression |
extend(java.lang.String formula,
SheetRegion srcRegion,
boolean horizontal,
FormulaParseContext context) |
FormulaExpression |
extendPtgs(FormulaExpression fe,
SheetRegion srcRegion,
boolean horizontal,
FormulaParseContext context) |
protected FormulaEngineImpl.FormulaAdjuster |
getMoveAdjuster(SheetRegion region,
int rowOffset,
int columnOffset) |
protected FormulaEngineImpl.FormulaAdjuster |
getRenameNameAdjuster(int sheetIndex,
java.lang.String oldName,
java.lang.String newName) |
protected FormulaEngineImpl.FormulaAdjuster |
getRenameSheetAdjuster(SBook targetBook,
java.lang.String oldSheetName,
java.lang.String newSheetName) |
protected FormulaEngineImpl.FormulaAdjuster |
getReorderSheetAdjuster(SBook targetBook,
int oldIndex,
int newIndex) |
protected static org.zkoss.zss.model.impl.sys.formula.FormulaEngineImpl.ResultValueEval |
getResolvedValue(ValueEval value) |
protected FormulaEngineImpl.FormulaAdjuster |
getShiftAdjuster(int rowOffset,
int columnOffset) |
protected FormulaEngineImpl.FormulaAdjuster |
getTransposeAdjuster(int rowOrigin,
int columnOrigin) |
protected java.lang.Object |
getXelContext() |
FormulaExpression |
move(java.lang.String formula,
SheetRegion region,
int rowOffset,
int columnOffset,
FormulaParseContext context)
Shift the formula that care on sheet and region.
|
FormulaExpression |
movePtgs(FormulaExpression fe,
SheetRegion region,
int rowOffset,
int columnOffset,
FormulaParseContext context)
Shift the formula that care on sheet and region.
|
FormulaExpression |
parse(java.lang.String formula,
FormulaParseContext context) |
protected Ptg[] |
parse(java.lang.String formula,
FormulaParsingWorkbook book,
int sheetIndex,
FormulaParseContext context) |
FormulaExpression |
renameColumnNameTablePtgs(FormulaExpression fexpr,
STable table,
java.lang.String oldName,
java.lang.String newName,
FormulaParseContext context) |
FormulaExpression |
renameName(java.lang.String formula,
SBook targetBook,
int sheetIndex,
java.lang.String oldName,
java.lang.String newName,
FormulaParseContext context) |
FormulaExpression |
renameName(java.lang.String formula,
SBook targetBook,
java.lang.String oldName,
java.lang.String newName,
FormulaParseContext context) |
FormulaExpression |
renameNamePtgs(FormulaExpression fe,
SBook targetBook,
int sheetIndex,
java.lang.String oldName,
java.lang.String newName,
FormulaParseContext context) |
FormulaExpression |
renameSheet(java.lang.String formula,
SBook targetBook,
java.lang.String oldSheetName,
java.lang.String newSheetName,
FormulaParseContext context) |
FormulaExpression |
renameSheetPtgs(FormulaExpression fe,
SBook targetBook,
java.lang.String oldSheetName,
java.lang.String newSheetName,
FormulaParseContext context) |
FormulaExpression |
renameTableNameTablePtgs(FormulaExpression fexpr,
SBook book,
java.lang.String oldName,
java.lang.String newName,
FormulaParseContext context) |
protected java.lang.String |
renderFormula(ParsingBook parsingBook,
java.lang.String formula,
Ptg[] tokens,
boolean always) |
FormulaExpression |
reorderSheetPtgs(FormulaExpression fexpr,
SBook targetBook,
int oldIndex,
int newIndex,
FormulaParseContext context) |
protected void |
setXelContext(java.lang.Object ctx) |
FormulaExpression |
shift(java.lang.String formula,
int rowOffset,
int columnOffset,
FormulaParseContext context)
Shift the formula base on the offset
|
FormulaExpression |
shiftPtgs(FormulaExpression fe,
int rowOffset,
int columnOffset,
FormulaParseContext context)
Shift the formula base on the offset
|
FormulaExpression |
shrink(java.lang.String formula,
SheetRegion srcRegion,
boolean horizontal,
FormulaParseContext context) |
FormulaExpression |
shrinkPtgs(FormulaExpression fe,
SheetRegion srcRegion,
boolean horizontal,
FormulaParseContext context) |
protected Ref |
toDependRef(FormulaParseContext ctx,
ParsingBook parsingBook,
Ptg ptg,
int ptgIndex) |
FormulaExpression |
transpose(java.lang.String formula,
int rowOrigin,
int columnOrigin,
FormulaParseContext context)
Transpose the formula base one the origin
|
FormulaExpression |
transposePtgs(FormulaExpression fe,
int rowOrigin,
int columnOrigin,
FormulaParseContext context)
Transpose the formula base one the origin
|
void |
updateDependencyTable(FormulaExpression fexpr,
FormulaParseContext context) |
public static final java.lang.String KEY_EVALUATORS
protected static final IStabilityClassifier noCacheClassifier
public FormulaExpression parse(java.lang.String formula, FormulaParseContext context)
parse
in interface FormulaEngine
protected Ptg[] parse(java.lang.String formula, FormulaParsingWorkbook book, int sheetIndex, FormulaParseContext context)
protected java.lang.String renderFormula(ParsingBook parsingBook, java.lang.String formula, Ptg[] tokens, boolean always)
protected Ref toDependRef(FormulaParseContext ctx, ParsingBook parsingBook, Ptg ptg, int ptgIndex)
public EvaluationResult evaluate(FormulaExpression expr, FormulaEvaluationContext context)
evaluate
in interface FormulaEngine
protected EvaluationResult evaluateFormula(FormulaExpression expr, FormulaEvaluationContext context, EvalBook evalBook, WorkbookEvaluator evaluator) throws FormulaParseException, java.lang.Exception
FormulaParseException
java.lang.Exception
public static EvaluationResult convertToEvaluationResult(ValueEval value) throws EvaluationException
EvaluationException
protected static org.zkoss.zss.model.impl.sys.formula.FormulaEngineImpl.ResultValueEval getResolvedValue(ValueEval value) throws EvaluationException
EvaluationException
protected java.lang.Object getXelContext()
protected void setXelContext(java.lang.Object ctx)
public void clearCache(FormulaClearContext context)
clearCache
in interface FormulaEngine
public FormulaExpression move(java.lang.String formula, SheetRegion region, int rowOffset, int columnOffset, FormulaParseContext context)
FormulaEngine
move
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getMoveAdjuster(SheetRegion region, int rowOffset, int columnOffset)
public FormulaExpression shrink(java.lang.String formula, SheetRegion srcRegion, boolean horizontal, FormulaParseContext context)
shrink
in interface FormulaEngine
public FormulaExpression extend(java.lang.String formula, SheetRegion srcRegion, boolean horizontal, FormulaParseContext context)
extend
in interface FormulaEngine
public FormulaExpression shift(java.lang.String formula, int rowOffset, int columnOffset, FormulaParseContext context)
FormulaEngine
shift
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getShiftAdjuster(int rowOffset, int columnOffset)
public FormulaExpression transpose(java.lang.String formula, int rowOrigin, int columnOrigin, FormulaParseContext context)
FormulaEngine
transpose
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getTransposeAdjuster(int rowOrigin, int columnOrigin)
public FormulaExpression renameSheet(java.lang.String formula, SBook targetBook, java.lang.String oldSheetName, java.lang.String newSheetName, FormulaParseContext context)
renameSheet
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getRenameSheetAdjuster(SBook targetBook, java.lang.String oldSheetName, java.lang.String newSheetName)
public FormulaExpression renameName(java.lang.String formula, SBook targetBook, java.lang.String oldName, java.lang.String newName, FormulaParseContext context)
renameName
in interface FormulaEngine
public FormulaExpression renameName(java.lang.String formula, SBook targetBook, int sheetIndex, java.lang.String oldName, java.lang.String newName, FormulaParseContext context)
renameName
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getRenameNameAdjuster(int sheetIndex, java.lang.String oldName, java.lang.String newName)
public FormulaExpression movePtgs(FormulaExpression fe, SheetRegion region, int rowOffset, int columnOffset, FormulaParseContext context)
FormulaEngine
movePtgs
in interface FormulaEngine
public FormulaExpression shrinkPtgs(FormulaExpression fe, SheetRegion srcRegion, boolean horizontal, FormulaParseContext context)
shrinkPtgs
in interface FormulaEngine
public FormulaExpression extendPtgs(FormulaExpression fe, SheetRegion srcRegion, boolean horizontal, FormulaParseContext context)
extendPtgs
in interface FormulaEngine
public FormulaExpression shiftPtgs(FormulaExpression fe, int rowOffset, int columnOffset, FormulaParseContext context)
FormulaEngine
shiftPtgs
in interface FormulaEngine
public FormulaExpression transposePtgs(FormulaExpression fe, int rowOrigin, int columnOrigin, FormulaParseContext context)
FormulaEngine
transposePtgs
in interface FormulaEngine
public FormulaExpression renameSheetPtgs(FormulaExpression fe, SBook targetBook, java.lang.String oldSheetName, java.lang.String newSheetName, FormulaParseContext context)
renameSheetPtgs
in interface FormulaEngine
public FormulaExpression renameNamePtgs(FormulaExpression fe, SBook targetBook, int sheetIndex, java.lang.String oldName, java.lang.String newName, FormulaParseContext context)
renameNamePtgs
in interface FormulaEngine
public void updateDependencyTable(FormulaExpression fexpr, FormulaParseContext context)
updateDependencyTable
in interface FormulaEngine
protected ValueEval evaluateFormulaExpression(WorkbookEvaluator evaluator, int sheetIndex, FormulaExpression expr, boolean ignoreDereference, Ref dependent)
public FormulaExpression reorderSheetPtgs(FormulaExpression fexpr, SBook targetBook, int oldIndex, int newIndex, FormulaParseContext context)
reorderSheetPtgs
in interface FormulaEngine
protected FormulaEngineImpl.FormulaAdjuster getReorderSheetAdjuster(SBook targetBook, int oldIndex, int newIndex)
public FormulaExpression renameTableNameTablePtgs(FormulaExpression fexpr, SBook book, java.lang.String oldName, java.lang.String newName, FormulaParseContext context)
renameTableNameTablePtgs
in interface FormulaEngine
public FormulaExpression renameColumnNameTablePtgs(FormulaExpression fexpr, STable table, java.lang.String oldName, java.lang.String newName, FormulaParseContext context)
renameColumnNameTablePtgs
in interface FormulaEngine
Copyright © 2005-2010 Potix Corporation. All Rights Reserved.