fabulator 0.0.8 → 0.0.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (41) hide show
  1. data/History.txt +30 -1
  2. data/VERSION +1 -1
  3. data/features/functions.feature +7 -0
  4. data/features/primitives.feature +1 -1
  5. data/features/step_definitions/template_steps.rb +40 -3
  6. data/features/step_definitions/xml_steps.rb +3 -2
  7. data/features/templates.feature +49 -22
  8. data/features/types.feature +4 -4
  9. data/lib/fabulator.rb +4 -0
  10. data/lib/fabulator/compiler.rb +27 -0
  11. data/lib/fabulator/core.rb +3 -8
  12. data/lib/fabulator/core/actions/choose.rb +0 -18
  13. data/lib/fabulator/core/actions/for_each.rb +0 -48
  14. data/lib/fabulator/core/{actions.rb → lib.rb} +189 -117
  15. data/lib/fabulator/core/structurals.rb +7 -0
  16. data/lib/fabulator/core/{constraint.rb → structurals/constraint.rb} +2 -0
  17. data/lib/fabulator/core/{filter.rb → structurals/filter.rb} +2 -0
  18. data/lib/fabulator/core/{group.rb → structurals/group.rb} +2 -0
  19. data/lib/fabulator/core/{parameter.rb → structurals/parameter.rb} +2 -0
  20. data/lib/fabulator/core/{state.rb → structurals/state.rb} +2 -0
  21. data/lib/fabulator/core/{state_machine.rb → structurals/state_machine.rb} +2 -0
  22. data/lib/fabulator/core/{transition.rb → structurals/transition.rb} +2 -0
  23. data/lib/fabulator/expr.rb +6 -0
  24. data/lib/fabulator/expr/context.rb +65 -10
  25. data/lib/fabulator/expr/node_logic.rb +3 -2
  26. data/lib/fabulator/expr/parser.rb +787 -638
  27. data/lib/fabulator/expr/statement_list.rb +27 -0
  28. data/lib/fabulator/lib.rb +3 -0
  29. data/lib/fabulator/lib/action.rb +12 -9
  30. data/lib/fabulator/lib/lib.rb +85 -9
  31. data/lib/fabulator/structural.rb +24 -5
  32. data/lib/fabulator/tag_lib.rb +78 -124
  33. data/lib/fabulator/tag_lib/presentations.rb +39 -0
  34. data/lib/fabulator/tag_lib/transformations.rb +66 -0
  35. data/lib/fabulator/tag_lib/type.rb +176 -0
  36. data/lib/fabulator/template/parse_result.rb +125 -62
  37. data/lib/fabulator/template/parser.rb +17 -1
  38. data/xslt/form.xsl +163 -2083
  39. data/xsm_expression_parser.racc +35 -20
  40. metadata +17 -13
  41. data/lib/fabulator/context.rb +0 -39
@@ -6,6 +6,7 @@ module Fabulator
6
6
  end
7
7
 
8
8
  module Core
9
+ module Structurals
9
10
 
10
11
  class StateMachine < Structural
11
12
  attr_accessor :states, :missing_params, :errors, :namespaces, :updated_at
@@ -127,3 +128,4 @@ module Fabulator
127
128
  end
128
129
  end
129
130
  end
131
+ end
@@ -1,5 +1,6 @@
1
1
  module Fabulator
2
2
  module Core
3
+ module Structurals
3
4
  class Transition < Fabulator::Structural
4
5
  attr_accessor :state, :validations, :tags
5
6
 
@@ -108,3 +109,4 @@ module Fabulator
108
109
  end
109
110
  end
110
111
  end
112
+ end
@@ -33,5 +33,11 @@ module Fabulator
33
33
  @node = n
34
34
  end
35
35
  end
36
+
37
+ class VariableAlreadyDefined < StandardError
38
+ def initialize(v)
39
+ @variable = v
40
+ end
41
+ end
36
42
  end
37
43
  end
@@ -7,10 +7,10 @@ module Fabulator
7
7
  @run_time_parent = nil
8
8
  @ns = { }
9
9
  @attributes = { }
10
- @variables = { }
11
10
  @position = nil
12
11
  @last = nil
13
12
  @line_num = nil
13
+ @finalizations = [ ]
14
14
 
15
15
  if parent_context.nil?
16
16
  if xml.nil? || (xml.root rescue nil).nil?
@@ -77,6 +77,11 @@ module Fabulator
77
77
  self.class.new(self, s)
78
78
  end
79
79
 
80
+ def to(t)
81
+ self.with_root(self.root.to(t, self))
82
+ end
83
+
84
+
80
85
  def attribute(ns, attr, popts = { })
81
86
  opts = { :static => !@run_time_parent.nil? && !self.root.nil? }.update(popts)
82
87
  value = nil
@@ -154,13 +159,9 @@ module Fabulator
154
159
  end
155
160
 
156
161
  def get_var(v)
157
- if !@variables.has_key?(v)
162
+ if @variables.nil? || !@variables.has_key?(v)
158
163
  if @run_time_parent.nil?
159
- if @parent.nil?
160
- nil
161
- else
162
- @parent.get_var(v)
163
- end
164
+ @parent.nil? ? nil : @parent.get_var(v)
164
165
  else
165
166
  @run_time_parent.get_var(v)
166
167
  end
@@ -170,16 +171,38 @@ module Fabulator
170
171
  end
171
172
 
172
173
  def set_var(v,vv)
174
+ @variables ||= { }
175
+ if @variables.has_key?(v)
176
+ raise Fabulator::Expr::VariableAlreadyDefined.new(v)
177
+ end
173
178
  @variables[v] = vv
174
179
  end
175
180
 
181
+ def set_scoped_info(k, v)
182
+ @scoped_info ||= { }
183
+ @scoped_info[k] = v
184
+ end
185
+
186
+ def get_scoped_info(k)
187
+ if @scoped_info.nil? || !@scoped_info.has_key?(k)
188
+ if @run_time_parent.nil?
189
+ @parent.nil? ? nil : @parent.get_scoped_info(k)
190
+ else
191
+ @run_time_parent.get_scoped_info(k)
192
+ end
193
+ else
194
+ @scoped_info[k]
195
+ end
196
+ end
197
+
176
198
  def get_ns(n)
177
- return @ns[n] if @ns.has_key?(n)
199
+ return @ns[n] if !@ns.nil? && @ns.has_key?(n)
178
200
  return @parent.get_ns(n) unless @parent.nil?
179
201
  return nil
180
202
  end
181
203
 
182
204
  def set_ns(n,h)
205
+ @ns ||= { }
183
206
  @ns[n] = h
184
207
  end
185
208
 
@@ -374,10 +397,24 @@ module Fabulator
374
397
 
375
398
  def compile_action(e)
376
399
  ns = e.namespaces.namespace.href
377
- return unless Fabulator::TagLib.namespaces.include?(ns)
400
+ return unless Fabulator::TagLib.namespaces.has_key?(ns)
378
401
  Fabulator::TagLib.namespaces[ns].compile_action(e, self)
379
402
  end
380
403
 
404
+ def get_action(ns, nom)
405
+ return unless Fabulator::TagLib.namespaces.include?(ns)
406
+ Fabulator::TagLib.namespaces[ns].get_action(nom, self)
407
+ end
408
+
409
+ def action_exists?(ns, nom)
410
+ if ns == FAB_NS
411
+ return true if ['ensure', 'catch'].include?(nom.to_s)
412
+ end
413
+
414
+ return false unless Fabulator::TagLib.namespaces.has_key?(ns)
415
+ return Fabulator::TagLib.namespaces[ns].action_exists?(nom)
416
+ end
417
+
381
418
  def compile_structurals(xml)
382
419
  #local_ctx = self.merge(xml)
383
420
  structs = { }
@@ -387,6 +424,7 @@ module Fabulator
387
424
  ns = e.namespaces.namespace.href
388
425
  nom = e.name.to_sym
389
426
  allowed = (Fabulator::TagLib.namespaces[our_ns].structural_class(our_nom).accepts_structural?(ns, nom) rescue false)
427
+ raise "Unknown or inappropriate tag #{ns} #{nom} in #{our_ns} #{our_nom}" unless allowed || self.action_exists?(ns, nom)
390
428
  next unless allowed
391
429
  structs[ns] ||= { }
392
430
  structs[ns][nom] ||= [ ]
@@ -413,8 +451,25 @@ module Fabulator
413
451
  # context with the given context.
414
452
  def with(context, &block)
415
453
  ctx = self.merge(context)
416
- yield ctx
454
+ ret = []
455
+ begin
456
+ ret = yield ctx
457
+ ensure
458
+ ctx.clean_up
459
+ end
460
+ ret
461
+ end
462
+
463
+ def clean_up(&block)
464
+ if block.nil?
465
+ @finalizations.each do |f|
466
+ f.call(self)
467
+ end
468
+ else
469
+ @finalizations << block
470
+ end
417
471
  end
472
+
418
473
 
419
474
  # Iterates through the list of items running the given block with
420
475
  # a new context with the current node set to the item.
@@ -21,7 +21,7 @@ module Fabulator
21
21
  r
22
22
  end
23
23
 
24
- def to(t)
24
+ def to(t, ctx = nil)
25
25
  if @vtype.nil? || t.nil?
26
26
  return self.anon_node(self.value, self.vtype)
27
27
  end
@@ -34,10 +34,11 @@ module Fabulator
34
34
  path = Fabulator::TagLib.type_path(self.vtype, t)
35
35
  return self.anon_node(nil,nil) if path.empty?
36
36
  v = self
37
+ ctx = Fabulator::Expr::Context.new if ctx.nil?
37
38
  path.each do |p|
38
39
  vv = nil
39
40
  begin
40
- vv = p.call(v)
41
+ vv = p.convert(ctx.with_root(v))
41
42
  rescue => e
42
43
  raise "Converting to #{t[1]} raised #{e}"
43
44
  end
@@ -9,7 +9,7 @@ module Fabulator
9
9
  module Expr
10
10
  class Parser < Racc::Parser
11
11
 
12
- module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expression_parser.racc', 189)
12
+ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expression_parser.racc', 197)
13
13
  # == Fabulator Expression Parser
14
14
  #
15
15
  # <tt>Fabulator::Expr::Parser</tt> provides a parser for Fabulator
@@ -41,7 +41,7 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
41
41
  def parse(text, context)
42
42
  @source = text
43
43
  @curpos = 0
44
- @context = context
44
+ @context = context.merge
45
45
  @line = 0
46
46
  @col = 0
47
47
 
