1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
1.2 +++ b/book/src/atccl_ebnf.txt Wed Mar 23 21:10:10 2011 +0100
1.3 @@ -0,0 +1,65 @@
1.4 +prog ::= { rule }
1.5 +rule ::= pttrn
1.6 + | constrnt
1.7 + | flowp
1.8 + | COM
1.9 +flowp ::= FLOWP STRING "(" flowp_entry ")"
1.10 +flowp_entry ::= pttrn_lbl ":" constrnt_lbl
1.11 +pttrn_lbl ::= STRING
1.12 +constrnt_lbl ::= STRING
1.13 +constrnt ::= CONSTRNT STRING "(" cterm ")"
1.14 +cterm ::= TIMESEP AT string IS INTEGER si_unit
1.15 + | TIMESEP AT string_array IS INTEGER si_unit
1.16 + | TIMESEP AT string IS INTEGER si_unit FROM INTEGER
1.17 + UNTIL INTEGER
1.18 + | TIMESEP AT string_array IS INTEGER si_unit FROM
1.19 + INTEGER UNTIL INTEGER
1.20 + | TIMESEP AT string IS INTEGER si_unit AT FL int_array
1.21 + | TIMESEP AT string_array IS INTEGER si_unit AT FL
1.22 + int_array
1.23 + | TIMESEP AT string IS INTEGER si_unit FROM INTEGER
1.24 + UNTIL INTEGER AT FL int_array
1.25 + | TIMESEP AT string_array IS INTEGER si_unit FROM
1.26 + INTEGER UNTIL INTEGER AT FL int_array
1.27 + | cterm AND cterm
1.28 +si_unit ::= STRING
1.29 +pttrn ::= PATTERN ( STRING "(" term ")" | "(" term ")" )
1.30 +term ::= int_pt int_op INTEGER
1.31 + | char_pt string_op string
1.32 + | string_pt string_op string
1.33 + | string_array_pt string_array_op string_array
1.34 + | string_array string_array_op string_array_pt
1.35 + | string string_string_array_op string_array_pt
1.36 + | string string_string_array_op char_array_pt
1.37 + | term OR term
1.38 + | term AND term
1.39 + | NOT term
1.40 + | "(" term ")"
1.41 +int_op ::= IS
1.42 + | IS NOT
1.43 + | GREATER THAN
1.44 + | LESS THAN
1.45 +string_op ::= IS [ NOT ]
1.46 +string_array_op ::= IS
1.47 + | IS NOT
1.48 + | IN
1.49 + | NOT IN
1.50 +string_string_array_op ::= [ NOT ] IN
1.51 +int_array ::= "[" ints "]"
1.52 +ints ::= { ( "," int | int ) }
1.53 +int ::= INTEGER
1.54 +string_array ::= "[" strings "]"
1.55 +strings ::= { ( "," string | string ) }
1.56 +int_pt ::= TAS
1.57 +char_pt ::= FTYP
1.58 +string_pt ::= ADEP
1.59 + | ADES
1.60 + | RWY
1.61 + | ATYP
1.62 + | COPX
1.63 + | FRUL
1.64 + | RFL
1.65 + | TRAVEL_TYPE
1.66 +string_array_pt ::= ROUTE
1.67 +char_array_pt ::= EQUIP
1.68 +string ::= QUOTE STRING QUOTE