[back]
0    start -> rule-seq-opt
1    rule-seq-opt ->
2    rule-seq-opt -> rule-seq
3    rule-seq -> rule
4    rule-seq -> rule-seq rule
5    rule <* -> rule-name-opt symbol ARROW symbol-seq-opt >
6    rule-name-opt -> rule-name
7    rule-name-opt ->
8    rule-name -> LBRACK slip-spec-opt IDENT RBRACK
9    rule-name -> LBRACK LPAREN IDENT RPAREN RBRACK
10   rule-name -> LBRACK RBRACK
11   slip-spec-opt -> slip-spec
12   slip-spec-opt ->
13   slip-spec -> DOLLAR
14   symbol-seq-opt ->
15   symbol-seq-opt -> symbol-seq
16   symbol-seq -> symbol
17   symbol-seq -> symbol-seq symbol
18   symbol -> IDENT attrib-seq-opt
19   attrib-seq-opt ->
20   attrib-seq-opt -> attrib-seq
21   attrib-seq -> attrib
22   attrib-seq -> attrib-seq attrib
23   attrib -> GT
24   attrib -> PLUS
25   attrib -> NUMBER
26   attrib -> STAR
27   attrib -> LT
28   attrib -> CARET
29   attrib -> LPAREN attrib-seq RPAREN NUMBER
30   attrib -> BANG

0
-----
start ->.rule-seq-opt

LBRACK - SHIFT 1
IDENT - REDUCE 7 rule-name-opt
* - REDUCE 1 rule-seq-opt

rule-seq-opt - GOTO 2
rule-seq - GOTO 3
rule - GOTO 4
rule-name-opt - GOTO 5
rule-name - GOTO 6

1
-----
rule-name -> LBRACK.slip-spec-opt IDENT RBRACK
rule-name -> LBRACK.LPAREN IDENT RPAREN RBRACK
rule-name -> LBRACK.RBRACK

RBRACK - SHIFT 7
LPAREN - SHIFT 8
DOLLAR - SHIFT 9
* - REDUCE 12 slip-spec-opt

slip-spec-opt - GOTO 10
slip-spec - GOTO 11

2
-----
start -> rule-seq-opt. (0)

EOT - DONE 0

3
-----
rule-seq-opt -> rule-seq. (2)
rule-seq -> rule-seq.rule

LBRACK - SHIFT 1
IDENT - REDUCE 7 rule-name-opt
* - REDUCE 2 rule-seq-opt

rule - GOTO 12
rule-name-opt - GOTO 5
rule-name - GOTO 6

4
-----
rule-seq -> rule. (3)

* - REDUCE 3 rule-seq

5
-----
rule <* -> rule-name-opt.symbol ARROW symbol-seq-opt >

IDENT - SHIFT 13

symbol - GOTO 14

6
-----
rule-name-opt -> rule-name. (6)

* - REDUCE 6 rule-name-opt

7
-----
rule-name -> LBRACK RBRACK. (10)

* - REDUCE 10 rule-name

8
-----
rule-name -> LBRACK LPAREN.IDENT RPAREN RBRACK

IDENT - SHIFT 15

9
-----
slip-spec -> DOLLAR. (13)

* - REDUCE 13 slip-spec

10
-----
rule-name -> LBRACK slip-spec-opt.IDENT RBRACK

IDENT - SHIFT 16

11
-----
slip-spec-opt -> slip-spec. (11)

* - REDUCE 11 slip-spec-opt

12
-----
rule-seq -> rule-seq rule. (4)

* - REDUCE 4 rule-seq

13
-----
symbol -> IDENT.attrib-seq-opt

LPAREN - SHIFT 17
GT - SHIFT 18
PLUS - SHIFT 19
NUMBER - SHIFT 20
STAR - SHIFT 21
LT - SHIFT 22
CARET - SHIFT 23
BANG - SHIFT 24
* - REDUCE 19 attrib-seq-opt

attrib-seq-opt - GOTO 25
attrib-seq - GOTO 26
attrib - GOTO 27

14
-----
rule <* -> rule-name-opt symbol.ARROW symbol-seq-opt >

