company logo

Special symbol definitions

Standard symbols as value or csv_value are symbols with limited character sets, which are difficult to express by means of BNF rules (even though it would be possible). Hence, a special parser class has been provided in order to support a number of special symbols, which can be references in any other parser definition. The documentation of those symbols below has more explanatory value and is not valid BNF notation.

  spec_plist     := spec_plistchar(*)

  spec_block     := spec_blockchar(*)

  spec_line      := [spec_nl_line(*)] spec_last_line

  specc_nl_line  := [spec_linechar(*)] '\'

  spec_last_line := [spec_linechar(*)] nl

  spec_value     := spec_valuebeg [spec_valuechar(*)]

  spec_csv_value := spec_csv_begin [spec_valuechar(*)]

  spec_plistchar := 1-255 except: ( )

  spec_blockchar := 1-255 except: { } 10 13

  spec_linechar  := 1-255 except: 10, 13, \

  spec_bnfchar   := 1-255 except: 10, 13, ' ', '|' '[' ']' \

  spec_valuebeg  := 1-255 except: '\n' '\r' '\t' ';' '|' '"' '[' '{' '('

  spec_csv_begin := 1-255 except: '\n' '\r' '\t' ';' '|' '"'

  spec_valuechar := 1-255 except: '\n' '\r' '\t' ';' '|'