mail 2.7.1.rc1 → 2.7.1

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.
@@ -1,10 +1,7 @@
1
1
 
2
2
  # frozen_string_literal: true
3
- require 'mail/utilities'
4
- require 'mail/parser_tools'
5
-
6
-
7
-
3
+ require "mail/utilities"
4
+ require "mail/parser_tools"
8
5
 
9
6
  module Mail::Parsers
10
7
  module ContentDispositionParser
@@ -12,562 +9,559 @@ module Mail::Parsers
12
9
 
13
10
  ContentDispositionStruct = Struct.new(:disposition_type, :parameters, :error)
14
11
 
15
-
16
- class << self
17
- attr_accessor :_trans_keys
18
- private :_trans_keys, :_trans_keys=
19
- end
20
- self._trans_keys = [
21
- 0, 0, 33, 126, 9, 126,
22
- 10, 10, 9, 32, 33,
23
- 126, 9, 126, 9, 40,
24
- 10, 10, 9, 32, 1, 244,
25
- 1, 244, 10, 10, 9,
26
- 32, 10, 10, 9, 32,
27
- 0, 244, 128, 191, 160, 191,
28
- 128, 191, 128, 159, 144,
29
- 191, 128, 191, 128, 143,
30
- 9, 40, 10, 10, 9, 32,
31
- 9, 126, 1, 244, 1,
32
- 244, 10, 10, 9, 32,
33
- 0, 244, 128, 191, 160, 191,
34
- 128, 191, 128, 159, 144,
35
- 191, 128, 191, 128, 143,
36
- 33, 126, 9, 59, 9, 59,
37
- 9, 126, 9, 59, 9,
38
- 59, 0, 0, 0
39
- ]
40
-
41
- class << self
42
- attr_accessor :_key_spans
43
- private :_key_spans, :_key_spans=
44
- end
45
- self._key_spans = [
46
- 0, 94, 118, 1, 24, 94, 118, 32,
47
- 1, 24, 244, 244, 1, 24, 1, 24,
48
- 245, 64, 32, 64, 32, 48, 64, 16,
49
- 32, 1, 24, 118, 244, 244, 1, 24,
50
- 245, 64, 32, 64, 32, 48, 64, 16,
51
- 94, 51, 51, 118, 51, 51, 0
52
- ]
53
-
54
- class << self
55
- attr_accessor :_index_offsets
56
- private :_index_offsets, :_index_offsets=
57
- end
58
- self._index_offsets = [
59
- 0, 0, 95, 214, 216, 241, 336, 455,
60
- 488, 490, 515, 760, 1005, 1007, 1032, 1034,
61
- 1059, 1305, 1370, 1403, 1468, 1501, 1550, 1615,
62
- 1632, 1665, 1667, 1692, 1811, 2056, 2301, 2303,
63
- 2328, 2574, 2639, 2672, 2737, 2770, 2819, 2884,
64
- 2901, 2996, 3048, 3100, 3219, 3271, 3323
65
- ]
66
-
67
- class << self
68
- attr_accessor :_indicies
69
- private :_indicies, :_indicies=
70
- end
71
- self._indicies = [
72
- 0, 0, 0, 0, 0, 0, 0, 1,
73
- 1, 0, 0, 0, 0, 0, 1, 0,
74
- 0, 0, 0, 0, 0, 0, 0, 0,
75
- 0, 1, 1, 1, 1, 1, 1, 1,
76
- 0, 0, 0, 0, 0, 0, 0, 0,
77
- 0, 0, 0, 0, 0, 0, 0, 0,
78
- 0, 0, 0, 0, 0, 0, 0, 0,
79
- 0, 0, 1, 1, 1, 0, 0, 0,
80
- 0, 0, 0, 0, 0, 0, 0, 0,
81
- 0, 0, 0, 0, 0, 0, 0, 0,
82
- 0, 0, 0, 0, 0, 0, 0, 0,
83
- 0, 0, 0, 0, 0, 0, 1, 2,
84
- 1, 1, 1, 3, 1, 1, 1, 1,
85
- 1, 1, 1, 1, 1, 1, 1, 1,
86
- 1, 1, 1, 1, 1, 1, 2, 4,
87
- 4, 4, 4, 4, 4, 4, 5, 1,
88
- 4, 4, 4, 4, 4, 1, 4, 4,
89
- 4, 4, 4, 4, 4, 4, 4, 4,
90
- 1, 1, 1, 1, 1, 1, 1, 4,
91
- 4, 4, 4, 4, 4, 4, 4, 4,
92
- 4, 4, 4, 4, 4, 4, 4, 4,
93
- 4, 4, 4, 4, 4, 4, 4, 4,
94
- 4, 1, 1, 1, 4, 4, 4, 4,
95
- 4, 4, 4, 4, 4, 4, 4, 4,
96
- 4, 4, 4, 4, 4, 4, 4, 4,
97
- 4, 4, 4, 4, 4, 4, 4, 4,
98
- 4, 4, 4, 4, 4, 1, 6, 1,
99
- 2, 1, 1, 1, 1, 1, 1, 1,
100
- 1, 1, 1, 1, 1, 1, 1, 1,
101
- 1, 1, 1, 1, 1, 1, 1, 2,
102
- 1, 7, 7, 7, 7, 7, 7, 7,
103
- 1, 1, 7, 7, 7, 7, 7, 1,
104
- 7, 7, 7, 7, 7, 7, 7, 7,
105
- 7, 7, 1, 1, 1, 8, 1, 1,
106
- 1, 7, 7, 7, 7, 7, 7, 7,
107
- 7, 7, 7, 7, 7, 7, 7, 7,
108
- 7, 7, 7, 7, 7, 7, 7, 7,
109
- 7, 7, 7, 1, 1, 1, 7, 7,
110
- 7, 7, 7, 7, 7, 7, 7, 7,
111
- 7, 7, 7, 7, 7, 7, 7, 7,
112
- 7, 7, 7, 7, 7, 7, 7, 7,
113
- 7, 7, 7, 7, 7, 7, 7, 1,
114
- 9, 1, 1, 1, 10, 1, 1, 1,
115
- 1, 1, 1, 1, 1, 1, 1, 1,
116
- 1, 1, 1, 1, 1, 1, 1, 9,
117
- 11, 12, 11, 11, 11, 11, 11, 13,
118
- 1, 11, 11, 11, 11, 11, 1, 11,
119
- 11, 11, 11, 11, 11, 11, 11, 11,
120
- 11, 1, 1, 1, 11, 1, 1, 1,
121
- 11, 11, 11, 11, 11, 11, 11, 11,
122
- 11, 11, 11, 11, 11, 11, 11, 11,
123
- 11, 11, 11, 11, 11, 11, 11, 11,
124
- 11, 11, 1, 1, 1, 11, 11, 11,
125
- 11, 11, 11, 11, 11, 11, 11, 11,
126
- 11, 11, 11, 11, 11, 11, 11, 11,
127
- 11, 11, 11, 11, 11, 11, 11, 11,
128
- 11, 11, 11, 11, 11, 11, 1, 14,
129
- 1, 1, 1, 15, 1, 1, 1, 1,
130
- 1, 1, 1, 1, 1, 1, 1, 1,
131
- 1, 1, 1, 1, 1, 1, 14, 1,
132
- 16, 1, 1, 1, 1, 1, 17, 1,
133
- 18, 1, 14, 1, 1, 1, 1, 1,
134
- 1, 1, 1, 1, 1, 1, 1, 1,
135
- 1, 1, 1, 1, 1, 1, 1, 1,
136
- 1, 14, 1, 19, 19, 19, 19, 19,
137
- 19, 19, 19, 19, 1, 19, 19, 20,
138
- 19, 19, 19, 19, 19, 19, 19, 19,
139
- 19, 19, 19, 19, 19, 19, 19, 19,
140
- 19, 19, 19, 19, 21, 19, 19, 19,
141
- 19, 19, 19, 19, 19, 19, 19, 19,
142
- 19, 19, 19, 19, 19, 19, 19, 19,
143
- 19, 19, 19, 19, 19, 19, 19, 19,
144
- 19, 19, 19, 19, 19, 19, 19, 19,
145
- 19, 19, 19, 19, 19, 19, 19, 19,
146
- 19, 19, 19, 19, 19, 19, 19, 19,
147
- 19, 19, 19, 19, 19, 19, 22, 19,
148
- 19, 19, 19, 19, 19, 19, 19, 19,
149
- 19, 19, 19, 19, 19, 19, 19, 19,
150
- 19, 19, 19, 19, 19, 19, 19, 19,
151
- 19, 19, 19, 19, 19, 19, 19, 19,
152
- 19, 19, 1, 1, 1, 1, 1, 1,
153
- 1, 1, 1, 1, 1, 1, 1, 1,
154
- 1, 1, 1, 1, 1, 1, 1, 1,
155
- 1, 1, 1, 1, 1, 1, 1, 1,
156
- 1, 1, 1, 1, 1, 1, 1, 1,
157
- 1, 1, 1, 1, 1, 1, 1, 1,
158
- 1, 1, 1, 1, 1, 1, 1, 1,
159
- 1, 1, 1, 1, 1, 1, 1, 1,
160
- 1, 1, 1, 1, 23, 23, 23, 23,
161
- 23, 23, 23, 23, 23, 23, 23, 23,
162
- 23, 23, 23, 23, 23, 23, 23, 23,
163
- 23, 23, 23, 23, 23, 23, 23, 23,
164
- 23, 23, 24, 25, 25, 25, 25, 25,
165
- 25, 25, 25, 25, 25, 25, 25, 26,
166
- 25, 25, 27, 28, 28, 28, 29, 1,
167
- 30, 30, 30, 30, 30, 30, 30, 30,
168
- 30, 1, 30, 30, 31, 30, 30, 30,
169
- 30, 30, 30, 30, 30, 30, 30, 30,
170
- 30, 30, 30, 30, 30, 30, 30, 30,
171
- 30, 32, 30, 30, 30, 30, 30, 30,
172
- 30, 30, 30, 30, 30, 30, 30, 30,
173
- 30, 30, 30, 30, 30, 30, 30, 30,
174
- 30, 30, 30, 30, 30, 30, 30, 30,
175
- 30, 30, 30, 30, 30, 30, 30, 30,
176
- 30, 30, 30, 30, 30, 30, 30, 30,
177
- 30, 30, 30, 30, 30, 30, 30, 30,
178
- 30, 30, 30, 33, 30, 30, 30, 30,
179
- 30, 30, 30, 30, 30, 30, 30, 30,
180
- 30, 30, 30, 30, 30, 30, 30, 30,
181
- 30, 30, 30, 30, 30, 30, 30, 30,
182
- 30, 30, 30, 30, 30, 30, 30, 1,
183
- 1, 1, 1, 1, 1, 1, 1, 1,
184
- 1, 1, 1, 1, 1, 1, 1, 1,
185
- 1, 1, 1, 1, 1, 1, 1, 1,
186
- 1, 1, 1, 1, 1, 1, 1, 1,
187
- 1, 1, 1, 1, 1, 1, 1, 1,
188
- 1, 1, 1, 1, 1, 1, 1, 1,
189
- 1, 1, 1, 1, 1, 1, 1, 1,
190
- 1, 1, 1, 1, 1, 1, 1, 1,
191
- 1, 34, 34, 34, 34, 34, 34, 34,
192
- 34, 34, 34, 34, 34, 34, 34, 34,
193
- 34, 34, 34, 34, 34, 34, 34, 34,
194
- 34, 34, 34, 34, 34, 34, 34, 35,
195
- 36, 36, 36, 36, 36, 36, 36, 36,
196
- 36, 36, 36, 36, 37, 36, 36, 38,
197
- 39, 39, 39, 40, 1, 41, 1, 30,
198
- 1, 1, 1, 1, 1, 1, 1, 1,
199
- 1, 1, 1, 1, 1, 1, 1, 1,
200
- 1, 1, 1, 1, 1, 1, 30, 1,
201
- 42, 1, 43, 1, 1, 1, 1, 1,
202
- 1, 1, 1, 1, 1, 1, 1, 1,
203
- 1, 1, 1, 1, 1, 1, 1, 1,
204
- 1, 43, 1, 30, 30, 30, 30, 30,
205
- 30, 30, 30, 30, 30, 30, 30, 30,
206
- 30, 30, 30, 30, 30, 30, 30, 30,
207
- 30, 30, 30, 30, 30, 30, 30, 30,
208
- 30, 30, 30, 30, 30, 30, 30, 30,
209
- 30, 30, 30, 30, 30, 30, 30, 30,
210
- 30, 30, 30, 30, 30, 30, 30, 30,
211
- 30, 30, 30, 30, 30, 30, 30, 30,
212
- 30, 30, 30, 30, 30, 30, 30, 30,
213
- 30, 30, 30, 30, 30, 30, 30, 30,
214
- 30, 30, 30, 30, 30, 30, 30, 30,
215
- 30, 30, 30, 30, 30, 30, 30, 30,
216
- 30, 30, 30, 30, 30, 30, 30, 30,
217
- 30, 30, 30, 30, 30, 30, 30, 30,
218
- 30, 30, 30, 30, 30, 30, 30, 30,
219
- 30, 30, 30, 30, 30, 30, 30, 30,
220
- 30, 30, 30, 1, 1, 1, 1, 1,
221
- 1, 1, 1, 1, 1, 1, 1, 1,
222
- 1, 1, 1, 1, 1, 1, 1, 1,
223
- 1, 1, 1, 1, 1, 1, 1, 1,
224
- 1, 1, 1, 1, 1, 1, 1, 1,
225
- 1, 1, 1, 1, 1, 1, 1, 1,
226
- 1, 1, 1, 1, 1, 1, 1, 1,
227
- 1, 1, 1, 1, 1, 1, 1, 1,
228
- 1, 1, 1, 1, 1, 34, 34, 34,
229
- 34, 34, 34, 34, 34, 34, 34, 34,
230
- 34, 34, 34, 34, 34, 34, 34, 34,
231
- 34, 34, 34, 34, 34, 34, 34, 34,
232
- 34, 34, 34, 35, 36, 36, 36, 36,
233
- 36, 36, 36, 36, 36, 36, 36, 36,
234
- 37, 36, 36, 38, 39, 39, 39, 40,
235
- 1, 30, 30, 30, 30, 30, 30, 30,
236
- 30, 30, 30, 30, 30, 30, 30, 30,
237
- 30, 30, 30, 30, 30, 30, 30, 30,
238
- 30, 30, 30, 30, 30, 30, 30, 30,
239
- 30, 30, 30, 30, 30, 30, 30, 30,
240
- 30, 30, 30, 30, 30, 30, 30, 30,
241
- 30, 30, 30, 30, 30, 30, 30, 30,
242
- 30, 30, 30, 30, 30, 30, 30, 30,
243
- 30, 1, 34, 34, 34, 34, 34, 34,
244
- 34, 34, 34, 34, 34, 34, 34, 34,
245
- 34, 34, 34, 34, 34, 34, 34, 34,
246
- 34, 34, 34, 34, 34, 34, 34, 34,
247
- 34, 34, 1, 34, 34, 34, 34, 34,
248
- 34, 34, 34, 34, 34, 34, 34, 34,
249
- 34, 34, 34, 34, 34, 34, 34, 34,
250
- 34, 34, 34, 34, 34, 34, 34, 34,
251
- 34, 34, 34, 34, 34, 34, 34, 34,
252
- 34, 34, 34, 34, 34, 34, 34, 34,
253
- 34, 34, 34, 34, 34, 34, 34, 34,
254
- 34, 34, 34, 34, 34, 34, 34, 34,
255
- 34, 34, 34, 1, 34, 34, 34, 34,
256
- 34, 34, 34, 34, 34, 34, 34, 34,
257
- 34, 34, 34, 34, 34, 34, 34, 34,
258
- 34, 34, 34, 34, 34, 34, 34, 34,
259
- 34, 34, 34, 34, 1, 36, 36, 36,
260
- 36, 36, 36, 36, 36, 36, 36, 36,
261
- 36, 36, 36, 36, 36, 36, 36, 36,
262
- 36, 36, 36, 36, 36, 36, 36, 36,
263
- 36, 36, 36, 36, 36, 36, 36, 36,
264
- 36, 36, 36, 36, 36, 36, 36, 36,
265
- 36, 36, 36, 36, 36, 1, 36, 36,
266
- 36, 36, 36, 36, 36, 36, 36, 36,
267
- 36, 36, 36, 36, 36, 36, 36, 36,
268
- 36, 36, 36, 36, 36, 36, 36, 36,
269
- 36, 36, 36, 36, 36, 36, 36, 36,
270
- 36, 36, 36, 36, 36, 36, 36, 36,
271
- 36, 36, 36, 36, 36, 36, 36, 36,
272
- 36, 36, 36, 36, 36, 36, 36, 36,
273
- 36, 36, 36, 36, 36, 36, 1, 36,
274
- 36, 36, 36, 36, 36, 36, 36, 36,
275
- 36, 36, 36, 36, 36, 36, 36, 1,
276
- 44, 1, 1, 1, 45, 1, 1, 1,
277
- 1, 1, 1, 1, 1, 1, 1, 1,
278
- 1, 1, 1, 1, 1, 1, 1, 44,
279
- 1, 46, 1, 1, 1, 1, 1, 47,
280
- 1, 48, 1, 49, 1, 1, 1, 1,
281
- 1, 1, 1, 1, 1, 1, 1, 1,
282
- 1, 1, 1, 1, 1, 1, 1, 1,
283
- 1, 1, 49, 1, 50, 1, 1, 1,
284
- 51, 1, 1, 1, 1, 1, 1, 1,
285
- 1, 1, 1, 1, 1, 1, 1, 1,
286
- 1, 1, 1, 50, 52, 52, 52, 52,
287
- 52, 52, 52, 53, 1, 52, 52, 52,
288
- 52, 52, 1, 52, 52, 52, 52, 52,
289
- 52, 52, 52, 52, 52, 1, 1, 1,
290
- 1, 1, 1, 1, 52, 52, 52, 52,
291
- 52, 52, 52, 52, 52, 52, 52, 52,
292
- 52, 52, 52, 52, 52, 52, 52, 52,
293
- 52, 52, 52, 52, 52, 52, 1, 1,
294
- 1, 52, 52, 52, 52, 52, 52, 52,
295
- 52, 52, 52, 52, 52, 52, 52, 52,
296
- 52, 52, 52, 52, 52, 52, 52, 52,
297
- 52, 52, 52, 52, 52, 52, 52, 52,
298
- 52, 52, 1, 54, 54, 54, 54, 54,
299
- 54, 54, 54, 54, 1, 54, 54, 55,
300
- 54, 54, 54, 54, 54, 54, 54, 54,
301
- 54, 54, 54, 54, 54, 54, 54, 54,
302
- 54, 54, 54, 54, 54, 54, 54, 54,
303
- 54, 54, 56, 57, 54, 54, 54, 54,
304
- 54, 54, 54, 54, 54, 54, 54, 54,
305
- 54, 54, 54, 54, 54, 54, 54, 54,
306
- 54, 54, 54, 54, 54, 54, 54, 54,
307
- 54, 54, 54, 54, 54, 54, 54, 54,
308
- 54, 54, 54, 54, 54, 54, 54, 54,
309
- 54, 54, 54, 54, 54, 54, 58, 54,
310
- 54, 54, 54, 54, 54, 54, 54, 54,
311
- 54, 54, 54, 54, 54, 54, 54, 54,
312
- 54, 54, 54, 54, 54, 54, 54, 54,
313
- 54, 54, 54, 54, 54, 54, 54, 54,
314
- 54, 54, 1, 1, 1, 1, 1, 1,
315
- 1, 1, 1, 1, 1, 1, 1, 1,
316
- 1, 1, 1, 1, 1, 1, 1, 1,
317
- 1, 1, 1, 1, 1, 1, 1, 1,
318
- 1, 1, 1, 1, 1, 1, 1, 1,
319
- 1, 1, 1, 1, 1, 1, 1, 1,
320
- 1, 1, 1, 1, 1, 1, 1, 1,
321
- 1, 1, 1, 1, 1, 1, 1, 1,
322
- 1, 1, 1, 1, 59, 59, 59, 59,
323
- 59, 59, 59, 59, 59, 59, 59, 59,
324
- 59, 59, 59, 59, 59, 59, 59, 59,
325
- 59, 59, 59, 59, 59, 59, 59, 59,
326
- 59, 59, 60, 61, 61, 61, 61, 61,
327
- 61, 61, 61, 61, 61, 61, 61, 62,
328
- 61, 61, 63, 64, 64, 64, 65, 1,
329
- 66, 66, 66, 66, 66, 66, 66, 66,
330
- 66, 1, 66, 66, 67, 66, 66, 66,
331
- 66, 66, 66, 66, 66, 66, 66, 66,
332
- 66, 66, 66, 66, 66, 66, 66, 66,
333
- 66, 66, 66, 66, 66, 66, 66, 68,
334
- 69, 66, 66, 66, 66, 66, 66, 66,
335
- 66, 66, 66, 66, 66, 66, 66, 66,
336
- 66, 66, 66, 66, 66, 66, 66, 66,
337
- 66, 66, 66, 66, 66, 66, 66, 66,
338
- 66, 66, 66, 66, 66, 66, 66, 66,
339
- 66, 66, 66, 66, 66, 66, 66, 66,
340
- 66, 66, 66, 70, 66, 66, 66, 66,
341
- 66, 66, 66, 66, 66, 66, 66, 66,
342
- 66, 66, 66, 66, 66, 66, 66, 66,
343
- 66, 66, 66, 66, 66, 66, 66, 66,
344
- 66, 66, 66, 66, 66, 66, 66, 1,
345
- 1, 1, 1, 1, 1, 1, 1, 1,
346
- 1, 1, 1, 1, 1, 1, 1, 1,
347
- 1, 1, 1, 1, 1, 1, 1, 1,
348
- 1, 1, 1, 1, 1, 1, 1, 1,
349
- 1, 1, 1, 1, 1, 1, 1, 1,
350
- 1, 1, 1, 1, 1, 1, 1, 1,
351
- 1, 1, 1, 1, 1, 1, 1, 1,
352
- 1, 1, 1, 1, 1, 1, 1, 1,
353
- 1, 71, 71, 71, 71, 71, 71, 71,
354
- 71, 71, 71, 71, 71, 71, 71, 71,
355
- 71, 71, 71, 71, 71, 71, 71, 71,
356
- 71, 71, 71, 71, 71, 71, 71, 72,
357
- 73, 73, 73, 73, 73, 73, 73, 73,
358
- 73, 73, 73, 73, 74, 73, 73, 75,
359
- 76, 76, 76, 77, 1, 78, 1, 66,
360
- 1, 1, 1, 1, 1, 1, 1, 1,
361
- 1, 1, 1, 1, 1, 1, 1, 1,
362
- 1, 1, 1, 1, 1, 1, 66, 1,
363
- 66, 66, 66, 66, 66, 66, 66, 66,
364
- 66, 66, 66, 66, 66, 66, 66, 66,
365
- 66, 66, 66, 66, 66, 66, 66, 66,
366
- 66, 66, 66, 66, 66, 66, 66, 66,
367
- 66, 66, 66, 66, 66, 66, 66, 66,
368
- 66, 66, 66, 66, 66, 66, 66, 66,
369
- 66, 66, 66, 66, 66, 66, 66, 66,
370
- 66, 66, 66, 66, 66, 66, 66, 66,
371
- 66, 66, 66, 66, 66, 66, 66, 66,
372
- 66, 66, 66, 66, 66, 66, 66, 66,
373
- 66, 66, 66, 66, 66, 66, 66, 66,
374
- 66, 66, 66, 66, 66, 66, 66, 66,
375
- 66, 66, 66, 66, 66, 66, 66, 66,
376
- 66, 66, 66, 66, 66, 66, 66, 66,
377
- 66, 66, 66, 66, 66, 66, 66, 66,
378
- 66, 66, 66, 66, 66, 66, 66, 66,
379
- 1, 1, 1, 1, 1, 1, 1, 1,
380
- 1, 1, 1, 1, 1, 1, 1, 1,
381
- 1, 1, 1, 1, 1, 1, 1, 1,
382
- 1, 1, 1, 1, 1, 1, 1, 1,
383
- 1, 1, 1, 1, 1, 1, 1, 1,
384
- 1, 1, 1, 1, 1, 1, 1, 1,
385
- 1, 1, 1, 1, 1, 1, 1, 1,
386
- 1, 1, 1, 1, 1, 1, 1, 1,
387
- 1, 1, 71, 71, 71, 71, 71, 71,
388
- 71, 71, 71, 71, 71, 71, 71, 71,
389
- 71, 71, 71, 71, 71, 71, 71, 71,
390
- 71, 71, 71, 71, 71, 71, 71, 71,
391
- 72, 73, 73, 73, 73, 73, 73, 73,
392
- 73, 73, 73, 73, 73, 74, 73, 73,
393
- 75, 76, 76, 76, 77, 1, 66, 66,
394
- 66, 66, 66, 66, 66, 66, 66, 66,
395
- 66, 66, 66, 66, 66, 66, 66, 66,
396
- 66, 66, 66, 66, 66, 66, 66, 66,
397
- 66, 66, 66, 66, 66, 66, 66, 66,
398
- 66, 66, 66, 66, 66, 66, 66, 66,
399
- 66, 66, 66, 66, 66, 66, 66, 66,
400
- 66, 66, 66, 66, 66, 66, 66, 66,
401
- 66, 66, 66, 66, 66, 66, 1, 71,
402
- 71, 71, 71, 71, 71, 71, 71, 71,
403
- 71, 71, 71, 71, 71, 71, 71, 71,
404
- 71, 71, 71, 71, 71, 71, 71, 71,
405
- 71, 71, 71, 71, 71, 71, 71, 1,
406
- 71, 71, 71, 71, 71, 71, 71, 71,
407
- 71, 71, 71, 71, 71, 71, 71, 71,
408
- 71, 71, 71, 71, 71, 71, 71, 71,
409
- 71, 71, 71, 71, 71, 71, 71, 71,
410
- 71, 71, 71, 71, 71, 71, 71, 71,
411
- 71, 71, 71, 71, 71, 71, 71, 71,
412
- 71, 71, 71, 71, 71, 71, 71, 71,
413
- 71, 71, 71, 71, 71, 71, 71, 71,
414
- 1, 71, 71, 71, 71, 71, 71, 71,
415
- 71, 71, 71, 71, 71, 71, 71, 71,
416
- 71, 71, 71, 71, 71, 71, 71, 71,
417
- 71, 71, 71, 71, 71, 71, 71, 71,
418
- 71, 1, 73, 73, 73, 73, 73, 73,
419
- 73, 73, 73, 73, 73, 73, 73, 73,
420
- 73, 73, 73, 73, 73, 73, 73, 73,
421
- 73, 73, 73, 73, 73, 73, 73, 73,
422
- 73, 73, 73, 73, 73, 73, 73, 73,
423
- 73, 73, 73, 73, 73, 73, 73, 73,
424
- 73, 73, 1, 73, 73, 73, 73, 73,
425
- 73, 73, 73, 73, 73, 73, 73, 73,
426
- 73, 73, 73, 73, 73, 73, 73, 73,
427
- 73, 73, 73, 73, 73, 73, 73, 73,
428
- 73, 73, 73, 73, 73, 73, 73, 73,
429
- 73, 73, 73, 73, 73, 73, 73, 73,
430
- 73, 73, 73, 73, 73, 73, 73, 73,
431
- 73, 73, 73, 73, 73, 73, 73, 73,
432
- 73, 73, 73, 1, 73, 73, 73, 73,
433
- 73, 73, 73, 73, 73, 73, 73, 73,
434
- 73, 73, 73, 73, 1, 79, 79, 79,
435
- 79, 79, 79, 79, 1, 1, 79, 79,
436
- 79, 79, 79, 1, 79, 79, 79, 79,
437
- 79, 79, 79, 79, 79, 79, 1, 80,
438
- 1, 1, 1, 1, 1, 79, 79, 79,
439
- 79, 79, 79, 79, 79, 79, 79, 79,
440
- 79, 79, 79, 79, 79, 79, 79, 79,
441
- 79, 79, 79, 79, 79, 79, 79, 1,
442
- 1, 1, 79, 79, 79, 79, 79, 79,
443
- 79, 79, 79, 79, 79, 79, 79, 79,
444
- 79, 79, 79, 79, 79, 79, 79, 79,
445
- 79, 79, 79, 79, 79, 79, 79, 79,
446
- 79, 79, 79, 1, 81, 1, 1, 1,
447
- 82, 1, 1, 1, 1, 1, 1, 1,
448
- 1, 1, 1, 1, 1, 1, 1, 1,
449
- 1, 1, 1, 81, 1, 1, 1, 1,
450
- 1, 1, 1, 83, 1, 1, 1, 1,
451
- 1, 1, 1, 1, 1, 1, 1, 1,
452
- 1, 1, 1, 1, 1, 1, 84, 1,
453
- 85, 1, 1, 1, 86, 1, 1, 1,
454
- 1, 1, 1, 1, 1, 1, 1, 1,
455
- 1, 1, 1, 1, 1, 1, 1, 85,
456
- 1, 1, 1, 1, 1, 1, 1, 87,
457
- 1, 1, 1, 1, 1, 1, 1, 1,
458
- 1, 1, 1, 1, 1, 1, 1, 1,
459
- 1, 1, 88, 1, 89, 1, 1, 1,
460
- 90, 1, 1, 1, 1, 1, 1, 1,
461
- 1, 1, 1, 1, 1, 1, 1, 1,
462
- 1, 1, 1, 89, 91, 1, 91, 91,
463
- 91, 91, 91, 92, 1, 91, 91, 91,
464
- 91, 91, 1, 91, 91, 91, 91, 91,
465
- 91, 91, 91, 91, 91, 1, 84, 1,
466
- 91, 1, 1, 1, 91, 91, 91, 91,
467
- 91, 91, 91, 91, 91, 91, 91, 91,
468
- 91, 91, 91, 91, 91, 91, 91, 91,
469
- 91, 91, 91, 91, 91, 91, 1, 1,
470
- 1, 91, 91, 91, 91, 91, 91, 91,
471
- 91, 91, 91, 91, 91, 91, 91, 91,
472
- 91, 91, 91, 91, 91, 91, 91, 91,
473
- 91, 91, 91, 91, 91, 91, 91, 91,
474
- 91, 91, 1, 49, 1, 1, 1, 93,
475
- 1, 1, 1, 1, 1, 1, 1, 1,
476
- 1, 1, 1, 1, 1, 1, 1, 1,
477
- 1, 1, 49, 1, 1, 1, 1, 1,
478
- 1, 1, 94, 1, 1, 1, 1, 1,
479
- 1, 1, 1, 1, 1, 1, 1, 1,
480
- 1, 1, 1, 1, 1, 2, 1, 95,
481
- 1, 1, 1, 96, 1, 1, 1, 1,
482
- 1, 1, 1, 1, 1, 1, 1, 1,
483
- 1, 1, 1, 1, 1, 1, 95, 1,
484
- 1, 1, 1, 1, 1, 1, 97, 1,
485
- 1, 1, 1, 1, 1, 1, 1, 1,
486
- 1, 1, 1, 1, 1, 1, 1, 1,
487
- 1, 50, 1, 1, 0
488
- ]
489
-
490
- class << self
491
- attr_accessor :_trans_targs
492
- private :_trans_targs, :_trans_targs=
493
- end
494
- self._trans_targs = [
495
- 40, 0, 2, 3, 5, 27, 4, 5,
496
- 6, 7, 8, 43, 10, 24, 7, 8,
497
- 10, 24, 9, 11, 12, 41, 16, 17,
498
- 18, 19, 20, 21, 22, 23, 11, 12,
499
- 41, 16, 17, 18, 19, 20, 21, 22,
500
- 23, 13, 15, 41, 7, 8, 10, 24,
501
- 26, 44, 2, 3, 5, 27, 29, 30,
502
- 29, 46, 32, 33, 34, 35, 36, 37,
503
- 38, 39, 29, 30, 29, 46, 32, 33,
504
- 34, 35, 36, 37, 38, 39, 31, 40,
505
- 2, 41, 14, 42, 2, 41, 14, 42,
506
- 2, 44, 25, 43, 45, 25, 45, 44,
507
- 25, 45
508
- ]
509
-
510
- class << self
511
- attr_accessor :_trans_actions
512
- private :_trans_actions, :_trans_actions=
513
- end
514
- self._trans_actions = [
515
- 1, 0, 0, 0, 2, 3, 0, 0,
516
- 4, 5, 5, 5, 5, 6, 0, 0,
517
- 0, 3, 0, 7, 7, 8, 7, 7,
518
- 7, 7, 7, 7, 7, 7, 0, 0,
519
- 9, 0, 0, 0, 0, 0, 0, 0,
520
- 0, 0, 0, 0, 10, 10, 10, 11,
521
- 0, 0, 10, 10, 12, 11, 13, 13,
522
- 14, 15, 13, 13, 13, 13, 13, 13,
523
- 13, 13, 0, 0, 3, 16, 0, 0,
524
- 0, 0, 0, 0, 0, 0, 0, 0,
525
- 17, 18, 18, 19, 18, 20, 20, 21,
526
- 20, 18, 18, 0, 22, 0, 3, 10,
527
- 10, 11
528
- ]
529
-
530
- class << self
531
- attr_accessor :_eof_actions
532
- private :_eof_actions, :_eof_actions=
533
- end
534
- self._eof_actions = [
535
- 0, 0, 0, 0, 0, 0, 0, 0,
536
- 0, 0, 0, 0, 0, 0, 0, 0,
537
- 0, 0, 0, 0, 0, 0, 0, 0,
538
- 0, 0, 0, 0, 0, 0, 0, 0,
539
- 0, 0, 0, 0, 0, 0, 0, 0,
540
- 17, 18, 20, 18, 0, 10, 0
541
- ]
542
-
543
- class << self
544
- attr_accessor :start
545
- end
546
- self.start = 1;
547
- class << self
548
- attr_accessor :first_final
549
- end
550
- self.first_final = 40;
551
- class << self
552
- attr_accessor :error
553
- end
554
- self.error = 0;
555
-
556
- class << self
557
- attr_accessor :en_comment_tail
558
- end
559
- self.en_comment_tail = 28;
560
- class << self
561
- attr_accessor :en_main
562
- end
563
- self.en_main = 1;
564
-
12
+ class << self
13
+ attr_accessor :_trans_keys
14
+ private :_trans_keys, :_trans_keys=
15
+ end
16
+ self._trans_keys = [
17
+ 0, 0, 33, 126, 9, 126,
18
+ 10, 10, 9, 32, 33,
19
+ 126, 9, 126, 9, 40,
20
+ 10, 10, 9, 32, 1, 244,
21
+ 1, 244, 10, 10, 9,
22
+ 32, 10, 10, 9, 32,
23
+ 0, 244, 128, 191, 160, 191,
24
+ 128, 191, 128, 159, 144,
25
+ 191, 128, 191, 128, 143,
26
+ 9, 40, 10, 10, 9, 32,
27
+ 9, 126, 1, 244, 1,
28
+ 244, 10, 10, 9, 32,
29
+ 0, 244, 128, 191, 160, 191,
30
+ 128, 191, 128, 159, 144,
31
+ 191, 128, 191, 128, 143,
32
+ 33, 126, 9, 59, 9, 59,
33
+ 9, 126, 9, 59, 9,
34
+ 59, 0, 0, 0,
35
+ ]
36
+
37
+ class << self
38
+ attr_accessor :_key_spans
39
+ private :_key_spans, :_key_spans=
40
+ end
41
+ self._key_spans = [
42
+ 0, 94, 118, 1, 24, 94, 118, 32,
43
+ 1, 24, 244, 244, 1, 24, 1, 24,
44
+ 245, 64, 32, 64, 32, 48, 64, 16,
45
+ 32, 1, 24, 118, 244, 244, 1, 24,
46
+ 245, 64, 32, 64, 32, 48, 64, 16,
47
+ 94, 51, 51, 118, 51, 51, 0,
48
+ ]
49
+
50
+ class << self
51
+ attr_accessor :_index_offsets
52
+ private :_index_offsets, :_index_offsets=
53
+ end
54
+ self._index_offsets = [
55
+ 0, 0, 95, 214, 216, 241, 336, 455,
56
+ 488, 490, 515, 760, 1005, 1007, 1032, 1034,
57
+ 1059, 1305, 1370, 1403, 1468, 1501, 1550, 1615,
58
+ 1632, 1665, 1667, 1692, 1811, 2056, 2301, 2303,
59
+ 2328, 2574, 2639, 2672, 2737, 2770, 2819, 2884,
60
+ 2901, 2996, 3048, 3100, 3219, 3271, 3323,
61
+ ]
62
+
63
+ class << self
64
+ attr_accessor :_indicies
65
+ private :_indicies, :_indicies=
66
+ end
67
+ self._indicies = [
68
+ 0, 0, 0, 0, 0, 0, 0, 1,
69
+ 1, 0, 0, 0, 0, 0, 1, 0,
70
+ 0, 0, 0, 0, 0, 0, 0, 0,
71
+ 0, 1, 1, 1, 1, 1, 1, 1,
72
+ 0, 0, 0, 0, 0, 0, 0, 0,
73
+ 0, 0, 0, 0, 0, 0, 0, 0,
74
+ 0, 0, 0, 0, 0, 0, 0, 0,
75
+ 0, 0, 1, 1, 1, 0, 0, 0,
76
+ 0, 0, 0, 0, 0, 0, 0, 0,
77
+ 0, 0, 0, 0, 0, 0, 0, 0,
78
+ 0, 0, 0, 0, 0, 0, 0, 0,
79
+ 0, 0, 0, 0, 0, 0, 1, 2,
80
+ 1, 1, 1, 3, 1, 1, 1, 1,
81
+ 1, 1, 1, 1, 1, 1, 1, 1,
82
+ 1, 1, 1, 1, 1, 1, 2, 4,
83
+ 4, 4, 4, 4, 4, 4, 5, 1,
84
+ 4, 4, 4, 4, 4, 1, 4, 4,
85
+ 4, 4, 4, 4, 4, 4, 4, 4,
86
+ 1, 1, 1, 1, 1, 1, 1, 4,
87
+ 4, 4, 4, 4, 4, 4, 4, 4,
88
+ 4, 4, 4, 4, 4, 4, 4, 4,
89
+ 4, 4, 4, 4, 4, 4, 4, 4,
90
+ 4, 1, 1, 1, 4, 4, 4, 4,
91
+ 4, 4, 4, 4, 4, 4, 4, 4,
92
+ 4, 4, 4, 4, 4, 4, 4, 4,
93
+ 4, 4, 4, 4, 4, 4, 4, 4,
94
+ 4, 4, 4, 4, 4, 1, 6, 1,
95
+ 2, 1, 1, 1, 1, 1, 1, 1,
96
+ 1, 1, 1, 1, 1, 1, 1, 1,
97
+ 1, 1, 1, 1, 1, 1, 1, 2,
98
+ 1, 7, 7, 7, 7, 7, 7, 7,
99
+ 1, 1, 7, 7, 7, 7, 7, 1,
100
+ 7, 7, 7, 7, 7, 7, 7, 7,
101
+ 7, 7, 1, 1, 1, 8, 1, 1,
102
+ 1, 7, 7, 7, 7, 7, 7, 7,
103
+ 7, 7, 7, 7, 7, 7, 7, 7,
104
+ 7, 7, 7, 7, 7, 7, 7, 7,
105
+ 7, 7, 7, 1, 1, 1, 7, 7,
106
+ 7, 7, 7, 7, 7, 7, 7, 7,
107
+ 7, 7, 7, 7, 7, 7, 7, 7,
108
+ 7, 7, 7, 7, 7, 7, 7, 7,
109
+ 7, 7, 7, 7, 7, 7, 7, 1,
110
+ 9, 1, 1, 1, 10, 1, 1, 1,
111
+ 1, 1, 1, 1, 1, 1, 1, 1,
112
+ 1, 1, 1, 1, 1, 1, 1, 9,
113
+ 11, 12, 11, 11, 11, 11, 11, 13,
114
+ 1, 11, 11, 11, 11, 11, 1, 11,
115
+ 11, 11, 11, 11, 11, 11, 11, 11,
116
+ 11, 1, 1, 1, 11, 1, 1, 1,
117
+ 11, 11, 11, 11, 11, 11, 11, 11,
118
+ 11, 11, 11, 11, 11, 11, 11, 11,
119
+ 11, 11, 11, 11, 11, 11, 11, 11,
120
+ 11, 11, 1, 1, 1, 11, 11, 11,
121
+ 11, 11, 11, 11, 11, 11, 11, 11,
122
+ 11, 11, 11, 11, 11, 11, 11, 11,
123
+ 11, 11, 11, 11, 11, 11, 11, 11,
124
+ 11, 11, 11, 11, 11, 11, 1, 14,
125
+ 1, 1, 1, 15, 1, 1, 1, 1,
126
+ 1, 1, 1, 1, 1, 1, 1, 1,
127
+ 1, 1, 1, 1, 1, 1, 14, 1,
128
+ 16, 1, 1, 1, 1, 1, 17, 1,
129
+ 18, 1, 14, 1, 1, 1, 1, 1,
130
+ 1, 1, 1, 1, 1, 1, 1, 1,
131
+ 1, 1, 1, 1, 1, 1, 1, 1,
132
+ 1, 14, 1, 19, 19, 19, 19, 19,
133
+ 19, 19, 19, 19, 1, 19, 19, 20,
134
+ 19, 19, 19, 19, 19, 19, 19, 19,
135
+ 19, 19, 19, 19, 19, 19, 19, 19,
136
+ 19, 19, 19, 19, 21, 19, 19, 19,
137
+ 19, 19, 19, 19, 19, 19, 19, 19,
138
+ 19, 19, 19, 19, 19, 19, 19, 19,
139
+ 19, 19, 19, 19, 19, 19, 19, 19,
140
+ 19, 19, 19, 19, 19, 19, 19, 19,
141
+ 19, 19, 19, 19, 19, 19, 19, 19,
142
+ 19, 19, 19, 19, 19, 19, 19, 19,
143
+ 19, 19, 19, 19, 19, 19, 22, 19,
144
+ 19, 19, 19, 19, 19, 19, 19, 19,
145
+ 19, 19, 19, 19, 19, 19, 19, 19,
146
+ 19, 19, 19, 19, 19, 19, 19, 19,
147
+ 19, 19, 19, 19, 19, 19, 19, 19,
148
+ 19, 19, 1, 1, 1, 1, 1, 1,
149
+ 1, 1, 1, 1, 1, 1, 1, 1,
150
+ 1, 1, 1, 1, 1, 1, 1, 1,
151
+ 1, 1, 1, 1, 1, 1, 1, 1,
152
+ 1, 1, 1, 1, 1, 1, 1, 1,
153
+ 1, 1, 1, 1, 1, 1, 1, 1,
154
+ 1, 1, 1, 1, 1, 1, 1, 1,
155
+ 1, 1, 1, 1, 1, 1, 1, 1,
156
+ 1, 1, 1, 1, 23, 23, 23, 23,
157
+ 23, 23, 23, 23, 23, 23, 23, 23,
158
+ 23, 23, 23, 23, 23, 23, 23, 23,
159
+ 23, 23, 23, 23, 23, 23, 23, 23,
160
+ 23, 23, 24, 25, 25, 25, 25, 25,
161
+ 25, 25, 25, 25, 25, 25, 25, 26,
162
+ 25, 25, 27, 28, 28, 28, 29, 1,
163
+ 30, 30, 30, 30, 30, 30, 30, 30,
164
+ 30, 1, 30, 30, 31, 30, 30, 30,
165
+ 30, 30, 30, 30, 30, 30, 30, 30,
166
+ 30, 30, 30, 30, 30, 30, 30, 30,
167
+ 30, 32, 30, 30, 30, 30, 30, 30,
168
+ 30, 30, 30, 30, 30, 30, 30, 30,
169
+ 30, 30, 30, 30, 30, 30, 30, 30,
170
+ 30, 30, 30, 30, 30, 30, 30, 30,
171
+ 30, 30, 30, 30, 30, 30, 30, 30,
172
+ 30, 30, 30, 30, 30, 30, 30, 30,
173
+ 30, 30, 30, 30, 30, 30, 30, 30,
174
+ 30, 30, 30, 33, 30, 30, 30, 30,
175
+ 30, 30, 30, 30, 30, 30, 30, 30,
176
+ 30, 30, 30, 30, 30, 30, 30, 30,
177
+ 30, 30, 30, 30, 30, 30, 30, 30,
178
+ 30, 30, 30, 30, 30, 30, 30, 1,
179
+ 1, 1, 1, 1, 1, 1, 1, 1,
180
+ 1, 1, 1, 1, 1, 1, 1, 1,
181
+ 1, 1, 1, 1, 1, 1, 1, 1,
182
+ 1, 1, 1, 1, 1, 1, 1, 1,
183
+ 1, 1, 1, 1, 1, 1, 1, 1,
184
+ 1, 1, 1, 1, 1, 1, 1, 1,
185
+ 1, 1, 1, 1, 1, 1, 1, 1,
186
+ 1, 1, 1, 1, 1, 1, 1, 1,
187
+ 1, 34, 34, 34, 34, 34, 34, 34,
188
+ 34, 34, 34, 34, 34, 34, 34, 34,
189
+ 34, 34, 34, 34, 34, 34, 34, 34,
190
+ 34, 34, 34, 34, 34, 34, 34, 35,
191
+ 36, 36, 36, 36, 36, 36, 36, 36,
192
+ 36, 36, 36, 36, 37, 36, 36, 38,
193
+ 39, 39, 39, 40, 1, 41, 1, 30,
194
+ 1, 1, 1, 1, 1, 1, 1, 1,
195
+ 1, 1, 1, 1, 1, 1, 1, 1,
196
+ 1, 1, 1, 1, 1, 1, 30, 1,
197
+ 42, 1, 43, 1, 1, 1, 1, 1,
198
+ 1, 1, 1, 1, 1, 1, 1, 1,
199
+ 1, 1, 1, 1, 1, 1, 1, 1,
200
+ 1, 43, 1, 30, 30, 30, 30, 30,
201
+ 30, 30, 30, 30, 30, 30, 30, 30,
202
+ 30, 30, 30, 30, 30, 30, 30, 30,
203
+ 30, 30, 30, 30, 30, 30, 30, 30,
204
+ 30, 30, 30, 30, 30, 30, 30, 30,
205
+ 30, 30, 30, 30, 30, 30, 30, 30,
206
+ 30, 30, 30, 30, 30, 30, 30, 30,
207
+ 30, 30, 30, 30, 30, 30, 30, 30,
208
+ 30, 30, 30, 30, 30, 30, 30, 30,
209
+ 30, 30, 30, 30, 30, 30, 30, 30,
210
+ 30, 30, 30, 30, 30, 30, 30, 30,
211
+ 30, 30, 30, 30, 30, 30, 30, 30,
212
+ 30, 30, 30, 30, 30, 30, 30, 30,
213
+ 30, 30, 30, 30, 30, 30, 30, 30,
214
+ 30, 30, 30, 30, 30, 30, 30, 30,
215
+ 30, 30, 30, 30, 30, 30, 30, 30,
216
+ 30, 30, 30, 1, 1, 1, 1, 1,
217
+ 1, 1, 1, 1, 1, 1, 1, 1,
218
+ 1, 1, 1, 1, 1, 1, 1, 1,
219
+ 1, 1, 1, 1, 1, 1, 1, 1,
220
+ 1, 1, 1, 1, 1, 1, 1, 1,
221
+ 1, 1, 1, 1, 1, 1, 1, 1,
222
+ 1, 1, 1, 1, 1, 1, 1, 1,
223
+ 1, 1, 1, 1, 1, 1, 1, 1,
224
+ 1, 1, 1, 1, 1, 34, 34, 34,
225
+ 34, 34, 34, 34, 34, 34, 34, 34,
226
+ 34, 34, 34, 34, 34, 34, 34, 34,
227
+ 34, 34, 34, 34, 34, 34, 34, 34,
228
+ 34, 34, 34, 35, 36, 36, 36, 36,
229
+ 36, 36, 36, 36, 36, 36, 36, 36,
230
+ 37, 36, 36, 38, 39, 39, 39, 40,
231
+ 1, 30, 30, 30, 30, 30, 30, 30,
232
+ 30, 30, 30, 30, 30, 30, 30, 30,
233
+ 30, 30, 30, 30, 30, 30, 30, 30,
234
+ 30, 30, 30, 30, 30, 30, 30, 30,
235
+ 30, 30, 30, 30, 30, 30, 30, 30,
236
+ 30, 30, 30, 30, 30, 30, 30, 30,
237
+ 30, 30, 30, 30, 30, 30, 30, 30,
238
+ 30, 30, 30, 30, 30, 30, 30, 30,
239
+ 30, 1, 34, 34, 34, 34, 34, 34,
240
+ 34, 34, 34, 34, 34, 34, 34, 34,
241
+ 34, 34, 34, 34, 34, 34, 34, 34,
242
+ 34, 34, 34, 34, 34, 34, 34, 34,
243
+ 34, 34, 1, 34, 34, 34, 34, 34,
244
+ 34, 34, 34, 34, 34, 34, 34, 34,
245
+ 34, 34, 34, 34, 34, 34, 34, 34,
246
+ 34, 34, 34, 34, 34, 34, 34, 34,
247
+ 34, 34, 34, 34, 34, 34, 34, 34,
248
+ 34, 34, 34, 34, 34, 34, 34, 34,
249
+ 34, 34, 34, 34, 34, 34, 34, 34,
250
+ 34, 34, 34, 34, 34, 34, 34, 34,
251
+ 34, 34, 34, 1, 34, 34, 34, 34,
252
+ 34, 34, 34, 34, 34, 34, 34, 34,
253
+ 34, 34, 34, 34, 34, 34, 34, 34,
254
+ 34, 34, 34, 34, 34, 34, 34, 34,
255
+ 34, 34, 34, 34, 1, 36, 36, 36,
256
+ 36, 36, 36, 36, 36, 36, 36, 36,
257
+ 36, 36, 36, 36, 36, 36, 36, 36,
258
+ 36, 36, 36, 36, 36, 36, 36, 36,
259
+ 36, 36, 36, 36, 36, 36, 36, 36,
260
+ 36, 36, 36, 36, 36, 36, 36, 36,
261
+ 36, 36, 36, 36, 36, 1, 36, 36,
262
+ 36, 36, 36, 36, 36, 36, 36, 36,
263
+ 36, 36, 36, 36, 36, 36, 36, 36,
264
+ 36, 36, 36, 36, 36, 36, 36, 36,
265
+ 36, 36, 36, 36, 36, 36, 36, 36,
266
+ 36, 36, 36, 36, 36, 36, 36, 36,
267
+ 36, 36, 36, 36, 36, 36, 36, 36,
268
+ 36, 36, 36, 36, 36, 36, 36, 36,
269
+ 36, 36, 36, 36, 36, 36, 1, 36,
270
+ 36, 36, 36, 36, 36, 36, 36, 36,
271
+ 36, 36, 36, 36, 36, 36, 36, 1,
272
+ 44, 1, 1, 1, 45, 1, 1, 1,
273
+ 1, 1, 1, 1, 1, 1, 1, 1,
274
+ 1, 1, 1, 1, 1, 1, 1, 44,
275
+ 1, 46, 1, 1, 1, 1, 1, 47,
276
+ 1, 48, 1, 49, 1, 1, 1, 1,
277
+ 1, 1, 1, 1, 1, 1, 1, 1,
278
+ 1, 1, 1, 1, 1, 1, 1, 1,
279
+ 1, 1, 49, 1, 50, 1, 1, 1,
280
+ 51, 1, 1, 1, 1, 1, 1, 1,
281
+ 1, 1, 1, 1, 1, 1, 1, 1,
282
+ 1, 1, 1, 50, 52, 52, 52, 52,
283
+ 52, 52, 52, 53, 1, 52, 52, 52,
284
+ 52, 52, 1, 52, 52, 52, 52, 52,
285
+ 52, 52, 52, 52, 52, 1, 1, 1,
286
+ 1, 1, 1, 1, 52, 52, 52, 52,
287
+ 52, 52, 52, 52, 52, 52, 52, 52,
288
+ 52, 52, 52, 52, 52, 52, 52, 52,
289
+ 52, 52, 52, 52, 52, 52, 1, 1,
290
+ 1, 52, 52, 52, 52, 52, 52, 52,
291
+ 52, 52, 52, 52, 52, 52, 52, 52,
292
+ 52, 52, 52, 52, 52, 52, 52, 52,
293
+ 52, 52, 52, 52, 52, 52, 52, 52,
294
+ 52, 52, 1, 54, 54, 54, 54, 54,
295
+ 54, 54, 54, 54, 1, 54, 54, 55,
296
+ 54, 54, 54, 54, 54, 54, 54, 54,
297
+ 54, 54, 54, 54, 54, 54, 54, 54,
298
+ 54, 54, 54, 54, 54, 54, 54, 54,
299
+ 54, 54, 56, 57, 54, 54, 54, 54,
300
+ 54, 54, 54, 54, 54, 54, 54, 54,
301
+ 54, 54, 54, 54, 54, 54, 54, 54,
302
+ 54, 54, 54, 54, 54, 54, 54, 54,
303
+ 54, 54, 54, 54, 54, 54, 54, 54,
304
+ 54, 54, 54, 54, 54, 54, 54, 54,
305
+ 54, 54, 54, 54, 54, 54, 58, 54,
306
+ 54, 54, 54, 54, 54, 54, 54, 54,
307
+ 54, 54, 54, 54, 54, 54, 54, 54,
308
+ 54, 54, 54, 54, 54, 54, 54, 54,
309
+ 54, 54, 54, 54, 54, 54, 54, 54,
310
+ 54, 54, 1, 1, 1, 1, 1, 1,
311
+ 1, 1, 1, 1, 1, 1, 1, 1,
312
+ 1, 1, 1, 1, 1, 1, 1, 1,
313
+ 1, 1, 1, 1, 1, 1, 1, 1,
314
+ 1, 1, 1, 1, 1, 1, 1, 1,
315
+ 1, 1, 1, 1, 1, 1, 1, 1,
316
+ 1, 1, 1, 1, 1, 1, 1, 1,
317
+ 1, 1, 1, 1, 1, 1, 1, 1,
318
+ 1, 1, 1, 1, 59, 59, 59, 59,
319
+ 59, 59, 59, 59, 59, 59, 59, 59,
320
+ 59, 59, 59, 59, 59, 59, 59, 59,
321
+ 59, 59, 59, 59, 59, 59, 59, 59,
322
+ 59, 59, 60, 61, 61, 61, 61, 61,
323
+ 61, 61, 61, 61, 61, 61, 61, 62,
324
+ 61, 61, 63, 64, 64, 64, 65, 1,
325
+ 66, 66, 66, 66, 66, 66, 66, 66,
326
+ 66, 1, 66, 66, 67, 66, 66, 66,
327
+ 66, 66, 66, 66, 66, 66, 66, 66,
328
+ 66, 66, 66, 66, 66, 66, 66, 66,
329
+ 66, 66, 66, 66, 66, 66, 66, 68,
330
+ 69, 66, 66, 66, 66, 66, 66, 66,
331
+ 66, 66, 66, 66, 66, 66, 66, 66,
332
+ 66, 66, 66, 66, 66, 66, 66, 66,
333
+ 66, 66, 66, 66, 66, 66, 66, 66,
334
+ 66, 66, 66, 66, 66, 66, 66, 66,
335
+ 66, 66, 66, 66, 66, 66, 66, 66,
336
+ 66, 66, 66, 70, 66, 66, 66, 66,
337
+ 66, 66, 66, 66, 66, 66, 66, 66,
338
+ 66, 66, 66, 66, 66, 66, 66, 66,
339
+ 66, 66, 66, 66, 66, 66, 66, 66,
340
+ 66, 66, 66, 66, 66, 66, 66, 1,
341
+ 1, 1, 1, 1, 1, 1, 1, 1,
342
+ 1, 1, 1, 1, 1, 1, 1, 1,
343
+ 1, 1, 1, 1, 1, 1, 1, 1,
344
+ 1, 1, 1, 1, 1, 1, 1, 1,
345
+ 1, 1, 1, 1, 1, 1, 1, 1,
346
+ 1, 1, 1, 1, 1, 1, 1, 1,
347
+ 1, 1, 1, 1, 1, 1, 1, 1,
348
+ 1, 1, 1, 1, 1, 1, 1, 1,
349
+ 1, 71, 71, 71, 71, 71, 71, 71,
350
+ 71, 71, 71, 71, 71, 71, 71, 71,
351
+ 71, 71, 71, 71, 71, 71, 71, 71,
352
+ 71, 71, 71, 71, 71, 71, 71, 72,
353
+ 73, 73, 73, 73, 73, 73, 73, 73,
354
+ 73, 73, 73, 73, 74, 73, 73, 75,
355
+ 76, 76, 76, 77, 1, 78, 1, 66,
356
+ 1, 1, 1, 1, 1, 1, 1, 1,
357
+ 1, 1, 1, 1, 1, 1, 1, 1,
358
+ 1, 1, 1, 1, 1, 1, 66, 1,
359
+ 66, 66, 66, 66, 66, 66, 66, 66,
360
+ 66, 66, 66, 66, 66, 66, 66, 66,
361
+ 66, 66, 66, 66, 66, 66, 66, 66,
362
+ 66, 66, 66, 66, 66, 66, 66, 66,
363
+ 66, 66, 66, 66, 66, 66, 66, 66,
364
+ 66, 66, 66, 66, 66, 66, 66, 66,
365
+ 66, 66, 66, 66, 66, 66, 66, 66,
366
+ 66, 66, 66, 66, 66, 66, 66, 66,
367
+ 66, 66, 66, 66, 66, 66, 66, 66,
368
+ 66, 66, 66, 66, 66, 66, 66, 66,
369
+ 66, 66, 66, 66, 66, 66, 66, 66,
370
+ 66, 66, 66, 66, 66, 66, 66, 66,
371
+ 66, 66, 66, 66, 66, 66, 66, 66,
372
+ 66, 66, 66, 66, 66, 66, 66, 66,
373
+ 66, 66, 66, 66, 66, 66, 66, 66,
374
+ 66, 66, 66, 66, 66, 66, 66, 66,
375
+ 1, 1, 1, 1, 1, 1, 1, 1,
376
+ 1, 1, 1, 1, 1, 1, 1, 1,
377
+ 1, 1, 1, 1, 1, 1, 1, 1,
378
+ 1, 1, 1, 1, 1, 1, 1, 1,
379
+ 1, 1, 1, 1, 1, 1, 1, 1,
380
+ 1, 1, 1, 1, 1, 1, 1, 1,
381
+ 1, 1, 1, 1, 1, 1, 1, 1,
382
+ 1, 1, 1, 1, 1, 1, 1, 1,
383
+ 1, 1, 71, 71, 71, 71, 71, 71,
384
+ 71, 71, 71, 71, 71, 71, 71, 71,
385
+ 71, 71, 71, 71, 71, 71, 71, 71,
386
+ 71, 71, 71, 71, 71, 71, 71, 71,
387
+ 72, 73, 73, 73, 73, 73, 73, 73,
388
+ 73, 73, 73, 73, 73, 74, 73, 73,
389
+ 75, 76, 76, 76, 77, 1, 66, 66,
390
+ 66, 66, 66, 66, 66, 66, 66, 66,
391
+ 66, 66, 66, 66, 66, 66, 66, 66,
392
+ 66, 66, 66, 66, 66, 66, 66, 66,
393
+ 66, 66, 66, 66, 66, 66, 66, 66,
394
+ 66, 66, 66, 66, 66, 66, 66, 66,
395
+ 66, 66, 66, 66, 66, 66, 66, 66,
396
+ 66, 66, 66, 66, 66, 66, 66, 66,
397
+ 66, 66, 66, 66, 66, 66, 1, 71,
398
+ 71, 71, 71, 71, 71, 71, 71, 71,
399
+ 71, 71, 71, 71, 71, 71, 71, 71,
400
+ 71, 71, 71, 71, 71, 71, 71, 71,
401
+ 71, 71, 71, 71, 71, 71, 71, 1,
402
+ 71, 71, 71, 71, 71, 71, 71, 71,
403
+ 71, 71, 71, 71, 71, 71, 71, 71,
404
+ 71, 71, 71, 71, 71, 71, 71, 71,
405
+ 71, 71, 71, 71, 71, 71, 71, 71,
406
+ 71, 71, 71, 71, 71, 71, 71, 71,
407
+ 71, 71, 71, 71, 71, 71, 71, 71,
408
+ 71, 71, 71, 71, 71, 71, 71, 71,
409
+ 71, 71, 71, 71, 71, 71, 71, 71,
410
+ 1, 71, 71, 71, 71, 71, 71, 71,
411
+ 71, 71, 71, 71, 71, 71, 71, 71,
412
+ 71, 71, 71, 71, 71, 71, 71, 71,
413
+ 71, 71, 71, 71, 71, 71, 71, 71,
414
+ 71, 1, 73, 73, 73, 73, 73, 73,
415
+ 73, 73, 73, 73, 73, 73, 73, 73,
416
+ 73, 73, 73, 73, 73, 73, 73, 73,
417
+ 73, 73, 73, 73, 73, 73, 73, 73,
418
+ 73, 73, 73, 73, 73, 73, 73, 73,
419
+ 73, 73, 73, 73, 73, 73, 73, 73,
420
+ 73, 73, 1, 73, 73, 73, 73, 73,
421
+ 73, 73, 73, 73, 73, 73, 73, 73,
422
+ 73, 73, 73, 73, 73, 73, 73, 73,
423
+ 73, 73, 73, 73, 73, 73, 73, 73,
424
+ 73, 73, 73, 73, 73, 73, 73, 73,
425
+ 73, 73, 73, 73, 73, 73, 73, 73,
426
+ 73, 73, 73, 73, 73, 73, 73, 73,
427
+ 73, 73, 73, 73, 73, 73, 73, 73,
428
+ 73, 73, 73, 1, 73, 73, 73, 73,
429
+ 73, 73, 73, 73, 73, 73, 73, 73,
430
+ 73, 73, 73, 73, 1, 79, 79, 79,
431
+ 79, 79, 79, 79, 1, 1, 79, 79,
432
+ 79, 79, 79, 1, 79, 79, 79, 79,
433
+ 79, 79, 79, 79, 79, 79, 1, 80,
434
+ 1, 1, 1, 1, 1, 79, 79, 79,
435
+ 79, 79, 79, 79, 79, 79, 79, 79,
436
+ 79, 79, 79, 79, 79, 79, 79, 79,
437
+ 79, 79, 79, 79, 79, 79, 79, 1,
438
+ 1, 1, 79, 79, 79, 79, 79, 79,
439
+ 79, 79, 79, 79, 79, 79, 79, 79,
440
+ 79, 79, 79, 79, 79, 79, 79, 79,
441
+ 79, 79, 79, 79, 79, 79, 79, 79,
442
+ 79, 79, 79, 1, 81, 1, 1, 1,
443
+ 82, 1, 1, 1, 1, 1, 1, 1,
444
+ 1, 1, 1, 1, 1, 1, 1, 1,
445
+ 1, 1, 1, 81, 1, 1, 1, 1,
446
+ 1, 1, 1, 83, 1, 1, 1, 1,
447
+ 1, 1, 1, 1, 1, 1, 1, 1,
448
+ 1, 1, 1, 1, 1, 1, 84, 1,
449
+ 85, 1, 1, 1, 86, 1, 1, 1,
450
+ 1, 1, 1, 1, 1, 1, 1, 1,
451
+ 1, 1, 1, 1, 1, 1, 1, 85,
452
+ 1, 1, 1, 1, 1, 1, 1, 87,
453
+ 1, 1, 1, 1, 1, 1, 1, 1,
454
+ 1, 1, 1, 1, 1, 1, 1, 1,
455
+ 1, 1, 88, 1, 89, 1, 1, 1,
456
+ 90, 1, 1, 1, 1, 1, 1, 1,
457
+ 1, 1, 1, 1, 1, 1, 1, 1,
458
+ 1, 1, 1, 89, 91, 1, 91, 91,
459
+ 91, 91, 91, 92, 1, 91, 91, 91,
460
+ 91, 91, 1, 91, 91, 91, 91, 91,
461
+ 91, 91, 91, 91, 91, 1, 84, 1,
462
+ 91, 1, 1, 1, 91, 91, 91, 91,
463
+ 91, 91, 91, 91, 91, 91, 91, 91,
464
+ 91, 91, 91, 91, 91, 91, 91, 91,
465
+ 91, 91, 91, 91, 91, 91, 1, 1,
466
+ 1, 91, 91, 91, 91, 91, 91, 91,
467
+ 91, 91, 91, 91, 91, 91, 91, 91,
468
+ 91, 91, 91, 91, 91, 91, 91, 91,
469
+ 91, 91, 91, 91, 91, 91, 91, 91,
470
+ 91, 91, 1, 49, 1, 1, 1, 93,
471
+ 1, 1, 1, 1, 1, 1, 1, 1,
472
+ 1, 1, 1, 1, 1, 1, 1, 1,
473
+ 1, 1, 49, 1, 1, 1, 1, 1,
474
+ 1, 1, 94, 1, 1, 1, 1, 1,
475
+ 1, 1, 1, 1, 1, 1, 1, 1,
476
+ 1, 1, 1, 1, 1, 2, 1, 95,
477
+ 1, 1, 1, 96, 1, 1, 1, 1,
478
+ 1, 1, 1, 1, 1, 1, 1, 1,
479
+ 1, 1, 1, 1, 1, 1, 95, 1,
480
+ 1, 1, 1, 1, 1, 1, 97, 1,
481
+ 1, 1, 1, 1, 1, 1, 1, 1,
482
+ 1, 1, 1, 1, 1, 1, 1, 1,
483
+ 1, 50, 1, 1, 0,
484
+ ]
485
+
486
+ class << self
487
+ attr_accessor :_trans_targs
488
+ private :_trans_targs, :_trans_targs=
489
+ end
490
+ self._trans_targs = [
491
+ 40, 0, 2, 3, 5, 27, 4, 5,
492
+ 6, 7, 8, 43, 10, 24, 7, 8,
493
+ 10, 24, 9, 11, 12, 41, 16, 17,
494
+ 18, 19, 20, 21, 22, 23, 11, 12,
495
+ 41, 16, 17, 18, 19, 20, 21, 22,
496
+ 23, 13, 15, 41, 7, 8, 10, 24,
497
+ 26, 44, 2, 3, 5, 27, 29, 30,
498
+ 29, 46, 32, 33, 34, 35, 36, 37,
499
+ 38, 39, 29, 30, 29, 46, 32, 33,
500
+ 34, 35, 36, 37, 38, 39, 31, 40,
501
+ 2, 41, 14, 42, 2, 41, 14, 42,
502
+ 2, 44, 25, 43, 45, 25, 45, 44,
503
+ 25, 45,
504
+ ]
505
+
506
+ class << self
507
+ attr_accessor :_trans_actions
508
+ private :_trans_actions, :_trans_actions=
509
+ end
510
+ self._trans_actions = [
511
+ 1, 0, 0, 0, 2, 3, 0, 0,
512
+ 4, 5, 5, 5, 5, 6, 0, 0,
513
+ 0, 3, 0, 7, 7, 8, 7, 7,
514
+ 7, 7, 7, 7, 7, 7, 0, 0,
515
+ 9, 0, 0, 0, 0, 0, 0, 0,
516
+ 0, 0, 0, 0, 10, 10, 10, 11,
517
+ 0, 0, 10, 10, 12, 11, 13, 13,
518
+ 14, 15, 13, 13, 13, 13, 13, 13,
519
+ 13, 13, 0, 0, 3, 16, 0, 0,
520
+ 0, 0, 0, 0, 0, 0, 0, 0,
521
+ 17, 18, 18, 19, 18, 20, 20, 21,
522
+ 20, 18, 18, 0, 22, 0, 3, 10,
523
+ 10, 11,
524
+ ]
525
+
526
+ class << self
527
+ attr_accessor :_eof_actions
528
+ private :_eof_actions, :_eof_actions=
529
+ end
530
+ self._eof_actions = [
531
+ 0, 0, 0, 0, 0, 0, 0, 0,
532
+ 0, 0, 0, 0, 0, 0, 0, 0,
533
+ 0, 0, 0, 0, 0, 0, 0, 0,
534
+ 0, 0, 0, 0, 0, 0, 0, 0,
535
+ 0, 0, 0, 0, 0, 0, 0, 0,
536
+ 17, 18, 20, 18, 0, 10, 0,
537
+ ]
538
+
539
+ class << self
540
+ attr_accessor :start
541
+ end
542
+ self.start = 1
543
+ class << self
544
+ attr_accessor :first_final
545
+ end
546
+ self.first_final = 40
547
+ class << self
548
+ attr_accessor :error
549
+ end
550
+ self.error = 0
565
551
 
