rVM 0.0.11 → 0.0.12

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.
@@ -2,10 +2,23 @@ module RVM
2
2
  module Classes
3
3
  class Boolean < RVM::Classes::Class
4
4
  register_for :boolean
5
+
5
6
  def data_type
6
7
  :boolean
7
8
  end
8
9
 
10
+ def hash
11
+ @value.hash
12
+ end
13
+
14
+ def eql?(o)
15
+ if o.is_a?(RVM::Classes::Boolean)
16
+ o.is_true? == is_true?
17
+ else
18
+ @value == o
19
+ end
20
+ end
21
+
9
22
  def initialize value
10
23
  super()
11
24
  if value
@@ -4,6 +4,24 @@ module RVM
4
4
  register_for :number
5
5
  @@type = :number
6
6
 
7
+ # Fix for comparing numbers.
8
+ # We need to have the values hash here.
9
+ def hash
10
+ @value.hash
11
+ end
12
+
13
+ def eql?(o)
14
+ if o.is_a?(RVM::Classes::Number)
15
+ @value == o.value
16
+ elsif o.is_a?(@value.class)
17
+ @value == o
18
+ else
19
+ false
20
+ end
21
+ end
22
+
23
+
24
+
7
25
  def initialize value
8
26
  super()
9
27
  if value.is_a? Numeric
@@ -21,7 +21,7 @@ module RVM
21
21
  module Languages
22
22
  class ECMA < Racc::Parser
23
23
 
24
- module_eval(<<'...end ecma.y/module_eval...', 'ecma.y', 201)
24
+ module_eval(<<'...end ecma.y/module_eval...', 'ecma.y', 219)
25
25
  extend Plugin
26
26
  plugin_host RVM::Languages
27
27
  register_for :ecma
@@ -41,9 +41,19 @@ module_eval(<<'...end ecma.y/module_eval...', 'ecma.y', 201)
41
41
  m = s.matched.gsub(/^'/,'').gsub(/'$/,'')
42
42
  @q.push [:STRING, [m, [line, s.pos - pos]]]
43
43
  elsif s.scan(/("(\\.|[^"])*")/)
44
- m = s.matched.gsub('\n',"\n").gsub('\t',"\t").gsub(/^"/,'').gsub(/"$/,'')
44
+ m = s.matched.gsub(/^"/,'').gsub(/"$/,'')
45
+ m.gsub!(/\\./) do |repl|
46
+ case repl
47
+ when '\n'
48
+ "\n"
49
+ when '\t'
50
+ "\t"
51
+ when '\\\\'
52
+ '\\'
53
+ end
54
+ end
45
55
  @q.push [:STRING, [m, [line, s.pos - pos]]]
46
- elsif s.scan(/((\d+(\.\d+)?)|(\.\d+))(e-?\d+)?/)
56
+ elsif s.scan(/((\d+(\.\d+)?)|(\.\d+))(e[+-]?\d+)?/i)
47
57
  @q.push [:NUMBER, [s.matched, [line, s.pos - pos]]]
