Versions in this module Expand all Collapse all v0 v0.1.0 Aug 11, 2021 Changes in this version + var DUMMY_PARAMETERS = MapParameters(map[string]interface{}{}) + type EvaluableExpression struct + ChecksTypes bool + QueryDateFormat string + func NewEvaluableExpression(expression string) (*EvaluableExpression, error) + func NewEvaluableExpressionFromTokens(tokens []ExpressionToken) (*EvaluableExpression, error) + func NewEvaluableExpressionWithFunctions(expression string, functions map[string]ExpressionFunction) (*EvaluableExpression, error) + func (this EvaluableExpression) Eval(parameters Parameters) (interface{}, error) + func (this EvaluableExpression) Evaluate(parameters map[string]interface{}) (interface{}, error) + func (this EvaluableExpression) String() string + func (this EvaluableExpression) ToSQLQuery() (string, error) + func (this EvaluableExpression) Tokens() []ExpressionToken + func (this EvaluableExpression) Vars() []string + type ExpressionFunction func(arguments ...interface{}) (interface{}, error) + type ExpressionToken struct + Kind TokenKind + Value interface{} + type MapParameters map[string]interface + func (p MapParameters) Get(name string) (interface{}, error) + type OperatorSymbol int + const ACCESS + const AND + const BITWISE_AND + const BITWISE_LSHIFT + const BITWISE_NOT + const BITWISE_OR + const BITWISE_RSHIFT + const BITWISE_XOR + const COALESCE + const DIVIDE + const EQ + const EXPONENT + const FUNCTIONAL + const GT + const GTE + const IN + const INVERT + const LITERAL + const LT + const LTE + const MINUS + const MODULUS + const MULTIPLY + const NEGATE + const NEQ + const NOOP + const NREQ + const OR + const PLUS + const REQ + const SEPARATE + const TERNARY_FALSE + const TERNARY_TRUE + const VALUE + func (this OperatorSymbol) IsModifierType(candidate []OperatorSymbol) bool + func (this OperatorSymbol) String() string + type Parameters interface + Get func(name string) (interface{}, error) + type TokenKind int + const ACCESSOR + const BOOLEAN + const CLAUSE + const CLAUSE_CLOSE + const COMPARATOR + const FUNCTION + const LOGICALOP + const MODIFIER + const NUMERIC + const PATTERN + const PREFIX + const SEPARATOR + const STRING + const TERNARY + const TIME + const UNKNOWN + const VARIABLE + func (kind TokenKind) String() string