value:

value    ::= list
           | object
           | property
           | string
           | number
           | bytes
           | expression
           | type
           | boolean
           | 'undefined'

referenced by:


list:

list     ::= '[' ( value ( ',' value )* ','? )? ']'

referenced by:


object:

object   ::= '{' ( string '=>' value ( ',' string '=>' value )* ','? )? '}'

referenced by:


property:

property ::= '(' string '=>' value ')'

referenced by:


string:

string   ::= '"' ( [^"\] | '\' ( '"' | '\' | 'u' hexdigit hexdigit hexdigit hexdigit ) )* '"'

referenced by:


number:

number   ::= int
           | long
           | double
           | biginteger
           | bigdecimal

referenced by:


expression:

expression
         ::= 'expression' string

referenced by:


bytes:

bytes    ::= 'bytes' '{' ( ( decbyte | hexbyte ) ( ',' ( decbyte | hexbyte ) )* ','? )? '}'

referenced by:


boolean:

boolean  ::= 'false'
           | 'true'

referenced by:


type:

type     ::= 'BIG_DECIMAL'
           | 'BIG_INTEGER'
           | 'BOOLEAN'
           | 'BYTES'
           | 'DOUBLE'
           | 'EXPRESSION'
           | 'LIST'
           | 'LONG'
           | 'INT'
           | 'OBJECT'
           | 'PROPERTY'
           | 'STRING'
           | 'TYPE'
           | 'UNDEFINED'

referenced by:


int:

int      ::= decinteger
           | hexinteger

referenced by:


long:

long     ::= int 'L'

referenced by:


double:

double   ::= [+#x2D]? ( 'Infinity' | 'NaN' | '.' decdigit* ( exponent | decdigit exponent? ) )
           | decinteger '.' decdigit* exponent?

referenced by:


biginteger:

biginteger
         ::= 'big' 'integer' decinteger

referenced by:


bigdecimal:

bigdecimal
         ::= 'big' 'decimal' decinteger '.' decdigit* exponent?

referenced by:


decinteger:

decinteger
         ::= [+#x2D]? ( '0' | [1-9] decdigit* )

referenced by:


hexinteger:

hexinteger
         ::= '0x' hexdigit+

referenced by:


decbyte:

decbyte  ::= [+#x2D]? ( '1' [0-2] [0-8] | [1-9]? [0-9] )

referenced by:


hexbyte:

hexbyte  ::= '0x' hexdigit hexdigit?

referenced by:


decdigit:

decdigit ::= [0-9]

referenced by:


hexdigit:

hexdigit ::= [0-9a-fA-F]

referenced by:


exponent:

exponent ::= ( 'e' | 'E' ) [+#x2D]? decdigit+

referenced by:



  ... generated by Railroad Diagram Generator