552
+ class << self
553
+ attr_accessor :en_comment_tail
554
+ end
555
+ self.en_comment_tail = 28
556
+ class << self
557
+ attr_accessor :en_main
558
+ end
559
+ self.en_main = 1
566
560
 
567
561
  def self.parse(data)
568
562
  data = data.dup.force_encoding(Encoding::ASCII_8BIT) if data.respond_to?(:force_encoding)
569
563
 
570
- content_disposition = ContentDispositionStruct.new('', [])
564
+ content_disposition = ContentDispositionStruct.new("", [])
571
565
  return content_disposition if Mail::Utilities.blank?(data)
572
566
 
573
567
  # Parser state
@@ -578,318 +572,318 @@ self.en_main = 1;
578
572
  eof = pe = data.length
579
573
  stack = []
580
574
 
581
-
582
- begin
583
- p ||= 0
584
- pe ||= data.length
585
- cs = start
586
- top = 0
587
- end
588
-
589
-
590
- begin
591
- testEof = false
592
- _slen, _trans, _keys, _inds, _acts, _nacts = nil
593
- _goto_level = 0
594
- _resume = 10
595
- _eof_trans = 15
596
- _again = 20
597
- _test_eof = 30
598
- _out = 40
599
- while true
600
- if _goto_level <= 0
601
- if p == pe
602
- _goto_level = _test_eof
603
- next
604
- end
605
- if cs == 0
606
- _goto_level = _out
607
- next
608
- end
609
- end
610
- if _goto_level <= _resume
611
- _keys = cs << 1
612
- _inds = _index_offsets[cs]
613
- _slen = _key_spans[cs]
614
- _wide = data[p].ord
615
- _trans = if ( _slen > 0 &&
616
- _trans_keys[_keys] <= _wide &&
617
- _wide <= _trans_keys[_keys + 1]
618
- ) then
619
- _indicies[ _inds + _wide - _trans_keys[_keys] ]
620
- else
621
- _indicies[ _inds + _slen ]
622
- end
623
- cs = _trans_targs[_trans]
624
- if _trans_actions[_trans] != 0
625
- case _trans_actions[_trans]
626
- when 1 then
627
- begin
628
- disp_type_s = p end
629
- when 17 then
630
- begin
631
- content_disposition.disposition_type = chars(data, disp_type_s, p-1).downcase end
632
- when 2 then
633
- begin
634
- param_attr_s = p end
635
- when 4 then
636
- begin
637
- param_attr = chars(data, param_attr_s, p-1) end
638
- when 7 then
639
- begin
640
- qstr_s = p end
641
- when 9 then
642
- begin
643
- qstr = chars(data, qstr_s, p-1) end
644
- when 5 then
645
- begin
646
- param_val_s = p end
647
- when 18 then
648
- begin
649
-
650
- if param_attr.nil?
651
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
652
- end
653
-
654
- # Use quoted string value if one exists, otherwise use parameter value
655
- value = qstr || chars(data, param_val_s, p-1)
656
-
657
- content_disposition.parameters << { param_attr => value }
658
- param_attr = nil
659
- qstr = nil
660
- end
661
- when 10 then
662
- begin
663
- end
664
- when 13 then
665
- begin
666
- end
667
- when 3 then
668
- begin
669
- begin
670
- stack[top] = cs
671
- top+= 1
672
- cs = 28
673
- _goto_level = _again
674
- next
675
- end
676
- end
677
- when 16 then
678
- begin
679
- begin
680
- top -= 1
681
- cs = stack[top]
682
- _goto_level = _again
683
- next
684
- end
685
- end
686
- when 8 then
687
- begin
688
- qstr_s = p end
689
- begin
690
- qstr = chars(data, qstr_s, p-1) end
691
- when 6 then
692
- begin
693
- param_val_s = p end
694
- begin
695
- begin
696
- stack[top] = cs
697
- top+= 1
698
- cs = 28
699
- _goto_level = _again
700
- next
701
- end
702
- end
703
- when 22 then
704
- begin
705
-
706
- if param_attr.nil?
707
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
708
- end
709
-
710
- # Use quoted string value if one exists, otherwise use parameter value
711
- value = qstr || chars(data, param_val_s, p-1)
712
-
713
- content_disposition.parameters << { param_attr => value }
714
- param_attr = nil
715
- qstr = nil
716
- end
717
- begin
718
- begin
719
- stack[top] = cs
720
- top+= 1
721
- cs = 28
722
- _goto_level = _again
723
- next
724
- end
725
- end
726
- when 12 then
727
- begin
728
- end
729
- begin
730
- param_attr_s = p end
731
- when 20 then
732
- begin
733
- end
734
- begin
735
-
736
- if param_attr.nil?
737
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
738
- end
739
-
740
- # Use quoted string value if one exists, otherwise use parameter value
741
- value = qstr || chars(data, param_val_s, p-1)
742
-
743
- content_disposition.parameters << { param_attr => value }
744
- param_attr = nil
745
- qstr = nil
746
- end
747
- when 11 then
748
- begin
749
- end
750
- begin
751
- begin
752
- stack[top] = cs
753
- top+= 1
754
- cs = 28
755
- _goto_level = _again
756
- next
757
- end
758
- end
759
- when 14 then
760
- begin
761
- end
762
- begin
763
- begin
764
- stack[top] = cs
765
- top+= 1
766
- cs = 28
767
- _goto_level = _again
768
- next
769
- end
770
- end
771
- when 15 then
772
- begin
773
- end
774
- begin
775
- begin
776
- top -= 1
777
- cs = stack[top]
778
- _goto_level = _again
779
- next
780
- end
781
- end
782
- when 19 then
783
- begin
784
- begin
785
- stack[top] = cs
786
- top+= 1
787
- cs = 28
788
- _goto_level = _again
789
- next
790
- end
791
- end
792
- begin
793
-
794
- if param_attr.nil?
795
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
796
- end
797
-
798
- # Use quoted string value if one exists, otherwise use parameter value
799
- value = qstr || chars(data, param_val_s, p-1)
800
-
801
- content_disposition.parameters << { param_attr => value }
802
- param_attr = nil
803
- qstr = nil
804
- end
805
- when 21 then
806
- begin
807
- end
808
- begin
809
- begin
810
- stack[top] = cs
811
- top+= 1
812
- cs = 28
813
- _goto_level = _again
814
- next
815
- end
816
- end
817
- begin
818
-
819
- if param_attr.nil?
820
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
821
- end
822
-
823
- # Use quoted string value if one exists, otherwise use parameter value
824
- value = qstr || chars(data, param_val_s, p-1)
825
-
826
- content_disposition.parameters << { param_attr => value }
827
- param_attr = nil
828
- qstr = nil
829
- end
830
- end
831
- end
832
- end
833
- if _goto_level <= _again
834
- if cs == 0
835
- _goto_level = _out
836
- next
837
- end
838
- p += 1
839
- if p != pe
840
- _goto_level = _resume
841
- next
842
- end
843
- end
844
- if _goto_level <= _test_eof
845
- if p == eof
846
- case _eof_actions[cs]
847
- when 17 then
848
- begin
849
- content_disposition.disposition_type = chars(data, disp_type_s, p-1).downcase end
850
- when 18 then
851
- begin
852
-
853
- if param_attr.nil?
854
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
855
- end
856
-
857
- # Use quoted string value if one exists, otherwise use parameter value
858
- value = qstr || chars(data, param_val_s, p-1)
859
-
860
- content_disposition.parameters << { param_attr => value }
861
- param_attr = nil
862
- qstr = nil
863
- end
864
- when 10 then
865
- begin
866
- end
867
- when 20 then
868
- begin
869
- end
870
- begin
871
-
872
- if param_attr.nil?
873
- raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
874
- end
875
-
876
- # Use quoted string value if one exists, otherwise use parameter value
877
- value = qstr || chars(data, param_val_s, p-1)
878
-
879
- content_disposition.parameters << { param_attr => value }
880
- param_attr = nil
881
- qstr = nil
882
- end
883
- end
884
- end
885
-
886
- end
887
- if _goto_level <= _out
888
- break
889
- end
890
- end
891
- end
575
+ begin
576
+ p ||= 0
577
+ pe ||= data.length
578
+ cs = start
579
+ top = 0
580
+ end
892
581
 