48
58
  elsif s.scan(/\[/)
49
59
  @q.push [:SBRACKET_OPEN, [s.matched, [line, s.pos - pos]]]
@@ -84,12 +94,12 @@ module_eval(<<'...end ecma.y/module_eval...', 'ecma.y', 201)
84
94
  :IDENT
85
95
  end
86
96
  @q.push [type, [m, [line, s.pos - pos]]]
87
- elsif s.scan(/(([<>]=?)|([!=]=)|[.+*\/(),=;\!-]|&&|\|\|)/) # This ones do not get a new line (sepperator added)
97
+ elsif s.scan(/(([<>]=?)|([!=]=)|[.+*\/(),:=;\!-]|&&|\|\|)/) # This ones do not get a new line (sepperator added)
88
98
  m = s.matched
89
99
  @q.push [m, [m, [line, s.pos - pos]]]
90
100
  elsif s.scan(/\s+/)
91
101
  else
92
- raise "Woops! I can daeal with char at #{line}:{s.pos - pos}: #{s.pre_match} #{s.post_match}"
102
+ raise "Woops! I can daeal with char at #{line}:#{s.pos - pos}: #{s.pre_match} #{s.post_match}"
93
103
  end
94
104
  end
95
105
  @q.push([false, '$end'])
@@ -104,410 +114,483 @@ module_eval(<<'...end ecma.y/module_eval...', 'ecma.y', 201)
104
114
  ##### State transition tables begin ###
105
115
 
106
116
  racc_action_table = [
107
- 55, 57, 58, 59, 45, 47, 48, 49, 51, 52,
108
- 53, 54, 56, 55, 57, 58, 59, 45, 47, 48,
109
- 55, 57, 58, 59, 45, -71, 42, 50, 50, 50,
110
- 113, 55, 57, 58, 59, 45, 46, 46, 46, 50,
111
- 112, 55, 50, 50, 93, 120, 108, 121, 46, 50,
112
- 94, 46, 46, 55, 57, 58, 55, 118, 46, 73,
113
- 50, 55, 57, 58, 59, 45, 47, 48, 116, 46,
114
- 50, 55, 57, 58, 59, 45, 47, 48, 50, 46,
115
- 98, 77, 50, 99, 122, 50, 123, 46, 114, 100,
116
- 50, 46, 20, 74, 46, 55, 57, 58, 95, 46,
117
- 50, 73, 55, 57, 58, 59, 45, 47, 48, 46,
118
- 55, 57, 58, 59, 45, 47, 48, 49, 51, 52,
119
- 53, 54, 56, 136, 50, 121, 102, 72, 42, 65,
120
- 64, 50, 20, 46, 42, 135, 110, 111, 137, 50,
121
- 46, 55, 57, 58, 59, 45, 47, 48, 46, 55,
122
- 57, 58, 59, 45, 47, 48, 49, 51, 52, 53,
123
- 54, 56, 138, 63, 60, 44, 141, 42, nil, nil,
124
- 50, nil, nil, nil, nil, nil, nil, nil, 50, 46,
125
- 55, 57, 58, 59, 45, 47, 48, 46, 55, 57,
126
- 58, 59, 45, 47, 48, 49, 51, 52, 53, 54,
127
- 56, nil, nil, nil, nil, nil, nil, nil, nil, 50,
128
- nil, nil, nil, nil, nil, nil, nil, 50, 46, nil,
129
- nil, nil, 101, nil, nil, nil, 46, 55, 57, 58,
130
- 59, 45, 47, 48, 49, 51, 52, 53, 54, 56,
131
- 55, 57, 58, 59, 45, 47, 48, 49, 51, 52,
132
- 53, 54, 56, nil, nil, nil, 50, nil, nil, nil,
133
- nil, nil, nil, nil, nil, 46, nil, nil, nil, 50,
134
- nil, nil, nil, nil, nil, nil, nil, nil, 46, 55,
135
- 57, 58, 59, 45, 47, 48, 49, 51, 52, 53,
136
- 54, 56, nil, 35, 2, nil, nil, nil, nil, nil,
137
- 35, 2, nil, 32, 39, nil, nil, nil, 50, nil,
138
- 32, 39, nil, 27, 30, 34, nil, 46, 10, 13,
139
- 27, 30, 34, 23, nil, 10, 13, 3, 35, 2,
140
- 23, nil, nil, nil, 3, nil, nil, nil, 32, 39,
141
- nil, nil, nil, nil, nil, 35, 2, nil, 27, 30,
142
- 34, nil, nil, 10, 13, 32, 37, nil, 23, 127,
143
- nil, nil, 3, nil, 25, 27, 30, 34, nil, nil,
144
- 10, 13, 35, 2, nil, 23, nil, nil, nil, 3,
145
- nil, nil, 32, 37, nil, nil, nil, nil, nil, 35,
146
- 2, 25, 27, 30, 34, nil, nil, 10, 13, 32,
147
- 39, nil, 23, nil, nil, nil, 3, 35, 2, 27,
148
- 30, 34, nil, nil, 10, 13, nil, 32, 39, 23,
149
- nil, nil, nil, 3, 35, 2, nil, 27, 30, 34,
150
- nil, nil, 10, 13, 32, 39, nil, 23, nil, nil,
151
- nil, 3, 35, 2, 27, 30, 34, nil, nil, 10,
152
- 13, nil, 32, 39, 23, nil, nil, nil, 3, 35,
153
- 2, nil, 27, 30, 34, nil, nil, 10, 13, 32,
154
- 39, nil, 23, nil, nil, nil, 3, 35, 2, 27,
155
- 30, 34, nil, nil, 10, 13, nil, 32, 39, 23,
156
- nil, nil, nil, 3, 35, 2, nil, 27, 30, 34,
157
- nil, nil, 10, 13, 32, 39, nil, 23, nil, nil,
158
- nil, 3, 35, 2, 27, 30, 34, nil, nil, 10,
159
- 13, nil, 32, 39, 23, nil, nil, nil, 3, 35,
160
- 2, nil, 27, 30, 34, nil, nil, 10, 13, 32,
161
- 39, nil, 23, nil, nil, nil, 3, 35, 2, 27,
162
- 30, 34, nil, nil, 10, 13, nil, 32, 39, 23,
163
- nil, nil, nil, 3, 35, 2, nil, 27, 30, 34,
164
- nil, nil, 10, 13, 32, 39, nil, 23, nil, nil,
165
- nil, 3, 35, 2, 27, 30, 34, nil, nil, 10,
166
- 13, nil, 32, 39, 23, nil, nil, nil, 3, 35,
167
- 2, nil, 27, 30, 34, nil, nil, 10, 13, 32,
168
- 39, nil, 23, nil, nil, nil, 3, 35, 2, 27,
169
- 30, 34, nil, nil, 10, 13, nil, 32, 39, 23,
170
- nil, nil, nil, 3, 35, 2, nil, 27, 30, 34,
171
- nil, nil, 10, 13, 32, 37, nil, 23, nil, nil,
172
- nil, 3, nil, 25, 27, 30, 34, nil, nil, 10,
173
- 13, 35, 2, nil, 23, nil, nil, nil, 3, nil,
174
- nil, 32, 39, nil, nil, nil, nil, nil, nil, 35,
175
- 2, 27, 30, 34, nil, nil, 10, 13, nil, 32,
176
- 37, 23, nil, 8, 12, 3, 17, 21, 25, 27,
177
- 30, 34, 4, nil, 10, 13, nil, 20, nil, 23,
178
- 35, 2, nil, 3, nil, nil, nil, nil, nil, nil,
179
- 32, 37, nil, nil, 8, 12, nil, 17, 21, 25,
180
- 27, 30, 34, 4, nil, 10, 13, nil, 20, nil,
181
- 23, 35, 2, nil, 3, nil, nil, nil, nil, nil,
182
- nil, 32, 37, nil, 7, 8, 12, nil, 17, 21,
183
- 25, 27, 30, 34, 4, nil, 10, 13, nil, 20,
184
- nil, 23, 35, 2, nil, 3, nil, nil, nil, nil,
185
- nil, nil, 32, 37, nil, nil, nil, nil, nil, nil,
186
- nil, 25, 27, 30, 34, nil, nil, 10, 13, 35,
187
- 2, nil, 23, nil, nil, nil, 3, nil, nil, 32,
188
- 37, nil, nil, 8, 12, nil, 17, 21, 25, 27,
189
- 30, 34, 4, nil, 10, 13, nil, 20, nil, 23,
190
- 35, 2, nil, 3, nil, nil, nil, nil, nil, nil,
191
- 32, 39, nil, nil, nil, nil, nil, nil, 35, 2,
192
- 27, 30, 34, nil, nil, 10, 13, nil, 32, 37,
193
- 23, nil, 8, 12, 3, 17, 21, 25, 27, 30,
194
- 34, 4, nil, 10, 13, nil, 20, nil, 23, 35,
195
- 2, nil, 3, nil, nil, nil, nil, nil, nil, 32,
196
- 37, nil, nil, 8, 12, nil, 17, 21, 25, 27,
197
- 30, 34, 4, nil, 10, 13, nil, 20, nil, 23,
198
- 35, 2, nil, 3, nil, nil, nil, nil, nil, nil,
199
- 32, 37, nil, nil, nil, nil, nil, 35, 2, 25,
200
- 27, 30, 34, nil, nil, 10, 13, 32, 37, nil,
201
- 23, nil, nil, nil, 3, nil, 25, 27, 30, 34,
202
- nil, nil, 10, 13, 35, 2, nil, 23, nil, nil,
203
- nil, 3, nil, nil, 32, 39, nil, nil, nil, nil,
204
- nil, 35, 2, nil, 27, 30, 34, nil, nil, 10,
205
- 13, 32, 39, nil, 23, 106, nil, nil, 3, 35,
206
- 2, 27, 30, 34, nil, nil, 10, 13, nil, 32,
207
- 39, 23, nil, nil, nil, 3, 35, 2, nil, 27,
208
- 30, 34, nil, nil, 10, 13, 32, 37, nil, 23,
209
- nil, nil, nil, 3, nil, 25, 27, 30, 34, nil,
210
- nil, 10, 13, 35, 2, nil, 23, nil, nil, nil,
211
- 3, nil, nil, 32, 37, nil, nil, 8, 12, nil,
212
- 17, 21, 25, 27, 30, 34, 4, nil, 10, 13,
213
- nil, 20, nil, 23, 35, 2, nil, 3, nil, nil,
214
- nil, nil, nil, nil, 32, 37, nil, nil, 8, 12,
215
- nil, 17, 21, 25, 27, 30, 34, 4, nil, 10,
216
- 13, nil, 20, nil, 23, 35, 2, nil, 3, nil,
217
- nil, nil, 35, 2, nil, 32, 37, nil, nil, nil,
218
- nil, nil, 32, 39, 25, 27, 30, 34, nil, nil,
219
- 10, 13, 27, 30, 34, 23, nil, 10, 13, 3,
220
- 35, 2, 23, nil, nil, nil, 3, nil, nil, nil,
221
- 32, 39, nil, nil, nil, nil, nil, nil, 35, 2,
222
- 27, 30, 34, nil, nil, 10, 13, nil, 32, 37,
223
- 23, 7, 8, 12, 3, 17, 21, 25, 27, 30,
224
- 34, 4, nil, 10, 13, nil, 20, nil, 23, 35,
225
- 2, nil, 3, nil, nil, nil, nil, nil, nil, 32,
226
- 37, nil, nil, nil, nil, nil, nil, nil, 25, 27,
227
- 30, 34, nil, nil, 10, 13, nil, nil, nil, 23,
228
- nil, nil, nil, 3 ]
117
+ 62, 64, 65, 66, 52, 53, 55, 56, 58, 59,
118
+ 60, 61, 63, 62, 64, 65, 66, 52, 53, 55,
119
+ 62, 64, 65, 66, 52, 109, 125, 91, 110, 57,
120
+ 126, 62, 64, 65, 66, 52, 53, 55, 46, 54,
121
+ 62, -78, 57, 62, 64, 65, 66, 52, 62, 57,
122
+ 131, 86, 54, 112, 62, 64, 65, 87, 120, 54,
123
+ 57, 62, 64, 65, 66, 52, 53, 55, 57, 57,
124
+ 54, 57, 57, 138, 57, 80, 57, 57, 54, 54,
125
+ 127, 54, 54, 57, 54, 106, 54, 54, 57, 107,
126
+ 57, 83, 104, 54, 62, 64, 65, 151, 54, 134,
127
+ 54, 62, 64, 65, 66, 52, 53, 55, 56, 58,
128
+ 59, 60, 61, 63, 62, 64, 65, 66, 52, 53,
129
+ 55, 80, 135, 57, 136, 133, 114, 134, 121, 46,
130
+ 57, 75, 68, 54, 138, 46, 67, 149, 150, 122,
131
+ 54, 124, 152, 57, 48, 62, 64, 65, 66, 52,
132
+ 53, 55, 47, 54, 62, 64, 65, 66, 52, 53,
133
+ 55, 56, 58, 59, 60, 61, 63, 46, 155, 43,
134
+ nil, nil, nil, nil, 57, nil, nil, nil, nil, nil,
135
+ nil, nil, nil, 57, 54, nil, nil, nil, nil, nil,
136
+ nil, nil, nil, 54, 62, 64, 65, 66, 52, 53,
137
+ 55, 56, 58, 59, 60, 61, 63, 62, 64, 65,
138
+ 66, 52, 53, 55, 56, 58, 59, 60, 61, 63,
139
+ nil, nil, nil, 57, nil, nil, nil, nil, nil, nil,
140
+ nil, 108, nil, 54, nil, nil, 57, nil, nil, nil,
141
+ nil, 113, nil, nil, nil, nil, 54, 62, 64, 65,
142
+ 66, 52, 53, 55, 56, 58, 59, 60, 61, 63,
143
+ 62, 64, 65, 66, 52, 53, 55, 56, 58, 59,
144
+ 60, 61, 63, nil, nil, nil, 57, 62, 64, 65,
145
+ 66, 52, 53, 55, nil, nil, 54, nil, nil, 57,
146
+ nil, nil, nil, nil, nil, nil, nil, 108, nil, 54,
147
+ nil, nil, nil, nil, nil, nil, 57, nil, nil, nil,
148
+ nil, nil, nil, nil, nil, nil, 54, 62, 64, 65,
149
+ 66, 52, 53, 55, 56, 58, 59, 60, 61, 63,
150
+ 62, 64, 65, 66, 52, 53, 55, 56, 58, 59,
151
+ 60, 61, 63, nil, nil, nil, 57, nil, nil, nil,
152
+ nil, nil, nil, nil, nil, nil, 54, nil, nil, 57,
153
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 54,
154
+ 62, 64, 65, 66, 52, 53, 55, 56, 58, 59,
155
+ 60, 61, 63, nil, nil, nil, nil, nil, nil, nil,
156
+ nil, nil, nil, 36, 1, nil, nil, nil, nil, 57,
157
+ nil, nil, nil, 31, 38, nil, 7, 8, 10, 54,
158
+ 16, 20, 26, 27, 30, 35, 2, nil, 9, 11,
159
+ nil, 18, nil, 24, 36, 1, nil, nil, 5, nil,
160
+ nil, nil, nil, nil, 31, 41, nil, nil, nil, nil,
161
+ nil, nil, nil, nil, 27, 30, 35, 36, 1, 9,
162
+ 11, nil, 40, nil, 24, nil, nil, 31, 38, 5,
163
+ nil, 8, 10, nil, 16, 20, 26, 27, 30, 35,
164
+ 2, nil, 9, 11, nil, 18, nil, 24, 36, 1,
165
+ nil, nil, 5, nil, nil, nil, nil, nil, 31, 38,
166
+ nil, nil, nil, nil, nil, nil, nil, 26, 27, 30,
167
+ 35, 36, 1, 9, 11, nil, 40, nil, 24, nil,
168
+ nil, 31, 38, 5, nil, nil, nil, nil, nil, nil,
169
+ 26, 27, 30, 35, 36, 1, 9, 11, nil, 40,
170
+ nil, 24, nil, nil, 31, 38, 5, nil, nil, nil,
171
+ nil, nil, nil, 26, 27, 30, 35, 36, 1, 9,
172
+ 11, nil, 40, nil, 24, nil, nil, 31, 41, 5,
173
+ nil, nil, nil, nil, nil, nil, nil, 27, 30, 35,
174
+ 36, 1, 9, 11, nil, 40, 73, 24, nil, nil,
175
+ 31, 41, 5, nil, nil, nil, nil, nil, nil, nil,
176
+ 27, 30, 35, 36, 1, 9, 11, nil, 40, nil,
177
+ 24, nil, nil, 31, 41, 5, nil, nil, nil, nil,
178
+ nil, nil, nil, 27, 30, 35, 36, 1, 9, 11,
179
+ nil, 40, nil, 24, nil, nil, 31, 41, 5, nil,
180
+ nil, nil, nil, nil, nil, nil, 27, 30, 35, 36,
181
+ 1, 9, 11, nil, 40, nil, 24, 143, nil, 31,
182
+ 41, 5, nil, nil, nil, nil, nil, nil, nil, 27,
183
+ 30, 35, 36, 1, 9, 11, nil, 40, nil, 24,
184
+ nil, nil, 31, 41, 5, nil, nil, nil, nil, nil,
185
+ nil, nil, 27, 30, 35, 36, 1, 9, 11, nil,
186
+ 40, nil, 24, nil, nil, 31, 41, 5, nil, nil,
187
+ nil, nil, nil, nil, nil, 27, 30, 35, 36, 1,
188
+ 9, 11, nil, 40, nil, 24, nil, nil, 31, 41,
189
+ 5, nil, nil, nil, nil, nil, nil, nil, 27, 30,
190
+ 35, 36, 1, 9, 11, nil, 40, nil, 24, nil,
191
+ nil, 31, 41, 5, nil, nil, nil, nil, nil, nil,
192
+ nil, 27, 30, 35, 36, 1, 9, 11, nil, 40,
193
+ nil, 24, nil, nil, 31, 41, 5, nil, nil, nil,
194
+ nil, nil, nil, nil, 27, 30, 35, 36, 1, 9,
195
+ 11, nil, 40, nil, 24, nil, nil, 31, 41, 5,
196
+ nil, nil, nil, nil, nil, nil, nil, 27, 30, 35,
197
+ 36, 1, 9, 11, nil, 40, nil, 24, nil, nil,
198
+ 31, 41, 5, nil, nil, nil, nil, nil, nil, nil,
199
+ 27, 30, 35, 36, 1, 9, 11, nil, 40, nil,
200
+ 24, nil, nil, 31, 41, 5, nil, nil, nil, nil,
201
+ nil, nil, nil, 27, 30, 35, 36, 1, 9, 11,
202
+ nil, 40, nil, 24, nil, nil, 31, 41, 5, nil,
203
+ nil, nil, nil, nil, nil, nil, 27, 30, 35, 36,
204
+ 1, 9, 11, nil, 40, nil, 24, nil, nil, 31,
205
+ 41, 5, nil, nil, nil, nil, nil, nil, nil, 27,
206
+ 30, 35, 36, 1, 9, 11, nil, 40, nil, 24,
207
+ nil, nil, 31, 41, 5, nil, nil, nil, nil, nil,
208
+ nil, nil, 27, 30, 35, 36, 1, 9, 11, nil,
209
+ 40, nil, 24, nil, nil, 31, 38, 5, nil, 8,
210
+ 10, nil, 16, 20, 26, 27, 30, 35, 2, nil,
211
+ 9, 11, nil, 18, nil, 24, 36, 1, nil, nil,
212
+ 5, nil, nil, nil, nil, nil, 31, 38, nil, nil,
213
+ nil, nil, nil, nil, nil, 26, 27, 30, 35, 36,
214
+ 1, 9, 11, nil, 40, nil, 24, nil, nil, 31,
215
+ 38, 5, nil, 8, 10, nil, 16, 20, 26, 27,
216
+ 30, 35, 2, nil, 9, 11, nil, 18, nil, 24,
217
+ 36, 1, nil, nil, 5, nil, nil, nil, nil, nil,
218
+ 31, 41, nil, nil, nil, nil, nil, nil, nil, nil,
219
+ 27, 30, 35, 36, 1, 9, 11, nil, 40, nil,
220
+ 24, nil, nil, 31, 41, 5, nil, nil, nil, nil,
221
+ nil, nil, nil, 27, 30, 35, 36, 1, 9, 11,
222
+ nil, 40, nil, 24, nil, nil, 31, 38, 5, nil,
223
+ nil, nil, nil, nil, nil, 26, 27, 30, 35, 36,
224
+ 1, 9, 11, nil, 40, nil, 24, nil, nil, 31,
225
+ 41, 5, nil, nil, nil, nil, nil, nil, nil, 27,
226
+ 30, 35, 36, 1, 9, 11, nil, 40, nil, 24,
227
+ nil, nil, 31, 41, 5, nil, nil, nil, nil, nil,
228
+ nil, nil, 27, 30, 35, 36, 1, 9, 11, nil,
229
+ 40, nil, 24, nil, nil, 31, 38, 5, nil, 8,
230
+ 10, nil, 16, 20, 26, 27, 30, 35, 2, nil,
231
+ 9, 11, nil, 18, nil, 24, 36, 1, nil, nil,
232
+ 5, nil, nil, nil, nil, nil, 31, 38, nil, nil,
233
+ nil, nil, nil, nil, nil, 26, 27, 30, 35, 36,
234
+ 1, 9, 11, nil, 40, nil, 24, nil, nil, 31,
235
+ 41, 5, nil, nil, nil, nil, nil, nil, nil, 27,
236
+ 30, 35, 36, 1, 9, 11, nil, 40, nil, 24,
237
+ 117, nil, 31, 38, 5, nil, 8, 10, nil, 16,
238
+ 20, 26, 27, 30, 35, 2, nil, 9, 11, nil,
239
+ 18, 73, 24, 36, 1, nil, nil, 5, nil, nil,
240
+ nil, nil, nil, 31, 41, nil, nil, nil, nil, nil,
241
+ nil, nil, nil, 27, 30, 35, 36, 1, 9, 11,
242
+ nil, 40, nil, 24, nil, nil, 31, 38, 5, nil,
243
+ 8, 10, nil, 16, 20, 26, 27, 30, 35, 2,
244
+ nil, 9, 11, nil, 18, nil, 24, 36, 1, nil,
245
+ nil, 5, nil, nil, nil, nil, nil, 31, 41, nil,
246
+ nil, nil, nil, nil, nil, nil, nil, 27, 30, 35,
247
+ 36, 1, 9, 11, 51, 40, nil, 24, nil, nil,
248
+ 31, 41, 5, nil, nil, nil, nil, nil, nil, nil,
249
+ 27, 30, 35, 36, 1, 9, 11, nil, 40, nil,
250
+ 24, nil, nil, 31, 38, 5, nil, nil, nil, nil,
251
+ nil, nil, 26, 27, 30, 35, 36, 1, 9, 11,
252
+ nil, 40, nil, 24, nil, nil, 31, 38, 5, nil,
253
+ 8, 10, nil, 16, 20, 26, 27, 30, 35, 2,
254
+ nil, 9, 11, nil, 18, nil, 24, 36, 1, nil,
255
+ nil, 5, nil, nil, nil, nil, nil, 31, 41, nil,
256
+ nil, nil, nil, nil, nil, nil, nil, 27, 30, 35,
257
+ 36, 1, 9, 11, nil, 40, nil, 24, nil, nil,
258
+ 31, 38, 5, nil, 8, 10, nil, 16, 20, 26,
259
+ 27, 30, 35, 2, nil, 9, 11, nil, 18, nil,
260
+ 24, 36, 1, nil, nil, 5, nil, nil, nil, nil,
261
+ nil, 31, 38, nil, nil, nil, nil, nil, nil, nil,
262
+ 26, 27, 30, 35, 36, 1, 9, 11, nil, 40,
263
+ nil, 24, nil, nil, 31, 41, 5, nil, nil, nil,
264
+ nil, nil, nil, nil, 27, 30, 35, 36, 1, 9,
265
+ 11, nil, 40, nil, 24, nil, nil, 31, 38, 5,
266
+ 7, 8, 10, nil, 16, 20, 26, 27, 30, 35,
267
+ 2, nil, 9, 11, nil, 18, nil, 24, 36, 1,
268
+ nil, nil, 5, nil, nil, nil, nil, nil, 31, 38,
269
+ nil, nil, nil, nil, nil, nil, nil, 26, 27, 30,
270
+ 35, nil, nil, 9, 11, nil, 40, nil, 24, nil,
271
+ nil, nil, nil, 5 ]
229
272
 