@@ -72,6 +72,7 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
72
72
  @@regex[:axis] = %r{(#{@@regex[:ncname]})\s*(?=::)}
73
73
  @@regex[:name_colon_star] = %r{(#{@@regex[:ncname]}:\*)}
74
74
  @@regex[:qname] = %r{((?:#{@@regex[:ncname]}:)?#{@@regex[:ncname]})}
75
+ @@regex[:xmlns] = %r{((?:xmlns:)#{@@regex[:ncname]})}
75
76
  @@regex[:dollar_qname] = %r{\$#{@@regex[:qname]}}
76
77
  @@regex[:dollar_int] = %r{\$([0-9]+)}
77
78
  @@regex[:function_name] = %r{#{@@regex[:qname]}\??\*?\s*(?=\([^:])}
@@ -114,7 +115,7 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
114
115
  == & && ||
115
116
  }.split(/\s*/), '[', ',', '$' ].each { |t| @@preceding_tokens[t] = true }
116
117
 
117
- @@regex[:general] = Regexp.compile(%{^(?:#{@@regex[:function_name]}|#{@@regex[:axis]}|#{@@regex[:name_colon_star]}|#{@@regex[:qname]}|#{@@regex[:literal]}|#{@@regex[:number]}|#{@@regex[:dollar_qname]}|#{@@regex[:dollar_int]}|(#{@@regex[:simple_tokens]}))})
118
+ @@regex[:general] = Regexp.compile(%{^(?:#{@@regex[:xmlns]}|#{@@regex[:function_name]}|#{@@regex[:axis]}|#{@@regex[:name_colon_star]}|#{@@regex[:qname]}|#{@@regex[:literal]}|#{@@regex[:number]}|#{@@regex[:dollar_qname]}|#{@@regex[:dollar_int]}|(#{@@regex[:simple_tokens]}))})
118
119
 
119
120
  def next_token
120
121
  @token = nil
@@ -217,6 +218,8 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
217
218
  @token = [ :MOD, 'mod' ]
218
219
  when 'div':
219
220
  @token = [ :DIV, 'div' ]
221
+ when 'err':
222
+ @token = [ :ERR, 'err' ]
220
223
  #when '*doh*':
221
224
  # # do nothing
222
225
  # @token = nil
@@ -244,21 +247,23 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
244
247
  raise "Failed to parse '#{@source}' at #{@curpos}': #{@source[@curpos..@source.length-1]}"
245
248
  else
246
249
  if !res[1].nil?
247
- if res[1] == 'if'
250
+ @token = [ :XMLNS_COLON_NCNAME, res[1] ]
251
+ elsif !res[2].nil?
252
+ if res[2] == 'if'
248
253
  @token = [ :IF, 'if' ]
249
254
  else
250
- if @source[@curpos+res[1].length .. @curpos+res[1].length + 1] =~ /^(\??\*?)/
251
- @token = [ :FUNCTION_NAME, res[1]+$1 ]
255
+ if @source[@curpos+res[2].length .. @curpos+res[2].length + 1] =~ /^(\??\*?)/
256
+ @token = [ :FUNCTION_NAME, res[2]+$1 ]
252
257
  else
253
- @token = [ :FUNCTION_NAME, res[1] ]
258
+ @token = [ :FUNCTION_NAME, res[2] ]
254
259
  end
255
260
  end
256
- elsif !res[2].nil?
257
- @token = [ res[2] == 'method' ? :AXIS_METHOD : :AXIS_NAME, res[2] ]
258
261
  elsif !res[3].nil?
259
- @token = [ :NAME_COLON_STAR, res[3] ]
262
+ @token = [ res[3] == 'method' ? :AXIS_METHOD : :AXIS_NAME, res[3] ]
260
263
  elsif !res[4].nil?
261
- qname = res[4]
264
+ @token = [ :NAME_COLON_STAR, res[4] ]
265
+ elsif !res[5].nil?
266
+ qname = res[5]
262
267
  case qname
263
268
  when 'for':
264
269
  @token = [ :FOR, 'for' ]
@@ -284,11 +289,13 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
284
289
  @token = [ :ELSE, 'else' ]
285
290
  when 'with':
286
291
  @token = [ :WITH, 'with' ]
292
+ when 'err':
293
+ @token = [ :ERR, 'err' ]
287
294
  else
288
- @token = [ :QNAME, res[4] ]
295
+ @token = [ :QNAME, qname ]
289
296
  end
290
- elsif !res[5].nil?
291
- s = res[5]
297
+ elsif !res[6].nil?
298
+ s = res[6]
292
299
  s = s[1..s.length-2]
293
300
  @curpos = @curpos + s.length
294
301
  @col = @col + s.length
@@ -298,18 +305,18 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
298
305
  @token = [ :LITERAL, s ]
299
306
  @curpos = @curpos + 2 # the quotes
300
307
  @col = @col + 2
301
- elsif !res[6].nil?
302
- @token = [ :NUMBER, res[6] ]
303
308
  elsif !res[7].nil?
304
- @curpos = @curpos + 1
305
- @col = @col + 1
306
- @token = [ :DOLLAR_QNAME, res[7] ]
309
+ @token = [ :NUMBER, res[7] ]
307
310
  elsif !res[8].nil?
308
311
  @curpos = @curpos + 1
309
312
  @col = @col + 1
310
313
  @token = [ :DOLLAR_QNAME, res[8] ]
311
314
  elsif !res[9].nil?
312
- @token = [ @@ops[res[9]] || res[9], res[9] ]
315
+ @curpos = @curpos + 1
316
+ @col = @col + 1
317
+ @token = [ :DOLLAR_QNAME, res[9] ]
318
+ elsif !res[10].nil?
319
+ @token = [ @@ops[res[10]] || res[10], res[10] ]
313
320
  else
314
321
  raise "Failed to parse '#{@source}' at #{@curpos}: #{@source[@curpos..@source.length-1]}"
315
322
  end
@@ -327,494 +334,608 @@ module_eval(<<'...end xsm_expression_parser.racc/module_eval...', 'xsm_expressio
327
334
  ##### State transition tables begin ###
328
335
 
329
336
  racc_action_table = [
330
- 88, 28, 29, 39, 44, 164, 109, 88, 12, 88,
331
- 74, 23, 75, 32, 109, 162, 174, 130, 161, 116,
332
- 28, 29, 39, 44, 108, 35, 163, 12, 3, 5,
333
- 23, 165, 32, 20, 26, 30, 34, 41, 159, 1,
334
- 6, 10, 14, 17, 35, 58, 113, 3, 5, 29,
335
- 104, 44, 20, 26, 30, 34, 41, 88, 1, 6,
336
- 10, 14, 17, 130, 106, 107, 88, 128, 29, 39,
337
- 44, 88, 35, 158, 12, 3, 5, 23, 131, 32,
338
- 20, 26, 30, 34, 41, 109, 1, 6, 10, 14,
339
- 17, 35, 98, 89, 3, 5, 59, 60, 120, 20,
340
- 26, 30, 34, 41, 5, 1, 6, 10, 14, 17,
341
- 29, 39, 44, 5, 104, 62, 12, 14, 17, 23,
342
- 121, 32, 65, 66, 62, 117, 14, 17, 110, 29,
343
- 39, 44, -17, 35, 88, 12, 3, 5, 23, 82,
344
- 32, 20, 26, 30, 34, 41, 81, 1, 6, 10,
345
- 14, 17, 35, 65, 66, 3, 5, 78, 79, 80,
346
- 20, 26, 30, 34, 41, 77, 1, 6, 10, 14,
347
- 17, 29, 39, 44, 5, 98, 89, 12, 70, 71,
348
- 23, 88, 32, 65, 66, 62, 88, 14, 17, 88,
349
- 29, 39, 44, 88, 35, 88, 12, 3, 5, 23,
350
- 166, 32, 20, 26, 30, 34, 41, 167, 1, 6,
351
- 10, 14, 17, 35, 65, 66, 3, 5, 78, 79,
352
- 80, 20, 26, 30, 34, 41, 88, 1, 6, 10,
353
- 14, 17, 29, 39, 44, 78, 79, 80, 12, 59,
354
- 60, 23, 58, 32, 96, 97, 98, 89, 65, 66,
355
- 69, 29, 58, 44, 58, 35, 65, 66, 3, 5,
356
- 98, 89, 88, 20, 26, 30, 34, 41, 54, 1,
357
- 6, 10, 14, 17, 35, 98, 89, 3, 5, 65,
358
- 66, 52, 20, 26, 30, 34, 41, 50, 1, 6,
359
- 10, 14, 17, 29, 39, 44, 98, 89, 88, 12,
360
- 98, 89, 23, nil, 32, 98, 89, 98, 89, nil,
361
- nil, nil, 29, 39, 44, nil, 35, nil, 12, 3,
362
- 5, 23, nil, 32, 20, 26, 30, 34, 41, nil,
363
- 1, 6, 10, 14, 17, 35, nil, nil, 3, 5,
364
- nil, nil, nil, 20, 26, 30, 34, 41, nil, 1,
365
- 6, 10, 14, 17, 29, 39, 44, nil, nil, nil,
366
- 12, nil, nil, 23, nil, 32, nil, nil, nil, nil,
367
- nil, nil, nil, 29, nil, 44, nil, 35, nil, nil,
368
- 3, 5, nil, nil, nil, 20, 26, 30, 34, 41,
369
- nil, 1, 6, 10, 14, 17, 35, 29, nil, 44,
370
- 5, nil, nil, nil, 20, 26, 30, 34, 41, nil,
371
- 1, 6, 10, 14, 17, nil, 29, nil, 44, nil,
372
- 35, nil, nil, 3, 5, nil, nil, nil, 20, 26,
373
- 30, 34, 41, nil, 1, 6, 10, 14, 17, 35,
374
- nil, nil, 3, 5, 29, nil, 44, 20, 26, 30,
375
- 34, 41, nil, 1, 6, 10, 14, 17, nil, nil,
376
- nil, nil, nil, 29, nil, 44, nil, 35, nil, nil,
377
- 3, 5, nil, nil, nil, 20, 26, 30, 34, 41,
378
- nil, 1, 6, 10, 14, 17, 35, nil, nil, 3,
379
- 5, nil, nil, nil, 20, 26, 30, 34, 41, nil,
380
- 1, 6, 10, 14, 17, 29, 39, 44, nil, nil,
381
- nil, 12, nil, nil, 23, nil, 32, nil, nil, nil,
382
- nil, nil, nil, nil, 29, nil, 44, nil, 35, nil,
383
- nil, 3, 5, nil, nil, nil, 20, 26, 30, 34,
384
- 41, nil, 1, 6, 10, 14, 17, 35, nil, nil,
385
- 3, 5, 29, nil, 44, 20, 26, 30, 34, 41,
386
- nil, 1, 6, 10, 14, 17, nil, nil, nil, nil,
387
- nil, 29, nil, 44, nil, 35, nil, nil, 3, 5,
388
- nil, nil, nil, 20, 26, 30, 34, 41, nil, 1,
389
- 6, 10, 14, 17, 35, nil, nil, 3, 5, 29,
390
- nil, 44, 20, 26, 30, 34, 41, nil, 1, 6,
391
- 10, 14, 17, nil, nil, nil, nil, nil, 29, nil,
392
- 44, nil, 35, nil, nil, 3, 5, nil, nil, nil,
393
- 20, 26, 30, 34, 41, nil, 1, 6, 10, 14,
394
- 17, 35, 29, nil, 44, 5, nil, nil, nil, 20,
395
- 26, 30, 34, 41, nil, 1, 6, 10, 14, 17,
396
- nil, 29, 39, 44, nil, 35, nil, 12, 3, 5,
397
- 23, nil, 32, 20, 26, 30, 34, 41, nil, 1,
398
- 6, 10, 14, 17, 35, nil, nil, 3, 5, 29,
399
- nil, 44, 20, 26, 30, 34, 41, nil, 1, 6,
400
- 10, 14, 17, nil, nil, nil, nil, nil, 29, nil,
401
- 44, nil, 35, nil, nil, 3, 5, nil, nil, nil,
402
- 20, 26, 30, 34, 41, nil, 1, 6, 10, 14,
403
- 17, 35, nil, nil, 3, 5, 29, nil, 44, 20,
404
- 26, 30, 34, 41, nil, 1, 6, 10, 14, 17,
405
- nil, nil, nil, nil, nil, 29, nil, 44, nil, 35,
406
- nil, nil, nil, 5, nil, nil, nil, 20, 26, 30,
407
- 34, 41, nil, 1, 6, 10, 14, 17, 35, nil,
408
- nil, 3, 5, 29, nil, 44, 20, 26, 30, 34,
409
- 41, nil, 1, 6, 10, 14, 17, nil, nil, nil,
410
- nil, nil, 29, 39, 44, nil, 35, nil, 12, 3,
411
- 5, 23, nil, 32, 20, 26, 30, 34, 41, nil,
412
- 1, 6, 10, 14, 17, 35, nil, nil, 3, 5,
413
- nil, nil, nil, 20, 26, 30, 34, 41, nil, 1,
414
- 6, 10, 14, 17, 29, 39, 44, nil, nil, nil,
415
- 12, nil, nil, 23, nil, 32, nil, nil, nil, nil,
416
- nil, nil, nil, 29, 39, 44, nil, 35, nil, 12,
417
- 3, 5, 23, nil, 32, 20, 26, 30, 34, 41,
418
- nil, 1, 6, 10, 14, 17, 35, nil, nil, 3,
419
- 5, 29, nil, 44, 20, 26, 30, 34, 41, nil,
420
- 1, 6, 10, 14, 17, nil, nil, nil, nil, nil,
421
- 29, nil, 44, nil, 35, nil, nil, 3, 5, nil,
422
- nil, nil, 20, 26, 30, 34, 41, nil, 1, 6,
423
- 10, 14, 17, 35, nil, nil, 3, 5, 29, nil,
424
- 44, 20, 26, 30, 34, 41, nil, 1, 6, 10,
425
- 14, 17, nil, nil, nil, nil, nil, 29, nil, 44,
426
- nil, 35, nil, nil, 3, 5, nil, nil, nil, 20,
427
- 26, 30, 34, 41, nil, 1, 6, 10, 14, 17,
428
- 35, nil, nil, nil, 5, nil, nil, nil, 20, 26,
429
- 30, 34, 41, nil, 1, 6, 10, 14, 17, 29,
430
- 39, 44, 35, nil, nil, 12, 5, nil, 23, nil,
431
- 32, nil, 30, 34, 41, nil, 85, 62, nil, 14,
432
- 17, nil, 35, -16, nil, 3, 5, nil, nil, nil,
433
- 20, 26, 30, 34, 41, nil, 1, 6, 10, 14,
434
- 17, 90, 91, nil, -16, 92, 93, 94, 95, 96,
435
- 97, 98, 89, 35, nil, nil, nil, 5, nil, nil,
436
- nil, nil, 35, 30, 34, 41, 5, nil, 62, nil,
437
- 14, 17, 30, 34, 41, nil, nil, 62, 35, 14,
438
- 17, nil, 5, nil, nil, nil, nil, 35, 30, 34,
439
- 41, 5, nil, 62, nil, 14, 17, 30, 34, 41,
440
- nil, nil, 62, 35, 14, 17, nil, 5, nil, nil,
441
- nil, nil, 35, 30, 34, 41, 5, nil, 62, nil,
442
- 14, 17, 30, 34, 41, nil, nil, 62, 35, 14,
443
- 17, nil, 5, nil, nil, nil, nil, nil, 30, 34,
444
- 41, nil, nil, 62, nil, 14, 17, 90, 91, nil,
445
- nil, 92, 93, 94, 95, 96, 97, 98, 89, 90,
446
- 91, nil, nil, 92, 93, 94, 95, nil, nil, 98,
447
- 89 ]
337
+ 59, 60, 35, 37, 174, 47, 4, 6, 59, 60,
338
+ 135, 29, 112, 170, 40, 120, 51, 167, 102, 135,
339
+ 103, 154, 28, 59, 60, 151, 153, 175, 2, 139,
340
+ 141, 17, 21, 173, 146, 134, 38, 42, 49, 1,
341
+ 7, 149, 15, 22, 25, 31, 35, 37, 138, 47,
342
+ 4, 6, 145, 2, 144, 29, 135, 21, 40, -20,
343
+ 51, 21, 137, 49, 1, 7, 28, 53, 136, 25,
344
+ 31, 53, 2, 25, 31, 17, 21, -19, 100, 101,
345
+ 38, 42, 49, 1, 7, 120, 15, 22, 25, 31,
346
+ 37, 114, 47, 112, 6, 100, 101, 75, 76, 89,
347
+ -19, 77, 78, 79, 80, 71, 72, 73, 74, 28,
348
+ 59, 60, 66, 67, 68, 2, 66, 67, 68, 21,
349
+ 59, 60, 180, 38, 42, 49, 1, 7, 89, 15,
350
+ 22, 25, 31, 37, 89, 47, 4, 6, 84, 2,
351
+ 82, 29, 81, 21, 40, 65, 51, 21, 64, 49,
352
+ 1, 7, 28, 53, 58, 25, 31, 53, 2, 25,
353
+ 31, 17, 21, 66, 67, 68, 38, 42, 49, 1,
354
+ 7, 89, 15, 22, 25, 31, 37, nil, 47, 4,
355
+ 6, nil, 2, nil, 29, nil, 21, 40, nil, 51,
356
+ 59, 60, 49, 1, 7, 28, 53, nil, 25, 31,
357
+ 152, 2, 59, 60, 17, 21, 59, 60, nil, 38,
358
+ 42, 49, 1, 7, nil, 15, 22, 25, 31, 37,
359
+ nil, 47, 4, 6, nil, 2, nil, 29, nil, 21,
360
+ 40, nil, 51, 59, 60, 49, 1, 7, 28, 53,
361
+ nil, 25, 31, 113, 2, 92, 93, 17, 21, 100,
362
+ 101, nil, 38, 42, 49, 1, 7, nil, 15, 22,
363
+ 25, 31, 37, nil, 47, 4, 6, nil, 2, nil,
364
+ 29, nil, 21, 40, nil, 51, 73, 74, 49, 1,
365
+ 7, 28, 53, nil, 25, 31, nil, 2, 73, 74,
366
+ 17, 21, 100, 101, nil, 38, 42, 49, 1, 7,
367
+ nil, 15, 22, 25, 31, 37, nil, 47, 4, 6,
368
+ nil, 2, nil, 29, nil, 21, 40, nil, 51, 94,
369
+ 95, 49, 1, 7, 28, 53, nil, 25, 31, nil,
370
+ 2, 73, 74, 17, 21, 73, 74, nil, 38, 42,
371
+ 49, 1, 7, nil, 15, 22, 25, 31, 37, 2,
372
+ 47, nil, 6, 21, 71, 72, 73, 74, 2, 49,
373
+ 1, 7, 21, 53, nil, 25, 31, 28, 49, 1,
374
+ 7, nil, 53, 2, 25, 31, 17, 21, 73, 74,
375
+ nil, 38, 42, 49, 1, 7, nil, 15, 22, 25,
376
+ 31, 37, nil, 47, 4, 6, 21, 73, 74, 29,
377
+ 56, 57, 40, nil, 51, nil, 53, nil, 25, 31,
378
+ 28, 73, 74, 73, 74, nil, 2, 59, 60, 17,
379
+ 21, 92, 93, nil, 38, 42, 49, 1, 7, nil,
380
+ 15, 22, 25, 31, 37, nil, 47, nil, 6, 75,
381
+ 76, 59, 60, 77, 78, 79, 80, 71, 72, 73,
382
+ 74, 59, 60, 28, 59, 60, 100, 101, nil, 2,
383
+ 59, 60, 17, 21, 100, 101, nil, 38, 42, 49,
384
+ 1, 7, nil, 15, 22, 25, 31, 37, nil, 47,
385
+ nil, 6, 75, 76, 100, 101, 77, 78, 79, 80,
386
+ 59, 60, 73, 74, 59, 60, 28, nil, nil, nil,
387
+ nil, nil, 2, nil, nil, nil, 21, nil, nil, nil,
388
+ 38, 42, 49, 1, 7, nil, 15, 22, 25, 31,
389
+ 37, nil, 47, 4, 6, nil, nil, nil, 29, nil,
390
+ nil, 40, nil, 51, nil, nil, nil, nil, nil, 28,
391
+ nil, nil, nil, nil, nil, 2, nil, nil, 17, 21,
392
+ nil, nil, nil, 38, 42, 49, 1, 7, nil, 15,
393
+ 22, 25, 31, 37, nil, 47, 4, 6, nil, nil,
394
+ nil, 29, nil, nil, 40, nil, 51, nil, nil, nil,
395
+ nil, nil, 28, nil, nil, nil, nil, nil, 2, nil,
396
+ nil, 17, 21, nil, nil, nil, 38, 42, 49, 1,
397
+ 7, nil, 15, 22, 25, 31, 37, nil, 47, nil,
398
+ 6, nil, nil, nil, nil, nil, nil, nil, nil, nil,
399
+ nil, nil, nil, nil, nil, 28, nil, nil, nil, nil,
400
+ nil, 2, nil, nil, 17, 21, nil, nil, nil, 38,
401
+ 42, 49, 1, 7, nil, 15, 22, 25, 31, 37,
402
+ nil, 47, 4, 6, nil, nil, nil, 29, nil, nil,
403
+ 40, nil, 51, nil, nil, nil, nil, nil, 28, nil,
404
+ nil, nil, nil, nil, 2, nil, nil, 17, 21, nil,
405
+ nil, nil, 38, 42, 49, 1, 7, nil, 15, 22,
406
+ 25, 31, 37, nil, 47, 4, 6, nil, nil, nil,
407
+ 29, nil, nil, 40, nil, 51, nil, nil, nil, nil,
408
+ nil, 28, nil, nil, nil, nil, nil, 2, nil, nil,
409
+ 17, 21, nil, nil, nil, 38, 42, 49, 1, 7,
410
+ nil, 15, 22, 25, 31, 37, nil, 47, nil, 6,
411
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
412
+ nil, nil, nil, nil, 28, nil, nil, nil, nil, nil,
413
+ 2, nil, nil, 17, 21, nil, nil, nil, 38, 42,
414
+ 49, 1, 7, nil, 15, 22, 25, 31, 37, nil,
415
+ 47, nil, 6, nil, nil, nil, nil, nil, nil, nil,
416
+ nil, nil, nil, nil, nil, nil, nil, 28, nil, nil,
417
+ nil, nil, nil, 2, nil, nil, 17, 21, nil, nil,
418
+ nil, 38, 42, 49, 1, 7, nil, 15, 22, 25,
419
+ 31, 37, nil, 47, 4, 6, nil, nil, nil, 29,
420
+ nil, nil, 40, nil, 51, nil, nil, nil, nil, nil,
421
+ 28, nil, nil, nil, nil, nil, 2, nil, nil, 17,
422
+ 21, nil, nil, nil, 38, 42, 49, 1, 7, nil,
423
+ 15, 22, 25, 31, 37, nil, 47, 4, 6, nil,
424
+ nil, nil, 29, nil, nil, 40, nil, 51, nil, nil,
425
+ nil, nil, nil, 28, nil, nil, nil, nil, nil, 2,
426
+ nil, nil, 17, 21, nil, nil, nil, 38, 42, 49,
427
+ 1, 7, nil, 15, 22, 25, 31, 37, nil, 47,
428
+ 4, 6, nil, nil, nil, 29, nil, nil, 40, nil,
429
+ 51, nil, nil, nil, nil, nil, 28, nil, nil, nil,
430
+ nil, nil, 2, nil, nil, 17, 21, nil, nil, nil,
431
+ 38, 42, 49, 1, 7, nil, 15, 22, 25, 31,
432
+ 37, nil, 47, nil, 6, nil, nil, nil, nil, nil,
433
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 28,
434
+ nil, nil, nil, nil, nil, 2, nil, nil, 17, 21,
435
+ nil, nil, nil, 38, 42, 49, 1, 7, nil, 15,
436
+ 22, 25, 31, 37, nil, 47, nil, 6, nil, nil,
437
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
438
+ nil, nil, 28, nil, nil, nil, nil, nil, 2, nil,
439
+ nil, 17, 21, nil, nil, nil, 38, 42, 49, 1,
440
+ 7, nil, 15, 22, 25, 31, 37, nil, 47, nil,
441
+ 6, nil, nil, nil, nil, nil, nil, nil, nil, nil,
442
+ nil, nil, nil, nil, nil, 28, nil, nil, nil, nil,
443
+ nil, 2, nil, nil, 17, 21, nil, nil, nil, 38,
444
+ 42, 49, 1, 7, nil, 15, 22, 25, 31, 37,
445
+ nil, 47, nil, 6, nil, nil, nil, nil, nil, nil,
446
+ nil, nil, nil, nil, nil, nil, nil, nil, 28, nil,
447
+ nil, nil, nil, nil, 2, nil, nil, 17, 21, nil,
448
+ nil, nil, 38, 42, 49, 1, 7, nil, 15, 22,
449
+ 25, 31, 37, nil, 47, 4, 6, nil, nil, nil,
450
+ 29, nil, nil, 40, nil, 51, nil, nil, nil, nil,
451
+ nil, 28, nil, nil, nil, nil, nil, 2, nil, nil,
452
+ 17, 21, nil, nil, nil, 38, 42, 49, 1, 7,
453
+ nil, 15, 22, 25, 31, 37, nil, 47, 4, 6,
454
+ nil, nil, nil, 29, nil, nil, 40, nil, 51, nil,
455
+ nil, nil, nil, nil, 28, nil, nil, nil, nil, nil,
456
+ 2, nil, nil, 17, 21, nil, nil, nil, 38, 42,
457
+ 49, 1, 7, nil, 15, 22, 25, 31, 37, nil,
458
+ 47, nil, 6, nil, nil, nil, nil, nil, nil, nil,
459
+ nil, nil, nil, nil, nil, nil, nil, 28, nil, nil,
460
+ nil, nil, 37, 2, 47, nil, 6, 21, nil, nil,
461
+ nil, 38, 42, 49, 1, 7, nil, 15, 22, 25,
462
+ 31, 28, nil, nil, nil, nil, nil, 2, nil, nil,
463
+ 17, 21, nil, nil, nil, 38, 42, 49, 1, 7,
464
+ nil, 15, 22, 25, 31, 37, nil, 47, nil, 6,
465
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
466
+ nil, nil, nil, nil, 28, nil, nil, nil, nil, nil,
467
+ 2, nil, nil, 17, 21, nil, nil, nil, 38, 42,
468
+ 49, 1, 7, nil, 15, 22, 25, 31, 37, nil,
469
+ 47, nil, 6, nil, nil, nil, nil, nil, nil, nil,
470
+ nil, nil, nil, nil, nil, nil, nil, 28, nil, nil,
471
+ nil, nil, nil, 2, nil, nil, 17, 21, nil, nil,
472
+ nil, 38, 42, 49, 1, 7, nil, 15, 22, 25,
473
+ 31, 37, nil, 47, nil, 6, nil, nil, nil, nil,
474
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
475
+ 28, nil, nil, nil, nil, 37, 2, 47, nil, 6,
476
+ 21, nil, nil, nil, 38, 42, 49, 1, 7, nil,
477
+ 15, 22, 25, 31, 28, nil, nil, nil, nil, nil,
478
+ 2, nil, nil, 17, 21, nil, nil, nil, 38, 42,
479
+ 49, 1, 7, nil, 15, 22, 25, 31, 37, nil,
480
+ 47, nil, 6, nil, nil, nil, nil, nil, nil, nil,
481
+ nil, nil, nil, nil, nil, nil, nil, 28, nil, nil,
482
+ nil, nil, nil, 2, nil, nil, 17, 21, nil, nil,
483
+ nil, 38, 42, 49, 1, 7, nil, 15, 22, 25,
484
+ 31, 37, nil, 47, nil, 6, nil, nil, nil, nil,
485
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
486
+ 28, nil, nil, nil, nil, nil, 2, nil, nil, 17,
487
+ 21, nil, nil, nil, 38, 42, 49, 1, 7, nil,
488
+ 15, 22, 25, 31, 37, nil, 47, nil, 6, nil,
489
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
490
+ nil, nil, nil, 28, nil, nil, nil, nil, nil, 2,
491
+ nil, nil, 17, 21, nil, nil, nil, 38, 42, 49,
492
+ 1, 7, nil, 15, 22, 25, 31, 37, nil, 47,
493
+ nil, 6, nil, nil, nil, nil, nil, nil, nil, nil,
494
+ nil, nil, nil, nil, nil, nil, 28, nil, nil, nil,
495
+ nil, nil, 2, nil, nil, 17, 21, nil, nil, nil,
496
+ 38, 42, 49, 1, 7, nil, 15, 22, 25, 31,
497
+ 37, nil, 47, nil, 6, nil, nil, nil, nil, nil,
498
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 28,
499
+ nil, nil, nil, nil, nil, 2, nil, nil, 17, 21,
500
+ nil, nil, nil, 38, 42, 49, 1, 7, nil, 15,
501
+ 22, 25, 31, 37, nil, 47, 4, 6, nil, nil,
502
+ nil, 29, nil, nil, 40, nil, 51, nil, nil, nil,
503
+ nil, nil, 28, nil, nil, nil, nil, nil, 2, nil,
504
+ nil, 17, 21, nil, nil, nil, 38, 42, 49, 1,
505
+ 7, nil, 15, 22, 25, 31 ]
448
506
 
449
507
  racc_action_check = [
450
- 61, 0, 0, 0, 0, 145, 67, 173, 0, 148,
451
- 33, 0, 33, 0, 56, 134, 173, 129, 132, 67,
452
- 75, 75, 75, 75, 56, 0, 145, 75, 0, 0,
453
- 75, 148, 75, 0, 0, 0, 0, 0, 129, 0,
454
- 0, 0, 0, 0, 75, 109, 61, 75, 75, 94,
455
- 55, 94, 75, 75, 75, 75, 75, 102, 75, 75,
456
- 75, 75, 75, 86, 55, 55, 127, 84, 120, 120,
457
- 120, 87, 94, 127, 120, 94, 94, 120, 87, 120,
458
- 94, 94, 94, 94, 94, 73, 94, 94, 94, 94,
459
- 94, 120, 139, 139, 120, 120, 100, 100, 73, 120,
460
- 120, 120, 120, 120, 34, 120, 120, 120, 120, 120,
461
- 166, 166, 166, 64, 83, 34, 166, 34, 34, 166,
462
- 74, 166, 151, 151, 64, 69, 64, 64, 58, 117,
463
- 117, 117, 146, 166, 45, 117, 166, 166, 117, 41,
464
- 117, 166, 166, 166, 166, 166, 39, 166, 166, 166,
465
- 166, 166, 117, 150, 150, 117, 117, 135, 135, 135,
466
- 117, 117, 117, 117, 117, 37, 117, 117, 117, 117,
467
- 117, 17, 17, 17, 31, 140, 140, 17, 31, 31,
468
- 17, 152, 17, 21, 21, 31, 154, 31, 31, 155,
469
- 116, 116, 116, 156, 17, 157, 116, 17, 17, 116,
470
- 158, 116, 17, 17, 17, 17, 17, 159, 17, 17,
471
- 17, 17, 17, 116, 63, 63, 116, 116, 144, 144,
472
- 144, 116, 116, 116, 116, 116, 160, 116, 116, 116,
473
- 116, 116, 110, 110, 110, 38, 38, 38, 110, 15,
474
- 15, 110, 32, 110, 172, 172, 172, 172, 118, 118,
475
- 28, 164, 23, 164, 12, 110, 119, 119, 110, 110,
476
- 141, 141, 169, 110, 110, 110, 110, 110, 10, 110,
477
- 110, 110, 110, 110, 164, 142, 142, 164, 164, 68,
478
- 68, 4, 164, 164, 164, 164, 164, 2, 164, 164,
479
- 164, 164, 164, 108, 108, 108, 143, 143, 175, 108,
480
- 137, 137, 108, nil, 108, 136, 136, 138, 138, nil,
481
- nil, nil, 162, 162, 162, nil, 108, nil, 162, 108,
482
- 108, 162, nil, 162, 108, 108, 108, 108, 108, nil,
483
- 108, 108, 108, 108, 108, 162, nil, nil, 162, 162,
484
- nil, nil, nil, 162, 162, 162, 162, 162, nil, 162,
485
- 162, 162, 162, 162, 104, 104, 104, nil, nil, nil,
486
- 104, nil, nil, 104, nil, 104, nil, nil, nil, nil,
487
- nil, nil, nil, 161, nil, 161, nil, 104, nil, nil,
488
- 104, 104, nil, nil, nil, 104, 104, 104, 104, 104,
489
- nil, 104, 104, 104, 104, 104, 161, 98, nil, 98,
490
- 161, nil, nil, nil, 161, 161, 161, 161, 161, nil,
491
- 161, 161, 161, 161, 161, nil, 97, nil, 97, nil,
492
- 98, nil, nil, 98, 98, nil, nil, nil, 98, 98,
493
- 98, 98, 98, nil, 98, 98, 98, 98, 98, 97,
494
- nil, nil, 97, 97, 96, nil, 96, 97, 97, 97,
495
- 97, 97, nil, 97, 97, 97, 97, 97, nil, nil,
496
- nil, nil, nil, 95, nil, 95, nil, 96, nil, nil,
497
- 96, 96, nil, nil, nil, 96, 96, 96, 96, 96,
498
- nil, 96, 96, 96, 96, 96, 95, nil, nil, 95,
499
- 95, nil, nil, nil, 95, 95, 95, 95, 95, nil,
500
- 95, 95, 95, 95, 95, 130, 130, 130, nil, nil,
501
- nil, 130, nil, nil, 130, nil, 130, nil, nil, nil,
502
- nil, nil, nil, nil, 93, nil, 93, nil, 130, nil,
503
- nil, 130, 130, nil, nil, nil, 130, 130, 130, 130,
504
- 130, nil, 130, 130, 130, 130, 130, 93, nil, nil,
505
- 93, 93, 3, nil, 3, 93, 93, 93, 93, 93,
506
- nil, 93, 93, 93, 93, 93, nil, nil, nil, nil,
507
- nil, 92, nil, 92, nil, 3, nil, nil, 3, 3,
508
- nil, nil, nil, 3, 3, 3, 3, 3, nil, 3,
509
- 3, 3, 3, 3, 92, nil, nil, 92, 92, 91,
510
- nil, 91, 92, 92, 92, 92, 92, nil, 92, 92,
511
- 92, 92, 92, nil, nil, nil, nil, nil, 50, nil,
512
- 50, nil, 91, nil, nil, 91, 91, nil, nil, nil,
513
- 91, 91, 91, 91, 91, nil, 91, 91, 91, 91,
514
- 91, 50, 52, nil, 52, 50, nil, nil, nil, 50,
515
- 50, 50, 50, 50, nil, 50, 50, 50, 50, 50,
516
- nil, 54, 54, 54, nil, 52, nil, 54, 52, 52,
517
- 54, nil, 54, 52, 52, 52, 52, 52, nil, 52,
518
- 52, 52, 52, 52, 54, nil, nil, 54, 54, 90,
519
- nil, 90, 54, 54, 54, 54, 54, nil, 54, 54,
520
- 54, 54, 54, nil, nil, nil, nil, nil, 89, nil,
521
- 89, nil, 90, nil, nil, 90, 90, nil, nil, nil,
522
- 90, 90, 90, 90, 90, nil, 90, 90, 90, 90,
523
- 90, 89, nil, nil, 89, 89, 88, nil, 88, 89,
524
- 89, 89, 89, 89, nil, 89, 89, 89, 89, 89,
525
- nil, nil, nil, nil, nil, 59, nil, 59, nil, 88,
526
- nil, nil, nil, 88, nil, nil, nil, 88, 88, 88,
527
- 88, 88, nil, 88, 88, 88, 88, 88, 59, nil,
528
- nil, 59, 59, 60, nil, 60, 59, 59, 59, 59,
529
- 59, nil, 59, 59, 59, 59, 59, nil, nil, nil,
530
- nil, nil, 174, 174, 174, nil, 60, nil, 174, 60,
531
- 60, 174, nil, 174, 60, 60, 60, 60, 60, nil,
532
- 60, 60, 60, 60, 60, 174, nil, nil, 174, 174,
533
- nil, nil, nil, 174, 174, 174, 174, 174, nil, 174,
534
- 174, 174, 174, 174, 85, 85, 85, nil, nil, nil,
535
- 85, nil, nil, 85, nil, 85, nil, nil, nil, nil,
536
- nil, nil, nil, 81, 81, 81, nil, 85, nil, 81,
537
- 85, 85, 81, nil, 81, 85, 85, 85, 85, 85,
538
- nil, 85, 85, 85, 85, 85, 81, nil, nil, 81,
539
- 81, 80, nil, 80, 81, 81, 81, 81, 81, nil,
540
- 81, 81, 81, 81, 81, nil, nil, nil, nil, nil,
541
- 79, nil, 79, nil, 80, nil, nil, 80, 80, nil,
542
- nil, nil, 80, 80, 80, 80, 80, nil, 80, 80,
543
- 80, 80, 80, 79, nil, nil, 79, 79, 78, nil,
544
- 78, 79, 79, 79, 79, 79, nil, 79, 79, 79,
545
- 79, 79, nil, nil, nil, nil, nil, 77, nil, 77,
546
- nil, 78, nil, nil, 78, 78, nil, nil, nil, 78,
547
- 78, 78, 78, 78, nil, 78, 78, 78, 78, 78,
548
- 77, nil, nil, nil, 77, nil, nil, nil, 77, 77,
549
- 77, 77, 77, nil, 77, 77, 77, 77, 77, 44,
550
- 44, 44, 66, nil, nil, 44, 66, nil, 44, nil,
551
- 44, nil, 66, 66, 66, nil, 44, 66, nil, 66,
552
- 66, nil, 44, 149, nil, 44, 44, nil, nil, nil,
553
- 44, 44, 44, 44, 44, nil, 44, 44, 44, 44,
554
- 44, 149, 149, nil, 149, 149, 149, 149, 149, 149,
555
- 149, 149, 149, 106, nil, nil, nil, 106, nil, nil,
556
- nil, nil, 70, 106, 106, 106, 70, nil, 106, nil,
557
- 106, 106, 70, 70, 70, nil, nil, 70, 26, 70,
558
- 70, nil, 26, nil, nil, nil, nil, 65, 26, 26,
559
- 26, 65, nil, 26, nil, 26, 26, 65, 65, 65,
560
- nil, nil, 65, 71, 65, 65, nil, 71, nil, nil,
561
- nil, nil, 20, 71, 71, 71, 20, nil, 71, nil,
562
- 71, 71, 20, 20, 20, nil, nil, 20, 107, 20,
563
- 20, nil, 107, nil, nil, nil, nil, nil, 107, 107,
564
- 107, nil, nil, 107, nil, 107, 107, 48, 48, nil,
565
- nil, 48, 48, 48, 48, 48, 48, 48, 48, 101,
566
- 101, nil, nil, 101, 101, 101, 101, nil, nil, 101,
567
- 101 ]
508
+ 90, 90, 0, 0, 159, 0, 0, 0, 156, 156,
509
+ 104, 0, 85, 152, 0, 91, 0, 145, 46, 98,
510
+ 46, 111, 0, 163, 163, 104, 110, 159, 0, 91,
511
+ 91, 0, 0, 156, 98, 85, 0, 0, 0, 0,
512
+ 0, 102, 0, 0, 0, 0, 103, 103, 90, 103,
513
+ 103, 103, 95, 141, 94, 103, 87, 141, 103, 160,
514
+ 103, 96, 89, 141, 141, 141, 103, 141, 87, 141,
515
+ 141, 96, 103, 96, 96, 103, 103, 158, 106, 106,
516
+ 103, 103, 103, 103, 103, 69, 103, 103, 103, 103,
517
+ 84, 63, 84, 61, 84, 105, 105, 158, 158, 51,
518
+ 158, 158, 158, 158, 158, 158, 158, 158, 158, 84,
519
+ 176, 176, 124, 124, 124, 84, 10, 10, 10, 84,
520
+ 169, 169, 176, 84, 84, 84, 84, 84, 40, 84,
521
+ 84, 84, 84, 137, 29, 137, 137, 137, 23, 56,
522
+ 22, 137, 20, 56, 137, 9, 137, 1, 7, 56,
523
+ 56, 56, 137, 56, 4, 56, 56, 1, 137, 1,
524
+ 1, 137, 137, 123, 123, 123, 137, 137, 137, 137,
525
+ 137, 135, 137, 137, 137, 137, 6, nil, 6, 6,
526
+ 6, nil, 57, nil, 6, nil, 57, 6, nil, 6,
527
+ 107, 107, 57, 57, 57, 6, 57, nil, 57, 57,
528
+ 107, 6, 155, 155, 6, 6, 171, 171, nil, 6,
529
+ 6, 6, 6, 6, nil, 6, 6, 6, 6, 136,
530
+ nil, 136, 136, 136, nil, 100, nil, 136, nil, 100,
531
+ 136, nil, 136, 62, 62, 100, 100, 100, 136, 100,
532
+ nil, 100, 100, 62, 136, 34, 34, 136, 136, 99,
533
+ 99, nil, 136, 136, 136, 136, 136, nil, 136, 136,
534
+ 136, 136, 151, nil, 151, 151, 151, nil, 139, nil,
535
+ 151, nil, 139, 151, nil, 151, 121, 121, 139, 139,
536
+ 139, 151, 139, nil, 139, 139, nil, 151, 122, 122,
537
+ 151, 151, 97, 97, nil, 151, 151, 151, 151, 151,
538
+ nil, 151, 151, 151, 151, 120, nil, 120, 120, 120,
539
+ nil, 42, nil, 120, nil, 42, 120, nil, 120, 35,
540
+ 35, 42, 42, 42, 120, 42, nil, 42, 42, nil,
541
+ 120, 125, 125, 120, 120, 126, 126, nil, 120, 120,
542
+ 120, 120, 120, nil, 120, 120, 120, 120, 17, 38,
543
+ 17, nil, 17, 38, 178, 178, 178, 178, 101, 38,
544
+ 38, 38, 101, 38, nil, 38, 38, 17, 101, 101,
545
+ 101, nil, 101, 17, 101, 101, 17, 17, 127, 127,
546
+ nil, 17, 17, 17, 17, 17, nil, 17, 17, 17,
547
+ 17, 112, nil, 112, 112, 112, 3, 128, 128, 112,
548
+ 3, 3, 112, nil, 112, nil, 3, nil, 3, 3,
549
+ 112, 129, 129, 130, 130, nil, 112, 168, 168, 112,
550
+ 112, 132, 132, nil, 112, 112, 112, 112, 112, nil,
551
+ 112, 112, 112, 112, 174, nil, 174, nil, 174, 19,
552
+ 19, 162, 162, 19, 19, 19, 19, 19, 19, 19,
553
+ 19, 86, 86, 174, 5, 5, 43, 43, nil, 174,
554
+ 166, 166, 174, 174, 165, 165, nil, 174, 174, 174,
555
+ 174, 174, nil, 174, 174, 174, 174, 154, nil, 154,
556
+ nil, 154, 131, 131, 164, 164, 131, 131, 131, 131,
557
+ 108, 108, 131, 131, 181, 181, 154, nil, nil, nil,
558
+ nil, nil, 154, nil, nil, nil, 154, nil, nil, nil,
559
+ 154, 154, 154, 154, 154, nil, 154, 154, 154, 154,
560
+ 170, nil, 170, 170, 170, nil, nil, nil, 170, nil,
561
+ nil, 170, nil, 170, nil, nil, nil, nil, nil, 170,
562
+ nil, nil, nil, nil, nil, 170, nil, nil, 170, 170,
563
+ nil, nil, nil, 170, 170, 170, 170, 170, nil, 170,
564
+ 170, 170, 170, 28, nil, 28, 28, 28, nil, nil,
565
+ nil, 28, nil, nil, 28, nil, 28, nil, nil, nil,
566
+ nil, nil, 28, nil, nil, nil, nil, nil, 28, nil,
567
+ nil, 28, 28, nil, nil, nil, 28, 28, 28, 28,
568
+ 28, nil, 28, 28, 28, 28, 73, nil, 73, nil,
569
+ 73, nil, nil, nil, nil, nil, nil, nil, nil, nil,
570
+ nil, nil, nil, nil, nil, 73, nil, nil, nil, nil,
571
+ nil, 73, nil, nil, 73, 73, nil, nil, nil, 73,
572
+ 73, 73, 73, 73, nil, 73, 73, 73, 73, 31,
573
+ nil, 31, 31, 31, nil, nil, nil, 31, nil, nil,
574
+ 31, nil, 31, nil, nil, nil, nil, nil, 31, nil,
575
+ nil, nil, nil, nil, 31, nil, nil, 31, 31, nil,
576
+ nil, nil, 31, 31, 31, 31, 31, nil, 31, 31,
577
+ 31, 31, 144, nil, 144, 144, 144, nil, nil, nil,
578
+ 144, nil, nil, 144, nil, 144, nil, nil, nil, nil,
579
+ nil, 144, nil, nil, nil, nil, nil, 144, nil, nil,
580
+ 144, 144, nil, nil, nil, 144, 144, 144, 144, 144,
581
+ nil, 144, 144, 144, 144, 93, nil, 93, nil, 93,
582
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
583
+ nil, nil, nil, nil, 93, nil, nil, nil, nil, nil,
584
+ 93, nil, nil, 93, 93, nil, nil, nil, 93, 93,
585
+ 93, 93, 93, nil, 93, 93, 93, 93, 92, nil,
586
+ 92, nil, 92, nil, nil, nil, nil, nil, nil, nil,
587
+ nil, nil, nil, nil, nil, nil, nil, 92, nil, nil,
588
+ nil, nil, nil, 92, nil, nil, 92, 92, nil, nil,
589
+ nil, 92, 92, 92, 92, 92, nil, 92, 92, 92,
590
+ 92, 153, nil, 153, 153, 153, nil, nil, nil, 153,
591
+ nil, nil, 153, nil, 153, nil, nil, nil, nil, nil,
592
+ 153, nil, nil, nil, nil, nil, 153, nil, nil, 153,
593
+ 153, nil, nil, nil, 153, 153, 153, 153, 153, nil,
594
+ 153, 153, 153, 153, 180, nil, 180, 180, 180, nil,
595
+ nil, nil, 180, nil, nil, 180, nil, 180, nil, nil,
596
+ nil, nil, nil, 180, nil, nil, nil, nil, nil, 180,
597
+ nil, nil, 180, 180, nil, nil, nil, 180, 180, 180,
598
+ 180, 180, nil, 180, 180, 180, 180, 82, nil, 82,
599
+ 82, 82, nil, nil, nil, 82, nil, nil, 82, nil,
600
+ 82, nil, nil, nil, nil, nil, 82, nil, nil, nil,
601
+ nil, nil, 82, nil, nil, 82, 82, nil, nil, nil,
602
+ 82, 82, 82, 82, 82, nil, 82, 82, 82, 82,
603
+ 81, nil, 81, nil, 81, nil, nil, nil, nil, nil,
604
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 81,
605
+ nil, nil, nil, nil, nil, 81, nil, nil, 81, 81,
606
+ nil, nil, nil, 81, 81, 81, 81, 81, nil, 81,
607
+ 81, 81, 81, 80, nil, 80, nil, 80, nil, nil,
608
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
609
+ nil, nil, 80, nil, nil, nil, nil, nil, 80, nil,
610
+ nil, 80, 80, nil, nil, nil, 80, 80, 80, 80,
611
+ 80, nil, 80, 80, 80, 80, 79, nil, 79, nil,
612
+ 79, nil, nil, nil, nil, nil, nil, nil, nil, nil,
613
+ nil, nil, nil, nil, nil, 79, nil, nil, nil, nil,
614
+ nil, 79, nil, nil, 79, 79, nil, nil, nil, 79,
615
+ 79, 79, 79, 79, nil, 79, 79, 79, 79, 78,
616
+ nil, 78, nil, 78, nil, nil, nil, nil, nil, nil,
617
+ nil, nil, nil, nil, nil, nil, nil, nil, 78, nil,
618
+ nil, nil, nil, nil, 78, nil, nil, 78, 78, nil,
619
+ nil, nil, 78, 78, 78, 78, 78, nil, 78, 78,
620
+ 78, 78, 58, nil, 58, 58, 58, nil, nil, nil,
621
+ 58, nil, nil, 58, nil, 58, nil, nil, nil, nil,
622
+ nil, 58, nil, nil, nil, nil, nil, 58, nil, nil,
623
+ 58, 58, nil, nil, nil, 58, 58, 58, 58, 58,
624
+ nil, 58, 58, 58, 58, 59, nil, 59, 59, 59,
625
+ nil, nil, nil, 59, nil, nil, 59, nil, 59, nil,
626
+ nil, nil, nil, nil, 59, nil, nil, nil, nil, nil,
627
+ 59, nil, nil, 59, 59, nil, nil, nil, 59, 59,
628
+ 59, 59, 59, nil, 59, 59, 59, 59, 60, nil,
629
+ 60, nil, 60, nil, nil, nil, nil, nil, nil, nil,
630
+ nil, nil, nil, nil, nil, nil, nil, 60, nil, nil,
631
+ nil, nil, 77, 60, 77, nil, 77, 60, nil, nil,
632
+ nil, 60, 60, 60, 60, 60, nil, 60, 60, 60,
633
+ 60, 77, nil, nil, nil, nil, nil, 77, nil, nil,
634
+ 77, 77, nil, nil, nil, 77, 77, 77, 77, 77,
635
+ nil, 77, 77, 77, 77, 76, nil, 76, nil, 76,
636
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
637
+ nil, nil, nil, nil, 76, nil, nil, nil, nil, nil,
638
+ 76, nil, nil, 76, 76, nil, nil, nil, 76, 76,
639
+ 76, 76, 76, nil, 76, 76, 76, 76, 75, nil,
640
+ 75, nil, 75, nil, nil, nil, nil, nil, nil, nil,
641
+ nil, nil, nil, nil, nil, nil, nil, 75, nil, nil,
642
+ nil, nil, nil, 75, nil, nil, 75, 75, nil, nil,
643
+ nil, 75, 75, 75, 75, 75, nil, 75, 75, 75,
644
+ 75, 65, nil, 65, nil, 65, nil, nil, nil, nil,
645
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
646
+ 65, nil, nil, nil, nil, 66, 65, 66, nil, 66,
647
+ 65, nil, nil, nil, 65, 65, 65, 65, 65, nil,
648
+ 65, 65, 65, 65, 66, nil, nil, nil, nil, nil,
649
+ 66, nil, nil, 66, 66, nil, nil, nil, 66, 66,
650
+ 66, 66, 66, nil, 66, 66, 66, 66, 67, nil,
651
+ 67, nil, 67, nil, nil, nil, nil, nil, nil, nil,
652
+ nil, nil, nil, nil, nil, nil, nil, 67, nil, nil,
653
+ nil, nil, nil, 67, nil, nil, 67, 67, nil, nil,
654
+ nil, 67, 67, 67, 67, 67, nil, 67, 67, 67,
655
+ 67, 68, nil, 68, nil, 68, nil, nil, nil, nil,
656
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
657
+ 68, nil, nil, nil, nil, nil, 68, nil, nil, 68,
658
+ 68, nil, nil, nil, 68, 68, 68, 68, 68, nil,
659
+ 68, 68, 68, 68, 74, nil, 74, nil, 74, nil,
660
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
661
+ nil, nil, nil, 74, nil, nil, nil, nil, nil, 74,
662
+ nil, nil, 74, 74, nil, nil, nil, 74, 74, 74,
663
+ 74, 74, nil, 74, 74, 74, 74, 71, nil, 71,
664
+ nil, 71, nil, nil, nil, nil, nil, nil, nil, nil,
665
+ nil, nil, nil, nil, nil, nil, 71, nil, nil, nil,
666
+ nil, nil, 71, nil, nil, 71, 71, nil, nil, nil,
667
+ 71, 71, 71, 71, 71, nil, 71, 71, 71, 71,
668
+ 72, nil, 72, nil, 72, nil, nil, nil, nil, nil,
669
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 72,
670
+ nil, nil, nil, nil, nil, 72, nil, nil, 72, 72,
671
+ nil, nil, nil, 72, 72, 72, 72, 72, nil, 72,
672
+ 72, 72, 72, 146, nil, 146, 146, 146, nil, nil,
673
+ nil, 146, nil, nil, 146, nil, 146, nil, nil, nil,
674
+ nil, nil, 146, nil, nil, nil, nil, nil, 146, nil,
675
+ nil, 146, 146, nil, nil, nil, 146, 146, 146, 146,
676
+ 146, nil, 146, 146, 146, 146 ]
568
677
 
569
678
  racc_action_pointer = [
570
- -5, nil, 250, 545, 262, nil, nil, nil, nil, nil,
571
- 259, nil, 247, nil, nil, 219, nil, 164, nil, nil,
572
- 1082, 145, nil, 245, nil, nil, 1048, nil, 243, nil,
573
- nil, 140, 235, 10, 70, nil, nil, 128, 201, 137,
574
- nil, 96, nil, nil, 992, 131, nil, nil, 1125, nil,
575
- 611, nil, 635, nil, 654, 26, 10, nil, 113, 748,
576
- 776, -3, nil, 176, 79, 1057, 972, 2, 241, 120,
577
- 1032, 1073, nil, 81, 120, 14, nil, 950, 931, 903,
578
- 884, 856, nil, 90, 57, 837, 59, 68, 729, 701,
579
- 682, 592, 564, 517, 42, 456, 437, 409, 390, nil,
580
- 76, 1137, 54, nil, 347, nil, 1023, 1098, 286, 38,
581
- 225, nil, nil, nil, nil, nil, 183, 122, 210, 218,
582
- 61, nil, nil, nil, nil, nil, nil, 63, nil, 13,
583
- 498, nil, 14, nil, 10, 123, 273, 268, 275, 60,
584
- 143, 228, 243, 264, 184, 1, 128, nil, 6, 1019,
585
- 115, 84, 178, nil, 183, 186, 190, 192, 189, 197,
586
- 223, 366, 305, nil, 244, nil, 103, nil, nil, 259,
587
- nil, nil, 214, 4, 795, 295 ]
679
+ -5, 110, nil, 359, 142, 451, 168, 102, nil, 105,
680
+ 79, nil, nil, nil, nil, nil, nil, 340, nil, 414,
681
+ 120, nil, 128, 98, nil, nil, nil, nil, 555, 126,
682
+ nil, 641, nil, nil, 222, 311, nil, nil, 316, nil,
683
+ 120, nil, 278, 415, nil, nil, 18, nil, nil, nil,
684
+ nil, 91, nil, nil, nil, nil, 106, 149, 1114, 1157,
685
+ 1200, 88, 230, 78, nil, 1353, 1377, 1420, 1463, 58,
686
+ nil, 1549, 1592, 598, 1506, 1310, 1267, 1224, 1071, 1028,
687
+ 985, 942, 899, nil, 82, 7, 448, 51, nil, 44,
688
+ -3, -12, 770, 727, 48, 46, 24, 251, 14, 208,
689
+ 192, 325, 41, 39, 5, 54, 37, 187, 487, nil,
690
+ 20, 16, 383, nil, nil, nil, nil, nil, nil, nil,
691
+ 297, 241, 253, 126, 75, 296, 300, 343, 362, 376,
692
+ 378, 457, 398, nil, nil, 163, 211, 125, nil, 235,
693
+ nil, 20, nil, nil, 684, 7, 1635, nil, nil, nil,
694
+ nil, 254, -1, 813, 469, 199, 5, nil, 72, -1,
695
+ 54, nil, 438, 20, 443, 423, 457, nil, 414, 117,
696
+ 512, 203, nil, nil, 426, nil, 107, nil, 321, nil,
697
+ 856, 491 ]
588
698
 
589
699
  racc_action_default = [
590
- -3, -88, -55, -100, -6, -99, -89, -86, -58, -7,
591
- -100, -80, -100, -8, -96, -29, -9, -100, -31, -10,
592
- -65, -63, -34, -100, -11, -87, -100, -64, -100, -84,
593
- -74, -100, -100, -100, -100, -75, -70, -54, -45, -100,
594
- -1, -100, -80, -48, -92, -4, -76, -52, -38, -5,
595
- -100, -53, -100, -90, -92, -60, -100, -24, -100, -100,
596
- -100, -100, -97, -66, -100, -100, -100, -100, -67, -100,
597
- -100, -100, -77, -100, -100, -3, -78, -100, -100, -100,
598
- -100, -100, -79, -73, -100, -100, -93, -94, -100, -100,
599
- -100, -100, -100, -100, -100, -100, -100, -100, -100, -57,
600
- -30, -38, -94, -81, -100, -59, -100, -100, -100, -100,
601
- -100, -32, -33, -98, -71, -72, -100, -100, -68, -69,
602
- -100, 176, -2, -56, -49, -50, -51, -100, -91, -100,
603
- -100, -85, -12, -13, -100, -47, -35, -36, -39, -40,
604
- -41, -42, -43, -44, -46, -100, -7, -18, -100, -38,
605
- -61, -62, -23, -25, -26, -27, -20, -28, -100, -100,
606
- -95, -100, -100, -83, -100, -82, -100, -37, -14, -15,
607
- -17, -19, -16, -22, -100, -21 ]
700
+ -3, -104, -79, -104, -104, -4, -96, -104, -74, -58,
701
+ -49, -5, -84, -52, -6, -93, -80, -104, -56, -42,
702
+ -7, -103, -104, -59, -8, -100, -90, -62, -104, -104,
703
+ -9, -104, -84, -10, -33, -104, -11, -88, -69, -35,
704
+ -104, -12, -104, -67, -38, -13, -104, -92, -91, -78,
705
+ -68, -104, -1, -101, -82, -81, -104, -104, -104, -104,
706
+ -104, -97, -98, -104, -83, -104, -104, -104, -104, -77,
707
+ -57, -104, -104, -104, -104, -104, -104, -104, -104, -104,
708
+ -104, -104, -96, -94, -104, -104, -98, -104, -28, -104,
709
+ -104, -64, -104, -104, -104, -104, -104, -70, -104, -71,
710
+ -104, -104, -104, -3, -104, -72, -73, -104, -14, -16,
711
+ -104, -15, -104, -89, -95, -60, -53, -54, -55, -85,
712
+ -104, -47, -48, -50, -51, -39, -40, -43, -44, -45,
713
+ -46, -42, -34, -61, -41, -104, -104, -104, -102, -104,
714
+ -63, -104, -36, -37, -104, -104, -104, -75, -76, 182,
715
+ -2, -104, -104, -104, -104, -99, -104, -21, -42, -104,
716
+ -8, -29, -27, -30, -65, -66, -23, -24, -31, -32,
717
+ -104, -18, -17, -86, -104, -87, -26, -22, -19, -20,
718
+ -104, -25 ]
608
719
 
609
720
  racc_goto_table = [
610
- 61, 99, 101, 51, 133, 147, 40, 146, 63, 101,
611
- 101, 64, 56, 135, 68, 72, 100, 64, 76, 55,
612
- 114, 115, 144, 67, 111, 112, 129, 87, 123, 105,
613
- 153, 145, 73, 132, 33, 53, nil, 102, nil, 134,
614
- 136, 137, 138, 139, 140, 141, 142, 143, 72, nil,
615
- 83, nil, nil, nil, 149, nil, 64, 64, 118, 119,
616
- nil, 64, 64, nil, 127, 171, nil, 170, 102, nil,
617
- nil, nil, nil, nil, nil, nil, nil, 168, 124, 125,
618
- 126, 122, nil, nil, nil, nil, nil, 148, nil, nil,
619
- nil, 152, nil, 154, 150, 151, nil, 64, 64, 155,
620
- 156, nil, nil, 157, nil, nil, nil, nil, nil, nil,
621
- nil, nil, 134, 160, 172, nil, nil, nil, nil, nil,
721
+ 62, 52, 97, 54, 132, 55, 99, 109, 96, 121,
722
+ 122, 157, 96, 125, 126, 127, 128, 129, 130, 131,
723
+ 105, 106, 86, 110, 160, 90, 96, 96, 115, 87,
724
+ 131, 131, 70, 85, 69, 147, 148, 142, 143, 140,
725
+ 98, 123, 124, 161, 159, 111, 46, 133, 83, nil,
726
+ nil, 104, 107, 108, 91, nil, nil, nil, 158, nil,
727
+ nil, nil, nil, nil, nil, 177, nil, nil, nil, nil,
728
+ 96, 96, nil, nil, nil, nil, 86, nil, 179, nil,
729
+ nil, 116, 117, 118, nil, nil, nil, nil, nil, nil,
730
+ nil, nil, nil, nil, nil, nil, nil, nil, 55, nil,
731
+ nil, 172, nil, 164, 150, 165, 155, nil, nil, 96,
732
+ nil, 96, 178, nil, 156, nil, nil, 110, nil, nil,
622
733
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
734
+ 162, 163, nil, nil, nil, nil, nil, nil, 166, nil,
735
+ 168, nil, nil, nil, nil, 169, nil, 171, nil, nil,
623
736
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
624
- nil, nil, nil, nil, nil, 169, nil, nil, nil, 173,
625
- nil, nil, nil, nil, nil, nil, nil, 175 ]
737
+ nil, nil, nil, nil, 176, nil, nil, nil, nil, nil,
738
+ nil, nil, nil, nil, 181 ]
626
739
 
627
740
  racc_goto_check = [
628
- 3, 13, 15, 25, 12, 14, 2, 6, 32, 15,
629
- 15, 34, 17, 24, 32, 37, 19, 34, 37, 30,
630
- 35, 35, 24, 17, 20, 20, 23, 3, 13, 31,
631
- 18, 16, 17, 11, 1, 39, nil, 3, nil, 13,
632
- 15, 15, 15, 15, 15, 15, 15, 15, 37, nil,
633
- 30, nil, nil, nil, 15, nil, 34, 34, 32, 32,
634
- nil, 34, 34, nil, 3, 14, nil, 6, 3, nil,
635
- nil, nil, nil, nil, nil, nil, nil, 12, 25, 25,
636
- 25, 2, nil, nil, nil, nil, nil, 3, nil, nil,
637
- nil, 3, nil, 3, 32, 32, nil, 34, 34, 3,
638
- 3, nil, nil, 3, nil, nil, nil, nil, nil, nil,
639
- nil, nil, 13, 3, 15, nil, nil, nil, nil, nil,
741
+ 3, 2, 34, 39, 21, 39, 34, 14, 36, 17,
742
+ 17, 16, 36, 17, 17, 17, 17, 17, 17, 17,
743
+ 34, 34, 3, 15, 7, 3, 36, 36, 15, 19,
744
+ 17, 17, 27, 25, 32, 37, 37, 22, 22, 33,
745
+ 19, 26, 26, 20, 18, 13, 1, 15, 41, nil,
746
+ nil, 19, 3, 3, 32, nil, nil, nil, 17, nil,
747
+ nil, nil, nil, nil, nil, 16, nil, nil, nil, nil,
748
+ 36, 36, nil, nil, nil, nil, 3, nil, 7, nil,
749
+ nil, 27, 27, 27, nil, nil, nil, nil, nil, nil,
750
+ nil, nil, nil, nil, nil, nil, nil, nil, 39, nil,
751
+ nil, 14, nil, 34, 2, 34, 3, nil, nil, 36,
752
+ nil, 36, 17, nil, 3, nil, nil, 15, nil, nil,
640
753
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
754
+ 3, 3, nil, nil, nil, nil, nil, nil, 3, nil,
755
+ 3, nil, nil, nil, nil, 3, nil, 3, nil, nil,
641
756
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
642
- nil, nil, nil, nil, nil, 3, nil, nil, nil, 3,
643
- nil, nil, nil, nil, nil, nil, nil, 3 ]
757
+ nil, nil, nil, nil, 3, nil, nil, nil, nil, nil,
758
+ nil, nil, nil, nil, 3 ]
644
759
 
645
760
  racc_goto_pointer = [
646
- nil, 34, 6, -17, nil, nil, -97, nil, nil, nil,
647
- nil, -55, -84, -49, -99, -50, -73, 0, -79, -36,
648
- -35, nil, nil, -59, -76, 0, nil, nil, nil, nil,
649
- 8, -26, -12, nil, -9, -45, nil, -16, nil, 25,
650
- nil ]
761
+ nil, 46, 1, -6, nil, nil, nil, -96, nil, nil,
762
+ nil, nil, nil, -15, -53, -37, -109, -62, -76, 0,
763
+ -92, -77, -55, nil, nil, 5, -32, 15, nil, nil,
764
+ nil, nil, 22, -52, -36, nil, -30, -65, nil, 2,
765
+ nil, 26, nil ]
651
766
 
652
767
  racc_goto_default = [
653
- nil, nil, nil, 45, 49, 4, 9, 13, 16, 19,
654
- 24, nil, nil, 37, nil, 48, nil, nil, 57, 15,
655
- 18, 22, 25, 86, 38, 43, 47, 2, 8, 11,
656
- nil, nil, 21, 27, 31, 36, 42, 46, 103, 7,
657
- 84 ]
768
+ nil, nil, nil, 5, 11, 14, 20, 24, 30, 33,
769
+ 36, 41, 45, nil, nil, 9, nil, 19, nil, nil,
770
+ 88, 34, 39, 44, 48, 61, 10, 13, 18, 23,
771
+ 27, 32, nil, nil, 43, 50, 3, 8, 12, 16,
772
+ 119, 26, 63 ]
658
773
 
659
774
  racc_reduce_table = [
660
775
  0, 0, :racc_error,
661
- 1, 51, :_reduce_1,
662
- 3, 51, :_reduce_2,
663
- 0, 52, :_reduce_none,
664
- 1, 52, :_reduce_none,
665
- 1, 52, :_reduce_none,
666
- 1, 53, :_reduce_none,
667
- 1, 53, :_reduce_none,
668
- 1, 53, :_reduce_none,
669
- 1, 53, :_reduce_none,
670
- 1, 53, :_reduce_none,
671
- 1, 53, :_reduce_none,
672
- 3, 60, :_reduce_12,
673
- 1, 61, :_reduce_13,
674
- 3, 61, :_reduce_14,
675
- 3, 62, :_reduce_15,
676
- 1, 64, :_reduce_none,
677
- 1, 64, :_reduce_none,
678
- 1, 66, :_reduce_18,
679
- 3, 66, :_reduce_19,
680
- 4, 54, :_reduce_20,
681
- 8, 57, :_reduce_21,
682
- 6, 57, :_reduce_22,
683
- 4, 58, :_reduce_23,
684
- 1, 67, :_reduce_24,
685
- 3, 67, :_reduce_25,
686
- 3, 68, :_reduce_26,
687
- 4, 59, :_reduce_27,
688
- 4, 59, :_reduce_28,
776
+ 1, 53, :_reduce_1,
777
+ 3, 53, :_reduce_2,
778
+ 0, 54, :_reduce_none,
779
+ 1, 54, :_reduce_none,
780
+ 1, 54, :_reduce_none,
781
+ 1, 54, :_reduce_6,
689
782
  1, 55, :_reduce_none,
690
- 3, 55, :_reduce_30,
691
- 1, 69, :_reduce_none,
692
- 3, 69, :_reduce_32,
693
- 3, 69, :_reduce_33,
694
- 1, 70, :_reduce_none,
695
- 3, 70, :_reduce_35,
696
- 3, 70, :_reduce_36,
697
- 5, 72, :_reduce_37,
698
- 1, 71, :_reduce_none,
699
- 3, 71, :_reduce_39,
700
- 3, 71, :_reduce_40,
701
- 3, 71, :_reduce_41,
702
- 3, 71, :_reduce_42,
703
- 3, 56, :_reduce_43,
704
- 3, 56, :_reduce_44,
705
- 1, 65, :_reduce_none,
706
- 3, 65, :_reduce_46,
707
- 3, 65, :_reduce_47,
783
+ 1, 55, :_reduce_none,
784
+ 1, 55, :_reduce_none,
785
+ 1, 55, :_reduce_none,
786
+ 1, 55, :_reduce_none,
787
+ 1, 55, :_reduce_none,
788
+ 1, 55, :_reduce_none,
789
+ 3, 64, :_reduce_14,
790
+ 3, 63, :_reduce_15,
791
+ 1, 65, :_reduce_16,
792
+ 3, 65, :_reduce_17,
793
+ 3, 66, :_reduce_18,
794
+ 1, 68, :_reduce_none,
795
+ 1, 68, :_reduce_none,
796
+ 1, 70, :_reduce_21,
797
+ 3, 70, :_reduce_22,
798
+ 4, 56, :_reduce_23,
799
+ 4, 57, :_reduce_24,
800
+ 8, 60, :_reduce_25,
801
+ 6, 60, :_reduce_26,
802
+ 4, 61, :_reduce_27,
803
+ 1, 71, :_reduce_28,
804
+ 3, 71, :_reduce_29,
805
+ 3, 72, :_reduce_30,
806
+ 4, 62, :_reduce_31,
807
+ 4, 62, :_reduce_32,
808
+ 1, 58, :_reduce_none,
809
+ 3, 58, :_reduce_34,
810
+ 1, 73, :_reduce_none,
811
+ 3, 73, :_reduce_36,
812
+ 3, 73, :_reduce_37,
708
813
  1, 74, :_reduce_none,
709
- 3, 74, :_reduce_49,
710
- 3, 74, :_reduce_50,
711
- 3, 74, :_reduce_51,
814
+ 3, 74, :_reduce_39,
815
+ 3, 74, :_reduce_40,
816
+ 3, 76, :_reduce_41,
712
817
  1, 75, :_reduce_none,
713
- 2, 75, :_reduce_53,
714
- 1, 76, :_reduce_none,
715
- 1, 76, :_reduce_55,
716
- 3, 77, :_reduce_56,
717
- 3, 77, :_reduce_57,
718
- 1, 63, :_reduce_58,
719
- 3, 63, :_reduce_59,
720
- 0, 81, :_reduce_none,
721
- 2, 81, :_reduce_61,
722
- 2, 81, :_reduce_62,
723
- 1, 78, :_reduce_none,
818
+ 3, 75, :_reduce_43,
819
+ 3, 75, :_reduce_44,
820
+ 3, 75, :_reduce_45,
821
+ 3, 75, :_reduce_46,
822
+ 3, 59, :_reduce_47,
823
+ 3, 59, :_reduce_48,
824
+ 1, 69, :_reduce_none,
825
+ 3, 69, :_reduce_50,
826
+ 3, 69, :_reduce_51,
724
827
  1, 78, :_reduce_none,
725
- 1, 83, :_reduce_65,
726
- 2, 83, :_reduce_66,
727
- 2, 83, :_reduce_67,
728
- 3, 83, :_reduce_68,
729
- 3, 83, :_reduce_69,
730
- 1, 82, :_reduce_70,
731
- 3, 82, :_reduce_71,
732
- 3, 82, :_reduce_72,
733
- 2, 85, :_reduce_73,
734
- 1, 85, :_reduce_74,
735
- 1, 85, :_reduce_75,
736
- 1, 86, :_reduce_76,
737
- 2, 86, :_reduce_77,
738
- 2, 86, :_reduce_78,
739
- 2, 84, :_reduce_79,
740
- 0, 80, :_reduce_80,
741
- 2, 80, :_reduce_81,
742
- 3, 88, :_reduce_82,
743
- 3, 88, :_reduce_83,
744
- 1, 79, :_reduce_84,
745
- 3, 79, :_reduce_85,
828
+ 3, 78, :_reduce_53,
829
+ 3, 78, :_reduce_54,
830
+ 3, 78, :_reduce_55,
746
831
  1, 79, :_reduce_none,
747
- 1, 79, :_reduce_none,
748
- 1, 79, :_reduce_88,
749
- 1, 79, :_reduce_89,
750
- 2, 79, :_reduce_90,
751
- 3, 89, :_reduce_91,
752
- 0, 90, :_reduce_92,
753
- 1, 90, :_reduce_none,
754
- 1, 73, :_reduce_94,
755
- 3, 73, :_reduce_95,
756
- 1, 87, :_reduce_none,
757
- 1, 87, :_reduce_97,
758
- 3, 87, :_reduce_98,
759
- 1, 87, :_reduce_none ]
760
-
761
- racc_reduce_n = 100
762
-
763
- racc_shift_n = 176
832
+ 2, 79, :_reduce_57,
833
+ 1, 80, :_reduce_none,
834
+ 1, 80, :_reduce_59,
835
+ 3, 81, :_reduce_60,
836
+ 3, 81, :_reduce_61,
837
+ 1, 67, :_reduce_62,
838
+ 3, 67, :_reduce_63,
839
+ 0, 85, :_reduce_none,
840
+ 2, 85, :_reduce_65,
841
+ 2, 85, :_reduce_66,
842
+ 1, 82, :_reduce_none,
843
+ 1, 82, :_reduce_none,
844
+ 1, 87, :_reduce_69,
845
+ 2, 87, :_reduce_70,
846
+ 2, 87, :_reduce_71,
847
+ 3, 87, :_reduce_72,
848
+ 3, 87, :_reduce_73,
849
+ 1, 86, :_reduce_74,
850
+ 3, 86, :_reduce_75,
851
+ 3, 86, :_reduce_76,
852
+ 2, 89, :_reduce_77,
853
+ 1, 89, :_reduce_78,
854
+ 1, 89, :_reduce_79,
855
+ 1, 90, :_reduce_80,
856
+ 2, 90, :_reduce_81,
857
+ 2, 90, :_reduce_82,
858
+ 2, 88, :_reduce_83,
859
+ 0, 84, :_reduce_84,
860
+ 2, 84, :_reduce_85,
861
+ 3, 92, :_reduce_86,
862
+ 3, 92, :_reduce_87,
863
+ 1, 83, :_reduce_88,
864
+ 3, 83, :_reduce_89,
865
+ 1, 83, :_reduce_none,
866
+ 1, 83, :_reduce_none,
867
+ 1, 83, :_reduce_92,
868
+ 1, 83, :_reduce_93,
869
+ 2, 83, :_reduce_94,
870
+ 3, 93, :_reduce_95,
871
+ 0, 94, :_reduce_96,
872
+ 1, 94, :_reduce_none,
873
+ 1, 77, :_reduce_98,
874
+ 3, 77, :_reduce_99,
875
+ 1, 91, :_reduce_none,
876
+ 1, 91, :_reduce_101,
877
+ 3, 91, :_reduce_102,
878
+ 1, 91, :_reduce_none ]
879
+
880
+ racc_reduce_n = 104
881
+
882
+ racc_shift_n = 182
764
883
 
765
884
  racc_token_table = {
766
885
  false => 0,
767
886
  :error => 1,
768
887
  :SEMI => 2,
769
- :WITH => 3,
770
- :COMMA => 4,
771
- :COLON_EQUAL => 5,
772
- :LET => 6,
773
- :DOLLAR_QNAME => 7,
774
- :IF => 8,
775
- :LP => 9,
776
- :RP => 10,
777
- :THEN => 11,
778
- :ELSE => 12,
779
- :FOR => 13,
780
- :RETURN => 14,
781
- :IN => 15,
782
- :SOME => 16,
783
- :SATISFIES => 17,
784
- :EVERY => 18,
785
- :OR => 19,
786
- :AND => 20,
787
- :EXCEPT => 21,
788
- :EQ => 22,
789
- :NEQ => 23,
790
- :LB => 24,
791
- :RB => 25,
792
- :LT => 26,
793
- :GT => 27,
794
- :LTE => 28,
795
- :GTE => 29,
796
- :DOT_DOT => 30,
797
- :TO => 31,
798
- :PLUS => 32,
799
- :MINUS => 33,
800
- :STAR => 34,
801
- :DIV => 35,
802
- :MOD => 36,
803
- :PIPE => 37,
804
- :SLASH => 38,
805
- :SLASH_SLASH => 39,
806
- :DOT => 40,
807
- :AT => 41,
808
- :AXIS_NAME => 42,
809
- :COLON_COLON => 43,
810
- :LITERAL => 44,
811
- :NUMBER => 45,
812
- :FUNCTION_NAME => 46,
813
- :QNAME => 47,
814
- :LC => 48,
815
- :RC => 49 }
816
-
817
- racc_nt_base = 50
888
+ :ERR => 3,
889
+ :WITH => 4,
890
+ :COMMA => 5,
891
+ :COLON_EQUAL => 6,
892
+ :LET => 7,
893
+ :DOLLAR_QNAME => 8,
894
+ :XMLNS_COLON_NCNAME => 9,
895
+ :LITERAL => 10,
896
+ :IF => 11,
897
+ :LP => 12,
898
+ :RP => 13,
899
+ :THEN => 14,
900
+ :ELSE => 15,
901
+ :FOR => 16,
902
+ :RETURN => 17,
903
+ :IN => 18,
904
+ :SOME => 19,
905
+ :SATISFIES => 20,
906
+ :EVERY => 21,
907
+ :OR => 22,
908
+ :AND => 23,
909
+ :EXCEPT => 24,
910
+ :EQ => 25,
911
+ :NEQ => 26,
912
+ :LB => 27,
913
+ :RB => 28,
914
+ :LT => 29,
915
+ :GT => 30,
916
+ :LTE => 31,
917
+ :GTE => 32,
918
+ :DOT_DOT => 33,
919
+ :TO => 34,
920
+ :PLUS => 35,
921
+ :MINUS => 36,
922
+ :STAR => 37,
923
+ :DIV => 38,
924
+ :MOD => 39,
925
+ :PIPE => 40,
926
+ :SLASH => 41,
927
+ :SLASH_SLASH => 42,
928
+ :DOT => 43,
929
+ :AT => 44,
930
+ :AXIS_NAME => 45,
931
+ :COLON_COLON => 46,
932
+ :NUMBER => 47,
933
+ :FUNCTION_NAME => 48,
934
+ :QNAME => 49,
935
+ :LC => 50,
936
+ :RC => 51 }
937
+
938
+ racc_nt_base = 52
818
939
 
819
940
  racc_use_result_var = true
820
941
 
@@ -838,11 +959,14 @@ Racc_token_to_s_table = [
838
959
  "$end",
839
960
  "error",
840
961
  "SEMI",
962
+ "ERR",
841
963
  "WITH",
842
964
  "COMMA",
843
965
  "COLON_EQUAL",
844
966
  "LET",
845
967
  "DOLLAR_QNAME",
968
+ "XMLNS_COLON_NCNAME",
969
+ "LITERAL",
846
970
  "IF",
847
971
  "LP",
848
972
  "RP",
@@ -879,7 +1003,6 @@ Racc_token_to_s_table = [
879
1003
  "AT",
880
1004
  "AXIS_NAME",
881
1005
  "COLON_COLON",
882
- "LITERAL",
883
1006
  "NUMBER",
884
1007
  "FUNCTION_NAME",
885
1008
  "QNAME",
@@ -890,12 +1013,14 @@ Racc_token_to_s_table = [
890
1013
  "statement",
891
1014
  "expr",
892
1015
  "let_expr",
1016
+ "ns_expr",
893
1017
  "or_expr",
894
1018
  "range_expr",
895
1019
  "if_expr",
896
1020
  "for_expr",
897
1021
  "quant_expr",
898
1022
  "with_expr",
1023
+ "err_expr",
899
1024
  "expr_set_list",
900
1025
  "expr_set",
901
1026
  "path_expr",
@@ -953,7 +1078,12 @@ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 13)
953
1078
 
954
1079
  # reduce 5 omitted
955
1080
 
956
- # reduce 6 omitted
1081
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 18)
1082
+ def _reduce_6(val, _values, result)
1083
+ result = nil
1084
+ result
1085
+ end
1086
+ .,.,
957
1087
 
958
1088
  # reduce 7 omitted
959
1089
 
@@ -965,479 +1095,498 @@ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 13)
965
1095
 
966
1096
  # reduce 11 omitted
967
1097
 
968
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 26)
969
- def _reduce_12(val, _values, result)
1098
+ # reduce 12 omitted
1099
+
1100
+ # reduce 13 omitted
1101
+
1102
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 28)
1103
+ def _reduce_14(val, _values, result)
1104
+ result = Fabulator::Expr::ErrExpr.new(val[0], val[2])
1105
+ result
1106
+ end
1107
+ .,.,
1108
+
1109
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 30)
1110
+ def _reduce_15(val, _values, result)
970
1111
  result = Fabulator::Expr::WithExpr.new(val[0], val[2])
971
1112
  result
972
1113
  end
973
1114
  .,.,
974
1115
 
975
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 28)
976
- def _reduce_13(val, _values, result)
1116
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 32)
1117
+ def _reduce_16(val, _values, result)
977
1118
  result = Fabulator::Expr::StatementList.new; result.add_statement(val[0])
978
1119
  result
979
1120
  end
980
1121
  .,.,
981
1122
 
982
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 29)
983
- def _reduce_14(val, _values, result)
1123
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 33)
1124
+ def _reduce_17(val, _values, result)
984
1125
  result = val[0]; result.add_statement(val[2])
