org.apache.poi.ss.formula
Class FormulaParser

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

public final class FormulaParser
extends java.lang.Object

This class parses a formula string into a List of tokens in RPN order. Inspired by Lets Build a Compiler, by Jack Crenshaw BNF for the formula expression is : ::= [ ]* ::= [ ]* ::= | () | | ::= ([expression [, expression]*])

For POI internal use only


Method Summary
static Ptg[] parse(java.lang.String formula, FormulaParsingWorkbook workbook, int formulaType, int sheetIndex)
          Parse a formula into a array of tokens Side effect: creates name (Workbook.createName) if formula contains unrecognized names (names are likely UDFs)
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

parse

public static Ptg[] parse(java.lang.String formula,
                          FormulaParsingWorkbook workbook,
                          int formulaType,
                          int sheetIndex)
Parse a formula into a array of tokens Side effect: creates name (Workbook.createName) if formula contains unrecognized names (names are likely UDFs)

Parameters:
formula - the formula to parse
workbook - the parent workbook
formulaType - the type of the formula, see FormulaType
sheetIndex - the 0-based index of the sheet this formula belongs to. The sheet index is required to resolve sheet-level names. -1 means that the scope of the name will be ignored and the parser will match names only by name
Returns:
array of parsed tokens
Throws:
FormulaParseException - if the formula has incorrect syntax or is otherwise invalid


Copyright 2016 The Apache Software Foundation or its licensors, as applicable.