230
273
  racc_action_check = [
231
- 82, 82, 82, 82, 82, 82, 82, 82, 82, 82,
232
- 82, 82, 82, 81, 81, 81, 81, 81, 81, 81,
233
- 80, 80, 80, 80, 80, 37, 74, 38, 128, 82,
234
- 82, 79, 79, 79, 79, 79, 38, 128, 82, 87,
235
- 78, 89, 81, 40, 62, 105, 74, 105, 87, 80,
236
- 62, 81, 40, 76, 76, 76, 90, 100, 80, 37,
237
- 79, 84, 84, 84, 84, 84, 84, 84, 97, 79,
238
- 89, 85, 85, 85, 85, 85, 85, 85, 71, 89,
239
- 66, 46, 76, 66, 107, 90, 107, 71, 92, 68,
240
- 84, 76, 108, 43, 90, 91, 91, 91, 63, 84,
241
- 85, 39, 86, 86, 86, 86, 86, 86, 86, 85,
242
- 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
243
- 11, 11, 11, 126, 91, 126, 70, 36, 25, 17,
244
- 16, 86, 122, 91, 123, 125, 75, 77, 129, 11,
245
- 86, 88, 88, 88, 88, 88, 88, 88, 11, 132,
246
- 132, 132, 132, 132, 132, 132, 132, 132, 132, 132,
247
- 132, 132, 131, 15, 12, 8, 139, 7, nil, nil,
248
- 88, nil, nil, nil, nil, nil, nil, nil, 132, 88,
249
- 83, 83, 83, 83, 83, 83, 83, 132, 69, 69,
250
- 69, 69, 69, 69, 69, 69, 69, 69, 69, 69,
251
- 69, nil, nil, nil, nil, nil, nil, nil, nil, 83,
252
- nil, nil, nil, nil, nil, nil, nil, 69, 83, nil,
253
- nil, nil, 69, nil, nil, nil, 69, 61, 61, 61,
254
- 61, 61, 61, 61, 61, 61, 61, 61, 61, 61,
274
+ 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
275
+ 94, 94, 94, 93, 93, 93, 93, 93, 93, 93,
276
+ 92, 92, 92, 92, 92, 72, 91, 54, 72, 94,
277
+ 94, 96, 96, 96, 96, 96, 96, 96, 83, 94,
278
+ 101, 38, 93, 89, 89, 89, 89, 89, 102, 92,
279
+ 112, 49, 93, 76, 88, 88, 88, 49, 83, 92,
280
+ 96, 97, 97, 97, 97, 97, 97, 97, 99, 101,
281
+ 96, 141, 89, 120, 39, 38, 44, 102, 99, 101,
282
+ 105, 141, 89, 88, 39, 69, 44, 102, 79, 69,
283
+ 97, 45, 67, 88, 103, 103, 103, 142, 79, 142,
284
+ 97, 146, 146, 146, 146, 146, 146, 146, 146, 146,
285
+ 146, 146, 146, 146, 98, 98, 98, 98, 98, 98,
286
+ 98, 41, 119, 103, 119, 116, 78, 116, 84, 26,
287
+ 146, 19, 16, 103, 135, 136, 15, 139, 140, 85,
288
+ 146, 90, 145, 98, 10, 100, 100, 100, 100, 100,
289
+ 100, 100, 8, 98, 12, 12, 12, 12, 12, 12,
290
+ 12, 12, 12, 12, 12, 12, 12, 7, 153, 3,
291
+ nil, nil, nil, nil, 100, nil, nil, nil, nil, nil,
292
+ nil, nil, nil, 12, 100, nil, nil, nil, nil, nil,
293
+ nil, nil, nil, 12, 81, 81, 81, 81, 81, 81,
294
+ 81, 81, 81, 81, 81, 81, 81, 77, 77, 77,
295
+ 77, 77, 77, 77, 77, 77, 77, 77, 77, 77,
296
+ nil, nil, nil, 81, nil, nil, nil, nil, nil, nil,
297
+ nil, 81, nil, 81, nil, nil, 77, nil, nil, nil,
298
+ nil, 77, nil, nil, nil, nil, 77, 129, 129, 129,
299
+ 129, 129, 129, 129, 129, 129, 129, 129, 129, 129,
300
+ 71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
301
+ 71, 71, 71, nil, nil, nil, 129, 95, 95, 95,
302
+ 95, 95, 95, 95, nil, nil, 129, nil, nil, 71,
303
+ nil, nil, nil, nil, nil, nil, nil, 71, nil, 71,
304
+ nil, nil, nil, nil, nil, nil, 95, nil, nil, nil,
305
+ nil, nil, nil, nil, nil, nil, 95, 115, 115, 115,
255
306
  115, 115, 115, 115, 115, 115, 115, 115, 115, 115,
256
- 115, 115, 115, nil, nil, nil, 61, nil, nil, nil,
257
- nil, nil, nil, nil, nil, 61, nil, nil, nil, 115,
258
- nil, nil, nil, nil, nil, nil, nil, nil, 115, 104,
259
- 104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
260
- 104, 104, nil, 94, 94, nil, nil, nil, nil, nil,
261
- 112, 112, nil, 94, 94, nil, nil, nil, 104, nil,
262
- 112, 112, nil, 94, 94, 94, nil, 104, 94, 94,
263
- 112, 112, 112, 94, nil, 112, 112, 94, 111, 111,
264
- 112, nil, nil, nil, 112, nil, nil, nil, 111, 111,
265
- nil, nil, nil, nil, nil, 110, 110, nil, 111, 111,
266
- 111, nil, nil, 111, 111, 110, 110, nil, 111, 111,
267
- nil, nil, 111, nil, 110, 110, 110, 110, nil, nil,
268
- 110, 110, 44, 44, nil, 110, nil, nil, nil, 110,
269
- nil, nil, 44, 44, nil, nil, nil, nil, nil, 45,
270
- 45, 44, 44, 44, 44, nil, nil, 44, 44, 45,
271
- 45, nil, 44, nil, nil, nil, 44, 47, 47, 45,
272
- 45, 45, nil, nil, 45, 45, nil, 47, 47, 45,
273
- nil, nil, nil, 45, 48, 48, nil, 47, 47, 47,
274
- nil, nil, 47, 47, 48, 48, nil, 47, nil, nil,
275
- nil, 47, 49, 49, 48, 48, 48, nil, nil, 48,
276
- 48, nil, 49, 49, 48, nil, nil, nil, 48, 50,
277
- 50, nil, 49, 49, 49, nil, nil, 49, 49, 50,
278
- 50, nil, 49, nil, nil, nil, 49, 51, 51, 50,
279
- 50, 50, nil, nil, 50, 50, nil, 51, 51, 50,
280
- nil, nil, nil, 50, 52, 52, nil, 51, 51, 51,
281
- nil, nil, 51, 51, 52, 52, nil, 51, nil, nil,
282
- nil, 51, 53, 53, 52, 52, 52, nil, nil, 52,
283
- 52, nil, 53, 53, 52, nil, nil, nil, 52, 54,
284
- 54, nil, 53, 53, 53, nil, nil, 53, 53, 54,
285
- 54, nil, 53, nil, nil, nil, 53, 55, 55, 54,
286
- 54, 54, nil, nil, 54, 54, nil, 55, 55, 54,
287
- nil, nil, nil, 54, 56, 56, nil, 55, 55, 55,
288
- nil, nil, 55, 55, 56, 56, nil, 55, nil, nil,
289
- nil, 55, 57, 57, 56, 56, 56, nil, nil, 56,
290
- 56, nil, 57, 57, 56, nil, nil, nil, 56, 58,
291
- 58, nil, 57, 57, 57, nil, nil, 57, 57, 58,
292
- 58, nil, 57, nil, nil, nil, 57, 59, 59, 58,
293
- 58, 58, nil, nil, 58, 58, nil, 59, 59, 58,
294
- nil, nil, nil, 58, 60, 60, nil, 59, 59, 59,
295
- nil, nil, 59, 59, 60, 60, nil, 59, nil, nil,
296
- nil, 59, nil, 60, 60, 60, 60, nil, nil, 60,
297
- 60, 35, 35, nil, 60, nil, nil, nil, 60, nil,
298
- nil, 35, 35, nil, nil, nil, nil, nil, nil, 116,
299
- 116, 35, 35, 35, nil, nil, 35, 35, nil, 116,
300
- 116, 35, nil, 116, 116, 35, 116, 116, 116, 116,
301
- 116, 116, 116, nil, 116, 116, nil, 116, nil, 116,
302
- 99, 99, nil, 116, nil, nil, nil, nil, nil, nil,
303
- 99, 99, nil, nil, 99, 99, nil, 99, 99, 99,
304
- 99, 99, 99, 99, nil, 99, 99, nil, 99, nil,
305
- 99, 64, 64, nil, 99, nil, nil, nil, nil, nil,
306
- nil, 64, 64, nil, 64, 64, 64, nil, 64, 64,
307
- 64, 64, 64, 64, 64, nil, 64, 64, nil, 64,
308
- nil, 64, 65, 65, nil, 64, nil, nil, nil, nil,
309
- nil, nil, 65, 65, nil, nil, nil, nil, nil, nil,
310
- nil, 65, 65, 65, 65, nil, nil, 65, 65, 114,
311
- 114, nil, 65, nil, nil, nil, 65, nil, nil, 114,
312
- 114, nil, nil, 114, 114, nil, 114, 114, 114, 114,
313
- 114, 114, 114, nil, 114, 114, nil, 114, nil, 114,
314
- 23, 23, nil, 114, nil, nil, nil, nil, nil, nil,
315
- 23, 23, nil, nil, nil, nil, nil, nil, 21, 21,
316
- 23, 23, 23, nil, nil, 23, 23, nil, 21, 21,
317
- 23, nil, 21, 21, 23, 21, 21, 21, 21, 21,
318
- 21, 21, nil, 21, 21, nil, 21, nil, 21, 20,
319
- 20, nil, 21, nil, nil, nil, nil, nil, nil, 20,
320
- 20, nil, nil, 20, 20, nil, 20, 20, 20, 20,
321
- 20, 20, 20, nil, 20, 20, nil, 20, nil, 20,
322
- 118, 118, nil, 20, nil, nil, nil, nil, nil, nil,
323
- 118, 118, nil, nil, nil, nil, nil, 72, 72, 118,
324
- 118, 118, 118, nil, nil, 118, 118, 72, 72, nil,
325
- 118, nil, nil, nil, 118, nil, 72, 72, 72, 72,
326
- nil, nil, 72, 72, 73, 73, nil, 72, nil, nil,
327
- nil, 72, nil, nil, 73, 73, nil, nil, nil, nil,
328
- nil, 121, 121, nil, 73, 73, 73, nil, nil, 73,
329
- 73, 121, 121, nil, 73, 73, nil, nil, 73, 13,
330
- 13, 121, 121, 121, nil, nil, 121, 121, nil, 13,
331
- 13, 121, nil, nil, nil, 121, 135, 135, nil, 13,
332
- 13, 13, nil, nil, 13, 13, 135, 135, nil, 13,
333
- nil, nil, nil, 13, nil, 135, 135, 135, 135, nil,
334
- nil, 135, 135, 137, 137, nil, 135, nil, nil, nil,
335
- 135, nil, nil, 137, 137, nil, nil, 137, 137, nil,
336
- 137, 137, 137, 137, 137, 137, 137, nil, 137, 137,
337
- nil, 137, nil, 137, 141, 141, nil, 137, nil, nil,
338
- nil, nil, nil, nil, 141, 141, nil, nil, 141, 141,
339
- nil, 141, 141, 141, 141, 141, 141, 141, nil, 141,
340
- 141, nil, 141, nil, 141, 4, 4, nil, 141, nil,
341
- nil, nil, 3, 3, nil, 4, 4, nil, nil, nil,
342
- nil, nil, 3, 3, 4, 4, 4, 4, nil, nil,
343
- 4, 4, 3, 3, 3, 4, nil, 3, 3, 4,
344
- 2, 2, 3, nil, nil, nil, 3, nil, nil, nil,
345
- 2, 2, nil, nil, nil, nil, nil, nil, 0, 0,
346
- 2, 2, 2, nil, nil, 2, 2, nil, 0, 0,
347
- 2, 0, 0, 0, 2, 0, 0, 0, 0, 0,
348
- 0, 0, nil, 0, 0, nil, 0, nil, 0, 102,
349
- 102, nil, 0, nil, nil, nil, nil, nil, nil, 102,
350
- 102, nil, nil, nil, nil, nil, nil, nil, 102, 102,
351
- 102, 102, nil, nil, 102, 102, nil, nil, nil, 102,
352
- nil, nil, nil, 102 ]
307
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
308
+ 50, 50, 50, nil, nil, nil, 115, nil, nil, nil,
309
+ nil, nil, nil, nil, nil, nil, 115, nil, nil, 50,
310
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 50,
311
+ 123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
312
+ 123, 123, 123, nil, nil, nil, nil, nil, nil, nil,
313
+ nil, nil, nil, 75, 75, nil, nil, nil, nil, 123,
314
+ nil, nil, nil, 75, 75, nil, 75, 75, 75, 123,
315
+ 75, 75, 75, 75, 75, 75, 75, nil, 75, 75,
316
+ nil, 75, nil, 75, 124, 124, nil, nil, 75, nil,
317
+ nil, nil, nil, nil, 124, 124, nil, nil, nil, nil,
318
+ nil, nil, nil, nil, 124, 124, 124, 122, 122, 124,
319
+ 124, nil, 124, nil, 124, nil, nil, 122, 122, 124,
320
+ nil, 122, 122, nil, 122, 122, 122, 122, 122, 122,
321
+ 122, nil, 122, 122, nil, 122, nil, 122, 47, 47,
322
+ nil, nil, 122, nil, nil, nil, nil, nil, 47, 47,
323
+ nil, nil, nil, nil, nil, nil, nil, 47, 47, 47,
324
+ 47, 48, 48, 47, 47, nil, 47, nil, 47, nil,
325
+ nil, 48, 48, 47, nil, nil, nil, nil, nil, nil,
326
+ 48, 48, 48, 48, 121, 121, 48, 48, nil, 48,
327
+ nil, 48, nil, nil, 121, 121, 48, nil, nil, nil,
328
+ nil, nil, nil, 121, 121, 121, 121, 40, 40, 121,
329
+ 121, nil, 121, nil, 121, nil, nil, 40, 40, 121,
330
+ nil, nil, nil, nil, nil, nil, nil, 40, 40, 40,
331
+ 52, 52, 40, 40, nil, 40, 40, 40, nil, nil,
332
+ 52, 52, 40, nil, nil, nil, nil, nil, nil, nil,
333
+ 52, 52, 52, 53, 53, 52, 52, nil, 52, nil,
334
+ 52, nil, nil, 53, 53, 52, nil, nil, nil, nil,
335
+ nil, nil, nil, 53, 53, 53, 125, 125, 53, 53,
336
+ nil, 53, nil, 53, nil, nil, 125, 125, 53, nil,
337
+ nil, nil, nil, nil, nil, nil, 125, 125, 125, 55,
338
+ 55, 125, 125, nil, 125, nil, 125, 125, nil, 55,
339
+ 55, 125, nil, nil, nil, nil, nil, nil, nil, 55,
340
+ 55, 55, 56, 56, 55, 55, nil, 55, nil, 55,
341
+ nil, nil, 56, 56, 55, nil, nil, nil, nil, nil,
342
+ nil, nil, 56, 56, 56, 57, 57, 56, 56, nil,
343
+ 56, nil, 56, nil, nil, 57, 57, 56, nil, nil,
344
+ nil, nil, nil, nil, nil, 57, 57, 57, 58, 58,
345
+ 57, 57, nil, 57, nil, 57, nil, nil, 58, 58,
346
+ 57, nil, nil, nil, nil, nil, nil, nil, 58, 58,
347
+ 58, 59, 59, 58, 58, nil, 58, nil, 58, nil,
348
+ nil, 59, 59, 58, nil, nil, nil, nil, nil, nil,
349
+ nil, 59, 59, 59, 60, 60, 59, 59, nil, 59,
350
+ nil, 59, nil, nil, 60, 60, 59, nil, nil, nil,
351
+ nil, nil, nil, nil, 60, 60, 60, 61, 61, 60,
352
+ 60, nil, 60, nil, 60, nil, nil, 61, 61, 60,
353
+ nil, nil, nil, nil, nil, nil, nil, 61, 61, 61,
354
+ 62, 62, 61, 61, nil, 61, nil, 61, nil, nil,
355
+ 62, 62, 61, nil, nil, nil, nil, nil, nil, nil,
356
+ 62, 62, 62, 63, 63, 62, 62, nil, 62, nil,
357
+ 62, nil, nil, 63, 63, 62, nil, nil, nil, nil,
358
+ nil, nil, nil, 63, 63, 63, 64, 64, 63, 63,
359
+ nil, 63, nil, 63, nil, nil, 64, 64, 63, nil,
360
+ nil, nil, nil, nil, nil, nil, 64, 64, 64, 65,
361
+ 65, 64, 64, nil, 64, nil, 64, nil, nil, 65,
362
+ 65, 64, nil, nil, nil, nil, nil, nil, nil, 65,
363
+ 65, 65, 66, 66, 65, 65, nil, 65, nil, 65,
364
+ nil, nil, 66, 66, 65, nil, nil, nil, nil, nil,
365
+ nil, nil, 66, 66, 66, 127, 127, 66, 66, nil,
366
+ 66, nil, 66, nil, nil, 127, 127, 66, nil, 127,
367
+ 127, nil, 127, 127, 127, 127, 127, 127, 127, nil,
368
+ 127, 127, nil, 127, nil, 127, 68, 68, nil, nil,
369
+ 127, nil, nil, nil, nil, nil, 68, 68, nil, nil,
370
+ nil, nil, nil, nil, nil, 68, 68, 68, 68, 110,
371
+ 110, 68, 68, nil, 68, nil, 68, nil, nil, 110,
372
+ 110, 68, nil, 110, 110, nil, 110, 110, 110, 110,
373
+ 110, 110, 110, nil, 110, 110, nil, 110, nil, 110,
374
+ 36, 36, nil, nil, 110, nil, nil, nil, nil, nil,
375
+ 36, 36, nil, nil, nil, nil, nil, nil, nil, nil,
376
+ 36, 36, 36, 108, 108, 36, 36, nil, 36, nil,
377
+ 36, nil, nil, 108, 108, 36, nil, nil, nil, nil,
378
+ nil, nil, nil, 108, 108, 108, 43, 43, 108, 108,
379
+ nil, 108, nil, 108, nil, nil, 43, 43, 108, nil,
380
+ nil, nil, nil, nil, nil, 43, 43, 43, 43, 107,
381
+ 107, 43, 43, nil, 43, nil, 43, nil, nil, 107,
382
+ 107, 43, nil, nil, nil, nil, nil, nil, nil, 107,
383
+ 107, 107, 24, 24, 107, 107, nil, 107, nil, 107,
384
+ nil, nil, 24, 24, 107, nil, nil, nil, nil, nil,
385
+ nil, nil, 24, 24, 24, 20, 20, 24, 24, nil,
386
+ 24, nil, 24, nil, nil, 20, 20, 24, nil, 20,
387
+ 20, nil, 20, 20, 20, 20, 20, 20, 20, nil,
388
+ 20, 20, nil, 20, nil, 20, 131, 131, nil, nil,
389
+ 20, nil, nil, nil, nil, nil, 131, 131, nil, nil,
390
+ nil, nil, nil, nil, nil, 131, 131, 131, 131, 80,
391
+ 80, 131, 131, nil, 131, nil, 131, nil, nil, 80,
392
+ 80, 131, nil, nil, nil, nil, nil, nil, nil, 80,
393
+ 80, 80, 18, 18, 80, 80, nil, 80, nil, 80,
394
+ 80, nil, 18, 18, 80, nil, 18, 18, nil, 18,
395
+ 18, 18, 18, 18, 18, 18, nil, 18, 18, nil,
396
+ 18, 18, 18, 134, 134, nil, nil, 18, nil, nil,
397
+ nil, nil, nil, 134, 134, nil, nil, nil, nil, nil,
398
+ nil, nil, nil, 134, 134, 134, 138, 138, 134, 134,
399
+ nil, 134, nil, 134, nil, nil, 138, 138, 134, nil,
400
+ 138, 138, nil, 138, 138, 138, 138, 138, 138, 138,
401
+ nil, 138, 138, nil, 138, nil, 138, 11, 11, nil,
402
+ nil, 138, nil, nil, nil, nil, nil, 11, 11, nil,
403
+ nil, nil, nil, nil, nil, nil, nil, 11, 11, 11,
404
+ 87, 87, 11, 11, 11, 11, nil, 11, nil, nil,
405
+ 87, 87, 11, nil, nil, nil, nil, nil, nil, nil,
406
+ 87, 87, 87, 149, 149, 87, 87, nil, 87, nil,
407
+ 87, nil, nil, 149, 149, 87, nil, nil, nil, nil,
408
+ nil, nil, 149, 149, 149, 149, 150, 150, 149, 149,
409
+ nil, 149, nil, 149, nil, nil, 150, 150, 149, nil,
410
+ 150, 150, nil, 150, 150, 150, 150, 150, 150, 150,
411
+ nil, 150, 150, nil, 150, nil, 150, 5, 5, nil,
412
+ nil, 150, nil, nil, nil, nil, nil, 5, 5, nil,
413
+ nil, nil, nil, nil, nil, nil, nil, 5, 5, 5,
414
+ 155, 155, 5, 5, nil, 5, nil, 5, nil, nil,
415
+ 155, 155, 5, nil, 155, 155, nil, 155, 155, 155,
416
+ 155, 155, 155, 155, nil, 155, 155, nil, 155, nil,
417
+ 155, 2, 2, nil, nil, 155, nil, nil, nil, nil,
418
+ nil, 2, 2, nil, nil, nil, nil, nil, nil, nil,
419
+ 2, 2, 2, 2, 1, 1, 2, 2, nil, 2,
420
+ nil, 2, nil, nil, 1, 1, 2, nil, nil, nil,
421
+ nil, nil, nil, nil, 1, 1, 1, 0, 0, 1,
422
+ 1, nil, 1, nil, 1, nil, nil, 0, 0, 1,
423
+ 0, 0, 0, nil, 0, 0, 0, 0, 0, 0,
424
+ 0, nil, 0, 0, nil, 0, nil, 0, 114, 114,
425
+ nil, nil, 0, nil, nil, nil, nil, nil, 114, 114,
426
+ nil, nil, nil, nil, nil, nil, nil, 114, 114, 114,
427
+ 114, nil, nil, 114, 114, nil, 114, nil, 114, nil,
428
+ nil, nil, nil, 114 ]
353
429
 
