Grammar rule 1 start -> varStorage varType varItems varName rule 2 varGlobalMarker -> VAR_GLOBAL rule 3 varGlobalMarker -> /* empty */ rule 4 varStorage -> varGlobalMarker VAR_CONSTANT rule 5 varStorage -> varGlobalMarker VAR_UNIFORM rule 6 varStorage -> varGlobalMarker VAR_VARYING rule 7 varStorage -> varGlobalMarker VAR_FACEVARYING rule 8 varStorage -> varGlobalMarker VAR_VERTEX rule 9 varStorage -> varGlobalMarker rule 10 varType -> VAR_INTEGER rule 11 varType -> VAR_FLOAT rule 12 varType -> VAR_VECTOR rule 13 varType -> VAR_COLOR rule 14 varType -> VAR_NORMAL rule 15 varType -> VAR_POINT rule 16 varType -> VAR_MATRIX rule 17 varType -> VAR_HTPOINT rule 18 varType -> VAR_DOUBLE rule 19 varType -> VAR_STRING rule 20 varName -> VAR_IDENTIFIER rule 21 varName -> /* empty */ rule 22 varItems -> VAR_OPEN VAR_FLOAT VAR_CLOSE rule 23 varItems -> /* empty */ Terminals, with rules where they appear $ (-1) error (256) VAR_GLOBAL (258) 2 VAR_CONSTANT (259) 4 VAR_UNIFORM (260) 5 VAR_VARYING (261) 6 VAR_FACEVARYING (262) 7 VAR_VERTEX (263) 8 VAR_FLOAT (264) 11 22 VAR_INTEGER (265) 10 VAR_VECTOR (266) 12 VAR_COLOR (267) 13 VAR_NORMAL (268) 14 VAR_POINT (269) 15 VAR_HTPOINT (270) 17 VAR_MATRIX (271) 16 VAR_DOUBLE (272) 18 VAR_STRING (273) 19 VAR_OPEN (274) 22 VAR_CLOSE (275) 22 VAR_IDENTIFIER (276) 20 Nonterminals, with rules where they appear start (22) on left: 1 varGlobalMarker (23) on left: 2 3, on right: 4 5 6 7 8 9 varStorage (24) on left: 4 5 6 7 8 9, on right: 1 varType (25) on left: 10 11 12 13 14 15 16 17 18 19, on right: 1 varName (26) on left: 20 21, on right: 1 varItems (27) on left: 22 23, on right: 1 state 0 VAR_GLOBAL shift, and go to state 1 $default reduce using rule 3 (varGlobalMarker) start go to state 26 varGlobalMarker go to state 2 varStorage go to state 3 state 1 varGlobalMarker -> VAR_GLOBAL . (rule 2) $default reduce using rule 2 (varGlobalMarker) state 2 varStorage -> varGlobalMarker . VAR_CONSTANT (rule 4) varStorage -> varGlobalMarker . VAR_UNIFORM (rule 5) varStorage -> varGlobalMarker . VAR_VARYING (rule 6) varStorage -> varGlobalMarker . VAR_FACEVARYING (rule 7) varStorage -> varGlobalMarker . VAR_VERTEX (rule 8) varStorage -> varGlobalMarker . (rule 9) VAR_CONSTANT shift, and go to state 4 VAR_UNIFORM shift, and go to state 5 VAR_VARYING shift, and go to state 6 VAR_FACEVARYING shift, and go to state 7 VAR_VERTEX shift, and go to state 8 $default reduce using rule 9 (varStorage) state 3 start -> varStorage . varType varItems varName (rule 1) VAR_FLOAT shift, and go to state 9 VAR_INTEGER shift, and go to state 10 VAR_VECTOR shift, and go to state 11 VAR_COLOR shift, and go to state 12 VAR_NORMAL shift, and go to state 13 VAR_POINT shift, and go to state 14 VAR_HTPOINT shift, and go to state 15 VAR_MATRIX shift, and go to state 16 VAR_DOUBLE shift, and go to state 17 VAR_STRING shift, and go to state 18 varType go to state 19 state 4 varStorage -> varGlobalMarker VAR_CONSTANT . (rule 4) $default reduce using rule 4 (varStorage) state 5 varStorage -> varGlobalMarker VAR_UNIFORM . (rule 5) $default reduce using rule 5 (varStorage) state 6 varStorage -> varGlobalMarker VAR_VARYING . (rule 6) $default reduce using rule 6 (varStorage) state 7 varStorage -> varGlobalMarker VAR_FACEVARYING . (rule 7) $default reduce using rule 7 (varStorage) state 8 varStorage -> varGlobalMarker VAR_VERTEX . (rule 8) $default reduce using rule 8 (varStorage) state 9 varType -> VAR_FLOAT . (rule 11) $default reduce using rule 11 (varType) state 10 varType -> VAR_INTEGER . (rule 10) $default reduce using rule 10 (varType) state 11 varType -> VAR_VECTOR . (rule 12) $default reduce using rule 12 (varType) state 12 varType -> VAR_COLOR . (rule 13) $default reduce using rule 13 (varType) state 13 varType -> VAR_NORMAL . (rule 14) $default reduce using rule 14 (varType) state 14 varType -> VAR_POINT . (rule 15) $default reduce using rule 15 (varType) state 15 varType -> VAR_HTPOINT . (rule 17) $default reduce using rule 17 (varType) state 16 varType -> VAR_MATRIX . (rule 16) $default reduce using rule 16 (varType) state 17 varType -> VAR_DOUBLE . (rule 18) $default reduce using rule 18 (varType) state 18 varType -> VAR_STRING . (rule 19) $default reduce using rule 19 (varType) state 19 start -> varStorage varType . varItems varName (rule 1) VAR_OPEN shift, and go to state 20 $default reduce using rule 23 (varItems) varItems go to state 21 state 20 varItems -> VAR_OPEN . VAR_FLOAT VAR_CLOSE (rule 22) VAR_FLOAT shift, and go to state 22 state 21 start -> varStorage varType varItems . varName (rule 1) VAR_IDENTIFIER shift, and go to state 23 $default reduce using rule 21 (varName) varName go to state 24 state 22 varItems -> VAR_OPEN VAR_FLOAT . VAR_CLOSE (rule 22) VAR_CLOSE shift, and go to state 25 state 23 varName -> VAR_IDENTIFIER . (rule 20) $default reduce using rule 20 (varName) state 24 start -> varStorage varType varItems varName . (rule 1) $default reduce using rule 1 (start) state 25 varItems -> VAR_OPEN VAR_FLOAT VAR_CLOSE . (rule 22) $default reduce using rule 22 (varItems) state 26 $ go to state 27 state 27 $ go to state 28 state 28 $default accept