Values

Dollar

Every JSONPath query (except those inside filter expressions) must begin with the root identifier $.

Whitespace

One or more blank spaces.

StringLiteral(value:String)

A string surrounded by single or double quotes

MemberName(value:String)

A string starting with a non-numeric character, followed by zero or more characters (possibly numeric)

Asterisk

A single * used as a wildcard selector

IntegerLiteral(value:Int)

An integer number, such as that used for an array index selector

NumberLiteral(value:Float)

A floating point number

Colon

A single : used as part of an array slice selector

Comma

A single , used to separate selectors in a bracketed selection

Question

A question mark ? used to start a filter selector

At

An at @ used to start a filter query

Dot

A single . used for a segment shorthand.

DoubleDot

A double dot .. used for descendant segments.

Comparison(op:String)

A comparison operator, one of ==, !=, >=, >, <=, <

Parens(values:Array<Token>)

A set of expressions surrounded by parentheses

Brackets(values:Array<Token>)

A set of expressions surrounded by brackets

Braces(values:Array<Token>)

A set of expressions surrounded by curly braces

LogicalOr

The `` used to indicate a logical OR expression.

LogicalAnd

The && used to indicate a logical OR expression.

LogicalNot

The ! used to indicate a logical NOT expression.