985
1126
  result
986
1127
  end
987
1128
  .,.,
988
1129
 
989
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 31)
990
- def _reduce_15(val, _values, result)
1130
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 35)
1131
+ def _reduce_18(val, _values, result)
991
1132
  result = Fabulator::Expr::DataSet.new(val[0], val[2])
992
1133
  result
993
1134
  end
994
1135
  .,.,
995
1136
 
996
- # reduce 16 omitted
1137
+ # reduce 19 omitted
997
1138
 
998
- # reduce 17 omitted
1139
+ # reduce 20 omitted
999
1140
 
1000
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 38)
1001
- def _reduce_18(val, _values, result)
1141
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 42)
1142
+ def _reduce_21(val, _values, result)
1002
1143
  result = [ val[0] ]
1003
1144
  result
1004
1145
  end
1005
1146
  .,.,
1006
1147
 
1007
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 39)
1008
- def _reduce_19(val, _values, result)
1148
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 43)
1149
+ def _reduce_22(val, _values, result)
1009
1150
  result = val[0] + [ val[2] ]
1010
1151
  result
1011
1152
  end
1012
1153
  .,.,
1013
1154
 
1014
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 41)
1015
- def _reduce_20(val, _values, result)
1155
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 45)
1156
+ def _reduce_23(val, _values, result)
1016
1157
  result = Fabulator::Expr::LetExpr.new(val[1], val[3])
