tomlrb 1.3.0 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # DO NOT MODIFY!!!!
3
- # This file is automatically generated by Racc 1.4.16.pre.1
4
- # from Racc grammer file "".
3
+ # This file is automatically generated by Racc 1.6.0
4
+ # from Racc grammar file "".
5
5
  #
6
6
 
7
7
  require 'racc/parser.rb'
@@ -10,160 +10,185 @@ module Tomlrb
10
10
  ##### State transition tables begin ###
11
11
 
12
12
  racc_action_table = [
13
- 2, 17, 11, 31, 12, 31, 13, 79, 14, 40,
14
- 41, 80, 15, 16, 8, 71, 72, 10, 27, 29,
15
- 32, 29, 59, 60, 61, 62, 58, 55, 52, 53,
16
- 54, 56, 57, 46, 33, 34, 10, 59, 60, 61,
17
- 62, 58, 55, 52, 53, 54, 56, 57, 46, 35,
18
- 36, 10, 59, 60, 61, 62, 58, 55, 52, 53,
19
- 54, 56, 57, 46, 37, 38, 10, 59, 60, 61,
20
- 62, 58, 55, 52, 53, 54, 56, 57, 46, 43,
21
- 68, 10, 59, 60, 61, 62, 58, 55, 52, 53,
22
- 54, 56, 57, 46, nil, nil, 10, 59, 60, 61,
23
- 62, 58, 55, 52, 53, 54, 56, 57, 46, nil,
24
- nil, 10, 59, 60, 61, 62, 58, 55, 52, 53,
25
- 54, 56, 57, 46, nil, nil, 10, 59, 60, 61,
26
- 62, 58, 55, 52, 53, 54, 56, 57, 46, 75,
27
- nil, 10, 59, 60, 61, 62, 58, 55, 52, 53,
28
- 54, 56, 57, 46, 75, 21, 10, 22, nil, 23,
29
- nil, 24, nil, nil, nil, 25, 26, 21, 19, 22,
30
- nil, 23, nil, 24, nil, nil, nil, 25, 26, nil,
31
- 19 ]
13
+ 2, 45, 16, 56, 17, 44, 18, 55, 23, 19,
14
+ 20, 14, 21, 22, 8, 4, 10, 36, 16, 12,
15
+ 17, 48, 18, 46, 47, 19, 20, 42, 21, 22,
16
+ 50, 51, 87, 86, 39, 54, 39, 72, 73, 74,
17
+ 75, 70, 71, 67, 68, 65, 66, 69, 78, nil,
18
+ 59, nil, nil, 12, 72, 73, 74, 75, 70, 71,
19
+ 67, 68, 65, 66, 69, nil, nil, 59, nil, nil,
20
+ 12, 72, 73, 74, 75, 70, 71, 67, 68, 65,
21
+ 66, 69, 91, nil, 59, 89, nil, 12, 72, 73,
22
+ 74, 75, 70, 71, 67, 68, 65, 66, 69, 91,
23
+ nil, 59, 89, nil, 12, 72, 73, 74, 75, 70,
24
+ 71, 67, 68, 65, 66, 69, 91, nil, 59, 89,
25
+ nil, 12, 72, 73, 74, 75, 70, 71, 67, 68,
26
+ 65, 66, 69, 91, nil, 59, 89, 29, 12, 30,
27
+ nil, 31, nil, nil, 32, 33, 27, 34, 35, 29,
28
+ nil, 30, 25, 31, nil, nil, 32, 33, 81, 34,
29
+ 35, 16, nil, 17, 25, 18, nil, nil, 19, 20,
30
+ 77, 21, 22, 16, nil, 17, nil, 18, nil, nil,
31
+ 19, 20, 42, 21, 22, 16, nil, 17, nil, 18,
32
+ nil, nil, 19, 20, 85, 21, 22, 95, nil, nil,
33
+ 93, nil, nil, nil, 94 ]
32
34
 
