Documentation
¶
Overview ¶
Package efp (Excel Formula Parser) tokenize an Excel formula using an implementation of E. W. Bachtal's algorithm.
Go language version by Ri Xu: https://xuri.me
Index ¶
Constants ¶
View Source
const ( // Character constants QuoteDouble = '"' QuoteSingle = '\'' BracketClose = ']' BracketOpen = '[' BraceOpen = '{' BraceClose = '}' ParenOpen = '(' ParenClose = ')' Semicolon = ';' Whitespace = ' ' Comma = ',' ErrorStart = '#' OperatorsSN = "+-" OperatorsInfix = "+-*/^&=><" OperatorsPostfix = '%' // Token type TokenTypeNoop = "Noop" TokenTypeOperand = "Operand" TokenTypeFunction = "Function" TokenTypeSubexpression = "Subexpression" TokenTypeArgument = "Argument" TokenTypeOperatorPrefix = "OperatorPrefix" TokenTypeOperatorInfix = "OperatorInfix" TokenTypeOperatorPostfix = "OperatorPostfix" TokenTypeWhitespace = "Whitespace" TokenTypeUnknown = "Unknown" // Token subtypes TokenSubTypeStart = "Start" TokenSubTypeStop = "Stop" TokenSubTypeText = "Text" TokenSubTypeNumber = "Number" TokenSubTypeLogical = "Logical" TokenSubTypeError = "Error" TokenSubTypeRange = "Range" TokenSubTypeMath = "Math" TokenSubTypeConcatenation = "Concatenation" TokenSubTypeIntersection = "Intersection" TokenSubTypeUnion = "Union" )
QuoteDouble, QuoteSingle and other's constants are token definitions.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Parser ¶
type Parser struct { Formula string Tokens Tokens TokenStack Tokens Offset int InString bool InPath bool InRange bool InError bool // contains filtered or unexported fields }
Parser inheritable container. TokenStack directly maps a LIFO stack of tokens.
func ExcelParser ¶
func ExcelParser() Parser
ExcelParser provides function to parse an Excel formula into a stream of tokens.
func (*Parser) PrettyPrint ¶
PrettyPrint provides function to pretty the parsed result with the indented format.
Click to show internal directories.
Click to hide internal directories.