1017
1158
  result
1018
1159
  end
1019
1160
  .,.,
1020
1161
 
1021
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 43)
1022
- def _reduce_21(val, _values, result)
1162
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 48)
1163
+ def _reduce_24(val, _values, result)
1164
+ @context.set_ns(val[1].gsub(/^xmlns:/, ''), val[3])
1165
+
1166
+ result
1167
+ end
1168
+ .,.,
1169
+
1170
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 51)
1171
+ def _reduce_25(val, _values, result)
1023
1172
  result = Fabulator::Expr::IfExpr.new(val[2], val[5], val[7])
1024
1173
  result
1025
1174
  end
1026
1175
  .,.,
1027
1176
 
1028
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 44)
1029
- def _reduce_22(val, _values, result)
1177
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 52)
1178
+ def _reduce_26(val, _values, result)
1030
1179
  result = Fabulator::Expr::IfExpr.new(val[2], val[5], nil)
1031
1180
  result
1032
1181
  end
1033
1182
  .,.,
1034
1183
 
1035
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 46)
1036
- def _reduce_23(val, _values, result)
1184
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 54)
1185
+ def _reduce_27(val, _values, result)
1037
1186
  result = Fabulator::Expr::ForExpr.new(val[1], val[3])
1038
1187
  result
1039
1188
  end