33
35
  racc_action_check = [
34
- 1, 2, 1, 9, 1, 72, 1, 76, 1, 20,
35
- 20, 76, 1, 1, 1, 42, 42, 1, 8, 9,
36
- 11, 72, 32, 32, 32, 32, 32, 32, 32, 32,
37
- 32, 32, 32, 32, 12, 13, 32, 33, 33, 33,
38
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 14,
39
- 15, 33, 34, 34, 34, 34, 34, 34, 34, 34,
40
- 34, 34, 34, 34, 16, 19, 34, 35, 35, 35,
41
- 35, 35, 35, 35, 35, 35, 35, 35, 35, 30,
42
- 40, 35, 36, 36, 36, 36, 36, 36, 36, 36,
43
- 36, 36, 36, 36, nil, nil, 36, 37, 37, 37,
44
- 37, 37, 37, 37, 37, 37, 37, 37, 37, nil,
45
- nil, 37, 43, 43, 43, 43, 43, 43, 43, 43,
46
- 43, 43, 43, 43, nil, nil, 43, 45, 45, 45,
47
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
48
- nil, 45, 80, 80, 80, 80, 80, 80, 80, 80,
49
- 80, 80, 80, 80, 80, 7, 80, 7, nil, 7,
50
- nil, 7, nil, nil, nil, 7, 7, 41, 7, 41,
51
- nil, 41, nil, 41, nil, nil, nil, 41, 41, nil,
52
- 41 ]
36
+ 1, 13, 1, 41, 1, 13, 1, 41, 2, 1,
37
+ 1, 1, 1, 1, 1, 1, 1, 10, 11, 1,
38
+ 11, 25, 11, 24, 24, 11, 11, 11, 11, 11,
39
+ 26, 26, 57, 57, 38, 40, 11, 44, 44, 44,
40
+ 44, 44, 44, 44, 44, 44, 44, 44, 50, nil,
41
+ 44, nil, nil, 44, 55, 55, 55, 55, 55, 55,
42
+ 55, 55, 55, 55, 55, nil, nil, 55, nil, nil,
43
+ 55, 58, 58, 58, 58, 58, 58, 58, 58, 58,
44
+ 58, 58, 58, nil, 58, 58, nil, 58, 91, 91,
45
+ 91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
46
+ nil, 91, 91, nil, 91, 94, 94, 94, 94, 94,
47
+ 94, 94, 94, 94, 94, 94, 94, nil, 94, 94,
48
+ nil, 94, 95, 95, 95, 95, 95, 95, 95, 95,
49
+ 95, 95, 95, 95, nil, 95, 95, 9, 95, 9,
50
+ nil, 9, nil, nil, 9, 9, 9, 9, 9, 51,
51
+ nil, 51, 9, 51, nil, nil, 51, 51, 51, 51,
52
+ 51, 45, nil, 45, 51, 45, nil, nil, 45, 45,
53
+ 45, 45, 45, 54, nil, 54, nil, 54, nil, nil,
54
+ 54, 54, 54, 54, 54, 56, nil, 56, nil, 56,
55
+ nil, nil, 56, 56, 56, 56, 56, 90, nil, nil,
56
+ 90, nil, nil, nil, 90 ]
53
57
 
54
58
  racc_action_pointer = [
55
- nil, 0, 1, nil, nil, nil, nil, 153, 4, 1,
56
- nil, 0, 14, 15, 29, 30, 44, nil, nil, 50,
57
- -6, nil, nil, nil, nil, nil, nil, nil, nil, nil,
58
- 59, nil, 19, 34, 49, 64, 79, 94, nil, nil,
59
- 65, 165, -3, 109, nil, 124, nil, nil, nil, nil,
59
+ nil, 0, 8, nil, nil, nil, nil, nil, nil, 135,
60
+ 1, 16, nil, -17, nil, nil, nil, nil, nil, nil,
61
+ nil, nil, nil, nil, 9, 4, 13, nil, nil, nil,
62
+ nil, nil, nil, nil, nil, nil, nil, nil, 14, nil,
63
+ 14, -15, nil, nil, 34, 159, nil, nil, nil, nil,
64
+ 31, 147, nil, nil, 171, 51, 183, 18, 68, nil,
60
65
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
61
66
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
62
- nil, nil, 3, nil, nil, nil, -8, nil, nil, nil,
63
- 139, nil ]
67
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
68
+ 183, 85, nil, nil, 102, 119, nil, nil, nil ]
64
69
 
65
70
  racc_action_default = [
66
- -1, -58, -58, -2, -3, -4, -5, -58, -8, -58,
67
- -22, -58, -58, -58, -58, -58, -58, 82, -6, -10,
68
- -58, -15, -16, -17, -18, -19, -20, -7, -21, -23,
69
- -58, -27, -46, -46, -46, -46, -46, -46, -9, -11,
70
- -13, -58, -58, -46, -29, -46, -40, -41, -42, -43,
71
- -44, -45, -47, -48, -49, -50, -51, -52, -53, -54,
72
- -55, -56, -57, -30, -31, -32, -33, -34, -12, -14,
73
- -24, -25, -58, -28, -35, -36, -58, -26, -37, -38,
74
- -46, -39 ]
71
+ -1, -79, -79, -2, -3, -4, -5, -6, -7, -79,
72
+ -11, -79, -31, -79, -45, -46, -47, -48, -49, -50,
73
+ -51, -52, -53, 99, -79, -13, -79, -20, -21, -22,
74
+ -23, -24, -25, -26, -27, -28, -10, -29, -79, -32,
75
+ -33, -79, -39, -40, -67, -79, -8, -9, -12, -14,
76
+ -16, -79, -30, -34, -79, -67, -79, -79, -67, -61,
77
+ -62, -63, -64, -65, -66, -68, -69, -70, -71, -72,
78
+ -73, -74, -75, -76, -77, -78, -43, -44, -15, -17,
79
+ -18, -19, -35, -36, -37, -38, -41, -42, -54, -55,
80
+ -79, -67, -56, -58, -67, -67, -57, -59, -60 ]
75
81
 
