Versions in this module Expand all Collapse all v0 v0.0.1 Apr 13, 2023 Changes in this version + var ErrSyntax = errors.New("invalid syntax") + var NodeTypeName = map[NodeType]string + func UnquoteExtend(s string) (string, error) + type ArrayNode struct + Params [3]ParamsEntry + func (a *ArrayNode) String() string + type BoolNode struct + Value bool + func (b *BoolNode) String() string + type FieldNode struct + Value string + func (f *FieldNode) String() string + type FilterNode struct + Left *ListNode + Operator string + Right *ListNode + func (f *FilterNode) String() string + type FloatNode struct + Value float64 + func (i *FloatNode) String() string + type IdentifierNode struct + Name string + func (f *IdentifierNode) String() string + type IntNode struct + Value int + func (i *IntNode) String() string + type JSONPath struct + func New(name string) *JSONPath + func (j *JSONPath) AllowMissingKeys(allow bool) *JSONPath + func (j *JSONPath) EnableJSONOutput(v bool) + func (j *JSONPath) Execute(wr io.Writer, data interface{}) error + func (j *JSONPath) FindResults(data interface{}) ([][]reflect.Value, error) + func (j *JSONPath) Parse(text string) error + func (j *JSONPath) PrintResults(wr io.Writer, results []reflect.Value) error + type ListNode struct + Nodes []Node + func (l *ListNode) String() string + type Node interface + String func() string + Type func() NodeType + type NodeType int + const NodeArray + const NodeBool + const NodeField + const NodeFilter + const NodeFloat + const NodeIdentifier + const NodeInt + const NodeList + const NodeRecursive + const NodeText + const NodeUnion + const NodeWildcard + func (t NodeType) String() string + func (t NodeType) Type() NodeType + type ParamsEntry struct + Derived bool + Known bool + Value int + type Parser struct + Name string + Root *ListNode + func NewParser(name string) *Parser + func Parse(name, text string) (*Parser, error) + func (p *Parser) Parse(text string) error + type RecursiveNode struct + func (r *RecursiveNode) String() string + type TextNode struct + Text string + func (t *TextNode) String() string + type UnionNode struct + Nodes []*ListNode + func (u *UnionNode) String() string + type WildcardNode struct + func (i *WildcardNode) String() string