Grammar 0 $accept: file $end 1 file: turn_debug_on field_list 2 turn_debug_on: /* empty */ 3 field_list: /* empty */ 4 | field_list field 5 field: field_name '=' value ';' 6 field_name: NAME 7 value: integer 8 | real 9 | string 10 | structure 11 | list 12 | enumeration 13 integer: INTEGER 14 | '-' INTEGER 15 real: REAL 16 | '-' REAL 17 string: STRING 18 | string STRING 19 structure: '{' field_list '}' 20 list: list_begin optional_value_list list_end 21 list_begin: '[' 22 list_end: ']' 23 optional_value_list: /* empty */ 24 | value_list optional_comma 25 value_list: list_value 26 | value_list ',' list_value 27 @1: /* empty */ 28 list_value: @1 value 29 optional_comma: /* empty */ 30 | ',' 31 enumeration: NAME Terminals, with rules where they appear $end (0) 0 ',' (44) 26 30 '-' (45) 14 16 ';' (59) 5 '=' (61) 5 '[' (91) 21 ']' (93) 22 '{' (123) 19 '}' (125) 19 error (256) INTEGER (258) 13 14 NAME (259) 6 31 REAL (260) 15 16 STRING (261) 17 18 Nonterminals, with rules where they appear $accept (15) on left: 0 file (16) on left: 1, on right: 0 turn_debug_on (17) on left: 2, on right: 1 field_list (18) on left: 3 4, on right: 1 4 19 field (19) on left: 5, on right: 4 field_name (20) on left: 6, on right: 5 value (21) on left: 7 8 9 10 11 12, on right: 5 28 integer (22) on left: 13 14, on right: 7 real (23) on left: 15 16, on right: 8 string (24) on left: 17 18, on right: 9 18 structure (25) on left: 19, on right: 10 list (26) on left: 20, on right: 11 list_begin (27) on left: 21, on right: 20 list_end (28) on left: 22, on right: 20 optional_value_list (29) on left: 23 24, on right: 20 value_list (30) on left: 25 26, on right: 24 26 list_value (31) on left: 28, on right: 25 26 @1 (32) on left: 27, on right: 28 optional_comma (33) on left: 29 30, on right: 24 enumeration (34) on left: 31, on right: 12 state 0 0 $accept: . file $end $default reduce using rule 2 (turn_debug_on) file go to state 1 turn_debug_on go to state 2 state 1 0 $accept: file . $end $end shift, and go to state 3 state 2 1 file: turn_debug_on . field_list $default reduce using rule 3 (field_list) field_list go to state 4 state 3 0 $accept: file $end . $default accept state 4 1 file: turn_debug_on field_list . 4 field_list: field_list . field NAME shift, and go to state 5 $default reduce using rule 1 (file) field go to state 6 field_name go to state 7 state 5 6 field_name: NAME . $default reduce using rule 6 (field_name) state 6 4 field_list: field_list field . $default reduce using rule 4 (field_list) state 7 5 field: field_name . '=' value ';' '=' shift, and go to state 8 state 8 5 field: field_name '=' . value ';' INTEGER shift, and go to state 9 NAME shift, and go to state 10 REAL shift, and go to state 11 STRING shift, and go to state 12 '-' shift, and go to state 13 '{' shift, and go to state 14 '[' shift, and go to state 15 value go to state 16 integer go to state 17 real go to state 18 string go to state 19 structure go to state 20 list go to state 21 list_begin go to state 22 enumeration go to state 23 state 9 13 integer: INTEGER . $default reduce using rule 13 (integer) state 10 31 enumeration: NAME . $default reduce using rule 31 (enumeration) state 11 15 real: REAL . $default reduce using rule 15 (real) state 12 17 string: STRING . $default reduce using rule 17 (string) state 13 14 integer: '-' . INTEGER 16 real: '-' . REAL INTEGER shift, and go to state 24 REAL shift, and go to state 25 state 14 19 structure: '{' . field_list '}' $default reduce using rule 3 (field_list) field_list go to state 26 state 15 21 list_begin: '[' . $default reduce using rule 21 (list_begin) state 16 5 field: field_name '=' value . ';' ';' shift, and go to state 27 state 17 7 value: integer . $default reduce using rule 7 (value) state 18 8 value: real . $default reduce using rule 8 (value) state 19 9 value: string . 18 string: string . STRING STRING shift, and go to state 28 $default reduce using rule 9 (value) state 20 10 value: structure . $default reduce using rule 10 (value) state 21 11 value: list . $default reduce using rule 11 (value) state 22 20 list: list_begin . optional_value_list list_end ']' reduce using rule 23 (optional_value_list) $default reduce using rule 27 (@1) optional_value_list go to state 29 value_list go to state 30 list_value go to state 31 @1 go to state 32 state 23 12 value: enumeration . $default reduce using rule 12 (value) state 24 14 integer: '-' INTEGER . $default reduce using rule 14 (integer) state 25 16 real: '-' REAL . $default reduce using rule 16 (real) state 26 4 field_list: field_list . field 19 structure: '{' field_list . '}' NAME shift, and go to state 5 '}' shift, and go to state 33 field go to state 6 field_name go to state 7 state 27 5 field: field_name '=' value ';' . $default reduce using rule 5 (field) state 28 18 string: string STRING . $default reduce using rule 18 (string) state 29 20 list: list_begin optional_value_list . list_end ']' shift, and go to state 34 list_end go to state 35 state 30 24 optional_value_list: value_list . optional_comma 26 value_list: value_list . ',' list_value ',' shift, and go to state 36 $default reduce using rule 29 (optional_comma) optional_comma go to state 37 state 31 25 value_list: list_value . $default reduce using rule 25 (value_list) state 32 28 list_value: @1 . value INTEGER shift, and go to state 9 NAME shift, and go to state 10 REAL shift, and go to state 11 STRING shift, and go to state 12 '-' shift, and go to state 13 '{' shift, and go to state 14 '[' shift, and go to state 15 value go to state 38 integer go to state 17 real go to state 18 string go to state 19 structure go to state 20 list go to state 21 list_begin go to state 22 enumeration go to state 23 state 33 19 structure: '{' field_list '}' . $default reduce using rule 19 (structure) state 34 22 list_end: ']' . $default reduce using rule 22 (list_end) state 35 20 list: list_begin optional_value_list list_end . $default reduce using rule 20 (list) state 36 26 value_list: value_list ',' . list_value 30 optional_comma: ',' . ']' reduce using rule 30 (optional_comma) $default reduce using rule 27 (@1) list_value go to state 39 @1 go to state 32 state 37 24 optional_value_list: value_list optional_comma . $default reduce using rule 24 (optional_value_list) state 38 28 list_value: @1 value . $default reduce using rule 28 (list_value) state 39 26 value_list: value_list ',' list_value . $default reduce using rule 26 (value_list)