76
82
  racc_goto_table = [
77
- 28, 74, 1, 18, 44, 63, 64, 65, 66, 67,
78
- 3, 4, 5, 6, 7, 73, 39, 42, 70, 78,
79
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
80
- nil, nil, nil, nil, nil, nil, 81, 69, nil, nil,
81
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
83
+ 15, 24, 38, 88, 28, 37, 57, 1, 3, 5,
84
+ 6, 7, 9, 49, 53, 13, 92, 83, nil, nil,
82
85
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
83
- nil, nil, nil, 77 ]
86
+ nil, nil, 52, nil, nil, nil, 96, nil, nil, 97,
87
+ 98, nil, nil, 79, 76, 82, 80, nil, nil, nil,
88
+ nil, nil, nil, nil, nil, 84 ]
84
89
 
85
90
  racc_goto_check = [
86
- 11, 18, 1, 7, 15, 15, 15, 15, 15, 15,
87
- 2, 3, 4, 5, 6, 15, 9, 13, 14, 19,
88
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
89
- nil, nil, nil, nil, nil, nil, 18, 7, nil, nil,
90
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
91
+ 18, 7, 13, 22, 10, 12, 17, 1, 2, 3,
92
+ 4, 5, 6, 9, 15, 19, 23, 17, nil, nil,
91
93
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
92
- nil, nil, nil, 11 ]
94
+ nil, nil, 12, nil, nil, nil, 22, nil, nil, 22,
95
+ 22, nil, nil, 7, 18, 13, 10, nil, nil, nil,
96
+ nil, nil, nil, nil, nil, 18 ]
93
97
 
94
98
  racc_goto_pointer = [
95
- nil, 2, 9, 10, 11, 12, 13, -4, nil, -4,
96
- nil, -9, nil, -13, -24, -28, nil, nil, -44, -57,
97
- nil, nil, nil ]
99
+ nil, 7, 7, 8, 9, 10, 11, -8, nil, -13,
100
+ -5, nil, -6, -9, nil, -26, nil, -38, -1, 14,
101
+ nil, nil, -55, -74, nil, nil, nil ]
98
102
 
99
103
  racc_goto_default = [
100
- nil, nil, nil, nil, nil, 49, nil, nil, 20, nil,
101
- 9, nil, 30, nil, nil, 76, 48, 45, nil, nil,
102
- 47, 50, 51 ]
104
+ nil, nil, nil, nil, nil, 62, nil, nil, 26, nil,
105
+ nil, 11, nil, nil, 40, nil, 41, 90, 43, nil,
106
+ 61, 58, nil, nil, 60, 63, 64 ]
103
107
 
