|
44 | 44 |
|
45 | 45 |
|
46 | 46 | S
|
47 |
| - : init x x e -> parser.trace('S:complete = ', $e); |
| 47 | + : init x x e { parser.trace('S:complete = ', $e); } |
48 | 48 | ;
|
49 | 49 |
|
50 | 50 | init
|
51 |
| - : %epsilon -> parser.trace('init:epsilon'); |
| 51 | + : %epsilon { parser.trace('init:epsilon'); } |
52 | 52 | ;
|
53 | 53 |
|
54 | 54 | x
|
55 |
| - : %epsilon -> parser.trace('X:epsilon'); $$ = '<X-epsilon>'; |
| 55 | + : %epsilon { parser.trace('X:epsilon'); $$ = '<X-epsilon>'; } |
56 | 56 | ;
|
57 | 57 |
|
58 | 58 | e
|
59 |
| - : cmd e -> parser.trace('e:cmd=', $cmd); $$ = $cmd + ' | ' + $e; |
60 |
| - | %epsilon -> parser.trace('e:epsilon'); $$ = '<E-epsilon>'; |
| 59 | + : cmd e { parser.trace('e:cmd=', $cmd); $$ = $cmd + ' | ' + $e; } |
| 60 | + | %epsilon { parser.trace('e:epsilon'); $$ = '<E-epsilon>'; } |
61 | 61 | ;
|
62 | 62 |
|
63 | 63 | cmd
|
64 |
| - : a -> parser.trace('cmd:a'); $$ = $a; |
65 |
| - | f_a -> parser.trace('cmd:function a()'); $$ = $f_a; |
66 |
| - | b -> parser.trace('cmd:b'); $$ = $b; |
67 |
| - | f_b -> parser.trace('cmd:function b()'); $$ = $f_b; |
68 |
| - | error -> parser.trace('cmd:error', get_reduced_error_info_obj($error) || $error); yyerrok; yyclearin; $$ = 'ERROR'; |
| 64 | + : a { parser.trace('cmd:a'); $$ = $a; } |
| 65 | + | f_a { parser.trace('cmd:function a()'); $$ = $f_a; } |
| 66 | + | b { parser.trace('cmd:b'); $$ = $b; } |
| 67 | + | f_b { parser.trace('cmd:function b()'); $$ = $f_b; } |
| 68 | + | error { parser.trace('cmd:error', get_reduced_error_info_obj($error) || $error); yyerrok; yyclearin; $$ = 'ERROR'; } |
69 | 69 | ;
|
70 | 70 |
|
71 | 71 | a
|
72 |
| - : A -> parser.trace('a:A'); $$ = 'A[' + $A + ']'; |
| 72 | + : A { parser.trace('a:A'); $$ = 'A[' + $A + ']'; } |
73 | 73 | ;
|
74 | 74 |
|
75 | 75 | f_a
|
76 |
| - : A lb e rb -> parser.trace('function a:', $e); $$ = 'A' + $lb + $e + $rb; |
| 76 | + : A lb e rb { parser.trace('function a:', $e); $$ = 'A' + $lb + $e + $rb; } |
77 | 77 | ;
|
78 | 78 |
|
79 | 79 | b
|
80 |
| - : B -> parser.trace('b:B'); $$ = 'B[' + $B + ']'; |
| 80 | + : B { parser.trace('b:B'); $$ = 'B[' + $B + ']'; } |
81 | 81 | ;
|
82 | 82 |
|
83 | 83 | f_b
|
84 |
| - : B lb e rb -> parser.trace('function b:', $e); $$ = 'B' + $lb + $e + $rb; |
| 84 | + : B lb e rb { parser.trace('function b:', $e); $$ = 'B' + $lb + $e + $rb; } |
85 | 85 | ;
|
86 | 86 |
|
87 | 87 | lb
|
88 |
| - : '(' -> parser.trace('lb+PUSH:[(] '); yy.lexer.pushState('alt'); $$ = '('; |
89 |
| - | BEGIN -> parser.trace('lb:[alt-(] '); $$ = '{'; |
| 88 | + : '(' { parser.trace('lb+PUSH:[(] '); yy.lexer.pushState('alt'); $$ = '('; } |
| 89 | + | BEGIN { parser.trace('lb:[alt-(] '); $$ = '{'; } |
90 | 90 | ;
|
91 | 91 |
|
92 | 92 | rb
|
93 |
| - : ')' -> parser.trace('lb:[)] '); $$ = ')'; |
94 |
| - | END -> parser.trace('lb+POP:[alt-)] '); yy.lexer.popState(); $$ = '}'; |
| 93 | + : ')' { parser.trace('lb:[)] '); $$ = ')'; } |
| 94 | + | END { parser.trace('lb+POP:[alt-)] '); yy.lexer.popState(); $$ = '}'; } |
95 | 95 | ;
|
96 | 96 |
|
97 | 97 | %%
|
|
0 commit comments