1040
1189
  .,.,
1041
1190
 
1042
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 48)
1043
- def _reduce_24(val, _values, result)
1191
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 56)
1192
+ def _reduce_28(val, _values, result)
1044
1193
  result = [ val[0] ]
1045
1194
  result
1046
1195
  end
1047
1196
  .,.,
1048
1197
 
1049
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 49)
1050
- def _reduce_25(val, _values, result)
1198
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 57)
1199
+ def _reduce_29(val, _values, result)
1051
1200
  result = val[0] + [ val[2] ]
1052
1201
  result
1053
1202
  end
1054
1203
  .,.,
1055
1204
 
1056
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 51)
1057
- def _reduce_26(val, _values, result)
1205
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 59)
1206
+ def _reduce_30(val, _values, result)
1058
1207
  result = Fabulator::Expr::ForVar.new(val[0], val[2])
1059
1208
  result
1060
1209
  end
1061
1210
  .,.,
1062
1211
 
1063
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 53)
1064
- def _reduce_27(val, _values, result)
1212
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 61)
1213
+ def _reduce_31(val, _values, result)
1065
1214
  result = Fabulator::Expr::SomeExpr.new(val[1], val[3])
1066
1215
  result
1067
1216
  end
1068
1217
  .,.,
1069
1218
 