582
+ begin
583
+ testEof = false
584
+ _slen, _trans, _keys, _inds, _acts, _nacts = nil
585
+ _goto_level = 0
586
+ _resume = 10
587
+ _eof_trans = 15
588
+ _again = 20
589
+ _test_eof = 30
590
+ _out = 40
591
+ while true
592
+ if _goto_level <= 0
593
+ if p == pe
594
+ _goto_level = _test_eof
595
+ next
596
+ end
597
+ if cs == 0
598
+ _goto_level = _out
599
+ next
600
+ end
601
+ end
602
+ if _goto_level <= _resume
603
+ _keys = cs << 1
604
+ _inds = _index_offsets[cs]
605
+ _slen = _key_spans[cs]
606
+ _wide = data[p].ord
607
+ _trans = if (_slen > 0 &&
608
+ _trans_keys[_keys] <= _wide &&
609
+ _wide <= _trans_keys[_keys + 1])
610
+ _indicies[_inds + _wide - _trans_keys[_keys]]
611
+ else
612
+ _indicies[_inds + _slen]
613
+ end
614
+ cs = _trans_targs[_trans]
615
+ if _trans_actions[_trans] != 0
616
+ case _trans_actions[_trans]
617
+ when 1
618
+ begin
619
+ disp_type_s = p
620
+ end
621
+ when 17
622
+ begin
623
+ content_disposition.disposition_type = chars(data, disp_type_s, p - 1).downcase
624
+ end
625
+ when 2
626
+ begin
627
+ param_attr_s = p
628
+ end
629
+ when 4
630
+ begin
631
+ param_attr = chars(data, param_attr_s, p - 1)
632
+ end
633
+ when 7
634
+ begin
635
+ qstr_s = p
636
+ end
637
+ when 9
638
+ begin
639
+ qstr = chars(data, qstr_s, p - 1)
640
+ end
641
+ when 5
642
+ begin
643
+ param_val_s = p
644
+ end
645
+ when 18
646
+ begin
647
+ if param_attr.nil?
648
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
649
+ end
650
+
651
+ # Use quoted string value if one exists, otherwise use parameter value
652
+ value = qstr || chars(data, param_val_s, p - 1)
653
+
654
+ content_disposition.parameters << {param_attr => value}
655
+ param_attr = nil
656
+ qstr = nil
657
+ end
658
+ when 10
659
+ begin
660
+ end
661
+ when 13
662
+ begin
663
+ end
664
+ when 3
665
+ begin
666
+ begin
667
+ stack[top] = cs
668
+ top += 1
669
+ cs = 28
670
+ _goto_level = _again
671
+ next
672
+ end
673
+ end
674
+ when 16
675
+ begin
676
+ begin
677
+ top -= 1
678
+ cs = stack[top]
679
+ _goto_level = _again
680
+ next
681
+ end
682
+ end
683
+ when 8
684
+ begin
685
+ qstr_s = p
686
+ end
687
+ begin
688
+ qstr = chars(data, qstr_s, p - 1)
689
+ end
690
+ when 6
691
+ begin
692
+ param_val_s = p
693
+ end
694
+ begin
695
+ begin
696
+ stack[top] = cs
697
+ top += 1
698
+ cs = 28
699
+ _goto_level = _again
700
+ next
701
+ end
702
+ end
703
+ when 22
704
+ begin
705
+ if param_attr.nil?
706
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
707
+ end
708
+
709
+ # Use quoted string value if one exists, otherwise use parameter value
710
+ value = qstr || chars(data, param_val_s, p - 1)
711
+
712
+ content_disposition.parameters << {param_attr => value}
713
+ param_attr = nil
714
+ qstr = nil
715
+ end
716
+ begin
717
+ begin
718
+ stack[top] = cs
719
+ top += 1
720
+ cs = 28
721
+ _goto_level = _again
722
+ next
723
+ end
724
+ end
725
+ when 12
726
+ begin
727
+ end
728
+ begin
729
+ param_attr_s = p
730
+ end
731
+ when 20
732
+ begin
733
+ end
734
+ begin
735
+ if param_attr.nil?
736
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
737
+ end
738
+
739
+ # Use quoted string value if one exists, otherwise use parameter value
740
+ value = qstr || chars(data, param_val_s, p - 1)
741
+
742
+ content_disposition.parameters << {param_attr => value}
743
+ param_attr = nil
744
+ qstr = nil
745
+ end
746
+ when 11
747
+ begin
748
+ end
749
+ begin
750
+ begin
751
+ stack[top] = cs
752
+ top += 1
753
+ cs = 28
754
+ _goto_level = _again
755
+ next
756
+ end
757
+ end
758
+ when 14
759
+ begin
760
+ end
761
+ begin
762
+ begin
763
+ stack[top] = cs
764
+ top += 1
765
+ cs = 28
766
+ _goto_level = _again
767
+ next
768
+ end
769
+ end
770
+ when 15
771
+ begin
772
+ end
773
+ begin
774
+ begin
775
+ top -= 1
776
+ cs = stack[top]
777
+ _goto_level = _again
778
+ next
779
+ end
780
+ end
781
+ when 19
782
+ begin
783
+ begin
784
+ stack[top] = cs
785
+ top += 1
786
+ cs = 28
787
+ _goto_level = _again
788
+ next
789
+ end
790
+ end
791
+ begin
792
+ if param_attr.nil?
793
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
794
+ end
795
+
796
+ # Use quoted string value if one exists, otherwise use parameter value
797
+ value = qstr || chars(data, param_val_s, p - 1)
798
+
799
+ content_disposition.parameters << {param_attr => value}
800
+ param_attr = nil
801
+ qstr = nil
802
+ end
803
+ when 21
804
+ begin
805
+ end
806
+ begin
807
+ begin
808
+ stack[top] = cs
809
+ top += 1
810
+ cs = 28
811
+ _goto_level = _again
812
+ next
813
+ end
814
+ end
815
+ begin
816
+ if param_attr.nil?
817
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
818
+ end
819
+
820
+ # Use quoted string value if one exists, otherwise use parameter value
821
+ value = qstr || chars(data, param_val_s, p - 1)
822
+
823
+ content_disposition.parameters << {param_attr => value}
824
+ param_attr = nil
825
+ qstr = nil
826
+ end
827
+ end
828
+ end
829
+ end
830
+ if _goto_level <= _again
831
+ if cs == 0
832
+ _goto_level = _out
833
+ next
834
+ end
835
+ p += 1
836
+ if p != pe
837
+ _goto_level = _resume
838
+ next
839
+ end
840
+ end
841
+ if _goto_level <= _test_eof
842
+ if p == eof
843
+ case _eof_actions[cs]
844
+ when 17
845
+ begin
846
+ content_disposition.disposition_type = chars(data, disp_type_s, p - 1).downcase
847
+ end
848
+ when 18
849
+ begin
850
+ if param_attr.nil?
851
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
852
+ end
853
+
854
+ # Use quoted string value if one exists, otherwise use parameter value
855
+ value = qstr || chars(data, param_val_s, p - 1)
856
+
857
+ content_disposition.parameters << {param_attr => value}
858
+ param_attr = nil
859
+ qstr = nil
860
+ end
861
+ when 10
862
+ begin
863
+ end
864
+ when 20
865
+ begin
866
+ end
867
+ begin
868
+ if param_attr.nil?
869
+ raise Mail::Field::ParseError.new(Mail::ContentDispositionElement, data, "no attribute for value")
870
+ end
871
+
872
+ # Use quoted string value if one exists, otherwise use parameter value
873
+ value = qstr || chars(data, param_val_s, p - 1)
874
+
875
+ content_disposition.parameters << {param_attr => value}
876
+ param_attr = nil
877
+ qstr = nil
878
+ end
879
+ end
880
+ end
881
+ end
882
+ if _goto_level <= _out
883
+ break
884
+ end
885
+ end
886
+ end
893
887
 
894
888
  if p != eof || cs < 40
895
889
  raise Mail::Field::IncompleteParseError.new(Mail::ContentDispositionElement, data, p)