354
430
  racc_action_pointer = [
355
- 1138, nil, 1120, 1092, 1085, nil, nil, 146, 125, nil,
356
- nil, 103, 124, 979, nil, 163, 88, 89, nil, nil,
357
- 869, 838, nil, 820, nil, 107, nil, nil, nil, nil,
358
- nil, nil, nil, nil, nil, 651, 121, 19, -9, 61,
359
- 7, nil, nil, 53, 362, 379, 60, 397, 414, 432,
360
- 449, 467, 484, 502, 519, 537, 554, 572, 589, 607,
361
- 624, 220, 7, 98, 731, 762, 41, nil, 62, 181,
362
- 120, 42, 917, 944, 5, 94, 46, 97, 34, 24,
363
- 13, 6, -7, 173, 54, 64, 95, 3, 134, 34,
364
- 49, 88, 47, nil, 283, nil, nil, 27, nil, 700,
365
- 17, nil, 1169, nil, 272, 4, nil, 43, 54, nil,
366
- 335, 318, 290, nil, 789, 233, 669, nil, 900, nil,
367
- nil, 961, 94, 113, nil, 93, 82, nil, -8, 112,
368
- nil, 121, 142, nil, nil, 996, nil, 1023, nil, 125,
369
- nil, 1054, nil ]
431
+ 1467, 1444, 1421, 163, nil, 1367, nil, 146, 112, nil,
432
+ 104, 1267, 147, nil, nil, 136, 92, nil, 1182, 89,
433
+ 1105, nil, nil, nil, 1082, nil, 108, nil, nil, nil,
434
+ nil, nil, nil, nil, nil, nil, 990, nil, 35, 38,
435
+ 537, 81, nil, 1036, 40, 51, nil, 468, 491, 14,
436
+ 323, nil, 560, 583, 6, 629, 652, 675, 698, 721,
437
+ 744, 767, 790, 813, 836, 859, 882, 92, 936, 46,
438
+ nil, 253, -14, nil, nil, 383, 26, 200, 120, 52,
439
+ 1159, 187, nil, 17, 86, 98, nil, 1290, 47, 36,
440
+ 135, -14, 13, 6, -7, 270, 24, 54, 107, 32,
441
+ 138, 33, 41, 87, nil, 39, nil, 1059, 1013, nil,
442
+ 959, nil, 10, nil, 1498, 310, 84, nil, nil, 81,
443
+ 35, 514, 437, 363, 414, 606, nil, 905, nil, 240,
444
+ nil, 1136, nil, nil, 1213, 96, 114, nil, 1236, 95,
445
+ 112, 35, 56, nil, nil, 101, 94, nil, nil, 1313,
446
+ 1336, nil, nil, 127, nil, 1390, nil ]
370
447
 