104
108
  racc_reduce_table = [
105
109
  0, 0, :racc_error,
106
- 0, 22, :_reduce_none,
107
- 2, 22, :_reduce_none,
108
- 1, 23, :_reduce_none,
109
- 1, 23, :_reduce_none,
110
- 1, 23, :_reduce_none,
110
+ 0, 24, :_reduce_none,
111
111
  2, 24, :_reduce_none,
112
- 2, 27, :_reduce_7,
113
- 1, 27, :_reduce_8,
114
- 2, 28, :_reduce_9,
115
- 1, 28, :_reduce_10,
116
- 2, 28, :_reduce_none,
112
+ 2, 24, :_reduce_none,
113
+ 1, 25, :_reduce_none,
114
+ 1, 25, :_reduce_none,
115
+ 1, 25, :_reduce_none,
116
+ 1, 25, :_reduce_none,
117
+ 3, 26, :_reduce_none,
118
+ 3, 26, :_reduce_none,
119
+ 2, 29, :_reduce_10,
120
+ 1, 29, :_reduce_11,
117
121
  2, 30, :_reduce_12,
118
122
  1, 30, :_reduce_13,
119
123
  2, 30, :_reduce_none,
120
- 1, 29, :_reduce_15,
121
- 1, 29, :_reduce_16,
122
- 1, 29, :_reduce_17,
123
- 1, 29, :_reduce_18,
124
- 1, 29, :_reduce_19,
125
- 1, 29, :_reduce_20,
126
- 2, 26, :_reduce_none,
127
- 1, 31, :_reduce_22,
128
- 1, 32, :_reduce_23,
129
- 3, 32, :_reduce_none,
130
- 1, 35, :_reduce_25,
131
- 2, 35, :_reduce_none,
132
- 1, 33, :_reduce_27,
133
- 2, 34, :_reduce_none,
134
- 3, 25, :_reduce_29,
135
- 3, 25, :_reduce_30,
136
- 3, 25, :_reduce_31,
137
- 3, 25, :_reduce_32,
138
- 3, 25, :_reduce_33,
139
- 3, 25, :_reduce_34,
140
- 2, 37, :_reduce_none,
141
- 1, 39, :_reduce_36,
142
- 2, 39, :_reduce_none,
143
- 1, 40, :_reduce_38,
144
- 2, 40, :_reduce_none,
145
- 1, 38, :_reduce_40,
146
- 1, 36, :_reduce_41,
147
- 1, 36, :_reduce_none,
124
+ 2, 32, :_reduce_15,
125
+ 1, 32, :_reduce_16,
126
+ 2, 32, :_reduce_none,
127
+ 3, 31, :_reduce_18,
128
+ 3, 31, :_reduce_19,
129
+ 1, 31, :_reduce_20,
130
+ 1, 31, :_reduce_21,
131
+ 1, 33, :_reduce_none,
132
+ 1, 33, :_reduce_23,
133
+ 1, 33, :_reduce_none,
134
+ 1, 33, :_reduce_none,
135
+ 1, 33, :_reduce_none,
136
+ 1, 33, :_reduce_none,
137
+ 1, 33, :_reduce_none,
138
+ 2, 28, :_reduce_none,
139
+ 3, 28, :_reduce_none,
140
+ 1, 34, :_reduce_31,
141
+ 1, 35, :_reduce_32,
148
142
  1, 36, :_reduce_none,
143
+ 2, 36, :_reduce_none,
144
+ 2, 38, :_reduce_none,
145
+ 3, 37, :_reduce_36,
146
+ 3, 39, :_reduce_37,
147
+ 3, 39, :_reduce_38,
148
+ 1, 39, :_reduce_39,
149
+ 1, 39, :_reduce_40,
150
+ 4, 27, :_reduce_41,
151
+ 4, 27, :_reduce_42,
152
+ 3, 42, :_reduce_43,
153
+ 3, 42, :_reduce_44,
154
+ 1, 42, :_reduce_45,
155
+ 1, 42, :_reduce_46,
149
156
  1, 41, :_reduce_none,
157
+ 1, 41, :_reduce_48,
150
158
  1, 41, :_reduce_none,
151
- 0, 43, :_reduce_none,
152
- 1, 43, :_reduce_47,
153
- 1, 43, :_reduce_48,
154
- 1, 43, :_reduce_49,
155
- 1, 43, :_reduce_50,
156
- 1, 43, :_reduce_51,
157
- 1, 43, :_reduce_52,
158
- 1, 43, :_reduce_53,
159
- 1, 42, :_reduce_54,
160
- 1, 42, :_reduce_55,
161
- 1, 42, :_reduce_56,
162
- 1, 42, :_reduce_57 ]
163
-
164
- racc_reduce_n = 58
165
-
166
- racc_shift_n = 82
159
+ 1, 41, :_reduce_none,
160
+ 1, 41, :_reduce_none,
161
+ 1, 41, :_reduce_none,
162
+ 1, 41, :_reduce_none,
163
+ 2, 43, :_reduce_none,
164
+ 1, 45, :_reduce_55,
165
+ 2, 45, :_reduce_none,
166
+ 2, 45, :_reduce_none,
167
+ 1, 46, :_reduce_58,
168
+ 2, 46, :_reduce_none,
169
+ 2, 46, :_reduce_none,
170
+ 1, 44, :_reduce_61,
171
+ 1, 40, :_reduce_62,
172
+ 1, 40, :_reduce_none,
173
+ 1, 40, :_reduce_none,
174
+ 1, 47, :_reduce_none,
175
+ 1, 47, :_reduce_none,
176
+ 0, 49, :_reduce_none,
177
+ 1, 49, :_reduce_68,
178
+ 1, 49, :_reduce_69,
179
+ 1, 49, :_reduce_70,
180
+ 1, 49, :_reduce_71,
181
+ 1, 49, :_reduce_72,
182
+ 1, 49, :_reduce_73,
183
+ 1, 49, :_reduce_74,
184
+ 1, 48, :_reduce_75,
185
+ 1, 48, :_reduce_76,
186
+ 1, 48, :_reduce_77,
187
+ 1, 48, :_reduce_78 ]
188
+
189
+ racc_reduce_n = 79
190
+
191
+ racc_shift_n = 99
167
192
 
168
193
  racc_token_table = {
169
194
  false => 0,
@@ -174,21 +199,23 @@ racc_token_table = {
174
199
  :STRING_LITERAL_MULTI => 5,
175
200
  :STRING_LITERAL => 6,
176
201
  :DATETIME => 7,
177
- :INTEGER => 8,
178
- :FLOAT => 9,
179
- :FLOAT_INF => 10,
180
- :FLOAT_NAN => 11,
181
- :TRUE => 12,
182
- :FALSE => 13,
183
- "[" => 14,
184
- "]" => 15,
185
- "." => 16,
186
- "{" => 17,
187
- "}" => 18,
188
- "," => 19,
189
- "=" => 20 }
190
-
191
- racc_nt_base = 21
202
+ :LOCAL_TIME => 8,
203
+ :INTEGER => 9,
204
+ :NON_DEC_INTEGER => 10,
205
+ :FLOAT => 11,
206
+ :FLOAT_KEYWORD => 12,
207
+ :BOOLEAN => 13,
208
+ :NEWLINE => 14,
209
+ :EOS => 15,
210
+ "[" => 16,
211
+ "]" => 17,
212
+ "." => 18,
213
+ "{" => 19,
214
+ "}" => 20,
215
+ "," => 21,
216
+ "=" => 22 }
217
+
218
+ racc_nt_base = 23
192
219
 
193
220
  racc_use_result_var = true
194
221
 