1070
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 54)
1071
- def _reduce_28(val, _values, result)
1219
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 62)
1220
+ def _reduce_32(val, _values, result)
1072
1221
  result = Fabulator::Expr::EveryExpr.new(val[1], val[3])
1073
1222
  result
1074
1223
  end
1075
1224
  .,.,
1076
1225
 
1077
- # reduce 29 omitted
1226
+ # reduce 33 omitted
1078
1227
 
1079
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 57)
1080
- def _reduce_30(val, _values, result)
1228
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 65)
1229
+ def _reduce_34(val, _values, result)
1081
1230
  result = Fabulator::Expr::OrExpr.new(val[0], val[2])
1082
1231
  result
1083
1232
  end
1084
1233
  .,.,
1085
1234
 
1086
- # reduce 31 omitted
1235
+ # reduce 35 omitted
1087
1236
 
1088
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 60)
1089
- def _reduce_32(val, _values, result)
1237
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 68)
1238
+ def _reduce_36(val, _values, result)
1090
1239
  result = Fabulator::Expr::AndExpr.new(val[0], val[2])
1091
1240
  result
1092
1241
  end
1093
1242
  .,.,
1094
1243
 
1095
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 61)
1096
- def _reduce_33(val, _values, result)
1244
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 69)
1245
+ def _reduce_37(val, _values, result)
1097
1246
  result = Fabulator::Expr::ExceptExpr.new(val[0], val[2])