371
448
  racc_action_default = [
372
- -2, -44, -72, -72, -72, -24, -45, -72, -72, -50,
373
- -48, -16, -72, -72, -23, -72, -1, -72, -46, -25,
374
- -72, -72, -26, -72, -27, -72, -7, -64, -28, -5,
375
- -65, -63, -61, -6, -62, -72, -72, -47, -40, -47,
376
- -39, -29, -71, -72, -72, -72, -72, -72, -72, -72,
377
- -72, -72, -72, -72, -72, -72, -72, -72, -72, -72,
378
- -72, -31, -72, -72, -9, -72, -72, -19, -72, -72,
379
- -72, -41, -72, -72, -72, -72, -34, -71, -57, -42,
380
- -43, -52, -72, -51, -55, -56, -53, -37, -54, -35,
381
- -36, -33, -72, -30, -72, 143, -8, -72, -22, -21,
382
- -72, -49, -72, -17, -14, -72, -3, -72, -72, -12,
383
- -72, -72, -72, -38, -72, -32, -72, -20, -72, -18,
384
- -4, -72, -72, -72, -10, -72, -72, -60, -58, -67,
385
- -69, -72, -15, -11, -13, -72, -59, -72, -70, -72,
386
- -66, -72, -68 ]
449
+ -2, -79, -79, -79, -70, -79, -24, -79, -79, -54,
450
+ -79, -79, -16, -50, -23, -79, -79, -51, -79, -1,
451
+ -79, -56, -52, -25, -79, -26, -79, -71, -27, -7,
452
+ -72, -67, -28, -5, -69, -68, -79, -6, -53, -46,
453
+ -79, -53, -29, -79, -45, -79, -78, -79, -79, -79,
454
+ -32, -30, -79, -79, -79, -79, -79, -79, -79, -79,
455
+ -79, -79, -79, -79, -79, -79, -79, -79, -79, -79,
456
+ -37, -16, -79, -34, -19, -9, -79, -79, -79, -47,
457
+ -79, -79, -17, -79, -79, -79, -31, -79, -40, -48,
458
+ -63, -78, -49, -58, -79, -57, -61, -62, -59, -43,
459
+ -60, -41, -42, -39, 157, -79, -35, -79, -79, -22,
460
+ -21, -8, -79, -55, -79, -14, -79, -3, -12, -79,
461
+ -79, -79, -79, -33, -79, -79, -44, -79, -38, -36,
462
+ -20, -79, -18, -4, -79, -79, -79, -10, -79, -79,
463
+ -74, -64, -79, -66, -76, -79, -15, -11, -13, -79,
464
+ -79, -65, -77, -79, -73, -79, -75 ]
387
465
 
