Eagle Legacy Modernization, LLC

JSON Grammar

Main program: JSON_Program

JSON syntax:

 Count  Terminals:
  JSON_Comment: /* comment */ or // comment to end of line
8,370 JSON_Literal: quotes:" escape:\ doubled:no multiline:yes
1,034 JSON_Number: exponent_chars:e suffix_chars:none trailing_period:yes ignore_char:none
 Count  Statistics(*) Tokens:
1,900 all all none all JSON_Dictionary: '{' [JSON_DictEntries] [','] '}'
1,900 all 1.70(all) |   JSON_DictEntries: JSON_DictEntry [JSON_AnotherEntry]*
3,238 all none all |   |   JSON_AnotherEntry: ',' [JSON_Comment] JSON_DictEntry
5,138 all all none all |   JSON_DictEntry: JSON_Literal ':' [JSON_Comment] JSON_Element
6,683 (48% | 15% | 8% | 28% | none) JSON_Element: (JSON_Literal | JSON_Number | JSON_Object | JSON_Dictionary | ("null"|"true"|"false"))
517 all none all 1.98(all) none none all JSON_Object: '[' [JSON_Comment]* [JSON_Element] [JSON_MoreObjects]* [','] [JSON_Comment]* ']'
1,025 all none all |   JSON_MoreObjects: ',' [JSON_Comment]* JSON_Element
3 all 1.00 JSON_Program: [")]}'"] JSON_ElementOrComment*
3 (none | all) |   JSON_ElementOrComment: (JSON_Comment | JSON_Element)

Terminals = 3 (instances=9,404)
Tokens = 9 (instances=20,407)

(*) Statistics are shown in the same order as the Tokens.
Percentages are rounded; 'all' and 'none' mean 100% and 0% before rounding.
For lists, it shows the average number of occurrences, excluding empty lists.