1098
1247
  result
1099
1248
  end
1100
1249
  .,.,
1101
1250
 
1102
- # reduce 34 omitted
1251
+ # reduce 38 omitted
1103
1252
 
1104
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 64)
1105
- def _reduce_35(val, _values, result)
1253
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 72)
1254
+ def _reduce_39(val, _values, result)
1106
1255
  result = Fabulator::Expr::EqExpr.new(val[0], val[2])
1107
1256
  result
1108
1257
  end
1109
1258
  .,.,
1110
1259
 
1111
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 65)
1112
- def _reduce_36(val, _values, result)
1260
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 73)
1261
+ def _reduce_40(val, _values, result)
1113
1262
  result = Fabulator::Expr::NeqExpr.new(val[0], val[2])
1114
1263
  result
1115
1264
  end
1116
1265
  .,.,
1117
1266
 
1118
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 67)
1119
- def _reduce_37(val, _values, result)
1120
- result = Fabulator::Expr::Tuple.new(val[2])
1267
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 75)
1268
+ def _reduce_41(val, _values, result)
1269
+ result = Fabulator::Expr::Tuple.new(val[1])
1121
1270
  result
1122
1271
  end
1123
1272
  .,.,
1124
1273
 
1125
- # reduce 38 omitted
1274
+ # reduce 42 omitted
1126
1275
 
1127
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 72)
1128
- def _reduce_39(val, _values, result)
1276
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 80)
1277
+ def _reduce_43(val, _values, result)
1129
1278
  result = Fabulator::Expr::LtExpr.new(val[0], val[2])
1130
1279
  result
1131
1280
  end
1132
1281
  .,.,
1133
1282
 
1134
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 73)
1135
- def _reduce_40(val, _values, result)
1283
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 81)
1284
+ def _reduce_44(val, _values, result)
1136
1285
  result = Fabulator::Expr::LtExpr.new(val[2], val[0])
1137
1286
  result
1138
1287
  end
1139
1288
  .,.,
1140
1289
 
1141
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 74)
1142
- def _reduce_41(val, _values, result)
1290
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 82)
1291
+ def _reduce_45(val, _values, result)
1143
1292
  result = Fabulator::Expr::LteExpr.new(val[0], val[2])
1144
1293
  result
1145
1294
  end
1146
1295
  .,.,
1147
1296
 
1148
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 75)
1149
- def _reduce_42(val, _values, result)
1297
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 83)
1298
+ def _reduce_46(val, _values, result)
1150
1299
  result = Fabulator::Expr::LteExpr.new(val[2], val[0])
1151
1300
  result
1152
1301
  end
1153
1302
  .,.,
1154
1303
 
1155
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 86)
1156
- def _reduce_43(val, _values, result)
1304
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 94)
1305
+ def _reduce_47(val, _values, result)
1157
1306
  result = Fabulator::Expr::RangeExpr.new(val[0], val[2])
1158
1307
  result
1159
1308
  end
1160
1309
  .,.,
1161
1310
 
1162
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 87)
1163
- def _reduce_44(val, _values, result)
1311
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 95)
1312
+ def _reduce_48(val, _values, result)
1164
1313
  result = Fabulator::Expr::RangeExpr.new(val[0], val[2])
1165
1314
  result
1166
1315
  end
1167
1316
  .,.,
1168
1317
 
1169
- # reduce 45 omitted
1318
+ # reduce 49 omitted
1170
1319
 
1171
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 90)
1172
- def _reduce_46(val, _values, result)
1320
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 98)
1321
+ def _reduce_50(val, _values, result)
1173
1322
  result = Fabulator::Expr::AddExpr.new(val[0], val[2])
1174
1323
  result
1175
1324
  end
1176
1325
  .,.,
1177
1326
 
1178
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 91)
1179
- def _reduce_47(val, _values, result)
1327
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 99)
1328
+ def _reduce_51(val, _values, result)
1180
1329
  result = Fabulator::Expr::SubExpr.new(val[0], val[2])
