Versions in this module Expand all Collapse all v0 v0.1.6 Jan 27, 2026 Changes in this version + func AddConstant(alias string, value *Node) + func AddFunction(alias string, function Function) + func AddMultiArgFunction(alias string, function MultiArgFunction) + func AddOperation(alias string, prior uint8, right bool, operation Operation) + func IsMultiArgFunction(name string) bool + func Marshal(node *Node) (result []byte, err error) + func ParseJSONPath(path string) (result []string, err error) + func Paths(array []*Node) []string + type Error struct + Char byte + Index int + Message string + Type ErrorType + Value interface{} + func (err Error) Error() string + type ErrorType int + const UnexpectedEOF + const Unparsed + const UnsupportedType + const WrongRequest + const WrongSymbol + const WrongType + type Function func(node *Node) (result *Node, err error) + type MultiArgFunction func(args []*Node) (result *Node, err error) + func GetMultiArgFunction(name string) (MultiArgFunction, bool) + type Node struct + func ApplyJSONPath(node *Node, commands []string) (result []*Node, err error) + func ArrayNode(key string, value []*Node) (current *Node) + func BoolNode(key string, value bool) (current *Node) + func Eval(node *Node, cmd string) (result *Node, err error) + func JSONPath(data []byte, path string) (result []*Node, err error) + func Must(root *Node, err error) *Node + func NullNode(key string) *Node + func NumericNode(key string, value float64) (current *Node) + func ObjectNode(key string, value map[string]*Node) (current *Node) + func StringNode(key string, value string) (current *Node) + func Unmarshal(data []byte) (root *Node, err error) + func UnmarshalSafe(data []byte) (root *Node, err error) + func (n *Node) AppendArray(value ...*Node) error + func (n *Node) AppendObject(key string, value *Node) error + func (n *Node) Clone() *Node + func (n *Node) Delete() error + func (n *Node) DeleteIndex(index int) error + func (n *Node) DeleteKey(key string) error + func (n *Node) DeleteNode(value *Node) error + func (n *Node) Empty() bool + func (n *Node) Eq(node *Node) (result bool, err error) + func (n *Node) Ge(node *Node) (result bool, err error) + func (n *Node) Geq(node *Node) (result bool, err error) + func (n *Node) GetArray() (value []*Node, err error) + func (n *Node) GetBool() (value bool, err error) + func (n *Node) GetIndex(index int) (*Node, error) + func (n *Node) GetKey(key string) (*Node, error) + func (n *Node) GetNull() (interface{}, error) + func (n *Node) GetNumeric() (value float64, err error) + func (n *Node) GetObject() (value map[string]*Node, err error) + func (n *Node) GetString() (value string, err error) + func (n *Node) HasKey(key string) bool + func (n *Node) Index() int + func (n *Node) Inheritors() (result []*Node) + func (n *Node) IsArray() bool + func (n *Node) IsBool() bool + func (n *Node) IsDirty() bool + func (n *Node) IsNull() bool + func (n *Node) IsNumeric() bool + func (n *Node) IsObject() bool + func (n *Node) IsString() bool + func (n *Node) JSONPath(path string) (result []*Node, err error) + func (n *Node) Key() string + func (n *Node) Keys() (result []string) + func (n *Node) Le(node *Node) (result bool, err error) + func (n *Node) Leq(node *Node) (result bool, err error) + func (n *Node) MustArray() (value []*Node) + func (n *Node) MustBool() (value bool) + func (n *Node) MustIndex(index int) (value *Node) + func (n *Node) MustKey(key string) (value *Node) + func (n *Node) MustNull() (value interface{}) + func (n *Node) MustNumeric() (value float64) + func (n *Node) MustObject() (value map[string]*Node) + func (n *Node) MustString() (value string) + func (n *Node) Neq(node *Node) (result bool, err error) + func (n *Node) Parent() *Node + func (n *Node) Path() string + func (n *Node) PopIndex(index int) (node *Node, err error) + func (n *Node) PopKey(key string) (node *Node, err error) + func (n *Node) Set(value interface{}) error + func (n *Node) SetArray(value []*Node) error + func (n *Node) SetBool(value bool) error + func (n *Node) SetNode(value *Node) error + func (n *Node) SetNull() error + func (n *Node) SetNumeric(value float64) error + func (n *Node) SetObject(value map[string]*Node) error + func (n *Node) SetString(value string) error + func (n *Node) Size() int + func (n *Node) Source() []byte + func (n *Node) String() string + func (n *Node) Type() NodeType + func (n *Node) Unpack() (value interface{}, err error) + func (n *Node) Value() (value interface{}, err error) + type NodeType int32 + const Array + const Bool + const Null + const Numeric + const Object + const String + type Operation func(left *Node, right *Node) (result *Node, err error) + type TernaryOperation func(condition *Node, trueVal *Node, falseVal *Node) (result *Node, err error)