388
466
  racc_goto_table = [
389
- 41, 67, 68, 43, 124, 105, 15, 26, 107, 16,
390
- 66, 62, nil, nil, nil, nil, nil, nil, 133, nil,
391
- nil, 70, nil, nil, nil, nil, nil, nil, nil, nil,
392
- nil, nil, nil, nil, nil, nil, 38, 40, nil, nil,
393
- 75, nil, 78, 126, nil, nil, nil, 61, nil, nil,
394
- nil, nil, nil, nil, nil, nil, 92, 69, nil, nil,
395
- nil, 97, nil, nil, nil, nil, nil, nil, 103, 71,
396
- 109, 96, nil, nil, nil, nil, nil, nil, nil, 76,
397
- 117, 79, 80, 81, 82, 83, 84, 85, 86, 87,
398
- 88, 89, 90, 91, nil, 129, nil, 130, 119, nil,
399
- nil, nil, nil, nil, nil, nil, 125, 104, nil, nil,
400
- nil, nil, nil, nil, 131, nil, nil, nil, 140, 134,
401
- nil, nil, 142, nil, nil, nil, nil, nil, 115, nil,
402
- nil, 139, nil, nil, nil, nil, nil, nil, nil, nil,
403
- nil, nil, nil, nil, nil, 104, 128, nil, nil, nil,
404
- nil, nil, nil, nil, nil, 132 ]
467
+ 42, 74, 116, 76, 137, 15, 45, 119, 29, 19,
468
+ 49, 128, nil, nil, nil, nil, 39, nil, nil, 147,
469
+ 44, nil, nil, nil, nil, 78, 50, nil, nil, nil,
470
+ nil, nil, nil, 71, nil, nil, nil, nil, nil, 77,
471
+ nil, 82, nil, nil, nil, 84, 85, 142, nil, nil,
472
+ nil, 79, nil, 90, nil, 81, nil, nil, nil, nil,
473
+ nil, nil, nil, nil, nil, nil, 105, 88, 89, nil,
474
+ 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
475
+ 102, 103, 118, 111, nil, nil, nil, nil, nil, nil,
476
+ nil, nil, nil, 130, nil, 115, nil, nil, nil, nil,
477
+ nil, nil, 123, nil, nil, 140, nil, nil, nil, nil,
478
+ 144, nil, 132, nil, nil, nil, nil, nil, nil, 139,
479
+ nil, 74, 81, 129, nil, nil, nil, nil, nil, 145,
480
+ nil, nil, nil, 154, nil, 148, nil, nil, 156, 141,
481
+ 115, nil, nil, nil, nil, nil, nil, 153, nil, 146 ]
405
482
 
406
483
  racc_goto_check = [
407
- 12, 6, 6, 8, 9, 4, 1, 5, 10, 2,
408
- 13, 19, nil, nil, nil, nil, nil, nil, 9, nil,
409
- nil, 8, nil, nil, nil, nil, nil, nil, nil, nil,
410
- nil, nil, nil, nil, nil, nil, 11, 11, nil, nil,
411
- 12, nil, 8, 4, nil, nil, nil, 11, nil, nil,
412
- nil, nil, nil, nil, nil, nil, 12, 11, nil, nil,
413
- nil, 12, nil, nil, nil, nil, nil, nil, 12, 11,
414
- 8, 5, nil, nil, nil, nil, nil, nil, nil, 11,
415
- 6, 11, 11, 11, 11, 11, 11, 11, 11, 11,
416
- 11, 11, 11, 11, nil, 6, nil, 6, 12, nil,
417
- nil, nil, nil, nil, nil, nil, 12, 11, nil, nil,
418
- nil, nil, nil, nil, 12, nil, nil, nil, 6, 8,
419
- nil, nil, 6, nil, nil, nil, nil, nil, 11, nil,
420
- nil, 12, nil, nil, nil, nil, nil, nil, nil, nil,
421
- nil, nil, nil, nil, nil, 11, 11, nil, nil, nil,
422
- nil, nil, nil, nil, nil, 11 ]
484
+ 12, 6, 4, 6, 9, 1, 8, 10, 5, 2,
485
+ 19, 22, nil, nil, nil, nil, 11, nil, nil, 9,
486
+ 11, nil, nil, nil, nil, 8, 11, nil, nil, nil,
487
+ nil, nil, nil, 11, nil, nil, nil, nil, nil, 11,
488
+ nil, 12, nil, nil, nil, 12, 12, 4, nil, nil,
489
+ nil, 11, nil, 8, nil, 11, nil, nil, nil, nil,
490
+ nil, nil, nil, nil, nil, nil, 12, 11, 11, nil,
491
+ 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
492
+ 11, 11, 8, 5, nil, nil, nil, nil, nil, nil,
493
+ nil, nil, nil, 6, nil, 11, nil, nil, nil, nil,
494
+ nil, nil, 11, nil, nil, 6, nil, nil, nil, nil,
495
+ 6, nil, 12, nil, nil, nil, nil, nil, nil, 12,
496
+ nil, 6, 11, 11, nil, nil, nil, nil, nil, 12,
497
+ nil, nil, nil, 6, nil, 8, nil, nil, 6, 11,
498
+ 11, nil, nil, nil, nil, nil, nil, 12, nil, 11 ]
423
499
 
424
500
  racc_goto_pointer = [
425
- nil, 6, 9, nil, -68, 7, -19, nil, -4, -104,
426
- -66, 34, -4, -10, nil, nil, nil, nil, nil, -2,
427
- nil, nil, nil ]
501
+ nil, 5, 9, nil, -78, 8, -17, nil, -1, -116,
502
+ -76, 15, -2, nil, nil, nil, nil, nil, nil, -1,
503
+ nil, nil, -96, nil, nil, nil ]
428
504
 
429
505
  racc_goto_default = [
430
- nil, nil, nil, 18, nil, nil, 29, 33, 36, 5,
431
- nil, 11, 14, nil, 19, 22, 24, 28, 31, nil,
432
- 1, 6, 9 ]
506
+ nil, nil, nil, 22, nil, nil, 33, 37, 3, 6,
507
+ nil, 12, 14, 72, 23, 25, 28, 32, 34, nil,
508
+ 4, 69, 70, 13, 17, 21 ]
433
509
 
434
510
  racc_reduce_table = [
435
511
  0, 0, :racc_error,
436
- 1, 47, :_reduce_none,
437
- 0, 47, :_reduce_2,
438
- 3, 49, :_reduce_3,
439
- 4, 49, :_reduce_4,
440
- 1, 51, :_reduce_none,
441
- 1, 51, :_reduce_none,
442
- 1, 48, :_reduce_7,
443
- 3, 48, :_reduce_8,
444
- 2, 48, :_reduce_none,
445
- 5, 53, :_reduce_10,
446
- 6, 53, :_reduce_11,
447
- 1, 56, :_reduce_12,
448
- 3, 56, :_reduce_13,
449
- 1, 50, :_reduce_14,
450
- 3, 50, :_reduce_15,
451
- 1, 58, :_reduce_none,
452
- 3, 58, :_reduce_17,
453
- 4, 58, :_reduce_18,
454
- 1, 59, :_reduce_19,
455
- 3, 59, :_reduce_20,
456
- 2, 59, :_reduce_none,
457
- 3, 55, :_reduce_22,
458
- 1, 52, :_reduce_none,
512
+ 1, 48, :_reduce_none,
513
+ 0, 48, :_reduce_2,
514
+ 3, 50, :_reduce_3,
515
+ 4, 50, :_reduce_4,
459
516
  1, 52, :_reduce_none,
460
517
  1, 52, :_reduce_none,
461
- 1, 52, :_reduce_none,
462
- 1, 52, :_reduce_none,
463
- 1, 52, :_reduce_none,
464
- 2, 63, :_reduce_29,
465
- 3, 64, :_reduce_30,
466
- 1, 65, :_reduce_31,
467
- 3, 65, :_reduce_32,
468
- 3, 57, :_reduce_33,
469
- 3, 57, :_reduce_34,
470
- 3, 57, :_reduce_35,
471
- 3, 57, :_reduce_36,
472
- 3, 57, :_reduce_37,
473
- 4, 57, :_reduce_38,
474
- 2, 57, :_reduce_39,
475
- 2, 57, :_reduce_40,
476
- 2, 57, :_reduce_none,
477
- 3, 57, :_reduce_42,
478
- 3, 57, :_reduce_43,
479
- 1, 57, :_reduce_none,
480
- 1, 57, :_reduce_none,
481
- 1, 57, :_reduce_none,
482
- 1, 57, :_reduce_47,
483
- 1, 57, :_reduce_48,
484
- 3, 57, :_reduce_49,
485
- 1, 57, :_reduce_none,
486
- 3, 66, :_reduce_51,
487
- 3, 66, :_reduce_52,
488
- 3, 66, :_reduce_53,
489
- 3, 66, :_reduce_54,
490
- 3, 66, :_reduce_55,
491
- 3, 66, :_reduce_56,
492
- 3, 67, :_reduce_57,
493
- 5, 67, :_reduce_58,
494
- 6, 67, :_reduce_59,
495
- 5, 67, :_reduce_60,
496
- 1, 68, :_reduce_61,
497
- 1, 68, :_reduce_62,
498
- 1, 68, :_reduce_none,
499
- 1, 68, :_reduce_64,
500
- 1, 68, :_reduce_65,
501
- 7, 61, :_reduce_66,
502
- 5, 61, :_reduce_67,
503
- 9, 60, :_reduce_68,
504
- 5, 62, :_reduce_69,
505
- 6, 62, :_reduce_70,
506
- 1, 54, :_reduce_71 ]
507
-
508
- racc_reduce_n = 72
509
-
510
- racc_shift_n = 143
518
+ 1, 49, :_reduce_7,
519
+ 3, 49, :_reduce_8,
520
+ 2, 49, :_reduce_none,
521
+ 5, 54, :_reduce_10,
522
+ 6, 54, :_reduce_11,
523
+ 1, 57, :_reduce_12,
524
+ 3, 57, :_reduce_13,
525
+ 1, 51, :_reduce_14,
526
+ 3, 51, :_reduce_15,
527
+ 1, 59, :_reduce_none,
528
+ 3, 59, :_reduce_17,
529
+ 4, 59, :_reduce_18,
530
+ 1, 60, :_reduce_19,
531
+ 3, 60, :_reduce_20,
532
+ 2, 60, :_reduce_none,
533
+ 3, 56, :_reduce_22,
534
+ 1, 53, :_reduce_none,
535
+ 1, 53, :_reduce_none,
536
+ 1, 53, :_reduce_none,
537
+ 1, 53, :_reduce_none,
538
+ 1, 53, :_reduce_none,
539
+ 1, 53, :_reduce_none,
540
+ 2, 64, :_reduce_29,
541
+ 2, 65, :_reduce_30,
542
+ 3, 65, :_reduce_31,
543
+ 1, 66, :_reduce_32,
544
+ 3, 66, :_reduce_33,
545
+ 2, 67, :_reduce_34,
546
+ 3, 67, :_reduce_35,
547
+ 3, 69, :_reduce_36,
548
+ 1, 68, :_reduce_37,
549
+ 3, 68, :_reduce_38,
550
+ 3, 58, :_reduce_39,
551
+ 3, 58, :_reduce_40,
552
+ 3, 58, :_reduce_41,
553
+ 3, 58, :_reduce_42,
554
+ 3, 58, :_reduce_43,
555
+ 4, 58, :_reduce_44,
556
+ 2, 58, :_reduce_45,
557
+ 2, 58, :_reduce_46,
558
+ 2, 58, :_reduce_none,
559
+ 3, 58, :_reduce_48,
560
+ 3, 58, :_reduce_49,
561
+ 1, 58, :_reduce_none,
562
+ 1, 58, :_reduce_none,
563
+ 1, 58, :_reduce_none,
564
+ 1, 58, :_reduce_53,
565
+ 1, 58, :_reduce_54,
566
+ 3, 58, :_reduce_55,
567
+ 1, 58, :_reduce_none,
568
+ 3, 70, :_reduce_57,
569
+ 3, 70, :_reduce_58,
570
+ 3, 70, :_reduce_59,
571
+ 3, 70, :_reduce_60,
572
+ 3, 70, :_reduce_61,
573
+ 3, 70, :_reduce_62,
574
+ 3, 71, :_reduce_63,
575
+ 5, 71, :_reduce_64,
576
+ 6, 71, :_reduce_65,
577
+ 5, 71, :_reduce_66,
578
+ 1, 72, :_reduce_67,
579
+ 1, 72, :_reduce_68,
580
+ 1, 72, :_reduce_none,
581
+ 1, 72, :_reduce_none,
582
+ 1, 72, :_reduce_71,
583
+ 1, 72, :_reduce_72,
584
+ 7, 62, :_reduce_73,
585
+ 5, 62, :_reduce_74,
586
+ 9, 61, :_reduce_75,
587
+ 5, 63, :_reduce_76,
588
+ 6, 63, :_reduce_77,
589
+ 1, 55, :_reduce_78 ]
590
+
591
+ racc_reduce_n = 79
592
+
593
+ racc_shift_n = 157
511
594
 
