vorax 0.4.2 → 5.0

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.
Files changed (56) hide show
  1. data/README.md +4 -29
  2. data/vorax.gemspec +3 -11
  3. metadata +4 -92
  4. data/.rspec +0 -1
  5. data/Rakefile +0 -30
  6. data/lib/vorax.rb +0 -60
  7. data/lib/vorax/base_funnel.rb +0 -30
  8. data/lib/vorax/output/html_convertor.rb +0 -120
  9. data/lib/vorax/output/html_funnel.rb +0 -79
  10. data/lib/vorax/output/pagezip_convertor.rb +0 -20
  11. data/lib/vorax/output/tablezip_convertor.rb +0 -22
  12. data/lib/vorax/output/vertical_convertor.rb +0 -53
  13. data/lib/vorax/output/zip_convertor.rb +0 -117
  14. data/lib/vorax/parser/argument.rb~ +0 -125
  15. data/lib/vorax/parser/conn_string.rb +0 -104
  16. data/lib/vorax/parser/grammars/alias.rb +0 -904
  17. data/lib/vorax/parser/grammars/alias.rl +0 -138
  18. data/lib/vorax/parser/grammars/column.rb +0 -454
  19. data/lib/vorax/parser/grammars/column.rl +0 -64
  20. data/lib/vorax/parser/grammars/common.rl +0 -107
  21. data/lib/vorax/parser/grammars/declare.rb +0 -9606
  22. data/lib/vorax/parser/grammars/declare.rl +0 -160
  23. data/lib/vorax/parser/grammars/for_block.rb +0 -440
  24. data/lib/vorax/parser/grammars/for_block.rl +0 -73
  25. data/lib/vorax/parser/grammars/plsql_def.rb +0 -539
  26. data/lib/vorax/parser/grammars/plsql_def.rl +0 -73
  27. data/lib/vorax/parser/grammars/statement.rb +0 -925
  28. data/lib/vorax/parser/grammars/statement.rl +0 -83
  29. data/lib/vorax/parser/parser.rb +0 -344
  30. data/lib/vorax/parser/plsql_structure.rb +0 -222
  31. data/lib/vorax/parser/plsql_walker.rb +0 -143
  32. data/lib/vorax/parser/statement_inspector.rb~ +0 -52
  33. data/lib/vorax/parser/stmt_inspector.rb +0 -78
  34. data/lib/vorax/parser/target_ref.rb +0 -110
  35. data/lib/vorax/sqlplus.rb +0 -273
  36. data/lib/vorax/version.rb +0 -7
  37. data/lib/vorax/vorax_io.rb +0 -70
  38. data/spec/column_spec.rb +0 -40
  39. data/spec/conn_string_spec.rb +0 -53
  40. data/spec/declare_spec.rb +0 -281
  41. data/spec/pagezip_spec.rb +0 -153
  42. data/spec/parser_spec.rb +0 -352
  43. data/spec/plsql_structure_spec.rb +0 -68
  44. data/spec/spec_helper.rb +0 -13
  45. data/spec/sql/create_objects.sql +0 -69
  46. data/spec/sql/dbms_crypto.spc +0 -339
  47. data/spec/sql/dbms_stats.spc +0 -4097
  48. data/spec/sql/drop_user.sql +0 -10
  49. data/spec/sql/muci.spc +0 -26
  50. data/spec/sql/setup_user.sql +0 -22
  51. data/spec/sql/test.fnc +0 -12
  52. data/spec/sql/test.pkg +0 -83
  53. data/spec/sqlplus_spec.rb +0 -52
  54. data/spec/stmt_inspector_spec.rb +0 -96
  55. data/spec/tablezip_spec.rb +0 -111
  56. data/spec/vertical_spec.rb +0 -150