@@ -217,12 +244,14 @@ Racc_token_to_s_table = [
217
244
  "STRING_LITERAL_MULTI",
218
245
  "STRING_LITERAL",
219
246
  "DATETIME",
247
+ "LOCAL_TIME",
220
248
  "INTEGER",
249
+ "NON_DEC_INTEGER",
221
250
  "FLOAT",
222
- "FLOAT_INF",
223
- "FLOAT_NAN",
224
- "TRUE",
225
- "FALSE",
251
+ "FLOAT_KEYWORD",
252
+ "BOOLEAN",
253
+ "NEWLINE",
254
+ "EOS",
226
255
  "\"[\"",
227
256
  "\"]\"",
228
257
  "\".\"",
@@ -240,12 +269,16 @@ Racc_token_to_s_table = [
240
269
  "table_continued",
241
270
  "table_identifier",
242
271
  "table_next",
272
+ "table_identifier_component",
243
273
  "inline_table_start",
274
+ "inline_table_end",
244
275
  "inline_continued",
245
- "inline_assignment_key",
246
- "inline_assignment_value",
276
+ "inline_assignment",
247
277
  "inline_next",
278
+ "inline_assignment_key",
248
279
  "value",
280
+ "assignment_key_component",
281
+ "assignment_key",
249
282
  "array",
250
283
  "start_array",
251
284
  "array_continued",
@@ -272,291 +305,398 @@ Racc_debug_parser = false
272
305
 
273
306
  # reduce 6 omitted
274
307
 
275
- module_eval(<<'.,.,', 'parser.y', 15)
276
- def _reduce_7(val, _values, result)
308
+ # reduce 7 omitted
309
+
310
+ # reduce 8 omitted
311
+
312
+ # reduce 9 omitted
313
+
314
+ module_eval(<<'.,.,', 'parser.y', 18)
315
+ def _reduce_10(val, _values, result)
277
316
  @handler.start_(:array_of_tables)
278
317
  result
279
318
  end
280
319
  .,.,
281
320
 
282
- module_eval(<<'.,.,', 'parser.y', 16)
283
- def _reduce_8(val, _values, result)
321
+ module_eval(<<'.,.,', 'parser.y', 19)
322
+ def _reduce_11(val, _values, result)
284
323
  @handler.start_(:table)
285
324
  result
286
325
  end
287
326
  .,.,
288
327
 
289
- module_eval(<<'.,.,', 'parser.y', 19)
290
- def _reduce_9(val, _values, result)
328
+ module_eval(<<'.,.,', 'parser.y', 22)
329
+ def _reduce_12(val, _values, result)
291
330
  array = @handler.end_(:array_of_tables); @handler.set_context(array, is_array_of_tables: true)
292
331
  result
293
332
  end
294
333
  .,.,
295
334
 
296
- module_eval(<<'.,.,', 'parser.y', 20)
297
- def _reduce_10(val, _values, result)
335
+ module_eval(<<'.,.,', 'parser.y', 23)
336
+ def _reduce_13(val, _values, result)
298
337
  array = @handler.end_(:table); @handler.set_context(array)
299
338
  result
300
339
  end
301
340
  .,.,
302
341
 
303
- # reduce 11 omitted
342
+ # reduce 14 omitted
304
343
 
305
- module_eval(<<'.,.,', 'parser.y', 24)
306
- def _reduce_12(val, _values, result)
344
+ module_eval(<<'.,.,', 'parser.y', 27)
345
+ def _reduce_15(val, _values, result)
307
346
  array = @handler.end_(:array_of_tables); @handler.set_context(array, is_array_of_tables: true)
308
347
  result
309
348
  end
310
349
  .,.,
311
350
 
312
- module_eval(<<'.,.,', 'parser.y', 25)
313
- def _reduce_13(val, _values, result)
351
+ module_eval(<<'.,.,', 'parser.y', 28)
352
+ def _reduce_16(val, _values, result)
314
353
  array = @handler.end_(:table); @handler.set_context(array)
315
354
  result
316
355
  end
317
356
  .,.,
318
357
 
319
- # reduce 14 omitted
358
+ # reduce 17 omitted
320
359
 
321
- module_eval(<<'.,.,', 'parser.y', 29)
322
- def _reduce_15(val, _values, result)
323
- @handler.push(val[0])
360
+ module_eval(<<'.,.,', 'parser.y', 32)
361
+ def _reduce_18(val, _values, result)
362
+ @handler.push(val[2])
324
363
  result
325
364
  end
326
365
  .,.,
327
366
 
328
- module_eval(<<'.,.,', 'parser.y', 30)
329
- def _reduce_16(val, _values, result)
330
- @handler.push(val[0])
367
+ module_eval(<<'.,.,', 'parser.y', 33)
368
+ def _reduce_19(val, _values, result)
369
+ val[2].split('.').each { |k| @handler.push(k) }
331
370
  result
332
371
  end
333
372
  .,.,
334
373
 
335
- module_eval(<<'.,.,', 'parser.y', 31)
336
- def _reduce_17(val, _values, result)
337
- @handler.push(val[0])
374
+ module_eval(<<'.,.,', 'parser.y', 35)
375
+ def _reduce_20(val, _values, result)
376
+ keys = val[0].split('.')
377
+ @handler.start_(:table)
378
+ keys.each { |key| @handler.push(key) }
379
+
338
380
  result
339
381
  end
340
382
  .,.,
341
383
 
342
- module_eval(<<'.,.,', 'parser.y', 32)
343
- def _reduce_18(val, _values, result)
384
+ module_eval(<<'.,.,', 'parser.y', 39)
385
+ def _reduce_21(val, _values, result)
344
386
  @handler.push(val[0])
345
387
  result
346
388
  end
347
389
  .,.,
348
390
 
349
- module_eval(<<'.,.,', 'parser.y', 33)
350
- def _reduce_19(val, _values, result)
351
- @handler.push(val[0])
391
+ # reduce 22 omitted
392
+
393
+ module_eval(<<'.,.,', 'parser.y', 43)
394
+ def _reduce_23(val, _values, result)
395
+ result = StringUtils.replace_escaped_chars(val[0])
352
396
  result
353
397
  end
354
398
  .,.,
355
399
 
356
- module_eval(<<'.,.,', 'parser.y', 34)
357
- def _reduce_20(val, _values, result)
358
- @handler.push(val[0])
400
+ # reduce 24 omitted
401
+
402
+ # reduce 25 omitted
403
+
404
+ # reduce 26 omitted
405
+
406
+ # reduce 27 omitted
407
+
408
+ # reduce 28 omitted
409
+
410
+ # reduce 29 omitted
411
+
412
+ # reduce 30 omitted
413
+
414
+ module_eval(<<'.,.,', 'parser.y', 55)
415
+ def _reduce_31(val, _values, result)
416
+ @handler.start_(:inline)
359
417
  result
360
418
  end
361
419
  .,.,
362
420
 
363
- # reduce 21 omitted
421
+ module_eval(<<'.,.,', 'parser.y', 59)
422
+ def _reduce_32(val, _values, result)
423
+ array = @handler.end_(:inline)
424
+ @handler.push_inline(array)
364
425
 
365
- module_eval(<<'.,.,', 'parser.y', 40)
366
- def _reduce_22(val, _values, result)
367
- @handler.start_(:inline)
368
426
  result
369
427
  end
370
428
  .,.,
371
429
 
372
- module_eval(<<'.,.,', 'parser.y', 43)
373
- def _reduce_23(val, _values, result)
374
- array = @handler.end_(:inline); @handler.push(Hash[*array])
430
+ # reduce 33 omitted
431
+
432
+ # reduce 34 omitted
433
+
434
+ # reduce 35 omitted
435
+
436
+ module_eval(<<'.,.,', 'parser.y', 72)
437
+ def _reduce_36(val, _values, result)
438
+ keys = @handler.end_(:inline_keys)
439
+ @handler.push(keys)
440
+
375
441
  result
376
442
  end
377
443
  .,.,
378
444
 
379
- # reduce 24 omitted
445
+ module_eval(<<'.,.,', 'parser.y', 78)
446
+ def _reduce_37(val, _values, result)
447
+ @handler.push(val[2])
380
448
 
381
- module_eval(<<'.,.,', 'parser.y', 48)
382
- def _reduce_25(val, _values, result)
383
- array = @handler.end_(:inline)
384
- array.map!.with_index{ |n,i| i.even? ? n.to_sym : n } if @handler.symbolize_keys
385
- @handler.push(Hash[*array])
449
+ result
450
+ end
451
+ .,.,
386
452
 
453
+ module_eval(<<'.,.,', 'parser.y', 80)
454
+ def _reduce_38(val, _values, result)
455
+ val[2].split('.').each { |k| @handler.push(k) }
387
456
  result
388
457
  end
389
458
  .,.,
390
459
 
391
- # reduce 26 omitted
460
+ module_eval(<<'.,.,', 'parser.y', 82)
461
+ def _reduce_39(val, _values, result)
462
+ keys = val[0].split('.')
463
+ @handler.start_(:inline_keys)
464
+ keys.each { |key| @handler.push(key) }
392
465
 
393
- module_eval(<<'.,.,', 'parser.y', 55)
394
- def _reduce_27(val, _values, result)
395
- @handler.push(val[0])
396
466
  result
397
467
  end
398
468
  .,.,
399
469
 
400
- # reduce 28 omitted
470
+ module_eval(<<'.,.,', 'parser.y', 87)
471
+ def _reduce_40(val, _values, result)
472
+ @handler.start_(:inline_keys)
473
+ @handler.push(val[0])
401
474
 
402
- module_eval(<<'.,.,', 'parser.y', 61)
403
- def _reduce_29(val, _values, result)
404
- @handler.assign(val[0])
405
475
  result
406
476
  end
407
477
  .,.,
408
478
 
409
- module_eval(<<'.,.,', 'parser.y', 62)
410
- def _reduce_30(val, _values, result)
411
- @handler.assign(val[0])
479
+ module_eval(<<'.,.,', 'parser.y', 93)
480
+ def _reduce_41(val, _values, result)
481
+ keys = @handler.end_(:keys)
482
+ value = keys.pop
483
+ @handler.validate_value(value)
484
+ @handler.push(value)
485
+ @handler.assign(keys)
486
+
412
487
  result
413
488
  end
414
489
  .,.,
415
490
 
416
- module_eval(<<'.,.,', 'parser.y', 63)
417
- def _reduce_31(val, _values, result)
418
- @handler.assign(val[0])
491
+ module_eval(<<'.,.,', 'parser.y', 100)
492
+ def _reduce_42(val, _values, result)
493
+ keys = @handler.end_(:keys)
494
+ value = keys.pop
495
+ @handler.validate_value(value)
496
+ @handler.push(value)
497
+ @handler.assign(keys)
498
+
419
499
  result
420
500
  end
421
501
  .,.,
422
502
 
423
- module_eval(<<'.,.,', 'parser.y', 64)
424
- def _reduce_32(val, _values, result)
425
- @handler.assign(val[0])
503
+ module_eval(<<'.,.,', 'parser.y', 108)
504
+ def _reduce_43(val, _values, result)
505
+ @handler.push(val[2])
426
506
  result
427
507
  end
428
508
  .,.,
429
509
 
430
- module_eval(<<'.,.,', 'parser.y', 65)
431
- def _reduce_33(val, _values, result)
432
- @handler.assign(val[0])
510
+ module_eval(<<'.,.,', 'parser.y', 109)
511
+ def _reduce_44(val, _values, result)
512
+ val[2].split('.').each { |k| @handler.push(k) }
433
513
  result
434
514
  end
435
515
  .,.,
436
516
 
437
- module_eval(<<'.,.,', 'parser.y', 66)
438
- def _reduce_34(val, _values, result)
439
- @handler.assign(val[0])
517
+ module_eval(<<'.,.,', 'parser.y', 111)
518
+ def _reduce_45(val, _values, result)
519
+ keys = val[0].split('.')
520
+ @handler.start_(:keys)
521
+ keys.each { |key| @handler.push(key) }
522
+
440
523
  result
441
524
  end
442
525
  .,.,
443
526
 
444
- # reduce 35 omitted
527
+ module_eval(<<'.,.,', 'parser.y', 115)
528
+ def _reduce_46(val, _values, result)
529
+ @handler.start_(:keys); @handler.push(val[0])
530
+ result
531
+ end
532
+ .,.,
445
533
 
446
- module_eval(<<'.,.,', 'parser.y', 72)
447
- def _reduce_36(val, _values, result)
448
- array = @handler.end_(:array); @handler.push(array)
534
+ # reduce 47 omitted
535
+
536
+ module_eval(<<'.,.,', 'parser.y', 119)
537
+ def _reduce_48(val, _values, result)
538
+ result = StringUtils.replace_escaped_chars(val[0])
449
539
  result
450
540
  end
451
541
  .,.,
452
542
 
453
- # reduce 37 omitted
543
+ # reduce 49 omitted
454
544
 
455
- module_eval(<<'.,.,', 'parser.y', 76)
456
- def _reduce_38(val, _values, result)
457
- array = @handler.end_(:array); @handler.push(array)
545
+ # reduce 50 omitted
546
+
547
+ # reduce 51 omitted
548
+
549
+ # reduce 52 omitted
550
+
551
+ # reduce 53 omitted
552
+
553
+ # reduce 54 omitted
554
+
555
+ module_eval(<<'.,.,', 'parser.y', 130)
556
+ def _reduce_55(val, _values, result)
557
+ array = @handler.end_(:array); @handler.push(array.compact)
458
558
  result
459
559
  end
460
560
  .,.,
461
561
 
462
- # reduce 39 omitted
562
+ # reduce 56 omitted
463
563
 
464
- module_eval(<<'.,.,', 'parser.y', 80)
465
- def _reduce_40(val, _values, result)
564
+ # reduce 57 omitted
565
+
566
+ module_eval(<<'.,.,', 'parser.y', 135)
567
+ def _reduce_58(val, _values, result)
568
+ array = @handler.end_(:array); @handler.push(array.compact)
569
+ result
570
+ end
571
+ .,.,
572
+
573
+ # reduce 59 omitted
574
+
575
+ # reduce 60 omitted
576
+
577
+ module_eval(<<'.,.,', 'parser.y', 140)
578
+ def _reduce_61(val, _values, result)
466
579
  @handler.start_(:array)
467
580
  result
468
581
  end
469
582
  .,.,
470
583
 
471
- module_eval(<<'.,.,', 'parser.y', 83)
472
- def _reduce_41(val, _values, result)
584
+ module_eval(<<'.,.,', 'parser.y', 143)
585
+ def _reduce_62(val, _values, result)
473
586
  @handler.push(val[0])
474
587
  result
475
588
  end
476
589
  .,.,
477
590
 
478
- # reduce 42 omitted
591
+ # reduce 63 omitted
479
592
 
480
- # reduce 43 omitted
593
+ # reduce 64 omitted
481
594
 
482
- # reduce 44 omitted
595
+ # reduce 65 omitted
483
596
 
484
- # reduce 45 omitted
597
+ # reduce 66 omitted
485
598
 
486
- # reduce 46 omitted
599
+ # reduce 67 omitted
487
600
 
488
- module_eval(<<'.,.,', 'parser.y', 92)
489
- def _reduce_47(val, _values, result)
601
+ module_eval(<<'.,.,', 'parser.y', 152)
602
+ def _reduce_68(val, _values, result)
490
603
  result = val[0].to_f
491
604
  result
492
605
  end
493
606
  .,.,
494
607
 
495
- module_eval(<<'.,.,', 'parser.y', 93)
496
- def _reduce_48(val, _values, result)
497
- result = (val[0][0] == '-' ? -1 : 1) * Float::INFINITY
608
+ module_eval(<<'.,.,', 'parser.y', 154)
609
+ def _reduce_69(val, _values, result)
610
+ v = val[0]
611
+ result = if v.end_with?('nan')
612
+ Float::NAN
613
+ else
614
+ (v[0] == '-' ? -1 : 1) * Float::INFINITY
615
+ end
616
+
498
617
  result
499
618
  end
500
619
  .,.,
501
620
 
502
- module_eval(<<'.,.,', 'parser.y', 94)
503
- def _reduce_49(val, _values, result)
504
- result = Float::NAN
621
+ module_eval(<<'.,.,', 'parser.y', 161)
622
+ def _reduce_70(val, _values, result)
623
+ result = val[0].to_i
505
624
  result
506
625
  end
507
626
  .,.,
508
627
 
509
- module_eval(<<'.,.,', 'parser.y', 95)
510
- def _reduce_50(val, _values, result)
511
- result = val[0].to_i
628
+ module_eval(<<'.,.,', 'parser.y', 163)
629
+ def _reduce_71(val, _values, result)
630
+ base = case val[0][1]
631
+ when "x" then 16
632
+ when "o" then 8
633
+ when "b" then 2
634
+ end
635
+ result = val[0].to_i(base)
636
+
512
637
  result
513
638
  end
514
639
  .,.,
515
640
 
516
- module_eval(<<'.,.,', 'parser.y', 96)
517
- def _reduce_51(val, _values, result)
518
- result = true
641
+ module_eval(<<'.,.,', 'parser.y', 170)
642
+ def _reduce_72(val, _values, result)
643
+ result = val[0] == 'true' ? true : false
519
644
  result
520
645
  end
521
646
  .,.,
522
647
 
523
- module_eval(<<'.,.,', 'parser.y', 97)
524
- def _reduce_52(val, _values, result)
525
- result = false
648
+ module_eval(<<'.,.,', 'parser.y', 172)
649
+ def _reduce_73(val, _values, result)
650
+ v = val[0]
651
+ result = if v[6].nil?
652
+ if v[4].nil?
653
+ LocalDate.new(v[0], v[1], v[2])
654
+ else
655
+ LocalDateTime.new(v[0], v[1], v[2], v[3] || 0, v[4] || 0, v[5].to_f)
656
+ end
657
+ else
658
+ # Patch for 24:00:00 which Ruby parses
659
+ if v[3].to_i == 24 && v[4].to_i == 0 && v[5].to_i == 0
660
+ v[3] = (v[3].to_i + 1).to_s
661
+ end
662
+
663
+ Time.new(v[0], v[1], v[2], v[3] || 0, v[4] || 0, v[5].to_f, v[6])
664
+ end
665
+
526
666
  result
527
667
  end
528
668
  .,.,
529
669
 
530
- module_eval(<<'.,.,', 'parser.y', 98)
531
- def _reduce_53(val, _values, result)
532
- result = Time.new(*val[0])
670
+ module_eval(<<'.,.,', 'parser.y', 188)
671
+ def _reduce_74(val, _values, result)
672
+ result = LocalTime.new(*val[0])
533
673
  result
534
674
  end
535
675
  .,.,
536
676
 
537
- module_eval(<<'.,.,', 'parser.y', 101)
538
- def _reduce_54(val, _values, result)
677
+ module_eval(<<'.,.,', 'parser.y', 191)
678
+ def _reduce_75(val, _values, result)
539
679
  result = StringUtils.replace_escaped_chars(StringUtils.multiline_replacements(val[0]))
540
680
  result
541
681
  end
542
682
  .,.,
543
683
 
544
- module_eval(<<'.,.,', 'parser.y', 102)
545
- def _reduce_55(val, _values, result)
684
+ module_eval(<<'.,.,', 'parser.y', 192)
685
+ def _reduce_76(val, _values, result)
546
686
  result = StringUtils.replace_escaped_chars(val[0])
547
687
  result
548
688
  end
549
689
  .,.,
550
690
 
551
- module_eval(<<'.,.,', 'parser.y', 103)
552
- def _reduce_56(val, _values, result)
691
+ module_eval(<<'.,.,', 'parser.y', 193)
692
+ def _reduce_77(val, _values, result)
553
693
  result = StringUtils.strip_spaces(val[0])
554
694
  result
555
695
  end
556
696
  .,.,
557
697
 
558
- module_eval(<<'.,.,', 'parser.y', 104)
559
- def _reduce_57(val, _values, result)
698
+ module_eval(<<'.,.,', 'parser.y', 194)
699
+ def _reduce_78(val, _values, result)
560
700
  result = val[0]
561
701
  result
562
702
  end