512
595
  racc_token_table = {
513
596
  false => 0,
@@ -554,10 +637,11 @@ racc_token_table = {
554
637
  ")" => 41,
555
638
  ";" => 42,
556
639
  "," => 43,
557
- "!" => 44,
558
- "." => 45 }
640
+ ":" => 44,
641
+ "!" => 45,
642
+ "." => 46 }
559
643
 
560
- racc_nt_base = 46
644
+ racc_nt_base = 47
561
645
 
562
646
  racc_use_result_var = true
563
647
 
@@ -622,6 +706,7 @@ Racc_token_to_s_table = [
622
706
  "\")\"",
623
707
  "\";\"",
624
708
  "\",\"",
709
+ "\":\"",
625
710
  "\"!\"",
626
711
  "\".\"",
627
712
  "$start",
@@ -644,6 +729,9 @@ Racc_token_to_s_table = [
644
729
  "return",
645
730
  "array",
646
731
  "array_content",
732
+ "hash",
733
+ "hash_content",
734
+ "hash_element",
647
735
  "comp",
648
736
  "objcall",
649
737
  "const" ]
@@ -815,251 +903,302 @@ module_eval(<<'.,.,', 'ecma.y', 92)
815
903
  end
816
904
  .,.,
817
905
 
818
- module_eval(<<'.,.,', 'ecma.y', 95)
906
+ module_eval(<<'.,.,', 'ecma.y', 94)
819
907
  def _reduce_30(val, _values, result)
908
+ result = RVM::Interpreter.const(:list, [])
909
+ result
910
+ end
911
+ .,.,
912
+
913
+ module_eval(<<'.,.,', 'ecma.y', 96)
914
+ def _reduce_31(val, _values, result)
820
915
  seq = RVM::Interpreter::Sequence.new()
821
- seq << RVM::Interpreter::Assignment.new(RVM::Interpreter.const(:string,'!temp'), RVM::Interpreter.const(:list, Array.new(val[1].size)))
916
+ seq << RVM::Interpreter::Assignment.new(RVM::Interpreter.const(:string,"!array-#{val[1].hash}"), RVM::Interpreter.const(:list, Array.new(val[1].size)))
822
917
  val[1].size.times do |i|
823
- seq << RVM::Interpreter::FunctionCall.new(:set_at, [RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string,'!temp')), RVM::Interpreter.const(:number,val[1].size - i - 1), val[1][i]])
918
+ seq << RVM::Interpreter::FunctionCall.new(:set_at, [RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string,"!array-#{val[1].hash}")), RVM::Interpreter.const(:number,val[1].size - i - 1), val[1][i]])
824
919
  end
825
- seq << RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string,'!temp'))
920
+ seq << RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string,"!array-#{val[1].hash}"))
826
921
  result = RVM::Interpreter::Block.new(seq)
827
922
 
828
923
  result
829
924
  end
830
925
  .,.,
831
926
 
832
- module_eval(<<'.,.,', 'ecma.y', 104)
833
- def _reduce_31(val, _values, result)
927
+ module_eval(<<'.,.,', 'ecma.y', 105)
928
+ def _reduce_32(val, _values, result)
834
929
  result = [result]
835
930
  result
836
931
  end
837
932
  .,.,
838
933
 
839
- module_eval(<<'.,.,', 'ecma.y', 105)
840
- def _reduce_32(val, _values, result)
934
+ module_eval(<<'.,.,', 'ecma.y', 106)
935
+ def _reduce_33(val, _values, result)
841
936
  result.unshift val[2]
842
937
  result
843
938
  end
844
939
  .,.,
845
940
 
846
- module_eval(<<'.,.,', 'ecma.y', 107)
847
- def _reduce_33(val, _values, result)
941
+ module_eval(<<'.,.,', 'ecma.y', 108)
942
+ def _reduce_34(val, _values, result)
943
+ result = RVM::Interpreter.const(:association, nil)
944
+ result
945
+ end
946
+ .,.,
947
+
948
+ module_eval(<<'.,.,', 'ecma.y', 110)
949
+ def _reduce_35(val, _values, result)
950
+ seq = RVM::Interpreter::Sequence.new()
951
+ seq << RVM::Interpreter::Assignment.new(RVM::Interpreter.const(:string, "!hash-#{val[1].hash}"), RVM::Interpreter.const(:association, nil))
952
+ val[1].each do |k,v|
953
+ seq << RVM::Interpreter::FunctionCall.new(:assoc_set, [RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string, "!hash-#{val[1].hash}")), k, v])
954
+ end
955
+ seq << RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string, "!hash-#{val[1].hash}"))
956
+ result = RVM::Interpreter::Block.new(seq)
957
+
958
+ result
959
+ end
960
+ .,.,
961
+
962
+ module_eval(<<'.,.,', 'ecma.y', 119)
963
+ def _reduce_36(val, _values, result)
964
+ result = [val[0], val[2]]
965
+ result
966
+ end
967
+ .,.,
968
+
969
+ module_eval(<<'.,.,', 'ecma.y', 121)
970
+ def _reduce_37(val, _values, result)
971
+ result = [result]
972
+ result
973
+ end
974
+ .,.,
975
+
976
+ module_eval(<<'.,.,', 'ecma.y', 122)
977
+ def _reduce_38(val, _values, result)
978
+ result.unshift val[2]
979
+ result
980
+ end
981
+ .,.,
982
+
983
+ module_eval(<<'.,.,', 'ecma.y', 124)
984
+ def _reduce_39(val, _values, result)
848
985
  result = RVM::Interpreter::FunctionCall.new(:add, [result, val[2]], val[1][1])
849
986
  result
850
987
  end
851
988
  .,.,
852
989
 
853
- module_eval(<<'.,.,', 'ecma.y', 108)
854
- def _reduce_34(val, _values, result)
990
+ module_eval(<<'.,.,', 'ecma.y', 125)
991
+ def _reduce_40(val, _values, result)
855
992
  result = RVM::Interpreter::FunctionCall.new(:sub, [result, val[2]], val[1][1])
856
993
  result
857
994
  end
858
995
  .,.,
859
996
 
860
- module_eval(<<'.,.,', 'ecma.y', 109)
861
- def _reduce_35(val, _values, result)
997
+ module_eval(<<'.,.,', 'ecma.y', 126)
998
+ def _reduce_41(val, _values, result)
862
999
  result = RVM::Interpreter::FunctionCall.new(:mul, [result, val[2]], val[1][1])
863
1000
  result
864
1001
  end
865
1002
  .,.,
866
1003
 
867
- module_eval(<<'.,.,', 'ecma.y', 110)
868
- def _reduce_36(val, _values, result)
1004
+ module_eval(<<'.,.,', 'ecma.y', 127)
1005
+ def _reduce_42(val, _values, result)
869
1006
  result = RVM::Interpreter::FunctionCall.new(:sub, [result, val[2]], val[1][1])
870
1007
  result
871
1008
  end
872
1009
  .,.,
873
1010
 
874
- module_eval(<<'.,.,', 'ecma.y', 111)
875
- def _reduce_37(val, _values, result)
1011
+ module_eval(<<'.,.,', 'ecma.y', 128)
1012
+ def _reduce_43(val, _values, result)
876
1013
  result = RVM::Interpreter::FunctionCall.new(:power, [result, val[2]], val[1][1])
877
1014
  result
878
1015
  end
879
1016
  .,.,
880
1017
 
881
- module_eval(<<'.,.,', 'ecma.y', 112)
882
- def _reduce_38(val, _values, result)
1018
+ module_eval(<<'.,.,', 'ecma.y', 129)
1019
+ def _reduce_44(val, _values, result)
883
1020
  result = RVM::Interpreter::FunctionCall.new(:at, [result, val[2]], val[1][1])
884
1021
  result
885
1022
  end
886
1023
  .,.,
887
1024
 
888
- module_eval(<<'.,.,', 'ecma.y', 113)
889
- def _reduce_39(val, _values, result)
1025
+ module_eval(<<'.,.,', 'ecma.y', 130)
1026
+ def _reduce_45(val, _values, result)
890
1027
  result = RVM::Interpreter::FunctionCall.new(:not, [val[1]], val[0][1])
891
1028
  result
892
1029
  end
893
1030
  .,.,
894
1031
 
895
- module_eval(<<'.,.,', 'ecma.y', 114)
896
- def _reduce_40(val, _values, result)
1032
+ module_eval(<<'.,.,', 'ecma.y', 131)
1033
+ def _reduce_46(val, _values, result)
897
1034
  result = RVM::Interpreter::FunctionCall.new(:neg, [val[1]], val[0][1])
898
1035
  result
899
1036
  end
900
1037
  .,.,
901
1038
 
902
- # reduce 41 omitted
1039
+ # reduce 47 omitted
903
1040
 
904
- module_eval(<<'.,.,', 'ecma.y', 116)
905
- def _reduce_42(val, _values, result)
1041
+ module_eval(<<'.,.,', 'ecma.y', 133)
1042
+ def _reduce_48(val, _values, result)
906
1043
  result = RVM::Interpreter::FunctionCall.new(:and, [result, val[2]])
907
1044
  result
908
1045
  end
909
1046
  .,.,
910
1047
 