@@ -1,904 +0,0 @@
1
-
2
- # line 1 "lib/vorax/parser/grammars/alias.rl"
3
-
4
- # line 72 "lib/vorax/parser/grammars/alias.rl"
5
-
6
-
7
- module Vorax
8
-
9
- module Parser
10
-
11
- # An abstraction for an alias within a SQL statement.
12
- class Alias
13
-
14
- def initialize
15
- @not_alias = ['ON', 'WHERE', 'FROM', 'CONNECT', 'START',
16
- 'GROUP', 'HAVING', 'MODEL']
17
- end
18
-
19
- # Walks the provided statement searching for alias references.
20
- #
21
- # @param data the statement
22
- def walk(data)
23
- @refs = [];
24
- @start_columns = 0
25
- @columns = nil;
26
- data << "\n"
27
- eof = data.length
28
-
29
- # line 30 "lib/vorax/parser/grammars/alias.rb"
30
- class << self
31
- attr_accessor :_alias_actions
32
- private :_alias_actions, :_alias_actions=
33
- end
34
- self._alias_actions = [
35
- 0, 1, 1, 1, 2, 1, 3, 1,
36
- 6, 1, 8, 1, 9, 1, 10, 1,
37
- 15, 1, 16, 1, 17, 1, 18, 1,
38
- 19, 1, 21, 1, 22, 1, 23, 1,
39
- 24, 1, 25, 1, 26, 1, 27, 2,
40
- 1, 19, 2, 1, 21, 2, 3, 19,
41
- 2, 3, 21, 2, 5, 2, 2, 6,
42
- 20, 2, 7, 0, 2, 10, 2, 2,
43
- 10, 4, 2, 10, 11, 2, 10, 12,
44
- 2, 10, 13, 2, 10, 14, 3, 10,
45
- 7, 0, 3, 10, 7, 4
46
- ]
47
-
48
- class << self
49
- attr_accessor :_alias_key_offsets
50
- private :_alias_key_offsets, :_alias_key_offsets=
51
- end
52
- self._alias_key_offsets = [
53
- 0, 9, 10, 11, 12, 13, 15, 17,
54
- 19, 21, 26, 40, 41, 55, 56, 62,
55
- 76, 77, 78, 79, 87, 88, 89, 90,
56
- 92, 100, 101, 102, 103, 104, 105, 107,
57
- 108, 109, 110, 111, 113, 114, 115, 116,
58
- 117, 119, 121, 123, 125, 130, 144, 145,
59
- 158, 159, 160, 161, 162, 163, 165, 173,
60
- 174, 182, 183, 184, 185, 186, 187, 189,
61
- 190, 191, 192, 193, 195, 197, 199, 201,
62
- 203, 208, 209, 210, 211, 212, 214, 216,
63
- 218, 223, 236, 237, 242, 249, 250, 251,
64
- 252, 253, 255, 257, 263, 269, 282, 283,
65
- 288, 295, 296, 297, 298, 299, 301, 303,
66
- 309, 310, 311, 312, 313, 315, 329, 330,
67
- 331, 332, 333, 335, 336, 337, 338, 339,
68
- 341, 342, 343, 344, 345, 347, 361, 362,
69
- 363, 364, 365, 367, 378, 387, 395, 401,
70
- 418, 425, 431, 446, 462, 468, 483, 490,
71
- 490, 499, 505, 510, 524, 539, 555, 560,
72
- 561, 562, 563, 564, 565, 567, 572, 574
73
- ]
74
-
75
- class << self
76
- attr_accessor :_alias_trans_keys
77
- private :_alias_trans_keys, :_alias_trans_keys=
78
- end
79
- self._alias_trans_keys = [
80
- 32, 45, 47, 70, 74, 102, 106, 9,
81
- 13, 45, 10, 42, 42, 42, 47, 82,
82
- 114, 79, 111, 77, 109, 32, 45, 47,
83
- 9, 13, 32, 34, 40, 45, 47, 95,
84
- 9, 13, 35, 36, 65, 90, 97, 122,
85
- 34, 32, 34, 44, 45, 47, 95, 9,
86
- 13, 35, 36, 65, 90, 97, 122, 34,
87
- 32, 44, 45, 47, 9, 13, 32, 34,
88
- 40, 45, 47, 95, 9, 13, 35, 36,
89
- 65, 90, 97, 122, 34, 45, 10, 34,
90
- 95, 35, 36, 65, 90, 97, 122, 34,
91
- 42, 42, 42, 47, 34, 95, 35, 36,
92
- 65, 90, 97, 122, 34, 45, 10, 42,
93
- 42, 42, 47, 45, 10, 42, 42, 42,
94
- 47, 45, 10, 42, 42, 42, 47, 79,
95
- 111, 73, 105, 78, 110, 32, 45, 47,
96
- 9, 13, 32, 34, 40, 45, 47, 95,
97
- 9, 13, 35, 36, 65, 90, 97, 122,
98
- 34, 32, 34, 45, 47, 95, 9, 13,
99
- 35, 36, 65, 90, 97, 122, 34, 45,
100
- 10, 42, 42, 42, 47, 34, 95, 35,
101
- 36, 65, 90, 97, 122, 34, 34, 95,
102
- 35, 36, 65, 90, 97, 122, 34, 45,
103
- 10, 42, 42, 42, 47, 34, 39, 10,
104
- 42, 42, 47, 76, 108, 69, 101, 67,
105
- 99, 84, 116, 32, 45, 47, 9, 13,
106
- 45, 10, 42, 42, 42, 47, 84, 116,
107
- 72, 104, 32, 45, 47, 9, 13, 32,
108
- 34, 45, 47, 95, 9, 13, 35, 36,
109
- 65, 90, 97, 122, 34, 32, 45, 47,
110
- 9, 13, 32, 45, 47, 65, 97, 9,
111
- 13, 45, 10, 42, 42, 42, 47, 83,
112
- 115, 32, 40, 45, 47, 9, 13, 32,
113
- 44, 45, 47, 9, 13, 32, 34, 45,
114
- 47, 95, 9, 13, 35, 36, 65, 90,
115
- 97, 122, 34, 32, 45, 47, 9, 13,
116
- 32, 45, 47, 65, 97, 9, 13, 45,
117
- 10, 42, 42, 42, 47, 83, 115, 32,
118
- 40, 45, 47, 9, 13, 45, 10, 42,
119
- 42, 42, 47, 32, 45, 47, 95, 9,
120
- 13, 35, 36, 48, 57, 65, 90, 97,
121
- 122, 45, 10, 42, 42, 42, 47, 45,
122
- 10, 42, 42, 42, 47, 45, 10, 42,
123
- 42, 42, 47, 32, 45, 47, 95, 9,
124
- 13, 35, 36, 48, 57, 65, 90, 97,
125
- 122, 45, 10, 42, 42, 42, 47, 32,
126
- 34, 39, 45, 47, 83, 87, 115, 119,
127
- 9, 13, 32, 45, 47, 70, 74, 102,
128
- 106, 9, 13, 32, 44, 45, 46, 47,
129
- 64, 9, 13, 32, 44, 45, 47, 9,
130
- 13, 32, 44, 45, 46, 47, 64, 95,
131
- 9, 13, 35, 36, 48, 57, 65, 90,
132
- 97, 122, 32, 44, 45, 47, 64, 9,
133
- 13, 32, 44, 45, 47, 9, 13, 32,
134
- 44, 45, 47, 95, 9, 13, 35, 36,
135
- 48, 57, 65, 90, 97, 122, 32, 44,
136
- 45, 47, 64, 95, 9, 13, 35, 36,
137
- 48, 57, 65, 90, 97, 122, 32, 44,
138
- 45, 47, 9, 13, 32, 44, 45, 47,
139
- 95, 9, 13, 35, 36, 48, 57, 65,
140
- 90, 97, 122, 32, 45, 46, 47, 64,
141
- 9, 13, 95, 35, 36, 48, 57, 65,
142
- 90, 97, 122, 32, 45, 47, 64, 9,
143
- 13, 32, 45, 47, 9, 13, 32, 45,
144
- 47, 95, 9, 13, 35, 36, 48, 57,
145
- 65, 90, 97, 122, 32, 45, 47, 64,
146
- 95, 9, 13, 35, 36, 48, 57, 65,
147
- 90, 97, 122, 32, 45, 46, 47, 64,
148
- 95, 9, 13, 35, 36, 48, 57, 65,
149
- 90, 97, 122, 32, 45, 47, 9, 13,
150
- 34, 39, 39, 45, 42, 69, 101, 32,
151
- 45, 47, 9, 13, 73, 105, 32, 44,
152
- 45, 47, 9, 13, 0
153
- ]
154
-
155
- class << self
156
- attr_accessor :_alias_single_lengths
157
- private :_alias_single_lengths, :_alias_single_lengths=
158
- end
159
- self._alias_single_lengths = [
160
- 7, 1, 1, 1, 1, 2, 2, 2,
161
- 2, 3, 6, 1, 6, 1, 4, 6,
162
- 1, 1, 1, 2, 1, 1, 1, 2,
163
- 2, 1, 1, 1, 1, 1, 2, 1,
164
- 1, 1, 1, 2, 1, 1, 1, 1,
165
- 2, 2, 2, 2, 3, 6, 1, 5,
166
- 1, 1, 1, 1, 1, 2, 2, 1,
167
- 2, 1, 1, 1, 1, 1, 2, 1,
168
- 1, 1, 1, 2, 2, 2, 2, 2,
169
- 3, 1, 1, 1, 1, 2, 2, 2,
170
- 3, 5, 1, 3, 5, 1, 1, 1,
171
- 1, 2, 2, 4, 4, 5, 1, 3,
172
- 5, 1, 1, 1, 1, 2, 2, 4,
173
- 1, 1, 1, 1, 2, 4, 1, 1,
174
- 1, 1, 2, 1, 1, 1, 1, 2,
175
- 1, 1, 1, 1, 2, 4, 1, 1,
176
- 1, 1, 2, 9, 7, 6, 4, 7,
177
- 5, 4, 5, 6, 4, 5, 5, 0,
178
- 1, 4, 3, 4, 5, 6, 3, 1,
179
- 1, 1, 1, 1, 2, 3, 2, 4
180
- ]
181
-
182
- class << self
183
- attr_accessor :_alias_range_lengths
184
- private :_alias_range_lengths, :_alias_range_lengths=
185
- end
186
- self._alias_range_lengths = [
187
- 1, 0, 0, 0, 0, 0, 0, 0,
188
- 0, 1, 4, 0, 4, 0, 1, 4,
189
- 0, 0, 0, 3, 0, 0, 0, 0,
190
- 3, 0, 0, 0, 0, 0, 0, 0,
191
- 0, 0, 0, 0, 0, 0, 0, 0,
192
- 0, 0, 0, 0, 1, 4, 0, 4,
193
- 0, 0, 0, 0, 0, 0, 3, 0,
194
- 3, 0, 0, 0, 0, 0, 0, 0,
195
- 0, 0, 0, 0, 0, 0, 0, 0,
196
- 1, 0, 0, 0, 0, 0, 0, 0,
197
- 1, 4, 0, 1, 1, 0, 0, 0,
198
- 0, 0, 0, 1, 1, 4, 0, 1,
199
- 1, 0, 0, 0, 0, 0, 0, 1,
200
- 0, 0, 0, 0, 0, 5, 0, 0,
201
- 0, 0, 0, 0, 0, 0, 0, 0,
202
- 0, 0, 0, 0, 0, 5, 0, 0,
203
- 0, 0, 0, 1, 1, 1, 1, 5,
204
- 1, 1, 5, 5, 1, 5, 1, 0,
205
- 4, 1, 1, 5, 5, 5, 1, 0,
206
- 0, 0, 0, 0, 0, 1, 0, 1
207
- ]
208
-
209
- class << self
210
- attr_accessor :_alias_index_offsets
211
- private :_alias_index_offsets, :_alias_index_offsets=
212
- end
213
- self._alias_index_offsets = [
214
- 0, 9, 11, 13, 15, 17, 20, 23,
215
- 26, 29, 34, 45, 47, 58, 60, 66,
216
- 77, 79, 81, 83, 89, 91, 93, 95,
217
- 98, 104, 106, 108, 110, 112, 114, 117,
218
- 119, 121, 123, 125, 128, 130, 132, 134,
219
- 136, 139, 142, 145, 148, 153, 164, 166,
220
- 176, 178, 180, 182, 184, 186, 189, 195,
221
- 197, 203, 205, 207, 209, 211, 213, 216,
222
- 218, 220, 222, 224, 227, 230, 233, 236,
223
- 239, 244, 246, 248, 250, 252, 255, 258,
224
- 261, 266, 276, 278, 283, 290, 292, 294,
225
- 296, 298, 301, 304, 310, 316, 326, 328,
226
- 333, 340, 342, 344, 346, 348, 351, 354,
227
- 360, 362, 364, 366, 368, 371, 381, 383,
228
- 385, 387, 389, 392, 394, 396, 398, 400,
229
- 403, 405, 407, 409, 411, 414, 424, 426,
230
- 428, 430, 432, 435, 446, 455, 463, 469,
231
- 482, 489, 495, 506, 518, 524, 535, 542,
232
- 543, 549, 555, 560, 570, 581, 593, 598,
233
- 600, 602, 604, 606, 608, 611, 616, 619
234
- ]
235
-
236
- class << self
237
- attr_accessor :_alias_trans_targs
238
- private :_alias_trans_targs, :_alias_trans_targs=
239
- end
240
- self._alias_trans_targs = [
241
- 0, 1, 3, 6, 41, 6, 41, 0,
242
- 131, 2, 131, 0, 2, 4, 131, 5,
243
- 4, 5, 0, 4, 7, 7, 131, 8,
244
- 8, 131, 9, 9, 131, 10, 36, 38,
245
- 10, 131, 10, 11, 140, 36, 38, 135,
246
- 10, 135, 135, 135, 131, 133, 11, 12,
247
- 13, 15, 17, 21, 141, 12, 141, 141,
248
- 141, 131, 134, 13, 14, 15, 31, 33,
249
- 14, 131, 15, 16, 140, 26, 28, 135,
250
- 15, 135, 135, 135, 131, 133, 16, 18,
251
- 131, 12, 18, 20, 139, 139, 139, 139,
252
- 131, 136, 20, 22, 131, 23, 22, 23,
253
- 12, 22, 25, 138, 138, 138, 138, 131,
254
- 137, 25, 27, 131, 15, 27, 29, 131,
255
- 30, 29, 30, 15, 29, 32, 131, 14,
256
- 32, 34, 131, 35, 34, 35, 14, 34,
257
- 37, 131, 10, 37, 39, 131, 40, 39,
258
- 40, 10, 39, 42, 42, 131, 43, 43,
259
- 131, 44, 44, 131, 45, 58, 60, 45,
260
- 131, 45, 46, 150, 58, 60, 149, 45,
261
- 149, 149, 149, 131, 142, 46, 47, 48,
262
- 49, 51, 144, 47, 144, 144, 144, 131,
263
- 143, 48, 50, 131, 47, 50, 52, 131,
264
- 53, 52, 53, 47, 52, 55, 148, 148,
265
- 148, 148, 131, 145, 55, 57, 147, 147,
266
- 147, 147, 131, 146, 57, 59, 131, 45,
267
- 59, 61, 131, 62, 61, 62, 45, 61,
268
- 131, 63, 153, 64, 132, 65, 67, 66,
269
- 67, 132, 66, 69, 69, 131, 70, 70,
270
- 131, 71, 71, 131, 72, 72, 131, 157,
271
- 73, 75, 157, 131, 74, 131, 157, 74,
272
- 76, 131, 77, 76, 77, 157, 76, 79,
273
- 79, 131, 80, 80, 131, 81, 126, 128,
274
- 81, 131, 81, 82, 126, 128, 125, 81,
275
- 125, 125, 125, 131, 83, 82, 84, 85,
276
- 87, 84, 131, 84, 85, 87, 90, 90,
277
- 84, 131, 86, 131, 84, 86, 88, 131,
278
- 89, 88, 89, 84, 88, 91, 91, 131,
279
- 91, 159, 120, 122, 91, 131, 92, 93,
280
- 115, 117, 92, 131, 93, 94, 110, 112,
281
- 109, 93, 109, 109, 109, 131, 95, 94,
282
- 96, 97, 99, 96, 131, 96, 97, 99,
283
- 102, 102, 96, 131, 98, 131, 96, 98,
284
- 100, 131, 101, 100, 101, 96, 100, 103,
285
- 103, 131, 103, 159, 104, 106, 103, 131,
286
- 105, 131, 103, 105, 107, 131, 108, 107,
287
- 108, 103, 107, 96, 97, 99, 109, 96,
288
- 109, 109, 109, 109, 131, 111, 131, 93,
289
- 111, 113, 131, 114, 113, 114, 93, 113,
290
- 116, 131, 92, 116, 118, 131, 119, 118,
291
- 119, 92, 118, 121, 131, 91, 121, 123,
292
- 131, 124, 123, 124, 91, 123, 84, 85,
293
- 87, 125, 84, 125, 125, 125, 125, 131,
294
- 127, 131, 81, 127, 129, 131, 130, 129,
295
- 130, 81, 129, 132, 151, 152, 154, 155,
296
- 156, 158, 156, 158, 132, 131, 0, 1,
297
- 3, 6, 41, 6, 41, 0, 131, 12,
298
- 15, 17, 19, 21, 24, 12, 131, 14,
299
- 15, 31, 33, 14, 131, 12, 15, 17,
300
- 19, 21, 24, 135, 12, 135, 135, 135,
301
- 135, 131, 12, 15, 17, 21, 24, 12,
302
- 131, 12, 15, 17, 21, 12, 131, 12,
303
- 15, 17, 21, 138, 12, 138, 138, 138,
304
- 138, 131, 12, 15, 17, 21, 24, 139,
305
- 12, 139, 139, 139, 139, 131, 12, 15,
306
- 17, 21, 12, 131, 14, 15, 31, 33,
307
- 141, 14, 141, 141, 141, 141, 131, 47,
308
- 49, 54, 51, 56, 47, 131, 131, 144,
309
- 144, 144, 144, 144, 131, 47, 49, 51,
310
- 56, 47, 131, 47, 49, 51, 47, 131,
311
- 47, 49, 51, 147, 47, 147, 147, 147,
312
- 147, 131, 47, 49, 51, 56, 148, 47,
313
- 148, 148, 148, 148, 131, 47, 49, 54,
314
- 51, 56, 149, 47, 149, 149, 149, 149,
315
- 131, 47, 49, 51, 47, 131, 131, 63,
316
- 153, 64, 64, 131, 65, 131, 66, 131,
317
- 68, 68, 131, 157, 73, 75, 157, 131,
318
- 78, 78, 131, 92, 93, 115, 117, 92,
319
- 131, 131, 131, 131, 131, 131, 131, 131,
320
- 131, 131, 131, 131, 131, 131, 131, 131,
321
- 131, 131, 131, 131, 131, 131, 131, 131,
322
- 131, 131, 131, 131, 131, 131, 131, 131,
323
- 131, 131, 131, 131, 131, 131, 131, 131,
324
- 131, 131, 131, 131, 131, 131, 131, 131,
325
- 131, 131, 131, 131, 131, 131, 131, 131,
326
- 131, 131, 131, 131, 131, 131, 131, 131,
327
- 131, 131, 131, 131, 131, 131, 131, 131,
328
- 131, 131, 131, 131, 131, 131, 131, 131,
329
- 131, 131, 131, 131, 131, 131, 131, 131,
330
- 131, 131, 131, 131, 131, 131, 131, 131,
331
- 131, 131, 131, 131, 131, 131, 131, 131,
332
- 131, 131, 131, 131, 131, 131, 131, 131,
333
- 131, 131, 131, 131, 131, 131, 131, 131,
334
- 131, 131, 131, 131, 131, 131, 131, 131,
335
- 131, 131, 131, 131, 131, 131, 131, 131,
336
- 131, 131, 131, 131, 131, 131, 131, 131,
337
- 131, 131, 131, 131, 131, 131, 131, 131,
338
- 131, 131, 131, 131, 131, 131, 131, 131,
339
- 0
340
- ]
341
-
342
- class << self
343
- attr_accessor :_alias_trans_actions
344
- private :_alias_trans_actions, :_alias_trans_actions=
345
- end
346
- self._alias_trans_actions = [
347
- 0, 0, 0, 0, 0, 0, 0, 0,
348
- 37, 0, 37, 0, 0, 0, 37, 0,
349
- 0, 0, 0, 0, 0, 0, 37, 0,
350
- 0, 37, 0, 0, 37, 0, 0, 0,
351
- 0, 37, 0, 57, 82, 0, 0, 78,
352
- 0, 78, 78, 78, 37, 13, 0, 0,
353
- 3, 0, 0, 0, 60, 0, 60, 60,
354
- 60, 29, 13, 0, 0, 0, 0, 0,
355
- 0, 29, 0, 57, 82, 0, 0, 78,
356
- 0, 78, 78, 78, 29, 13, 0, 0,
357
- 29, 0, 0, 0, 13, 13, 13, 13,
358
- 29, 13, 0, 0, 29, 0, 0, 0,
359
- 0, 0, 0, 13, 13, 13, 13, 29,
360
- 13, 0, 0, 29, 0, 0, 0, 29,
361
- 0, 0, 0, 0, 0, 0, 29, 0,
362
- 0, 0, 29, 0, 0, 0, 0, 0,
363
- 0, 37, 0, 0, 0, 37, 0, 0,
364
- 0, 0, 0, 0, 0, 37, 0, 0,
365
- 37, 0, 0, 37, 0, 0, 0, 0,
366
- 37, 0, 57, 82, 0, 0, 78, 0,
367
- 78, 78, 78, 37, 13, 0, 0, 3,
368
- 0, 0, 3, 0, 3, 3, 3, 33,
369
- 0, 0, 0, 33, 0, 0, 0, 33,
370
- 0, 0, 0, 0, 0, 0, 13, 13,
371
- 13, 13, 33, 13, 0, 0, 13, 13,
372
- 13, 13, 33, 13, 0, 0, 37, 0,
373
- 0, 0, 37, 0, 0, 0, 0, 0,
374
- 15, 0, 66, 0, 69, 0, 0, 0,
375
- 0, 69, 0, 0, 0, 35, 0, 0,
376
- 35, 0, 0, 35, 0, 0, 35, 72,
377
- 0, 0, 72, 35, 0, 37, 72, 0,
378
- 0, 37, 0, 0, 0, 72, 0, 0,
379
- 0, 35, 0, 0, 35, 0, 0, 0,
380
- 0, 35, 0, 51, 0, 0, 51, 0,
381
- 51, 51, 51, 35, 0, 0, 5, 5,
382
- 5, 5, 35, 0, 0, 0, 0, 0,
383
- 0, 35, 0, 35, 0, 0, 0, 35,
384
- 0, 0, 0, 0, 0, 0, 0, 35,
385
- 0, 63, 0, 0, 0, 35, 0, 0,
386
- 0, 0, 0, 31, 0, 51, 0, 0,
387
- 51, 0, 51, 51, 51, 31, 0, 0,
388
- 5, 5, 5, 5, 31, 0, 0, 0,
389
- 0, 0, 0, 31, 0, 31, 0, 0,
390
- 0, 31, 0, 0, 0, 0, 0, 0,
391
- 0, 31, 0, 63, 0, 0, 0, 31,
392
- 0, 31, 0, 0, 0, 31, 0, 0,
393
- 0, 0, 0, 5, 5, 5, 0, 5,
394
- 0, 0, 0, 0, 31, 0, 31, 0,
395
- 0, 0, 31, 0, 0, 0, 0, 0,
396
- 0, 31, 0, 0, 0, 31, 0, 0,
397
- 0, 0, 0, 0, 35, 0, 0, 0,
398
- 35, 0, 0, 0, 0, 0, 5, 5,
399
- 5, 0, 5, 0, 0, 0, 0, 35,
400
- 0, 35, 0, 0, 0, 35, 0, 0,
401
- 0, 0, 0, 75, 13, 75, 13, 13,
402
- 75, 13, 75, 13, 75, 17, 0, 0,
403
- 0, 0, 0, 0, 0, 0, 37, 1,
404
- 1, 1, 0, 1, 0, 1, 39, 5,
405
- 5, 5, 5, 5, 45, 1, 1, 1,
406
- 0, 1, 0, 13, 1, 13, 13, 13,
407
- 13, 39, 1, 1, 1, 1, 0, 1,
408
- 39, 1, 1, 1, 1, 1, 39, 1,
409
- 1, 1, 1, 13, 1, 13, 13, 13,
410
- 13, 39, 1, 1, 1, 1, 0, 13,
411
- 1, 13, 13, 13, 13, 39, 0, 0,
412
- 0, 0, 0, 23, 5, 5, 5, 5,
413
- 13, 5, 13, 13, 13, 13, 45, 1,
414
- 1, 0, 1, 0, 1, 42, 48, 0,
415
- 0, 0, 0, 0, 48, 1, 1, 1,
416
- 0, 1, 42, 1, 1, 1, 1, 42,
417
- 1, 1, 1, 13, 1, 13, 13, 13,
418
- 13, 42, 1, 1, 1, 0, 13, 1,
419
- 13, 13, 13, 13, 42, 1, 1, 0,
420
- 1, 0, 13, 1, 13, 13, 13, 13,
421
- 42, 0, 0, 0, 0, 25, 15, 0,
422
- 66, 0, 0, 19, 0, 27, 0, 27,
423
- 0, 0, 27, 72, 0, 0, 72, 21,
424
- 0, 0, 27, 7, 7, 7, 7, 7,
425
- 54, 37, 37, 37, 37, 37, 37, 37,
426
- 37, 37, 37, 37, 37, 29, 29, 29,
427
- 29, 29, 29, 29, 29, 29, 29, 29,
428
- 29, 29, 29, 29, 29, 29, 29, 29,
429
- 29, 29, 29, 29, 29, 37, 37, 37,
430
- 37, 37, 37, 37, 37, 37, 37, 37,
431
- 33, 33, 33, 33, 33, 33, 33, 33,
432
- 33, 33, 33, 37, 37, 37, 37, 37,
433
- 35, 37, 35, 35, 35, 35, 35, 35,
434
- 35, 35, 37, 37, 37, 37, 37, 35,
435
- 35, 35, 35, 35, 35, 35, 35, 35,
436
- 35, 35, 35, 35, 35, 31, 31, 31,
437
- 31, 31, 31, 31, 31, 31, 31, 31,
438
- 31, 31, 31, 31, 31, 31, 31, 31,
439
- 31, 31, 31, 31, 31, 31, 31, 31,
440
- 31, 35, 35, 35, 35, 35, 35, 35,
441
- 35, 35, 35, 35, 37, 39, 45, 39,
442
- 39, 39, 39, 39, 23, 45, 42, 48,
443
- 48, 42, 42, 42, 42, 42, 25, 27,
444
- 27, 19, 27, 27, 27, 21, 27, 54,
445
- 0
446
- ]
447
-
448
- class << self
449
- attr_accessor :_alias_to_state_actions
450
- private :_alias_to_state_actions, :_alias_to_state_actions=
451
- end
452
- self._alias_to_state_actions = [
453
- 0, 0, 0, 0, 0, 0, 0, 0,
454
- 0, 0, 0, 0, 0, 0, 0, 0,
455
- 0, 0, 0, 0, 0, 0, 0, 0,
456
- 0, 0, 0, 0, 0, 0, 0, 0,
457
- 0, 0, 0, 0, 0, 0, 0, 0,
458
- 0, 0, 0, 0, 0, 0, 0, 0,
459
- 0, 0, 0, 0, 0, 0, 0, 0,
460
- 0, 0, 0, 0, 0, 0, 0, 0,
461
- 0, 0, 0, 0, 0, 0, 0, 0,
462
- 0, 0, 0, 0, 0, 0, 0, 0,
463
- 0, 0, 0, 0, 0, 0, 0, 0,
464
- 0, 0, 0, 0, 0, 0, 0, 0,
465
- 0, 0, 0, 0, 0, 0, 0, 0,
466
- 0, 0, 0, 0, 0, 0, 0, 0,
467
- 0, 0, 0, 0, 0, 0, 0, 0,
468
- 0, 0, 0, 0, 0, 0, 0, 0,
469
- 0, 0, 0, 9, 0, 0, 0, 0,
470
- 0, 0, 0, 0, 0, 0, 0, 0,
471
- 0, 0, 0, 0, 0, 0, 0, 0,
472
- 0, 0, 0, 0, 0, 0, 0, 0
473
- ]
474
-
475
- class << self
476
- attr_accessor :_alias_from_state_actions
477
- private :_alias_from_state_actions, :_alias_from_state_actions=
478
- end
479
- self._alias_from_state_actions = [
480
- 0, 0, 0, 0, 0, 0, 0, 0,
481
- 0, 0, 0, 0, 0, 0, 0, 0,
482
- 0, 0, 0, 0, 0, 0, 0, 0,
483
- 0, 0, 0, 0, 0, 0, 0, 0,
484
- 0, 0, 0, 0, 0, 0, 0, 0,
485
- 0, 0, 0, 0, 0, 0, 0, 0,
486
- 0, 0, 0, 0, 0, 0, 0, 0,
487
- 0, 0, 0, 0, 0, 0, 0, 0,
488
- 0, 0, 0, 0, 0, 0, 0, 0,
489
- 0, 0, 0, 0, 0, 0, 0, 0,
490
- 0, 0, 0, 0, 0, 0, 0, 0,
491
- 0, 0, 0, 0, 0, 0, 0, 0,
492
- 0, 0, 0, 0, 0, 0, 0, 0,
493
- 0, 0, 0, 0, 0, 0, 0, 0,
494
- 0, 0, 0, 0, 0, 0, 0, 0,
495
- 0, 0, 0, 0, 0, 0, 0, 0,
496
- 0, 0, 0, 11, 0, 0, 0, 0,
497
- 0, 0, 0, 0, 0, 0, 0, 0,
498
- 0, 0, 0, 0, 0, 0, 0, 0,
499
- 0, 0, 0, 0, 0, 0, 0, 0
500
- ]
501
-
502
- class << self
503
- attr_accessor :_alias_eof_trans
504
- private :_alias_eof_trans, :_alias_eof_trans=
505
- end
506
- self._alias_eof_trans = [
507
- 757, 757, 757, 757, 757, 757, 757, 757,
508
- 757, 757, 757, 757, 661, 661, 661, 661,
509
- 661, 661, 661, 661, 661, 661, 661, 661,
510
- 661, 661, 661, 661, 661, 661, 661, 661,
511
- 661, 661, 661, 661, 757, 757, 757, 757,
512
- 757, 757, 757, 757, 757, 757, 757, 683,
513
- 683, 683, 683, 683, 683, 683, 683, 683,
514
- 683, 683, 757, 757, 757, 757, 757, 756,
515
- 757, 756, 756, 756, 756, 756, 756, 756,
516
- 756, 757, 757, 757, 757, 757, 756, 756,
517
- 756, 756, 756, 756, 756, 756, 756, 756,
518
- 756, 756, 756, 756, 745, 745, 745, 745,
519
- 745, 745, 745, 745, 745, 745, 745, 745,
520
- 745, 745, 745, 745, 745, 745, 745, 745,
521
- 745, 745, 745, 745, 745, 745, 745, 745,
522
- 756, 756, 756, 756, 756, 756, 756, 756,
523
- 756, 756, 756, 0, 757, 764, 766, 764,
524
- 764, 764, 764, 764, 765, 766, 774, 769,
525
- 769, 774, 774, 774, 774, 774, 775, 783,
526
- 783, 778, 783, 783, 783, 782, 783, 784
527
- ]
528
-
529
- class << self
530
- attr_accessor :alias_start
531
- end
532
- self.alias_start = 131;
533
- class << self
534
- attr_accessor :alias_first_final
535
- end
536
- self.alias_first_final = 131;
537
- class << self
538
- attr_accessor :alias_error
539
- end
540
- self.alias_error = -1;
541
-
542
- class << self
543
- attr_accessor :alias_en_main
544
- end
545
- self.alias_en_main = 131;
546
-
547
-
548
- # line 96 "lib/vorax/parser/grammars/alias.rl"
549
-
550
- # line 551 "lib/vorax/parser/grammars/alias.rb"
551
- begin
552
- p ||= 0
553
- pe ||= data.length
554
- cs = alias_start
555
- ts = nil
556
- te = nil
557
- act = 0
558
- end
559
-
560
- # line 97 "lib/vorax/parser/grammars/alias.rl"
561
-
562
- # line 563 "lib/vorax/parser/grammars/alias.rb"
563
- begin
564
- _klen, _trans, _keys, _acts, _nacts = nil
565
- _goto_level = 0
566
- _resume = 10
567
- _eof_trans = 15
568
- _again = 20
569
- _test_eof = 30
570
- _out = 40
571
- while true
572
- _trigger_goto = false
573
- if _goto_level <= 0
574
- if p == pe
575
- _goto_level = _test_eof
576
- next
577
- end
578
- end
579
- if _goto_level <= _resume
580
- _acts = _alias_from_state_actions[cs]
581
- _nacts = _alias_actions[_acts]
582
- _acts += 1
583
- while _nacts > 0
584
- _nacts -= 1
585
- _acts += 1
586
- case _alias_actions[_acts - 1]
587
- when 9 then
588
- # line 1 "NONE"
589
- begin
590
- ts = p
591
- end
592
- # line 593 "lib/vorax/parser/grammars/alias.rb"
593
- end # from state action switch
594
- end
595
- if _trigger_goto
596
- next
597
- end
598
- _keys = _alias_key_offsets[cs]
599
- _trans = _alias_index_offsets[cs]
600
- _klen = _alias_single_lengths[cs]
601
- _break_match = false
602
-
603
- begin
604
- if _klen > 0
605
- _lower = _keys
606
- _upper = _keys + _klen - 1
607
-
608
- loop do
609
- break if _upper < _lower
610
- _mid = _lower + ( (_upper - _lower) >> 1 )
611
-
612
- if data[p].ord < _alias_trans_keys[_mid]
613
- _upper = _mid - 1
614
- elsif data[p].ord > _alias_trans_keys[_mid]
615
- _lower = _mid + 1
616
- else
617
- _trans += (_mid - _keys)
618
- _break_match = true
619
- break
620
- end
621
- end # loop
622
- break if _break_match
623
- _keys += _klen
624
- _trans += _klen
625
- end
626
- _klen = _alias_range_lengths[cs]
627
- if _klen > 0
628
- _lower = _keys
629
- _upper = _keys + (_klen << 1) - 2
630
- loop do
631
- break if _upper < _lower
632
- _mid = _lower + (((_upper-_lower) >> 1) & ~1)
633
- if data[p].ord < _alias_trans_keys[_mid]
634
- _upper = _mid - 2
635
- elsif data[p].ord > _alias_trans_keys[_mid+1]
636
- _lower = _mid + 2
637
- else
638
- _trans += ((_mid - _keys) >> 1)
639
- _break_match = true
640
- break
641
- end
642
- end # loop
643
- break if _break_match
644
- _trans += _klen
645
- end
646
- end while false
647
- end
648
- if _goto_level <= _eof_trans
649
- cs = _alias_trans_targs[_trans]
650
- if _alias_trans_actions[_trans] != 0
651
- _acts = _alias_trans_actions[_trans]
652
- _nacts = _alias_actions[_acts]
653
- _acts += 1
654
- while _nacts > 0
655
- _nacts -= 1
656
- _acts += 1
657
- case _alias_actions[_acts - 1]
658
- when 0 then
659
- # line 5 "lib/vorax/parser/grammars/alias.rl"
660
- begin
661
-
662
- @t_start = p
663
- end
664
- when 1 then
665
- # line 9 "lib/vorax/parser/grammars/alias.rl"
666
- begin
667
-
668
- @table_ref = data[(@t_start..p-1)]
669
- end
670
- when 2 then
671
- # line 13 "lib/vorax/parser/grammars/alias.rl"
672
- begin
673
-
674
- @a_start = p
675
- @alias_value = nil
676
- end
677
- when 3 then
678
- # line 18 "lib/vorax/parser/grammars/alias.rl"
679
- begin
680
-
681
- text = data[(@a_start..p-1)]
682
- @alias_value = text unless @not_alias.include?(text.upcase)
683
- end
684
- when 4 then
685
- # line 23 "lib/vorax/parser/grammars/alias.rl"
686
- begin
687
-
688
- @subquery_text = Parser.walk_balanced_paren(data[(p..-1)]).gsub(/^\(|\)$/, '')
689
- p += 1
690
- @subquery_range = (p..p+@subquery_text.length-1)
691
- p += @subquery_text.length
692
- te = p
693
- end
694
- when 5 then
695
- # line 31 "lib/vorax/parser/grammars/alias.rl"
696
- begin
697
-
698
- @alias_value = nil
699
- @subquery_range = nil
700
- @subquery_text = nil
701
- end
702
- when 6 then
703
- # line 37 "lib/vorax/parser/grammars/alias.rl"
704
- begin
705
-
706
- @refs << ExprRef.new(@subquery_text, @subquery_range, @alias_value)
707
- @alias_value = nil
708
- @subquery_range = nil
709
- @subquery_text = nil
710
- end
711
- when 7 then
712
- # line 44 "lib/vorax/parser/grammars/alias.rl"
713
- begin
714
-
715
- add_tableref
716
- end
717
- when 10 then
718
- # line 1 "NONE"
719
- begin
720
- te = p+1
721
- end
722
- when 11 then
723
- # line 62 "lib/vorax/parser/grammars/alias.rl"
724
- begin
725
- act = 1; end
726
- when 12 then
727
- # line 64 "lib/vorax/parser/grammars/alias.rl"
728
- begin
729
- act = 3; end
730
- when 13 then
731
- # line 65 "lib/vorax/parser/grammars/alias.rl"
732
- begin
733
- act = 4; end
734
- when 14 then
735
- # line 69 "lib/vorax/parser/grammars/alias.rl"
736
- begin
737
- act = 8; end
738
- when 15 then
739
- # line 63 "lib/vorax/parser/grammars/alias.rl"
740
- begin
741
- te = p+1
742
- end
743
- when 16 then
744
- # line 69 "lib/vorax/parser/grammars/alias.rl"
745
- begin
746
- te = p+1
747
- end
748
- when 17 then
749
- # line 62 "lib/vorax/parser/grammars/alias.rl"
750
- begin
751
- te = p
752
- p = p - 1; end
753
- when 18 then
754
- # line 65 "lib/vorax/parser/grammars/alias.rl"
755
- begin
756
- te = p
757
- p = p - 1; begin @start_columns = te end
758
- end
759
- when 19 then
760
- # line 66 "lib/vorax/parser/grammars/alias.rl"
761
- begin
762
- te = p
763
- p = p - 1; begin @columns = data[(@start_columns..ts)] unless @columns end
764
- end
765
- when 20 then
766
- # line 67 "lib/vorax/parser/grammars/alias.rl"
767
- begin
768
- te = p
769
- p = p - 1; end
770
- when 21 then
771
- # line 68 "lib/vorax/parser/grammars/alias.rl"
772
- begin
773
- te = p
774
- p = p - 1; end
775
- when 22 then
776
- # line 69 "lib/vorax/parser/grammars/alias.rl"
777
- begin
778
- te = p
779
- p = p - 1; end
780
- when 23 then
781
- # line 66 "lib/vorax/parser/grammars/alias.rl"
782
- begin
783
- begin p = ((te))-1; end
784
- begin @columns = data[(@start_columns..ts)] unless @columns end
785
- end
786
- when 24 then
787
- # line 67 "lib/vorax/parser/grammars/alias.rl"
788
- begin
789
- begin p = ((te))-1; end
790
- end
791
- when 25 then
792
- # line 68 "lib/vorax/parser/grammars/alias.rl"
793
- begin
794
- begin p = ((te))-1; end
795
- end
796
- when 26 then
797
- # line 69 "lib/vorax/parser/grammars/alias.rl"
798
- begin
799
- begin p = ((te))-1; end
800
- end
801
- when 27 then
802
- # line 1 "NONE"
803
- begin
804
- case act
805
- when 4 then
806
- begin begin p = ((te))-1; end
807
- @start_columns = te end
808
- when 8 then
809
- begin begin p = ((te))-1; end
810
- end
811
- else
812
- begin begin p = ((te))-1; end
813
- end
814
- end
815
- end
816
- # line 817 "lib/vorax/parser/grammars/alias.rb"
817
- end # action switch
818
- end
819
- end
820
- if _trigger_goto
821
- next
822
- end
823
- end
824
- if _goto_level <= _again
825
- _acts = _alias_to_state_actions[cs]
826
- _nacts = _alias_actions[_acts]
827
- _acts += 1
828
- while _nacts > 0
829
- _nacts -= 1
830
- _acts += 1
831
- case _alias_actions[_acts - 1]
832
- when 8 then
833
- # line 1 "NONE"
834
- begin
835
- ts = nil; end
836
- # line 837 "lib/vorax/parser/grammars/alias.rb"
837
- end # to state action switch
838
- end
839
- if _trigger_goto
840
- next
841
- end
842
- p += 1
843
- if p != pe
844
- _goto_level = _resume
845
- next
846
- end
847
- end
848
- if _goto_level <= _test_eof
849
- if p == eof
850
- if _alias_eof_trans[cs] > 0
851
- _trans = _alias_eof_trans[cs] - 1;
852
- _goto_level = _eof_trans
853
- next;
854
- end
855
- end
856
- end
857
- if _goto_level <= _out
858
- break
859
- end
860
- end
861
- end
862
-
863
- # line 98 "lib/vorax/parser/grammars/alias.rl"
864
- data.chop!
865
-
866
- # needed to finalize the last pending tableref
867
- add_tableref
868
- end
869
-
870
- # Get all identified tableref/exprref references. This method
871
- # should be called after walk.
872
- #
873
- # @return an array of references
874
- def refs
875
- @refs
876
- end
877
-
878
- # A string containing the column list, if there's any.
879
- #
880
- # @return a string with all defined columns
881
- def query_fields
882
- @columns
883
- end
884
-
885
- private
886
-
887
- def add_tableref
888
- if (not @table_ref.nil?)
889
- @refs << TableRef.new(@table_ref, @alias_value)
890
- elsif (not @subquery_text.nil?)
891
- @refs << ExprRef.new(@subquery_text,
892
- @subquery_range,
893
- @alias_value)
894
- end
895
- @alias_value = nil
896
- @table_ref = nil
897
- end
898
-
899
- end
900
-
901
- end
902
-
903
- end
904
-