racc 1.5.0-java → 1.5.1-java

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f8e85a2a4463d4488fb20fd6c44402cf2f8da2340c00d84dc27224487fad6972
4
- data.tar.gz: 900b642719a990c973546e61a2d951d4c9e62867b9d684203a479b0116711c4b
3
+ metadata.gz: 66513604de5772fc75e424d725030053eab3f9661b8733815685086399bef0e7
4
+ data.tar.gz: b478be7f1dc3e5c300bad0d202c00e836608a99f88ad96ff8753bba63abe0cbf
5
5
  SHA512:
6
- metadata.gz: 1ab26acf94d4a80567cdb620e015df20e1ea798e466b9bdc8f13b5b057b2070a6f18681c60833633ca2d40373115d0a6c90c091fab8a3e2c4d24a1507394084e
7
- data.tar.gz: 8c8c5d2430a597b8f23aaccaf05980b83f4446cf4ab735765b9ac9cebec253586750054b05d31e982c6818d3a94abd312f61ea8bd3fa63464c11919a4ccc704a
6
+ metadata.gz: 503dbf600af37a69135cd36153d55a41d2438ee4b6d981e001c2c6f8a934d0e9f0f16e7786814addd9431682b2c907c595eb8569a2064e7e691bf009dd4c7b0f
7
+ data.tar.gz: 2bbfd3b3867d609c8b858e368c52648ec42418501de0e879c488baa75cb98030d69d0036fe47647462911eb1049f94f77bb08fe1afb62811ed63dcbac6486021
@@ -16,8 +16,6 @@
16
16
  == Requirement
17
17
 
18
18
  * Ruby 1.8.x or later.
19
- (*) make and C compiler.
20
-
21
19
 
22
20
  == Installation
23
21
 
@@ -36,9 +34,9 @@
36
34
 
37
35
  You can install Racc into your favorite directory by giving
38
36
  options to setup.rb. e.g.
39
-
37
+
40
38
  $ ruby setup.rb config --prefix=/usr
41
-
39
+
42
40
  For details, try "ruby setup.rb --help".
43
41
 
44
42
 
data/bin/racc CHANGED
@@ -51,7 +51,7 @@ def main
51
51
  logfilename = path
52
52
  }
53
53
  parser.on('-e', '--executable [RUBYPATH]', 'Makes executable parser.') {|path|
54
- executable = true
54
+ make_executable = true
55
55
  rubypath = (path == 'ruby' ? nil : path)
56
56
  }
57
57
  parser.on('-E', '--embedded', "Embeds Racc runtime in output.") {
@@ -71,10 +71,6 @@ def main
71
71
  'Uses CLASSNAME instead of Racc::Parser.') {|name|
72
72
  superclass = name
73
73
  }
74
- parser.on('--runtime=FEATURE',
75
- "Uses FEATURE instead of 'racc/parser'") {|feat|
76
- runtime = feature
77
- }
78
74
  parser.on('-C', '--check-only', 'Checks syntax and quit immediately.') {|fl|
79
75
  check_only = fl
80
76
  }
@@ -88,20 +84,20 @@ def main
88
84
  debug_flags = Racc::DebugFlags.parse_option_string(flags)
89
85
  }
90
86
  #parser.on('--no-extensions', 'Run Racc without any Ruby extension.') {
91
- # Racc.const_set :Racc_No_Extentions, true
87
+ # Racc.const_set :Racc_No_Extensions, true
92
88
  #}
93
89
  parser.on('--version', 'Prints version and quit.') {
94
90
  puts "racc version #{Racc::Version}"
95
91
  exit 0
96
92
  }