1181
1330
  result
1182
1331
  end
1183
1332
  .,.,
1184
1333
 
1185
- # reduce 48 omitted
1334
+ # reduce 52 omitted
1186
1335
 
1187
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 94)
1188
- def _reduce_49(val, _values, result)
1336
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 102)
1337
+ def _reduce_53(val, _values, result)
1189
1338
  result = Fabulator::Expr::MpyExpr.new(val[0], val[2])
1190
1339
  result
1191
1340
  end
1192
1341
  .,.,
1193
1342
 
1194
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 95)
1195
- def _reduce_50(val, _values, result)
1343
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 103)
1344
+ def _reduce_54(val, _values, result)
1196
1345
  result = Fabulator::Expr::DivExpr.new(val[0], val[2])
1197
1346
  result
1198
1347
  end
1199
1348
  .,.,
1200
1349
 
1201
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 96)
1202
- def _reduce_51(val, _values, result)
1350
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 104)
1351
+ def _reduce_55(val, _values, result)
1203
1352
  result = Fabulator::Expr::ModExpr.new(val[0], val[2])
1204
1353
  result
1205
1354
  end
1206
1355
  .,.,
1207
1356
 
1208
- # reduce 52 omitted
1357
+ # reduce 56 omitted
1209
1358
 
1210
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 99)
1211
- def _reduce_53(val, _values, result)
1359
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 107)
1360
+ def _reduce_57(val, _values, result)
1212
1361
  result = Fabulator::Expr::NegExpr.new(val[1])
1213
1362
  result
1214
1363
  end
1215
1364
  .,.,
1216
1365
 
1217
- # reduce 54 omitted
1366
+ # reduce 58 omitted
1218
1367
 
1219
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 102)
1220
- def _reduce_55(val, _values, result)
1368
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 110)
1369
+ def _reduce_59(val, _values, result)
1221
1370
  result = Fabulator::Expr::UnionExpr.new(val[0])
1222
1371
  result
1223
1372
  end
1224
1373
  .,.,
1225
1374
 
1226
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 104)
1227
- def _reduce_56(val, _values, result)
1375
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 112)
1376
+ def _reduce_60(val, _values, result)
1228
1377
  result = [ val[0], val[2] ]
1229
1378
  result
1230
1379
  end
1231
1380
  .,.,
1232
1381
 
1233
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 105)
1234
- def _reduce_57(val, _values, result)
1382
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 113)
1383
+ def _reduce_61(val, _values, result)
1235
1384
  result = val[0] + [ val[2] ]
1236
1385
  result
1237
1386
  end
1238
1387
  .,.,
1239
1388
 
1240
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 107)
1241
- def _reduce_58(val, _values, result)
1389
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 115)
1390
+ def _reduce_62(val, _values, result)
1242
1391
  result = Fabulator::Expr::PathExpr.new(nil, [], val[0])
1243
1392
  result
1244
1393
  end
1245
1394
  .,.,
1246
1395
 
1247
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 108)
1248
- def _reduce_59(val, _values, result)
1396
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 116)
1397
+ def _reduce_63(val, _values, result)
1249
1398
  result = Fabulator::Expr::PathExpr.new(val[0], val[1], val[2])
1250
1399
  result
1251
1400
  end
1252
1401
  .,.,
1253
1402
 
1254
- # reduce 60 omitted
1403
+ # reduce 64 omitted
1255
1404
 
1256
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 111)
1257
- def _reduce_61(val, _values, result)
1405
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 119)
1406
+ def _reduce_65(val, _values, result)
1258
1407
  result = val[1]
1259
1408
  result
1260
1409
  end
1261
1410
  .,.,
1262
1411
 
1263
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 112)
1264
- def _reduce_62(val, _values, result)
1412
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 120)
1413
+ def _reduce_66(val, _values, result)
1265
1414
  result = [ Fabulator::Expr::AxisDescendentOrSelf.new ] + val[1]
1266
1415
  result
1267
1416
  end
1268
1417
  .,.,
1269
1418
 
1270
- # reduce 63 omitted
1419
+ # reduce 67 omitted
1271
1420
 
1272
- # reduce 64 omitted
1421
+ # reduce 68 omitted
1273
1422
 
1274
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 120)
1275
- def _reduce_65(val, _values, result)
1423
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 128)
1424
+ def _reduce_69(val, _values, result)
1276
1425
  result = Fabulator::Expr::RootContext.new
1277
1426
  result
1278
1427
  end
1279
1428
  .,.,
1280
1429
 
1281
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 121)
1282
- def _reduce_66(val, _values, result)
1430
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 129)
1431
+ def _reduce_70(val, _values, result)
1283
1432
  result = Fabulator::Expr::PathExpr.new(Fabulator::Expr::RootContext.new, [], val[1])
1284
1433
  result
1285
1434
  end
1286
1435
  .,.,
1287
1436
 
1288
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 122)
1289
- def _reduce_67(val, _values, result)
1437
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 130)
1438
+ def _reduce_71(val, _values, result)
1290
1439
  result = [ Fabulator::Expr::RootContext.new, Fabulator::Expr::AxisDescendentOrSelf.new(val[1][0]) ] + val[1][1..val[1].size-1]
1291
1440
  result
1292
1441
  end
1293
1442
  .,.,
1294
1443
 
1295
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 123)
1296
- def _reduce_68(val, _values, result)
1444
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 131)
1445
+ def _reduce_72(val, _values, result)
1297
1446
  result = [ Fabulator::Expr::RootContext.new(val[0]) ] + val[2]
1298
1447
  result
1299
1448
  end
1300
1449
  .,.,
1301
1450
 
1302
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 124)
1303
- def _reduce_69(val, _values, result)
1451
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 132)
1452
+ def _reduce_73(val, _values, result)
1304
1453
  result = [ Fabulator::Expr::RootContext.new(val[0]), Fabulator::Expr::AxisDescendentOrSelf.new(val[2][0]) ] + val[2][1..val[2].size-1]
1305
1454
  result
1306
1455
  end
1307
1456
  .,.,
1308
1457
 
1309
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 126)
1310
- def _reduce_70(val, _values, result)
1458
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 134)
1459
+ def _reduce_74(val, _values, result)
1311
1460
  result = [ val[0] ]
1312
1461
  result
1313
1462
  end
1314
1463
  .,.,
1315
1464
 
1316
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 127)
1317
- def _reduce_71(val, _values, result)
1465
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 135)
1466
+ def _reduce_75(val, _values, result)
1318
1467
  result = val[0] + [ val[2] ]
1319
1468
  result
1320
1469
  end
1321
1470
  .,.,
1322
1471
 
1323
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 128)
1324
- def _reduce_72(val, _values, result)
1472
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 136)
1473
+ def _reduce_76(val, _values, result)
1325
1474
  result = val[0] + [ Fabulator::Expr::AxisDescendentOrSelf.new(val[2]) ]
1326
1475
  result
1327
1476
  end
1328
1477
  .,.,
1329
1478
 
1330
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 130)
1331
- def _reduce_73(val, _values, result)
1479
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 138)
1480
+ def _reduce_77(val, _values, result)
1332
1481
  result = val[1].nil? || val[1].empty? ? val[0] : Fabulator::Expr::Predicates.new(val[0], val[1])
1333
1482
  result
1334
1483
  end
1335
1484
  .,.,
1336
1485
 
1337
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 131)
1338
- def _reduce_74(val, _values, result)
1486
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 139)
1487
+ def _reduce_78(val, _values, result)
1339
1488
  result = Fabulator::Expr::CurrentContext.new
1340
1489
  result
1341
1490
  end
1342
1491
  .,.,
1343
1492
 
1344
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 132)
1345
- def _reduce_75(val, _values, result)
1493
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 140)
1494
+ def _reduce_79(val, _values, result)
1346
1495
  result = Fabulator::Expr::AxisParent.new
1347
1496
  result
1348
1497
  end
1349
1498
  .,.,
1350
1499
 
1351
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 138)
1352
- def _reduce_76(val, _values, result)
1500
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 146)
1501
+ def _reduce_80(val, _values, result)
1353
1502
  result = Fabulator::Expr::AxisChild.new(val[0])
1354
1503
  result
1355
1504
  end
1356
1505
  .,.,
1357
1506
 
1358
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 139)
1359
- def _reduce_77(val, _values, result)
1507
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 147)
1508
+ def _reduce_81(val, _values, result)
1360
1509
  result = Fabulator::Expr::Axis.new(val[0], val[1])
1361
1510
  result
1362
1511
  end
1363
1512
  .,.,
1364
1513
 
1365
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 140)
1366
- def _reduce_78(val, _values, result)
1514
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 148)
1515
+ def _reduce_82(val, _values, result)
1367
1516
  result = Fabulator::Expr::AxisAttribute.new(val[1])
1368
1517
  result
1369
1518
  end
1370
1519
  .,.,
1371
1520
 
1372
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 142)
1373
- def _reduce_79(val, _values, result)
1521
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 150)
1522
+ def _reduce_83(val, _values, result)
1374
1523
  result = Fabulator::Expr::Axis.new(val[0])
1375
1524
  result
1376
1525
  end
1377
1526
  .,.,
1378
1527
 
1379
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 144)
1380
- def _reduce_80(val, _values, result)
1528
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 152)
1529
+ def _reduce_84(val, _values, result)
1381
1530
  result = [ ]
1382
1531
  result
1383
1532
  end
1384
1533
  .,.,
1385
1534
 
1386
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 145)
1387
- def _reduce_81(val, _values, result)
1535
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 153)
1536
+ def _reduce_85(val, _values, result)
1388
1537
  result = val[0] + [ val[1] ]
1389
1538
  result
1390
1539
  end
1391
1540
  .,.,
1392
1541
 
1393
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 147)
1394
- def _reduce_82(val, _values, result)
1542
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 155)
1543
+ def _reduce_86(val, _values, result)
1395
1544
  result = val[1]
1396
1545
  result
1397
1546
  end
1398
1547
  .,.,
1399
1548
 
1400
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 148)
1401
- def _reduce_83(val, _values, result)
1549
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 156)
1550
+ def _reduce_87(val, _values, result)
1402
1551
  result = val[1]
1403
1552
  result
1404
1553
  end
1405
1554
  .,.,
1406
1555
 
1407
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 155)
1408
- def _reduce_84(val, _values, result)
1556
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 163)
1557
+ def _reduce_88(val, _values, result)
1409
1558
  result = Fabulator::Expr::Var.new(val[0])
1410
1559
  result
1411
1560
  end
1412
1561
  .,.,
1413
1562
 
1414
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 156)
1415
- def _reduce_85(val, _values, result)
1563
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 164)
1564
+ def _reduce_89(val, _values, result)
1416
1565
  result = val[1]
1417
1566
  result
1418
1567
  end
1419
1568
  .,.,
1420
1569
 
1421
- # reduce 86 omitted
1570
+ # reduce 90 omitted
1422
1571
 
1423
- # reduce 87 omitted
1572
+ # reduce 91 omitted
1424
1573
 
1425
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 159)
1426
- def _reduce_88(val, _values, result)
1574
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 167)
1575
+ def _reduce_92(val, _values, result)
1427
1576
  result = Fabulator::Expr::Literal.new(val[0], [ Fabulator::FAB_NS, 'string' ])
1428
1577
  result
1429
1578
  end
1430
1579
  .,.,
1431
1580
 
1432
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 160)
1433
- def _reduce_89(val, _values, result)
1581
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 168)
1582
+ def _reduce_93(val, _values, result)
1434
1583
  result = Fabulator::Expr::Literal.new(val[0] =~ /\./ ? val[0].to_d.to_r : val[0].to_i.to_r, [ Fabulator::FAB_NS, 'numeric' ])
1435
1584
  result
1436
1585
  end
1437
1586
  .,.,
1438
1587
 
1439
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 162)
1440
- def _reduce_90(val, _values, result)
1588
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 170)
1589
+ def _reduce_94(val, _values, result)
1441
1590
  result = Fabulator::Expr::Function.new(@context, val[0], val[1])
1442
1591
  # when 'any' : Fabulator::Expr::AnyExpr.new(@context, val[1])
1443
1592
  # when 'all' : Fabulator::Expr::AllExpr.new(@context, val[1])
@@ -1450,53 +1599,53 @@ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 162)
1450
1599
  end
1451
1600
  .,.,
1452
1601
 
1453
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 171)
1454
- def _reduce_91(val, _values, result)
1602
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 179)
1603
+ def _reduce_95(val, _values, result)
1455
1604
  result = Fabulator::Expr::List.new(val[1])
1456
1605
  result
1457
1606
  end
1458
1607
  .,.,
1459
1608
 
1460
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 174)
1461
- def _reduce_92(val, _values, result)
1609
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 182)
1610
+ def _reduce_96(val, _values, result)
1462
1611
  result = [ ]
1463
1612
  result
1464
1613
  end
1465
1614
  .,.,
1466
1615
 
1467
- # reduce 93 omitted
1616
+ # reduce 97 omitted
1468
1617
 
1469
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 177)
1470
- def _reduce_94(val, _values, result)
1618
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 185)
1619
+ def _reduce_98(val, _values, result)
1471
1620
  result = [ val[0] ]
1472
1621
  result
1473
1622
  end
1474
1623
  .,.,
1475
1624
 
1476
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 178)
1477
- def _reduce_95(val, _values, result)
1625
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 186)
1626
+ def _reduce_99(val, _values, result)
1478
1627
  result = val[0] + [ val[2] ]
1479
1628
  result
1480
1629
  end
1481
1630
  .,.,
1482
1631
 
1483
- # reduce 96 omitted
1632
+ # reduce 100 omitted
1484
1633
 
1485
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 181)
1486
- def _reduce_97(val, _values, result)
1634
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 189)
1635
+ def _reduce_101(val, _values, result)
1487
1636
  result = val[0].to_s
1488
1637
  result
1489
1638
  end
1490
1639
  .,.,
1491
1640
 
1492
- module_eval(<<'.,.,', 'xsm_expression_parser.racc', 182)
1493
- def _reduce_98(val, _values, result)
1641
+ module_eval(<<'.,.,', 'xsm_expression_parser.racc', 190)
1642
+ def _reduce_102(val, _values, result)
1494
1643
  result = val[1]
1495
1644
  result
1496
1645
  end
1497
1646
  .,.,
1498
1647
 
1499
- # reduce 99 omitted
1648
+ # reduce 103 omitted
1500
1649
 
1501
1650
  def _reduce_none(val, _values, result)
1502
1651
  val[0]