ARROW - SHIFT 28

15
-----
rule-name -> LBRACK LPAREN IDENT.RPAREN RBRACK

RPAREN - SHIFT 29

16
-----
rule-name -> LBRACK slip-spec-opt IDENT.RBRACK

RBRACK - SHIFT 30

17
-----
attrib -> LPAREN.attrib-seq RPAREN NUMBER

LPAREN - SHIFT 17
GT - SHIFT 18
PLUS - SHIFT 19
NUMBER - SHIFT 20
STAR - SHIFT 21
LT - SHIFT 22
CARET - SHIFT 23
BANG - SHIFT 24

attrib-seq - GOTO 31
attrib - GOTO 27

18
-----
attrib -> GT. (23)

* - REDUCE 23 attrib

19
-----
attrib -> PLUS. (24)

* - REDUCE 24 attrib

20
-----
attrib -> NUMBER. (25)

* - REDUCE 25 attrib

21
-----
attrib -> STAR. (26)

* - REDUCE 26 attrib

22
-----
attrib -> LT. (27)

* - REDUCE 27 attrib

23
-----
attrib -> CARET. (28)

* - REDUCE 28 attrib

24
-----
attrib -> BANG. (30)

* - REDUCE 30 attrib

25
-----
symbol -> IDENT attrib-seq-opt. (18)

* - REDUCE 18 symbol

26
-----
attrib-seq-opt -> attrib-seq. (20)
attrib-seq -> attrib-seq.attrib

LPAREN - SHIFT 17
GT - SHIFT 18
PLUS - SHIFT 19
NUMBER - SHIFT 20
STAR - SHIFT 21
LT - SHIFT 22
CARET - SHIFT 23
BANG - SHIFT 24
* - REDUCE 20 attrib-seq-opt

attrib - GOTO 32

27
-----
attrib-seq -> attrib. (21)

* - REDUCE 21 attrib-seq

28
-----
rule <* -> rule-name-opt symbol ARROW.symbol-seq-opt >

IDENT - SHIFT 13, REDUCE 14 symbol-seq-opt
* - REDUCE 14 symbol-seq-opt

symbol - GOTO 33
symbol-seq-opt - GOTO 34
symbol-seq - GOTO 35

29
-----
rule-name -> LBRACK LPAREN IDENT RPAREN.RBRACK

RBRACK - SHIFT 36

30
-----
rule-name -> LBRACK slip-spec-opt IDENT RBRACK. (8)

* - REDUCE 8 rule-name

31
-----
attrib -> LPAREN attrib-seq.RPAREN NUMBER
attrib-seq -> attrib-seq.attrib

LPAREN - SHIFT 17
RPAREN - SHIFT 37
GT - SHIFT 18
PLUS - SHIFT 19
NUMBER - SHIFT 20
STAR - SHIFT 21
LT - SHIFT 22
CARET - SHIFT 23
BANG - SHIFT 24

attrib - GOTO 32

32
-----
attrib-seq -> attrib-seq attrib. (22)

* - REDUCE 22 attrib-seq

33
-----
symbol-seq -> symbol. (16)

* - REDUCE 16 symbol-seq

34
-----
rule <* -> rule-name-opt symbol ARROW symbol-seq-opt >. (5)

EOT - ACCEPT 5 rule
LBRACK - ACCEPT 5 rule
IDENT - ACCEPT 5 rule

35
-----
symbol-seq-opt -> symbol-seq. (15)
symbol-seq -> symbol-seq.symbol

IDENT - SHIFT 13, REDUCE 15 symbol-seq-opt
* - REDUCE 15 symbol-seq-opt

symbol - GOTO 38

36
-----
rule-name -> LBRACK LPAREN IDENT RPAREN RBRACK. (9)

* - REDUCE 9 rule-name

37
-----
attrib -> LPAREN attrib-seq RPAREN.NUMBER

NUMBER - SHIFT 39

38
-----
symbol-seq -> symbol-seq symbol. (17)

* - REDUCE 17 symbol-seq

39
-----
attrib -> LPAREN attrib-seq RPAREN NUMBER. (29)

* - REDUCE 29 attrib

[back]