
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
