Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var COMPARATOR_SYMBOLS = map[string]OperatorSymbol{ "==": EQ, "!=": NEQ, ">": GT, ">=": GTE, "<": LT, "<=": LTE, }
map of all valid symbols
View Source
var LOGICAL_SYMBOLS = map[string]OperatorSymbol{ "&&": AND, "||": OR, }
View Source
var MODIFIER_SYMBOLS = map[string]OperatorSymbol{ "+": PLUS, "-": MINUS, "*": MULTIPLY, "/": DIVIDE, }
View Source
var VALID_LEXER_STATES = []lexerState{ lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, lexerState{ // contains filtered or unexported fields }, }
lexer states. Constant for all purposes except compiler.
Functions ¶
func GetTokenKindString ¶
Types ¶
type EvaluableExpression ¶
type EvaluableExpression struct {
// contains filtered or unexported fields
}
func NewEvaluableExpression ¶
func NewEvaluableExpression(expression string) (*EvaluableExpression, error)
func (EvaluableExpression) Evaluate ¶
func (this EvaluableExpression) Evaluate(parameters map[string]interface{}) (interface{}, error)
func (EvaluableExpression) String ¶
func (this EvaluableExpression) String() string
func (EvaluableExpression) Tokens ¶
func (this EvaluableExpression) Tokens() []ExpressionToken
type ExpressionToken ¶
type ExpressionToken struct { Kind TokenKind Value interface{} Evaluate func(left interface{}, right interface{}) interface{} }
Represents a single parsed token.
type OperatorSymbol ¶
type OperatorSymbol int
const ( EQ OperatorSymbol = iota NEQ GT LT GTE LTE AND OR PLUS MINUS MULTIPLY DIVIDE )
Click to show internal directories.
Click to hide internal directories.