parser 0.9.1 → 0.9.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/parser/ruby18.y CHANGED
@@ -69,7 +69,7 @@ rule
69
69
  result = @builder.compstmt(val[0])
70
70
  }
71
71
 
72
- stmts: none
72
+ stmts: # nothing
73
73
  {
74
74
  result = []
75
75
  }
@@ -140,19 +140,13 @@ rule
140
140
 
141
141
  result = @builder.begin_body(val[0], [ rescue_body ])
142
142
  }
143
- | klBEGIN
143
+ | klBEGIN tLCURLY compstmt tRCURLY
144
144
  {
145
145
  if in_def?
146
146
  diagnostic(:error, :begin_in_method, val[0])
147
147
  end
148
148
 
149
- @static_env.extend_static
150
- }
151
- tLCURLY compstmt tRCURLY
152
- {
153
- @static_env.unextend
154
-
155
- result = @builder.preexe(val[0], val[2], val[3], val[4])
149
+ result = @builder.preexe(val[0], val[1], val[2], val[3])
156
150
  }
157
151
  | klEND tLCURLY compstmt tRCURLY
158
152
  {
@@ -797,7 +791,7 @@ rule
797
791
  result = [ val[0], val[1] << val[3], val[5] ]
798
792
  }
799
793
 
800
- opt_paren_args: none
794
+ opt_paren_args: # nothing
801
795
  {
802
796
  result = [ nil, [], nil ]
803
797
  }
@@ -1015,9 +1009,6 @@ rule
1015
1009
  }
1016
1010
  opt_nl tRPAREN
1017
1011
  {
1018
- # TODO better location info here
1019
- diagnostic :warning, :grouped_expression, val[0]
1020
-
1021
1012
  result = @builder.parenthesize(val[0], val[1], val[3])
1022
1013
  }
1023
1014
  | tLPAREN compstmt tRPAREN
@@ -1346,7 +1337,7 @@ rule
1346
1337
  }
1347
1338
  ;
1348
1339
 
1349
- opt_block_var: none
1340
+ opt_block_var: # nothing
1350
1341
  {
1351
1342
  result = @builder.args(nil, [], nil)
1352
1343
  }
@@ -1483,7 +1474,7 @@ rule
1483
1474
  val[3], val[4]),
1484
1475
  *val[5] ]
1485
1476
  }
1486
- |
1477
+ | # nothing
1487
1478
  {
1488
1479
  result = []
1489
1480
  }
@@ -1545,11 +1536,7 @@ rule
1545
1536
  result = @builder.regexp_compose(val[0], val[1], val[2], opts)
1546
1537
  }
1547
1538
 
1548
- words: tWORDS_BEG tSPACE tSTRING_END
1549
- { # :nocov: TODO: unused with Ragel lexer; remove?
1550
- result = @builder.words_compose(val[0], [], val[2])
1551
- }
1552
- | tWORDS_BEG word_list tSTRING_END
1539
+ words: tWORDS_BEG word_list tSTRING_END
1553
1540
  {
1554
1541
  result = @builder.words_compose(val[0], val[1], val[2])
1555
1542
  }
@@ -1560,20 +1547,19 @@ rule
1560
1547
  }
1561
1548
  | word_list word tSPACE
1562
1549
  {
1563
- result = val[0] << val[1]
1550
+ result = val[0] << @builder.word(val[1])
1564
1551
  }
1565
1552
 
1566
1553
  word: string_content
1554
+ {
1555
+ result = [ val[0] ]
1556
+ }
1567
1557
  | word string_content
1568
- { # :nocov: TODO: test this rule, remove if unused
1569
- raise "unused 'word string_content'"
1558
+ {
1559
+ result = val[0] << val[1]
1570
1560
  }
1571
1561
 
1572
- qwords: tQWORDS_BEG tSPACE tSTRING_END
1573
- { # :nocov: TODO: unused with Ragel lexer; remove?
1574
- result = @builder.words_compose(val[0], [], val[2])
1575
- }
1576
- | tQWORDS_BEG qword_list tSTRING_END
1562
+ qwords: tQWORDS_BEG qword_list tSTRING_END
1577
1563
  {
1578
1564
  result = @builder.words_compose(val[0], val[1], val[2])
1579
1565
  }
@@ -1596,7 +1582,7 @@ rule
1596
1582
  result = val[0] << val[1]
1597
1583
  }
1598
1584
 
1599
- xstring_contents: # nothing # TODO: replace with string_contents?
1585
+ xstring_contents: # nothing
1600
1586
  {
1601
1587
  result = []
1602
1588
  }
@@ -1895,7 +1881,7 @@ xstring_contents: # nothing # TODO: replace with string_contents?
1895
1881
  result = val[1]
1896
1882
  }
1897
1883
 
1898
- assoc_list: none
1884
+ assoc_list: # nothing
1899
1885
  {
1900
1886
  result = []
1901
1887
  }