Versions in this module Expand all Collapse all v0 v0.4.0 Dec 19, 2025 Changes in this version + const FlagV1 + func VisitNode(exprNode Node, callback func(node Node)) + type BinaryNode struct + Left Node + Op string + Right Node + func (n *BinaryNode) String() string + type FunctionNode struct + Args []Node + Name string + func (n *FunctionNode) String() string + type Lexer struct + func NewLexer(expr string, flags int) *Lexer + func (l *Lexer) Next() *Token + func (l *Lexer) UnclosedTokens() []TokenKind + type Node interface + String func() string + func Parse(expression string) (Node, error) + type OpToken struct + StartPos int + type Parser struct + type Token struct + Index int + Kind TokenKind + Raw string + Value interface{} + type TokenKind int + const TokenKindBoolean + const TokenKindDereference + const TokenKindEndGroup + const TokenKindEndIndex + const TokenKindEndParameters + const TokenKindFunction + const TokenKindLogicalOperator + const TokenKindNamedValue + const TokenKindNull + const TokenKindNumber + const TokenKindPropertyName + const TokenKindSeparator + const TokenKindStartGroup + const TokenKindStartIndex + const TokenKindStartParameters + const TokenKindString + const TokenKindUnexpected + const TokenKindWildcard + type UnaryNode struct + Op string + Operand Node + func (n *UnaryNode) String() string + type ValueNode struct + Kind TokenKind + Value interface{} + func (n *ValueNode) String() string