ProgramWithEof:

Program Eof

ProgramWithEof
         ::= Program Eof

no references


Program:

SemiSeparatorExpression LeftSideSeparableExpression AdjacentExpression SeparableExpression SeparatorExpression

Program  ::= SemiSeparatorExpression* ( LeftSideSeparableExpression? AdjacentExpression* | SeparableExpression ) ( SeparatorExpression SemiSeparatorExpression* ( LeftSideSeparableExpression? AdjacentExpression* | SeparableExpression ) )*

referenced by:


AdjacentExpression:

NameReadMember NameWriteMember NameMember

AdjacentExpression
         ::= NameReadMember
           | NameWriteMember
           | NameMember

referenced by:


LeftSideSeparableExpression:

NameRead NameWrite Name

LeftSideSeparableExpression
         ::= NameRead
           | NameWrite
           | Name

referenced by:


SemiSeparatorExpression:

Label

SemiSeparatorExpression
         ::= Label

referenced by:


SeparableExpression:

Real Number String

SeparableExpression
         ::= Real
           | Number
           | String

referenced by:


SeparatorExpression:

Comment Group Whitespaces

SeparatorExpression
         ::= Comment
           | Group
           | Whitespaces

referenced by:


Label:

Name : Program ;

Label    ::= Name ':' Program ';'

referenced by:


Group:

( Program ) [ Program ] { Program }

Group    ::= '(' Program ')'
           | '[' Program ']'
           | '{' Program '}'

referenced by:


Eof:

$

Eof      ::= $

referenced by:


Comment:

# [^#xA#xD]

Comment  ::= '#' [^#xA#xD]*

referenced by:


Whitespaces:

[#x9] [#xA] [#xD]

Whitespaces
         ::= [ #x9#xA#xD]+

referenced by:


Name:

MemberName SpecialName

Name     ::= MemberName
           | SpecialName

referenced by:


NameRead:

@ Name

NameRead ::= '@' Name

referenced by:


NameWrite:

! Name

NameWrite
         ::= '!' Name

referenced by:


NameMember:

. MemberName

NameMember
         ::= '.' MemberName

referenced by:


NameReadMember:

.@ Name

NameReadMember
         ::= '.@' Name

referenced by:


NameWriteMember:

.! Name

NameWriteMember
         ::= '.!' Name

referenced by:


Number:

NumberBody NumberSuffix

Number   ::= NumberBody NumberSuffix?

referenced by:


Real:

RealBody RealSuffix

Real     ::= RealBody RealSuffix?

referenced by:


String:

DelimitedString QuotedString

String   ::= DelimitedString
           | QuotedString

referenced by:


Letter:

[^ !()+.0123456789:;@{}«»#x2D#x9#xA#xD#x22#x23#x5B#x5D]

Letter   ::= [^ !()+.0123456789:;@{}«»#x2D#x9#xA#xD#x22#x23#x5B#x5D]

referenced by:


MemberName:

Letter Sign Sign Letter Letter Digit Sign Sign

MemberName
         ::= ( Letter | Sign ( Sign | Letter ) ) ( Letter | Digit | Sign )*
           | Sign

referenced by:


SpecialName:

! @

SpecialName
         ::= [!@]

referenced by:


DecNumber:

Sign [1-9] Digit 0

DecNumber
         ::= Sign? ( '0' | [1-9] Digit* )

referenced by:


Decimal:

. Digit

Decimal  ::= '.' Digit+

referenced by:


Digit:

[0-9]

Digit    ::= [0-9]

referenced by:


Exponent:

e DecNumber

Exponent ::= 'e' DecNumber

referenced by:


HexDigit:

[0-9] [A-F]

HexDigit ::= [0-9A-F]

referenced by:


HexNumber:

0x HexDigit

HexNumber
         ::= '0x' HexDigit+

referenced by:


NumberBody:

HexNumber DecNumber

NumberBody
         ::= HexNumber
           | DecNumber

referenced by:


NumberSuffix:

i n 8 16 32 64 x

NumberSuffix
         ::= [in] ( '8' | '16' | '32' | '64' | 'x' )

referenced by:


RealBody:

DecNumber Exponent Decimal Exponent

RealBody ::= DecNumber ( Exponent | Decimal Exponent? )

referenced by:


RealSuffix:

r 32 64

RealSuffix
         ::= 'r' ( '32' | '64' )

referenced by:


Sign:

+ -

Sign     ::= [+#x2D]

referenced by:


DelimitedString:

« [^«»] DelimitedString »

DelimitedString
         ::= '«' ( [^«»] | DelimitedString )* '»'

referenced by:


QuotedString:

" [^"\] EscapeSequence "

QuotedString
         ::= '"' ( [^"\] | EscapeSequence )* '"'

referenced by:


EscapeSequence:

\ \ " n r Utf8Sequence

EscapeSequence
         ::= '\' ( [\"nr] | Utf8Sequence )

referenced by:


Utf8Sequence:

U0000_007F U0080_07FF U0800_0FFF U1000_CFFF UD000_D7FF UE000_FFFF U10000_3FFFF U40000_FFFFF U100000_10FFFF

Utf8Sequence
         ::= U0000_007F
           | U0080_07FF
           | U0800_0FFF
           | U1000_CFFF
           | UD000_D7FF
           | UE000_FFFF
           | U10000_3FFFF
           | U40000_FFFFF
           | U100000_10FFFF

referenced by:


U0000_007F:

[0-7] HexDigit

U0000_007F
         ::= [0-7] HexDigit

referenced by:


U0080_07FF:

C [2-9] [A-F] D HexDigit U80_BF

U0080_07FF
         ::= ( 'C' [2-9A-F] | 'D' HexDigit ) U80_BF

referenced by:


U0800_0FFF:

E0 A B HexDigit U80_BF

U0800_0FFF
         ::= 'E0' [AB] HexDigit U80_BF

referenced by:


U1000_CFFF:

E [1-9] [A-C] U80_BF U80_BF

U1000_CFFF
         ::= 'E' [1-9A-C] U80_BF U80_BF

referenced by:


UD000_D7FF:

ED 8 9 HexDigit U80_BF

UD000_D7FF
         ::= 'ED' [8-9] HexDigit U80_BF

referenced by:


UE000_FFFF:

E E F U80_BF U80_BF

UE000_FFFF
         ::= 'E' [EF] U80_BF U80_BF

referenced by:


U10000_3FFFF:

F0 9 A B HexDigit U80_BF U80_BF

U10000_3FFFF
         ::= 'F0' [9AB] HexDigit U80_BF U80_BF

referenced by:


U40000_FFFFF:

F 1 2 3 U80_BF U80_BF U80_BF

U40000_FFFFF
         ::= 'F' [1-3] U80_BF U80_BF U80_BF

referenced by:


U100000_10FFFF:

F4 8 HexDigit U80_BF U80_BF

U100000_10FFFF
         ::= 'F4' '8' HexDigit U80_BF U80_BF

referenced by:


U80_BF:

8 9 A B HexDigit

U80_BF   ::= [89AB] HexDigit

referenced by:



  ... generated by RR - Railroad Diagram Generator R R