97
93
  parser.on('--runtime-version', 'Prints runtime version and quit.') {
98
- printf "racc runtime version %s (rev. %s); %s\n",
94
+ printf "racc runtime version %s; %s\n",
99
95
  Racc::Parser::Racc_Runtime_Version,
100
96
  if Racc::Parser.racc_runtime_type == 'ruby'
101
- sprintf('ruby core version %s (rev. %s)',
97
+ sprintf('ruby core version %s',
102
98
  Racc::Parser::Racc_Runtime_Core_Version_R)
103
99
  else
104
- sprintf('c core version %s (rev. %s)',
100
+ sprintf('c core version %s',
105
101
  Racc::Parser::Racc_Runtime_Core_Version_C)
106
102
  end
107
103
  exit 0
@@ -184,8 +180,12 @@ def main
184
180
  log_useless states.grammar
185
181
  log_conflict states
186
182
  else
187
- report_useless states.grammar
188
- report_conflict states
183
+ has_useless = report_useless states.grammar
184
+ has_conflicts = report_conflict states
185
+ if has_useless || has_conflicts
186
+ preamble = make_logfile ? 'C' : 'Turn on logging with "-v" and c'
187
+ $stderr.puts %Q{#{preamble}heck ".output" file for details}
188
+ end
189
189
  end
190
190
 
191
191
  profiler.report
@@ -201,13 +201,29 @@ def make_filename(path, suffix)
201
201
  path.sub(/(?:\..*?)?\z/, suffix)
202
202
  end
203
203
 
204
+ LIST_LIMIT = 10
205
+ def report_list(enum, label)
206
+ c = enum.count
207
+ if c > 0
208
+ $stderr.puts "#{c} #{label}:"
209
+ enum.first(LIST_LIMIT).each do |item|
210
+ $stderr.puts " #{yield item}"
211
+ end
212
+ $stderr.puts " ..." if c > LIST_LIMIT
213
+ end
214
+ end
215
+
216
+ # @return [Boolean] if anything was reported
204
217
  def report_conflict(states)
205
218
  if states.should_report_srconflict?
219
+ reported = true
206
220
  $stderr.puts "#{states.n_srconflicts} shift/reduce conflicts"
207
221
  end
208
222
  if states.rrconflict_exist?
223
+ reported = true
209
224
  $stderr.puts "#{states.n_rrconflicts} reduce/reduce conflicts"
210
225
  end
226
+ reported
211
227
  end
212
228
 
213
229
  def log_conflict(states)
@@ -222,16 +238,17 @@ def log_conflict(states)
222
238
  }
223
239
  end
224
240
 
241
+ # @return [Boolean] if anything was reported
225
242
  def report_useless(grammar)
226
- if grammar.useless_nonterminal_exist?
227
- $stderr.puts "#{grammar.n_useless_nonterminals} useless nonterminals"
228
- end
229
- if grammar.useless_rule_exist?
230
- $stderr.puts "#{grammar.n_useless_rules} useless rules"
231
- end
243
+ reported = report_list(grammar.each_useless_nonterminal, 'useless nonterminals', &:to_s)
244
+
245
+ reported ||= report_list(grammar.each_useless_rule, 'useless rules') { |r| "##{r.ident} (#{r.target})" }
246
+
232
247
  if grammar.start.useless?
233
248
  $stderr.puts 'fatal: start symbol does not derive any sentence'
249
+ reported = true
234
250
  end
251
+ reported
235
252
  end
236
253
 
237
254
  def log_useless(grammar)
@@ -605,7 +605,7 @@ parse_main(struct cparse_params *v, VALUE tok, VALUE val, int resume)
605
605
  user_yyerror:
606
606
  if (v->errstatus == 3) {
607
607
  if (v->t == vFINAL_TOKEN) {
608
- v->retval = Qfalse;
608
+ v->retval = Qnil;
609
609
  v->fin = CP_FIN_EOT;
610
610
  return;
611
611
  }
@@ -819,14 +819,12 @@ reduce0(RB_BLOCK_CALL_FUNC_ARGLIST(_, data))
819
819
  void
820
820
  Init_cparse(void)
821
821
  {
822
- #undef rb_intern
823
- #define rb_intern(str) rb_intern_const(str)
824
822
  VALUE Racc, Parser;
825
- ID id_racc = rb_intern("Racc");
823
+ ID id_racc = rb_intern_const("Racc");
826
824
 
827
825
  if (rb_const_defined(rb_cObject, id_racc)) {
828
826
  Racc = rb_const_get(rb_cObject, id_racc);
829
- Parser = rb_const_get_at(Racc, rb_intern("Parser"));
827
+ Parser = rb_const_get_at(Racc, rb_intern_const("Parser"));
830
828
  }
831
829
  else {
832
830
  Racc = rb_define_module("Racc");
@@ -846,16 +844,16 @@ Init_cparse(void)
846
844
 
847
845
  RaccBug = rb_eRuntimeError;
848
846
 
849
- id_yydebug = rb_intern("@yydebug");
850
- id_nexttoken = rb_intern("next_token");
851
- id_onerror = rb_intern("on_error");
852
- id_noreduce = rb_intern("_reduce_none");
853
- id_errstatus = rb_intern("@racc_error_status");
854
-
855
- id_d_shift = rb_intern("racc_shift");
856
- id_d_reduce = rb_intern("racc_reduce");
857
- id_d_accept = rb_intern("racc_accept");
858
- id_d_read_token = rb_intern("racc_read_token");
859
- id_d_next_state = rb_intern("racc_next_state");
860
- id_d_e_pop = rb_intern("racc_e_pop");
847
+ id_yydebug = rb_intern_const("@yydebug");
848
+ id_nexttoken = rb_intern_const("next_token");
849
+ id_onerror = rb_intern_const("on_error");
850
+ id_noreduce = rb_intern_const("_reduce_none");
851
+ id_errstatus = rb_intern_const("@racc_error_status");
852
+
853
+ id_d_shift = rb_intern_const("racc_shift");
854
+ id_d_reduce = rb_intern_const("racc_reduce");
855
+ id_d_accept = rb_intern_const("racc_accept");
856
+ id_d_read_token = rb_intern_const("racc_read_token");
857
+ id_d_next_state = rb_intern_const("racc_next_state");
858
+ id_d_e_pop = rb_intern_const("racc_e_pop");
861
859
  }
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of the GNU LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -86,14 +86,15 @@ module Racc
86
86
  end
87
87
 
88
88
  def n_useless_nonterminals
89
- @n_useless_nonterminals ||=
90
- begin
91
- n = 0
92
- @symboltable.each_nonterminal do |sym|
93
- n += 1 if sym.useless?
94
- end
95
- n
96
- end
89
+ @n_useless_nonterminals ||= each_useless_nonterminal.count
90
+ end
91
+
92
+ def each_useless_nonterminal
93
+ return to_enum __method__ unless block_given?
94
+
95
+ @symboltable.each_nonterminal do |sym|
96
+ yield sym if sym.useless?
97
+ end
97
98
  end
98
99
 
99
100
  def useless_rule_exist?
@@ -101,14 +102,15 @@ module Racc
101
102
  end
102
103
 
103
104
  def n_useless_rules
104
- @n_useless_rules ||=
105
- begin
106
- n = 0
107
- each do |r|
108
- n += 1 if r.useless?
109
- end
110
- n
111
- end
105
+ @n_useless_rules ||= each_useless_rule.count
106
+ end
107
+
108
+ def each_useless_rule
109
+ return to_enum __method__ unless block_given?
110
+
111
+ each do |r|
112
+ yield r if r.useless?
113
+ end
112
114
  end
113
115
 
114
116
  def nfa
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of the GNU LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -288,7 +287,7 @@ module Racc
288
287
  end
289
288
 
290
289
  def add_user_code(label, src)
291
- @result.params.send(USER_CODE_LABELS[label]).push src
290
+ @result.params.public_send(USER_CODE_LABELS[label]).push src
292
291
  end
293
292
 
294
293
  end
@@ -11,7 +11,7 @@
11
11
  #++
12
12
 
13
13
  module Racc
14
- VERSION = '1.5.0'
14
+ VERSION = '1.5.1'
15
15
  Version = VERSION
16
16
  Copyright = 'Copyright (c) 1999-2006 Minero Aoki'
17
17
  end
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of the GNU LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of the GNU LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -181,8 +181,8 @@ end
181
181
  # Your own parser is completely yours.
182
182
  module Racc
183
183
 
184
- unless defined?(Racc_No_Extentions)
185
- Racc_No_Extentions = false # :nodoc:
184
+ unless defined?(Racc_No_Extensions)
185
+ Racc_No_Extensions = false # :nodoc:
186
186
  end
187
187
 
188
188
  class Parser
@@ -202,7 +202,7 @@ module Racc
202
202
  unless new.respond_to?(:_racc_do_parse_c, true)
203
203
  raise LoadError, 'old cparse.so'
204
204
  end
205
- if Racc_No_Extentions
205
+ if Racc_No_Extensions
206
206
  raise LoadError, 'selecting ruby version of racc runtime core'
207
207
  end
208
208
 
@@ -326,7 +326,7 @@ module Racc
326
326
  # It must 'yield' the token, which format is [TOKEN-SYMBOL, VALUE].
327
327
  class_eval %{
328
328
  def yyparse(recv, mid)
329
- #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), true)
329
+ #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), false)
330
330
  end
331
331
  }
332
332
 
@@ -179,8 +179,8 @@ end
179
179
  # Your own parser is completely yours.
180
180
  module Racc
181
181
 
182
- unless defined?(Racc_No_Extentions)
183
- Racc_No_Extentions = false # :nodoc:
182
+ unless defined?(Racc_No_Extensions)
183
+ Racc_No_Extensions = false # :nodoc:
184
184
  end
185
185
 
186
186
  class Parser
@@ -200,7 +200,7 @@ module Racc
200
200
  unless new.respond_to?(:_racc_do_parse_c, true)
201
201
  raise LoadError, 'old cparse.so'
202
202
  end
203
- if Racc_No_Extentions
203
+ if Racc_No_Extensions
204
204
  raise LoadError, 'selecting ruby version of racc runtime core'
205
205
  end
206
206
 
@@ -324,7 +324,7 @@ module Racc
324
324
  # It must 'yield' the token, which format is [TOKEN-SYMBOL, VALUE].
325
325
  class_eval %{
326
326
  def yyparse(recv, mid)
327
- #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), true)
327
+ #{Racc_YY_Parse_Method}(recv, mid, _racc_setup(), false)
328
328
  end
329
329
  }
330
330
 
@@ -10,7 +10,6 @@
10
10
  #
11
11
  #++
12
12
 
13
- require 'enumerator'
14
13
  require 'racc/compat'
15
14
  require 'racc/sourcetext'
16
15
  require 'racc/parser-text'
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -5,9 +5,8 @@
5
5
  # Copyright (c) 1999-2006 Minero Aoki
6
6
  #
7
7
  # This program is free software.
8
- # You can distribute/modify this program under the terms of
9
- # the GNU LGPL, Lesser General Public License version 2.1.
10
- # For details of LGPL, see the file "COPYING".
8
+ # You can distribute/modify this program under the same terms of ruby.
9
+ # see the file "COPYING".
11
10
  #
12
11
  #++
13
12
 
@@ -231,7 +230,7 @@ module Racc
231
230
  map = '-' * 10240
232
231
 
233
232
  # sort long to short
234
- entries.sort! {|a,b| b[0].size <=> a[0].size }
233
+ entries.sort_by!.with_index {|a,i| [-a[0].size, i] }
235
234
 
236
235
  entries.each do |arr, chkval, expr, min, ptri|
237
236
  if upper + arr.size > map.size
@@ -86,11 +86,11 @@ module Racc
86
86
  end
87
87
 
88
88
  def assert_output_unchanged(asset)
89
- # racc generates the difference results in GitHub Actions
90
- omit unless RUBY_PLATFORM =~ /darwin/
91
-
92
89
  file = File.basename(asset, '.y')
93
90
 
91
+ # Code to re-generate the expectation files
92
+ # File.write("#{REGRESS_DIR}/#{file}", File.read("#{@TAB_DIR}/#{file}"))
93
+
94
94
  expected = File.read("#{REGRESS_DIR}/#{file}")
95
95
  actual = File.read("#{@TAB_DIR}/#{file}")
96
96
  result = (strip_version(expected) == strip_version(actual))
@@ -1,6 +1,6 @@
1
1
  #
2
2
  # DO NOT MODIFY!!!!
3
- # This file is automatically generated by Racc 1.4.16
3
+ # This file is automatically generated by Racc 1.5.0
4
4
  # from Racc grammar file "".
5
5
  #
6
6
 
@@ -17,81 +17,81 @@ module_eval(<<'...end cadenza.y/module_eval...', 'cadenza.y', 171)
17
17
  ##### State transition tables begin ###
18
18
 
19
19
  racc_action_table = [
20
- 37, 89, 90, 20, 21, 22, 23, 24, 121, 3,
21
- 89, 4, 72, 37, 71, 3, 68, 39, 3, 29,
22
- 43, 37, 65, 66, 33, 9, 34, 110, 74, 50,
23
- 35, 9, 37, 36, 9, 122, 38, 33, 128, 34,
24
- 77, 78, 79, 35, 89, 33, 36, 34, 37, 38,
25
- 3, 35, 46, 17, 36, 85, 33, 38, 34, 37,
26
- 76, 103, 35, 75, 83, 36, 9, 131, 38, 54,
27
- 55, 3, 33, 4, 34, 124, 78, 79, 35, 65,
28
- 66, 36, 67, 33, 38, 34, 125, 9, 109, 35,
29
- 56, 57, 36, 54, 55, 38, 20, 21, 22, 23,
30
- 24, 20, 21, 22, 23, 24, 20, 21, 22, 23,
31
- 24, 108, 29, 65, 66, 54, 55, 29, 56, 57,
32
- 111, 107, 29, 20, 21, 22, 23, 24, 20, 21,
33
- 22, 23, 24, 20, 21, 22, 23, 24, 112, 29,
34
- 3, 113, 116, 114, 29, 115, 3, 103, 39, 29,
35
- 20, 21, 22, 23, 24, 120, 9, 20, 21, 22,
36
- 23, 24, 9, 3, nil, 4, 29, 3, 3, 43,
37
- 46, nil, 3, 29, 87, 3, 3, 4, 116, 9,
38
- 56, 57, nil, 9, 9, 56, 57, 3, 9, 116,
39
- nil, 9, 9, 20, 21, 22, 23, 24, 20, 21,
40
- 22, 23, 24, 9, 65, 66, 56, 57, nil, 29,
41
- 56, 57, 106, nil, 29, 58, 59, 60, 61, 62,
42
- 63, 58, 59, 60, 61, 62, 63, 20, 21, 22,
43
- 23, 24, 20, 21, 22, 23, 24, 20, 21, 22,
44
- 23, 24, 20, 21, 22, 23, 24, 20, 21, 22,
45
- 23, 24, 20, 21, 22, 23, 24, 20, 21, 22,
46
- 23, 24, 20, 21, 22, 23, 24, 20, 21, 22,
47
- 23, 24, 20, 21, 22, 23, 24, 20, 21, 22,
48
- 23, 24, 56, 57, 65, 66 ]
20
+ 37, 89, 65, 66, 20, 21, 22, 23, 24, 17,
21
+ 106, 37, 3, 76, 4, 3, 75, 4, 50, 37,
22
+ 29, 68, 65, 66, 33, 67, 34, 110, 9, 74,
23
+ 35, 9, 37, 36, 71, 33, 38, 34, 77, 78,
24
+ 79, 35, 72, 33, 36, 34, 37, 38, 3, 35,
25
+ 39, 83, 36, 54, 55, 38, 33, 89, 34, 37,
26
+ 90, 3, 35, 43, 9, 36, 85, 103, 38, 108,
27
+ 33, 109, 34, 56, 57, 111, 35, 9, 3, 36,
28
+ 46, 122, 38, 33, 112, 34, 113, 78, 79, 35,
29
+ 114, 3, 36, 4, 9, 38, 20, 21, 22, 23,
30
+ 24, 20, 21, 22, 23, 24, 115, 9, 65, 66,
31
+ 65, 66, 29, 54, 55, 120, 107, 29, 20, 21,
32
+ 22, 23, 24, 20, 21, 22, 23, 24, 20, 21,
33
+ 22, 23, 24, 3, 29, 39, 3, 121, 4, 29,
34
+ 3, 3, 43, 46, 29, 3, 124, 87, 125, 9,
35
+ 54, 55, 9, 56, 57, 128, 9, 9, 3, 103,
36
+ 116, 9, 20, 21, 22, 23, 24, 20, 21, 22,
37
+ 23, 24, 131, 3, 9, 116, 56, 57, 29, 3,
38
+ 89, 116, nil, 29, 20, 21, 22, 23, 24, 9,
39
+ 20, 21, 22, 23, 24, 9, 56, 57, 56, 57,
40
+ 29, 20, 21, 22, 23, 24, 29, 58, 59, 60,
41
+ 61, 62, 63, 56, 57, 56, 57, 29, 58, 59,
42
+ 60, 61, 62, 63, 20, 21, 22, 23, 24, 20,
43
+ 21, 22, 23, 24, 20, 21, 22, 23, 24, 20,
44
+ 21, 22, 23, 24, 20, 21, 22, 23, 24, 20,
45
+ 21, 22, 23, 24, 20, 21, 22, 23, 24, 20,
46
+ 21, 22, 23, 24, 20, 21, 22, 23, 24, 20,
47
+ 21, 22, 23, 24, 20, 21, 22, 23, 24, 65,
48
+ 66 ]
49
49
 
50
50
  racc_action_check = [
51
- 87, 73, 53, 37, 37, 37, 37, 37, 85, 2,
52
- 52, 2, 36, 39, 35, 5, 32, 5, 6, 37,
53
- 6, 46, 51, 51, 87, 2, 87, 73, 37, 17,
54
- 87, 5, 43, 87, 6, 87, 87, 39, 122, 39,
55
- 39, 39, 39, 39, 129, 46, 39, 46, 116, 39,
56
- 7, 46, 7, 1, 46, 46, 43, 46, 43, 4,
57
- 38, 125, 43, 38, 43, 43, 7, 126, 43, 26,
58
- 26, 8, 116, 8, 116, 103, 116, 116, 116, 31,
59
- 31, 116, 31, 4, 116, 4, 105, 8, 72, 4,
60
- 27, 27, 4, 93, 93, 4, 24, 24, 24, 24,
61
- 24, 33, 33, 33, 33, 33, 34, 34, 34, 34,
62
- 34, 71, 24, 70, 70, 94, 94, 33, 95, 95,
63
- 75, 70, 34, 108, 108, 108, 108, 108, 89, 89,
64
- 89, 89, 89, 124, 124, 124, 124, 124, 76, 108,
65
- 118, 77, 118, 78, 89, 79, 41, 67, 41, 124,
66
- 3, 3, 3, 3, 3, 83, 118, 20, 20, 20,
67
- 20, 20, 41, 42, nil, 42, 3, 45, 48, 45,
68
- 48, nil, 49, 20, 49, 0, 82, 0, 82, 42,
69
- 96, 96, nil, 45, 48, 97, 97, 81, 49, 81,
70
- nil, 0, 82, 65, 65, 65, 65, 65, 66, 66,
71
- 66, 66, 66, 81, 69, 69, 98, 98, nil, 65,
72
- 99, 99, 69, nil, 66, 28, 28, 28, 28, 28,
73
- 28, 64, 64, 64, 64, 64, 64, 57, 57, 57,
74
- 57, 57, 29, 29, 29, 29, 29, 58, 58, 58,
75
- 58, 58, 59, 59, 59, 59, 59, 63, 63, 63,
76
- 63, 63, 54, 54, 54, 54, 54, 55, 55, 55,
77
- 55, 55, 56, 56, 56, 56, 56, 61, 61, 61,
78
- 61, 61, 62, 62, 62, 62, 62, 60, 60, 60,
79
- 60, 60, 100, 100, 123, 123 ]
51
+ 4, 73, 69, 69, 37, 37, 37, 37, 37, 1,
52
+ 69, 39, 0, 38, 0, 2, 38, 2, 17, 43,
53
+ 37, 32, 31, 31, 4, 31, 4, 73, 0, 37,
54
+ 4, 2, 46, 4, 35, 39, 4, 39, 39, 39,
55
+ 39, 39, 36, 43, 39, 43, 87, 39, 5, 43,
56
+ 5, 43, 43, 26, 26, 43, 46, 52, 46, 116,
57
+ 53, 6, 46, 6, 5, 46, 46, 67, 46, 71,
58
+ 87, 72, 87, 27, 27, 75, 87, 6, 7, 87,
59
+ 7, 87, 87, 116, 76, 116, 77, 116, 116, 116,
60
+ 78, 8, 116, 8, 7, 116, 3, 3, 3, 3,
61
+ 3, 20, 20, 20, 20, 20, 79, 8, 70, 70,
62
+ 51, 51, 3, 93, 93, 83, 70, 20, 24, 24,
63
+ 24, 24, 24, 33, 33, 33, 33, 33, 34, 34,
64
+ 34, 34, 34, 41, 24, 41, 42, 85, 42, 33,
65
+ 45, 48, 45, 48, 34, 49, 103, 49, 105, 41,
66
+ 94, 94, 42, 95, 95, 122, 45, 48, 81, 125,
67
+ 81, 49, 65, 65, 65, 65, 65, 66, 66, 66,
68
+ 66, 66, 126, 82, 81, 82, 96, 96, 65, 118,
69
+ 129, 118, nil, 66, 89, 89, 89, 89, 89, 82,
70
+ 108, 108, 108, 108, 108, 118, 97, 97, 98, 98,
71
+ 89, 124, 124, 124, 124, 124, 108, 28, 28, 28,
72
+ 28, 28, 28, 99, 99, 100, 100, 124, 64, 64,
73
+ 64, 64, 64, 64, 29, 29, 29, 29, 29, 54,
74
+ 54, 54, 54, 54, 55, 55, 55, 55, 55, 56,
75
+ 56, 56, 56, 56, 57, 57, 57, 57, 57, 58,
76
+ 58, 58, 58, 58, 59, 59, 59, 59, 59, 60,
77
+ 60, 60, 60, 60, 61, 61, 61, 61, 61, 62,
78
+ 62, 62, 62, 62, 63, 63, 63, 63, 63, 123,
79
+ 123 ]
80
80
 
81
81
  racc_action_pointer = [
82
- 151, 53, -15, 147, 56, -9, -6, 26, 47, nil,
83
- nil, nil, nil, nil, nil, nil, nil, 29, nil, nil,
84
- 154, nil, nil, nil, 93, nil, 60, 79, 202, 229,
85
- nil, 59, -9, 98, 103, 11, 9, 0, 57, 10,
86
- nil, 122, 139, 29, nil, 143, 18, nil, 144, 148,
87
- nil, 2, 8, -6, 249, 254, 259, 224, 234, 239,
88
- 274, 264, 269, 244, 208, 190, 195, 144, nil, 184,
89
- 93, 77, 60, -1, nil, 92, 110, 113, 115, 117,
90
- nil, 163, 152, 127, nil, -20, nil, -3, nil, 125,
91
- nil, nil, nil, 84, 106, 107, 169, 174, 195, 199,
92
- 271, nil, nil, 53, nil, 63, nil, nil, 120, nil,
93
- nil, nil, nil, nil, nil, nil, 45, nil, 116, nil,
94
- nil, nil, 10, 264, 130, 58, 39, nil, nil, 42,
82
+ -12, 9, -9, 93, -3, 24, 37, 54, 67, nil,
83
+ nil, nil, nil, nil, nil, nil, nil, 18, nil, nil,
84
+ 98, nil, nil, nil, 115, nil, 44, 62, 194, 221,
85
+ nil, 2, -4, 120, 125, 31, 39, 1, 10, 8,
86
+ nil, 109, 112, 16, nil, 116, 29, nil, 117, 121,
87
+ nil, 90, 55, 52, 226, 231, 236, 241, 246, 251,
88
+ 256, 261, 266, 271, 205, 159, 164, 64, nil, -18,
89
+ 88, 35, 43, -1, nil, 47, 56, 58, 62, 78,
90
+ nil, 134, 149, 87, nil, 109, nil, 43, nil, 181,
91
+ nil, nil, nil, 104, 141, 142, 165, 185, 187, 202,
92
+ 204, nil, nil, 124, nil, 125, nil, nil, 187, nil,
93
+ nil, nil, nil, nil, nil, nil, 56, nil, 155, nil,
94
+ nil, nil, 127, 259, 198, 156, 144, nil, nil, 178,
95
95
  nil, nil ]
96
96
 
97
97
  racc_action_default = [
@@ -111,37 +111,37 @@ racc_action_default = [
111
111
  -32, -46 ]
112
112
 
113
113
  racc_goto_table = [
114
- 18, 40, 19, 32, 104, 51, 52, 105, 2, 88,
115
- 47, 101, 102, 41, 45, 48, 49, 44, 69, 70,
116
- 1, 42, 51, 73, 53, 95, 96, 97, 98, 99,
117
- 100, 91, 92, 93, 94, 64, nil, 80, nil, 18,
118
- nil, 19, nil, 18, nil, 19, 18, 18, 19, 19,
119
- 82, 86, nil, nil, nil, nil, 84, 81, nil, nil,
114
+ 19, 40, 18, 32, 104, 52, 51, 1, 2, 64,
115
+ 47, 91, 92, 41, 45, 48, 49, 44, 42, 69,
116
+ 70, 105, 73, 51, 53, 95, 96, 97, 98, 99,
117
+ 100, 93, 94, 101, 102, 88, nil, 80, nil, 19,
118
+ nil, 18, nil, 19, nil, 18, 19, 19, 18, 18,
119
+ 82, 86, nil, nil, 81, nil, 84, nil, nil, nil,
120
120
  nil, nil, 130, nil, nil, nil, nil, nil, nil, nil,
121
- nil, nil, nil, nil, 123, nil, nil, 117, 119, nil,
122
- 18, nil, 19, nil, nil, nil, nil, nil, nil, 118,
121
+ nil, nil, nil, nil, nil, 123, nil, 117, 119, nil,
122
+ 19, nil, 18, nil, nil, nil, nil, nil, nil, 118,
123
123
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
124
- nil, nil, nil, nil, nil, nil, nil, nil, 126, 51,
125
- 129, nil, nil, nil, 127, nil, 18, nil, 19 ]
124
+ nil, nil, nil, nil, nil, nil, nil, nil, 126, 129,
125
+ 51, nil, nil, nil, 127, nil, 19, nil, 18 ]
126
126
 
127
127
  racc_goto_check = [
128
- 28, 16, 27, 6, 11, 4, 3, 12, 2, 25,
129
- 22, 10, 10, 2, 2, 2, 2, 19, 4, 4,
130
- 1, 15, 4, 3, 6, 8, 8, 8, 8, 8,
131
- 8, 5, 5, 7, 7, 9, nil, 16, nil, 28,
132
- nil, 27, nil, 28, nil, 27, 28, 28, 27, 27,
133
- 2, 22, nil, nil, nil, nil, 19, 15, nil, nil,
128
+ 27, 16, 28, 6, 11, 3, 4, 1, 2, 9,
129
+ 22, 5, 5, 2, 2, 2, 2, 19, 15, 4,
130
+ 4, 12, 3, 4, 6, 8, 8, 8, 8, 8,
131
+ 8, 7, 7, 10, 10, 25, nil, 16, nil, 27,
132
+ nil, 28, nil, 27, nil, 28, 27, 27, 28, 28,
133
+ 2, 22, nil, nil, 15, nil, 19, nil, nil, nil,
134
134
  nil, nil, 11, nil, nil, nil, nil, nil, nil, nil,
135
- nil, nil, nil, nil, 4, nil, nil, 16, 16, nil,
136
- 28, nil, 27, nil, nil, nil, nil, nil, nil, 2,
135
+ nil, nil, nil, nil, nil, 4, nil, 16, 16, nil,
136
+ 27, nil, 28, nil, nil, nil, nil, nil, nil, 2,
137
137
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
138
- nil, nil, nil, nil, nil, nil, nil, nil, 6, 4,
139
- 3, nil, nil, nil, 16, nil, 28, nil, 27 ]
138
+ nil, nil, nil, nil, nil, nil, nil, nil, 6, 3,
139
+ 4, nil, nil, nil, 16, nil, 27, nil, 28 ]
140
140
 
141
141
  racc_goto_pointer = [
142
- nil, 20, 8, -14, -15, -23, 0, -23, -33, 6,
143
- -54, -63, -60, nil, nil, 16, -4, nil, nil, 11,
144
- nil, nil, 3, nil, nil, -40, nil, 0, -2 ]
142
+ nil, 7, 8, -15, -14, -43, 0, -25, -33, -20,
143
+ -32, -63, -46, nil, nil, 13, -4, nil, nil, 11,
144
+ nil, nil, 3, nil, nil, -14, nil, -2, 0 ]
145
145
 
146
146
  racc_goto_default = [
147
147
  nil, nil, nil, nil, 31, 25, nil, 26, 27, 28,