911
- module_eval(<<'.,.,', 'ecma.y', 117)
912
- def _reduce_43(val, _values, result)
1048
+ module_eval(<<'.,.,', 'ecma.y', 134)
1049
+ def _reduce_49(val, _values, result)
913
1050
  result = RVM::Interpreter::FunctionCall.new(:or, [result, val[2]])
914
1051
  result
915
1052
  end
916
1053
  .,.,
917
1054
 
918
- # reduce 44 omitted
1055
+ # reduce 50 omitted
919
1056
 
920
- # reduce 45 omitted
1057
+ # reduce 51 omitted
921
1058
 
922
- # reduce 46 omitted
1059
+ # reduce 52 omitted
923
1060
 
924
- module_eval(<<'.,.,', 'ecma.y', 121)
925
- def _reduce_47(val, _values, result)
1061
+ module_eval(<<'.,.,', 'ecma.y', 138)
1062
+ def _reduce_53(val, _values, result)
926
1063
  result = RVM::Interpreter::Variable.new(RVM::Interpreter.const(:string,result[0], result[1][1]))
927
1064
  result
928
1065
  end
929
1066
  .,.,
930
1067
 
931
- module_eval(<<'.,.,', 'ecma.y', 122)
932
- def _reduce_48(val, _values, result)
1068
+ module_eval(<<'.,.,', 'ecma.y', 139)
1069
+ def _reduce_54(val, _values, result)
933
1070
  result = RVM::Interpreter::Variable.new(:self, val[0][1])
934
1071
  result
935
1072
  end
936
1073
  .,.,
937
1074
 
938
- module_eval(<<'.,.,', 'ecma.y', 123)
939
- def _reduce_49(val, _values, result)
1075
+ module_eval(<<'.,.,', 'ecma.y', 140)
1076
+ def _reduce_55(val, _values, result)
940
1077
  result = val[1]
941
1078
  result
942
1079
  end
943
1080
  .,.,
944
1081
 
945
- # reduce 50 omitted
1082
+ # reduce 56 omitted
946
1083
 
947
- module_eval(<<'.,.,', 'ecma.y', 126)
948
- def _reduce_51(val, _values, result)
1084
+ module_eval(<<'.,.,', 'ecma.y', 143)
1085
+ def _reduce_57(val, _values, result)
949
1086
  result = RVM::Interpreter::FunctionCall.new(:lt, [result, val[2]], val[1][1])
950
1087
  result
951
1088
  end
952
1089
  .,.,
953
1090
 
954
- module_eval(<<'.,.,', 'ecma.y', 127)
955
- def _reduce_52(val, _values, result)
1091
+ module_eval(<<'.,.,', 'ecma.y', 144)
1092
+ def _reduce_58(val, _values, result)
956
1093
  result = RVM::Interpreter::FunctionCall.new(:gt, [result, val[2]], val[1][1])
957
1094
  result
958
1095
  end
959
1096
  .,.,
960
1097
 
961
- module_eval(<<'.,.,', 'ecma.y', 128)
962
- def _reduce_53(val, _values, result)
1098
+ module_eval(<<'.,.,', 'ecma.y', 145)
1099
+ def _reduce_59(val, _values, result)
963
1100
  result = RVM::Interpreter::FunctionCall.new(:eq, [result, val[2]], val[1][1])
964
1101
  result
965
1102
  end
966
1103
  .,.,
967
1104
 
968
- module_eval(<<'.,.,', 'ecma.y', 129)
969
- def _reduce_54(val, _values, result)
1105
+ module_eval(<<'.,.,', 'ecma.y', 146)
1106
+ def _reduce_60(val, _values, result)
970
1107
  result = RVM::Interpreter::FunctionCall.new(:neq, [result, val[2]], val[1][1])
971
1108
  result
972
1109
  end
973
1110
  .,.,
974
1111
 
975
- module_eval(<<'.,.,', 'ecma.y', 130)
976
- def _reduce_55(val, _values, result)
1112
+ module_eval(<<'.,.,', 'ecma.y', 147)
1113
+ def _reduce_61(val, _values, result)
977
1114
  result = RVM::Interpreter::FunctionCall.new(:gte, [result, val[2]], val[1][1])
978
1115
  result
979
1116
  end
980
1117
  .,.,
981
1118
 
982
- module_eval(<<'.,.,', 'ecma.y', 131)
983
- def _reduce_56(val, _values, result)
1119
+ module_eval(<<'.,.,', 'ecma.y', 148)
1120
+ def _reduce_62(val, _values, result)
984
1121
  result = RVM::Interpreter::FunctionCall.new(:lte, [result, val[2]], val[1][1])
985
1122
  result
986
1123
  end
987
1124
  .,.,
988
1125
 
989
- module_eval(<<'.,.,', 'ecma.y', 133)
990
- def _reduce_57(val, _values, result)
1126
+ module_eval(<<'.,.,', 'ecma.y', 150)
1127
+ def _reduce_63(val, _values, result)
991
1128
  result = RVM::Interpreter::ObjectContext.new(val[0], RVM::Interpreter::Variable.new(val[2]))
992
1129
  result
993
1130
  end
994
1131
  .,.,
995
1132
 
996
- module_eval(<<'.,.,', 'ecma.y', 134)
997
- def _reduce_58(val, _values, result)
1133
+ module_eval(<<'.,.,', 'ecma.y', 151)
1134
+ def _reduce_64(val, _values, result)
998
1135
  result = RVM::Interpreter::ObjectContext.new(val[0], RVM::Interpreter::Assignment.new(val[2], val[4]))
999
1136
  result
1000
1137
  end
1001
1138
  .,.,
1002
1139
 
1003
- module_eval(<<'.,.,', 'ecma.y', 135)
1004
- def _reduce_59(val, _values, result)
1140
+ module_eval(<<'.,.,', 'ecma.y', 152)
1141
+ def _reduce_65(val, _values, result)
1005
1142
  result = RVM::Interpreter::ObjectContext.new(val[0],RVM::Interpreter::FunctionCall.new(val[2][0], val[4], val[2][1]))
1006
1143
  result
1007
1144
  end
1008
1145
  .,.,
1009
1146
 
1010
- module_eval(<<'.,.,', 'ecma.y', 136)
1011
- def _reduce_60(val, _values, result)
1147
+ module_eval(<<'.,.,', 'ecma.y', 153)
1148
+ def _reduce_66(val, _values, result)
1012
1149
  result = RVM::Interpreter::ObjectContext.new(val[0],RVM::Interpreter::FunctionCall.new(val[2][0], [], val[2][1]))
1013
1150
  result
1014
1151
  end
1015
1152
  .,.,
1016
1153
 
1017
- module_eval(<<'.,.,', 'ecma.y', 138)
1018
- def _reduce_61(val, _values, result)
1154
+ module_eval(<<'.,.,', 'ecma.y', 155)
1155
+ def _reduce_67(val, _values, result)
1019
1156
  result = RVM::Interpreter.const(:number, val[0][0], val[0][1])
1020
1157
  result
1021
1158
  end
1022
1159
  .,.,
1023
1160
 
1024
- module_eval(<<'.,.,', 'ecma.y', 139)
1025
- def _reduce_62(val, _values, result)
1161
+ module_eval(<<'.,.,', 'ecma.y', 156)
1162
+ def _reduce_68(val, _values, result)
1026
1163
  result = RVM::Interpreter.const(:string, val[0][0], val[0][1])
1027
1164
  result
1028
1165
  end
1029
1166
  .,.,
1030
1167
 
1031
- # reduce 63 omitted
1168
+ # reduce 69 omitted
1032
1169
 
1033
- module_eval(<<'.,.,', 'ecma.y', 141)
1034
- def _reduce_64(val, _values, result)
1170
+ # reduce 70 omitted
1171
+
1172
+ module_eval(<<'.,.,', 'ecma.y', 159)
1173
+ def _reduce_71(val, _values, result)
1035
1174
  result = RVM::Interpreter.const(:boolean, true, val[0][1])
1036
1175
  result
1037
1176
  end
1038
1177
  .,.,
1039
1178
 
1040
- module_eval(<<'.,.,', 'ecma.y', 142)
1041
- def _reduce_65(val, _values, result)
1179
+ module_eval(<<'.,.,', 'ecma.y', 160)
1180
+ def _reduce_72(val, _values, result)
1042
1181
  result = RVM::Interpreter.const(:boolean, false, val[0][1])
1043
1182
  result
1044
1183
  end
1045
1184
  .,.,
1046
1185
 
1047
- module_eval(<<'.,.,', 'ecma.y', 144)
1048
- def _reduce_66(val, _values, result)
1186
+ module_eval(<<'.,.,', 'ecma.y', 162)
1187
+ def _reduce_73(val, _values, result)
1049
1188
  result = RVM::Interpreter::Condition.new(val[2], val[4], val[6], val[0][1])
1050
1189
  result
1051
1190
  end
1052
1191
  .,.,
1053
1192
 
1054
- module_eval(<<'.,.,', 'ecma.y', 145)
1055
- def _reduce_67(val, _values, result)
1193
+ module_eval(<<'.,.,', 'ecma.y', 163)
1194
+ def _reduce_74(val, _values, result)
1056
1195
  result = RVM::Interpreter::Condition.new(val[2], val[4], nil, val[0][1])
1057
1196
  result
1058
1197
  end
1059
1198
  .,.,
1060
1199
 
1061
- module_eval(<<'.,.,', 'ecma.y', 148)
1062
- def _reduce_68(val, _values, result)
1200
+ module_eval(<<'.,.,', 'ecma.y', 166)
1201
+ def _reduce_75(val, _values, result)
1063
1202
  init = val[2]
1064
1203
  cond = val[4]
1065
1204
  event = val[6]
@@ -1081,8 +1220,8 @@ module_eval(<<'.,.,', 'ecma.y', 148)
1081
1220
  end
1082
1221
  .,.,
1083
1222
 
1084
- module_eval(<<'.,.,', 'ecma.y', 167)
1085
- def _reduce_69(val, _values, result)
1223
+ module_eval(<<'.,.,', 'ecma.y', 185)
1224
+ def _reduce_76(val, _values, result)
1086
1225
  cond = val[2]
1087
1226
  body = val[4]
1088
1227
  result = RVM::Interpreter::Block.new(
@@ -1093,8 +1232,8 @@ module_eval(<<'.,.,', 'ecma.y', 167)
1093
1232
  end
1094
1233
  .,.,
1095
1234
 
1096
- module_eval(<<'.,.,', 'ecma.y', 174)
1097
- def _reduce_70(val, _values, result)
1235
+ module_eval(<<'.,.,', 'ecma.y', 192)
1236
+ def _reduce_77(val, _values, result)
1098
1237
  cond = val[4]
1099
1238
  block = val[1]
1100
1239
  result = RVM::Interpreter::Block.new(
@@ -1107,8 +1246,8 @@ module_eval(<<'.,.,', 'ecma.y', 174)
1107
1246
  end
1108
1247
  .,.,
1109
1248
 
1110
- module_eval(<<'.,.,', 'ecma.y', 183)
1111
- def _reduce_71(val, _values, result)
1249
+ module_eval(<<'.,.,', 'ecma.y', 201)
1250
+ def _reduce_78(val, _values, result)
1112
1251
  result = RVM::Interpreter.const(:string,result[0], result[1][1])
1113
1252
  result
1114
1253
  end