gitlab-zoql 0.1.0 → 0.2.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ca281035447bc28813574e9680f05af39465972ab945f5ef1e5e4ac1eb20c31c
4
- data.tar.gz: 864e281a1289c3862b368c9258219f1ef8c73a15cd36d2de1e03cd9b273b8818
3
+ metadata.gz: 35d3f52312452c88a407fef61cf488e71649651be490f12d9d4d2caf3ab79d03
4
+ data.tar.gz: 6dd5d3662d2113c34245a9b6b4b23aef8c93d44c530e4c2ec8a0f20ea2d97f66
5
5
  SHA512:
6
- metadata.gz: ae376415208f17886d3d9fb37468a91a524b6235a6d1ca62feeacd5395e72f98099e99c6510c65fc1a2583d6e70fecbd4d5a5ed9e597624dd5c0f1cda7af895e
7
- data.tar.gz: 4488d937464b5cadcbd8db633b9204b407a0fd935662f1eb948ae0aafd944a665e010ea527c0811719f3e3f38e379824bacc596d8c5cf5a8f7fd94f6e6c9cdec
6
+ metadata.gz: f79543c5d3c14c2199de6165e7c9b7a05b6e32dfafeae8cddbd405aceee3a924b9f48f1e1ddaa9a257b0dfda794d0e55379d74a157ace34534d9ed4d5a0b242e
7
+ data.tar.gz: 8b4314342b85d0f229727d197c3eaa2eac71ff628105245cf141c2d6506f0736dbf41aca8cbd95026ef2a4b3c0f0bec82d095aded31c908c539e0f41aaa5ed37
@@ -13,7 +13,7 @@ require File.dirname(__FILE__) + '/parser.rex.rb'
13
13
  module GitlabZOQL
14
14
  class Parser < Racc::Parser
15
15
 
16
- module_eval(<<'...end parser.racc/module_eval...', 'parser.racc', 155)
16
+ module_eval(<<'...end parser.racc/module_eval...', 'parser.racc', 140)
17
17
 
18
18
  def self.parse(zoql)
19
19
  new.scan_str(zoql)
@@ -22,198 +22,162 @@ end
22
22
  ##### State transition tables begin ###
23
23
 
24
24
  racc_action_table = [
25
- -55, 6, 67, -55, 42, 77, 7, 71, 99, 36,
26
- 37, 67, 31, 42, 34, 75, 71, 38, 39, -57,
27
- 17, 22, 35, 25, 75, 27, -55, 29, 30, 17,
28
- 22, 46, 25, 67, 27, 42, 29, 30, 71, 45,
29
- 44, 47, 67, 48, 42, 50, 75, 71, 90, 91,
30
- 53, 17, 22, 54, 25, 75, 27, 60, 29, 30,
31
- 17, 22, 61, 25, 62, 27, 24, 29, 30, 20,
32
- -54, -54, -54, -54, 42, 77, 85, 20, 60, 85,
33
- 100, nil, 17, 22, nil, 25, nil, 27, nil, 29,
34
- 30, 22, nil, 25, nil, 27, 42, 29, 30, 20,
35
- nil, nil, nil, nil, nil, 42, nil, nil, 20, nil,
36
- nil, nil, 17, 22, nil, 25, nil, 27, nil, 29,
37
- 30, 17, 22, nil, 25, nil, 27, 42, 29, 30,
38
- 20, nil, nil, nil, nil, nil, 42, nil, nil, 20,
39
- nil, nil, nil, 17, 22, nil, 25, nil, 27, nil,
40
- 29, 30, 17, 22, nil, 25, nil, 27, 42, 29,
41
- 30, 20, nil, nil, nil, nil, nil, 42, nil, nil,
42
- 71, nil, nil, nil, 17, 22, nil, 25, 75, 27,
43
- nil, 29, 30, 17, 22, nil, 25, nil, 27, 42,
44
- 29, 30, 20, nil, nil, nil, nil, nil, 42, nil,
45
- 75, 20, nil, nil, nil, 17, 22, nil, 25, 75,
46
- 27, nil, 29, 30, 17, 22, nil, 25, nil, 27,
47
- 42, 29, 30, 20, nil, nil, nil, nil, nil, 42,
48
- nil, 75, 20, nil, nil, nil, 17, 22, nil, 25,
49
- 75, 27, nil, 29, 30, 17, 22, nil, 25, nil,
50
- 27, 42, 29, 30, 20, nil, nil, nil, nil, nil,
51
- 42, nil, 75, 20, nil, nil, nil, 17, 22, nil,
52
- 25, 75, 27, nil, 29, 30, 17, 22, 78, 25,
53
- nil, 27, nil, 29, 30, nil, 79, 80, 81, 82,
54
- 83, 84 ]
25
+ 23, 35, 36, -10, -49, -28, -10, -49, 6, 41,
26
+ 52, -28, -28, 63, 17, 21, 7, 24, 41, 26,
27
+ 30, 28, 29, 17, 21, -49, 24, 41, 26, 33,
28
+ 28, 29, 17, 21, -51, 24, 41, 26, 34, 28,
29
+ 29, 17, 21, 44, 24, 41, 26, 45, 28, 29,
30
+ 17, 21, 46, 24, 48, 26, 51, 28, 29, 17,
31
+ 21, 41, 24, 52, 26, 79, 28, 29, 52, 52,
32
+ 41, 63, 63, 58, 81, 17, 21, 59, 24, 41,
33
+ 26, 68, 28, 29, 17, 21, 69, 24, 41, 26,
34
+ 52, 28, 29, 17, 21, 69, 24, 41, 26, nil,
35
+ 28, 29, 17, 21, nil, 24, 41, 26, nil, 28,
36
+ 29, 17, 21, nil, 24, nil, 26, nil, 28, 29,
37
+ 17, 21, nil, 24, -27, 26, -29, 28, 29, -30,
38
+ -27, -27, -29, -29, -31, -30, -30, -32, 37, 38,
39
+ -31, -31, nil, -32, -32, 71, nil, 72, 73, 74,
40
+ 75, 76, 43, 42, 35, 36, 35, 36 ]
55
41
 
56
42
  racc_action_check = [
57
- 24, 0, 50, 24, 50, 87, 1, 50, 87, 15,
58
- 15, 71, 7, 71, 8, 50, 71, 16, 16, 10,
59
- 50, 50, 11, 50, 71, 50, 24, 50, 50, 71,
60
- 71, 27, 71, 77, 71, 77, 71, 71, 77, 25,
61
- 25, 29, 85, 30, 85, 33, 77, 85, 78, 78,
62
- 34, 77, 77, 35, 77, 85, 77, 43, 77, 77,
63
- 85, 85, 44, 85, 47, 85, 6, 85, 85, 6,
64
- 14, 14, 14, 14, 17, 63, 65, 17, 88, 89,
65
- 90, nil, 6, 6, nil, 6, nil, 6, nil, 6,
66
- 6, 17, nil, 17, nil, 17, 20, 17, 17, 20,
67
- nil, nil, nil, nil, nil, 36, nil, nil, 36, nil,
68
- nil, nil, 20, 20, nil, 20, nil, 20, nil, 20,
69
- 20, 36, 36, nil, 36, nil, 36, 37, 36, 36,
70
- 37, nil, nil, nil, nil, nil, 38, nil, nil, 38,
71
- nil, nil, nil, 37, 37, nil, 37, nil, 37, nil,
72
- 37, 37, 38, 38, nil, 38, nil, 38, 39, 38,
73
- 38, 39, nil, nil, nil, nil, nil, 67, nil, nil,
74
- 67, nil, nil, nil, 39, 39, nil, 39, 67, 39,
75
- nil, 39, 39, 67, 67, nil, 67, nil, 67, 79,
76
- 67, 67, 79, nil, nil, nil, nil, nil, 80, nil,
77
- 79, 80, nil, nil, nil, 79, 79, nil, 79, 80,
78
- 79, nil, 79, 79, 80, 80, nil, 80, nil, 80,
79
- 81, 80, 80, 81, nil, nil, nil, nil, nil, 82,
80
- nil, 81, 82, nil, nil, nil, 81, 81, nil, 81,
81
- 82, 81, nil, 81, 81, 82, 82, nil, 82, nil,
82
- 82, 83, 82, 82, 83, nil, nil, nil, nil, nil,
83
- 84, nil, 83, 84, nil, nil, nil, 83, 83, nil,
84
- 83, 84, 83, nil, 83, 83, 84, 84, 64, 84,
85
- nil, 84, nil, 84, 84, nil, 64, 64, 64, 64,
86
- 64, 64 ]
43
+ 6, 15, 15, 12, 23, 80, 12, 23, 0, 17,
44
+ 48, 80, 80, 48, 6, 6, 1, 6, 35, 6,
45
+ 7, 6, 6, 17, 17, 23, 17, 36, 17, 8,
46
+ 17, 17, 35, 35, 10, 35, 37, 35, 11, 35,
47
+ 35, 36, 36, 26, 36, 38, 36, 28, 36, 36,
48
+ 37, 37, 29, 37, 32, 37, 33, 37, 37, 38,
49
+ 38, 71, 38, 34, 38, 71, 38, 38, 68, 69,
50
+ 72, 68, 69, 42, 72, 71, 71, 45, 71, 73,
51
+ 71, 60, 71, 71, 72, 72, 61, 72, 74, 72,
52
+ 63, 72, 72, 73, 73, 77, 73, 75, 73, nil,
53
+ 73, 73, 74, 74, nil, 74, 76, 74, nil, 74,
54
+ 74, 75, 75, nil, 75, nil, 75, nil, 75, 75,
55
+ 76, 76, nil, 76, 82, 76, 83, 76, 76, 84,
56
+ 82, 82, 83, 83, 85, 84, 84, 86, 16, 16,
57
+ 85, 85, nil, 86, 86, 65, nil, 65, 65, 65,
58
+ 65, 65, 24, 24, 56, 56, 57, 57 ]
87
59
 
88
60
  racc_action_pointer = [
89
- -1, 6, nil, nil, nil, nil, 58, 12, 11, nil,
90
- -7, -4, nil, nil, 50, -11, -5, 66, nil, nil,
91
- 88, nil, nil, nil, 0, 12, nil, 1, nil, 9,
92
- 12, nil, nil, 41, 42, 45, 97, 119, 128, 150,
93
- nil, nil, nil, 45, 35, nil, nil, 33, nil, nil,
94
- -4, nil, nil, nil, nil, nil, nil, nil, nil, nil,
95
- nil, nil, nil, 66, 273, 66, nil, 159, nil, nil,
96
- nil, 5, nil, nil, nil, nil, nil, 27, 42, 181,
97
- 190, 212, 221, 243, 252, 36, nil, -4, 66, 69,
98
- 73, nil, nil, nil, nil, nil, nil, nil, nil, nil,
99
- nil ]
61
+ 6, 16, nil, nil, nil, nil, -5, 20, 26, nil,
62
+ 13, 17, 3, nil, nil, -14, 121, 4, nil, nil,
63
+ nil, nil, nil, 4, 130, nil, 18, nil, 20, 26,
64
+ nil, nil, 50, 51, 58, 13, 22, 31, 40, nil,
65
+ nil, nil, 51, nil, nil, 51, nil, nil, 5, nil,
66
+ nil, nil, nil, nil, nil, nil, 139, 141, nil, nil,
67
+ 75, 79, nil, 85, nil, 137, nil, nil, 63, 64,
68
+ nil, 56, 65, 74, 83, 92, 101, 88, nil, nil,
69
+ 5, nil, 124, 126, 129, 134, 137 ]
100
70
 
101
71
  racc_action_default = [
102
- -68, -68, -1, -2, -3, -4, -68, -68, -6, -7,
103
- -8, -9, -10, -39, -40, -43, -46, -68, -48, -49,
104
- -68, -51, -52, -53, -58, -68, -61, -68, -63, -67,
105
- -68, 101, -5, -14, -68, -68, -68, -68, -68, -68,
106
- -47, -54, -58, -68, -68, -60, -62, -65, -66, -11,
107
- -68, -12, -13, -18, -55, -56, -41, -42, -44, -45,
108
- -50, -59, -64, -15, -68, -19, -21, -68, -24, -25,
109
- -26, -68, -28, -29, -36, -37, -38, -68, -68, -68,
110
- -68, -68, -68, -68, -68, -68, -23, -68, -38, -20,
111
- -68, -17, -30, -31, -32, -33, -34, -35, -22, -27,
112
- -16 ]
72
+ -62, -62, -1, -2, -3, -4, -62, -62, -6, -7,
73
+ -8, -9, -44, -33, -34, -37, -40, -62, -42, -43,
74
+ -45, -46, -47, -52, -62, -55, -62, -57, -61, -62,
75
+ 87, -5, -14, -62, -62, -62, -62, -62, -62, -41,
76
+ -44, -52, -62, -54, -56, -59, -60, -11, -62, -12,
77
+ -13, -16, -49, -50, -33, -33, -37, -37, -53, -58,
78
+ -15, -17, -19, -62, -22, -62, -25, -26, -62, -62,
79
+ -21, -62, -62, -62, -62, -62, -62, -18, -20, -23,
80
+ -44, -24, -44, -44, -44, -44, -44 ]
113
81
 
114
82
  racc_goto_table = [
115
- 12, 10, 41, 1, 63, 92, 93, 94, 95, 96,
116
- 97, 56, 57, 2, 43, 58, 59, 3, 4, 5,
117
- 8, 41, 41, 41, 41, 87, 32, 9, 11, 33,
118
- 55, 49, 51, 52, 89, 98, 86, 40, nil, nil,
83
+ 12, 10, 61, 54, 55, 56, 57, 1, 2, 3,
84
+ 4, 5, 8, 31, 9, 11, 32, 47, 49, 50,
85
+ 60, 78, 77, 70, 39, nil, nil, nil, nil, 53,
119
86
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
120
87
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
121
- nil, nil, nil, nil, nil, 88 ]
88
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
89
+ nil, nil, nil, nil, nil, 80, 82, 83, 84, 85,
90
+ 86 ]
122
91
 
123
92
  racc_goto_check = [
124
- 11, 9, 27, 1, 16, 18, 18, 18, 18, 18,
125
- 18, 26, 26, 2, 11, 28, 28, 3, 4, 5,
126
- 6, 27, 27, 27, 27, 16, 7, 8, 10, 12,
127
- 9, 13, 14, 15, 19, 20, 21, 30, nil, nil,
93
+ 11, 9, 17, 22, 22, 24, 24, 1, 2, 3,
94
+ 4, 5, 6, 7, 8, 10, 12, 13, 14, 15,
95
+ 16, 18, 17, 19, 26, nil, nil, nil, nil, 9,
96
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
128
97
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
129
98
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
130
- nil, nil, nil, nil, nil, 11 ]
99
+ nil, nil, nil, nil, nil, 11, 11, 11, 11, 11,
100
+ 11 ]
131
101
 
132
102
  racc_goto_pointer = [
133
- nil, 3, 13, 17, 18, 19, 14, 18, 21, -5,
134
- 22, -6, 21, -2, -2, -1, -46, nil, -74, -43,
135
- -50, -31, nil, nil, nil, nil, -25, -15, -23, nil,
136
- 20, nil, nil, nil, nil, nil ]
103
+ nil, 7, 8, 9, 10, 11, 6, 5, 8, -5,
104
+ 9, -6, 8, -15, -15, -14, -28, -46, -48, -40,
105
+ nil, nil, -32, nil, -32, nil, 7, nil, nil, nil,
106
+ nil, nil ]
137
107
 
138
108
  racc_goto_default = [
139
- nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
140
- nil, 76, nil, nil, nil, nil, nil, 73, 64, 65,
141
- 66, 68, 69, 70, 72, 74, 13, 14, 15, 16,
142
- 18, 19, 21, 23, 26, 28 ]
109
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 65,
110
+ nil, 40, nil, nil, nil, nil, nil, nil, 62, 64,
111
+ 67, 66, 13, 14, 15, 16, 18, 19, 20, 22,
112
+ 25, 27 ]
143
113
 
144
114
  racc_reduce_table = [
145
115
  0, 0, :racc_error,
146
- 1, 34, :_reduce_none,
147
- 1, 35, :_reduce_none,
148
- 1, 36, :_reduce_3,
149
- 1, 37, :_reduce_none,
150
- 3, 38, :_reduce_5,
151
- 2, 38, :_reduce_6,
152
- 1, 39, :_reduce_7,
153
- 1, 41, :_reduce_none,
154
- 1, 41, :_reduce_none,
155
- 1, 41, :_reduce_none,
156
- 2, 40, :_reduce_11,
157
- 2, 45, :_reduce_12,
116
+ 1, 29, :_reduce_none,
117
+ 1, 30, :_reduce_none,
118
+ 1, 31, :_reduce_3,
119
+ 1, 32, :_reduce_none,
120
+ 3, 33, :_reduce_5,
121
+ 2, 33, :_reduce_6,
122
+ 1, 34, :_reduce_7,
123
+ 1, 36, :_reduce_none,
124
+ 1, 36, :_reduce_none,
125
+ 1, 36, :_reduce_none,
126
+ 2, 35, :_reduce_11,
127
+ 2, 40, :_reduce_12,
128
+ 1, 42, :_reduce_none,
129
+ 0, 41, :_reduce_none,
130
+ 2, 41, :_reduce_15,
131
+ 1, 43, :_reduce_16,
132
+ 1, 44, :_reduce_none,
133
+ 3, 44, :_reduce_18,
134
+ 1, 45, :_reduce_none,
135
+ 3, 45, :_reduce_20,
136
+ 2, 46, :_reduce_21,
137
+ 1, 46, :_reduce_none,
138
+ 3, 48, :_reduce_23,
139
+ 3, 48, :_reduce_24,
140
+ 1, 47, :_reduce_none,
158
141
  1, 47, :_reduce_none,
159
- 0, 46, :_reduce_none,
160
- 2, 46, :_reduce_15,
161
- 4, 50, :_reduce_16,
162
- 3, 50, :_reduce_17,
163
- 1, 48, :_reduce_18,
164
- 1, 49, :_reduce_none,
165
- 3, 49, :_reduce_20,
142
+ 3, 49, :_reduce_27,
143
+ 3, 49, :_reduce_28,
144
+ 3, 49, :_reduce_29,
145
+ 3, 49, :_reduce_30,
146
+ 3, 49, :_reduce_31,
147
+ 3, 49, :_reduce_32,
148
+ 1, 39, :_reduce_none,
149
+ 1, 39, :_reduce_none,
150
+ 3, 50, :_reduce_35,
151
+ 3, 50, :_reduce_36,
152
+ 1, 50, :_reduce_none,
153
+ 3, 52, :_reduce_38,
154
+ 3, 52, :_reduce_39,
166
155
  1, 52, :_reduce_none,
167
- 3, 52, :_reduce_22,
168
- 2, 53, :_reduce_23,
156
+ 2, 53, :_reduce_41,
169
157
  1, 53, :_reduce_none,
170
158
  1, 54, :_reduce_none,
159
+ 1, 54, :_reduce_44,
160
+ 1, 55, :_reduce_none,
171
161
  1, 55, :_reduce_none,
172
- 3, 55, :_reduce_27,
173
162
  1, 56, :_reduce_none,
174
163
  1, 56, :_reduce_none,
175
- 3, 57, :_reduce_30,
176
- 3, 57, :_reduce_31,
177
- 3, 57, :_reduce_32,
178
- 3, 57, :_reduce_33,
179
- 3, 57, :_reduce_34,
180
- 3, 57, :_reduce_35,
164
+ 1, 37, :_reduce_49,
165
+ 3, 38, :_reduce_50,
166
+ 1, 38, :_reduce_none,
167
+ 1, 51, :_reduce_52,
168
+ 3, 51, :_reduce_53,
169
+ 2, 51, :_reduce_54,
181
170
  1, 51, :_reduce_none,
182
- 1, 51, :_reduce_none,
183
- 1, 58, :_reduce_none,
184
- 1, 44, :_reduce_none,
185
- 1, 44, :_reduce_none,
186
- 3, 59, :_reduce_41,
187
- 3, 59, :_reduce_42,
188
- 1, 59, :_reduce_none,
189
- 3, 61, :_reduce_44,
190
- 3, 61, :_reduce_45,
191
- 1, 61, :_reduce_none,
192
- 2, 62, :_reduce_47,
193
- 1, 62, :_reduce_none,
194
- 1, 63, :_reduce_none,
195
- 3, 63, :_reduce_50,
196
- 1, 64, :_reduce_none,
197
- 1, 64, :_reduce_none,
198
- 1, 65, :_reduce_none,
199
- 1, 65, :_reduce_none,
200
- 1, 42, :_reduce_55,
201
- 3, 43, :_reduce_56,
202
- 1, 43, :_reduce_none,
203
- 1, 60, :_reduce_58,
204
- 3, 60, :_reduce_59,
205
- 2, 60, :_reduce_60,
206
- 1, 60, :_reduce_none,
207
- 2, 67, :_reduce_62,
208
- 1, 66, :_reduce_none,
209
- 3, 68, :_reduce_64,
210
- 2, 68, :_reduce_65,
211
- 2, 68, :_reduce_66,
212
- 1, 68, :_reduce_67 ]
213
-
214
- racc_reduce_n = 68
215
-
216
- racc_shift_n = 101
171
+ 2, 58, :_reduce_56,
172
+ 1, 57, :_reduce_none,
173
+ 3, 59, :_reduce_58,
174
+ 2, 59, :_reduce_59,
175
+ 2, 59, :_reduce_60,
176
+ 1, 59, :_reduce_61 ]
177
+
178
+ racc_reduce_n = 62
179
+
180
+ racc_shift_n = 87
217
181
 
218
182
  racc_token_table = {
219
183
  false => 0,
@@ -221,36 +185,31 @@ racc_token_table = {
221
185
  :SELECT => 2,
222
186
  :FROM => 3,
223
187
  :WHERE => 4,
224
- :IS => 5,
225
- :NOT => 6,
226
- :NULL => 7,
227
- :identifier => 8,
228
- :OR => 9,
229
- :AND => 10,
230
- :left_paren => 11,
231
- :right_paren => 12,
232
- :equals_operator => 13,
233
- :not_equals_operator => 14,
234
- :less_than_operator => 15,
235
- :greater_than_operator => 16,
236
- :less_than_or_equals_operator => 17,
237
- :greater_than_or_equals_operator => 18,
238
- :row_subquery => 19,
239
- :plus_sign => 20,
240
- :minus_sign => 21,
241
- :asterisk => 22,
242
- :solidus => 23,
243
- :sign => 24,
244
- :general_value_specification => 25,
245
- :comma => 26,
246
- :quote => 27,
247
- :character_string_literal => 28,
248
- :DATETIME => 29,
249
- :datetime_string => 30,
250
- :unsigned_integer => 31,
251
- :period => 32 }
252
-
253
- racc_nt_base = 33
188
+ :identifier => 5,
189
+ :OR => 6,
190
+ :AND => 7,
191
+ :not_equals_operator => 8,
192
+ :NULL => 9,
193
+ :equals_operator => 10,
194
+ :less_than_operator => 11,
195
+ :greater_than_operator => 12,
196
+ :less_than_or_equals_operator => 13,
197
+ :greater_than_or_equals_operator => 14,
198
+ :plus_sign => 15,
199
+ :minus_sign => 16,
200
+ :asterisk => 17,
201
+ :solidus => 18,
202
+ :sign => 19,
203
+ :general_value_specification => 20,
204
+ :comma => 21,
205
+ :quote => 22,
206
+ :character_string_literal => 23,
207
+ :DATETIME => 24,
208
+ :datetime_string => 25,
209
+ :unsigned_integer => 26,
210
+ :period => 27 }
211
+
212
+ racc_nt_base = 28
254
213
 
255
214
  racc_use_result_var = true
256
215
 
@@ -277,21 +236,16 @@ Racc_token_to_s_table = [
277
236
  "SELECT",
278
237
  "FROM",
279
238
  "WHERE",
280
- "IS",
281
- "NOT",
282
- "NULL",
283
239
  "identifier",
284
240
  "OR",
285
241
  "AND",
286
- "left_paren",
287
- "right_paren",
288
- "equals_operator",
289
242
  "not_equals_operator",
243
+ "NULL",
244
+ "equals_operator",
290
245
  "less_than_operator",
291
246
  "greater_than_operator",
292
247
  "less_than_or_equals_operator",
293
248
  "greater_than_or_equals_operator",
294
- "row_subquery",
295
249
  "plus_sign",
296
250
  "minus_sign",
297
251
  "asterisk",
@@ -322,15 +276,11 @@ Racc_token_to_s_table = [
322
276
  "table_reference",
323
277
  "table_name",
324
278
  "search_condition",
325
- "null_predicate",
326
- "row_value_constructor",
327
279
  "boolean_term",
328
280
  "boolean_factor",
329
- "boolean_test",
330
- "boolean_primary",
331
281
  "predicate",
282
+ "null_predicate",
332
283
  "comparison_predicate",
333
- "row_value_constructor_element",
334
284
  "numeric_value_expression",
335
285
  "general_literal",
336
286
  "term",
@@ -416,248 +366,231 @@ module_eval(<<'.,.,', 'parser.racc', 41)
416
366
 
417
367
  module_eval(<<'.,.,', 'parser.racc', 45)
418
368
  def _reduce_16(val, _values, result)
419
- result = GitlabZOQL::Parser::Statement::Not.new(GitlabZOQL::Parser::Statement::Is.new(val[0], GitlabZOQL::Parser::Statement::Null.new))
369
+ result = GitlabZOQL::Parser::Statement::Table.new(val[0])
420
370
  result
421
371
  end
422
372
  .,.,
423
373
 
424
- module_eval(<<'.,.,', 'parser.racc', 46)
425
- def _reduce_17(val, _values, result)
426
- result = GitlabZOQL::Parser::Statement::Is.new(val[0], GitlabZOQL::Parser::Statement::Null.new)
427
- result
428
- end
429
- .,.,
374
+ # reduce 17 omitted
430
375
 
431
376
  module_eval(<<'.,.,', 'parser.racc', 50)
432
377
  def _reduce_18(val, _values, result)
433
- result = GitlabZOQL::Parser::Statement::Table.new(val[0])
378
+ result = GitlabZOQL::Parser::Statement::Or.new(val[0], val[2])
434
379
  result
435
380
  end
436
381
  .,.,
437
382
 
438
383
  # reduce 19 omitted
439
384
 
440
- module_eval(<<'.,.,', 'parser.racc', 55)
385
+ module_eval(<<'.,.,', 'parser.racc', 54)
441
386
  def _reduce_20(val, _values, result)
442
- result = GitlabZOQL::Parser::Statement::Or.new(val[0], val[2])
387
+ result = GitlabZOQL::Parser::Statement::And.new(val[0], val[2])
443
388
  result
444
389
  end
445
390
  .,.,
446
391
 
447
- # reduce 21 omitted
448
-
449
- module_eval(<<'.,.,', 'parser.racc', 59)
450
- def _reduce_22(val, _values, result)
451
- result = GitlabZOQL::Parser::Statement::And.new(val[0], val[2])
392
+ module_eval(<<'.,.,', 'parser.racc', 57)
393
+ def _reduce_21(val, _values, result)
394
+ result = GitlabZOQL::Parser::Statement::Not.new(val[1])
452
395
  result
453
396
  end
454
397
  .,.,
455
398
 
456
- module_eval(<<'.,.,', 'parser.racc', 62)
399
+ # reduce 22 omitted
400
+
401
+ module_eval(<<'.,.,', 'parser.racc', 61)
457
402
  def _reduce_23(val, _values, result)
458
- result = GitlabZOQL::Parser::Statement::Not.new(val[1])
403
+ result = GitlabZOQL::Parser::Statement::Not.new(GitlabZOQL::Parser::Statement::Equals.new(val[0], GitlabZOQL::Parser::Statement::Null.new))
459
404
  result
460
405
  end
461
406
  .,.,
462
407
 
463
- # reduce 24 omitted
464
-
465
- # reduce 25 omitted
466
-
467
- # reduce 26 omitted
468
-
469
- module_eval(<<'.,.,', 'parser.racc', 70)
470
- def _reduce_27(val, _values, result)
471
- result = val[1]
408
+ module_eval(<<'.,.,', 'parser.racc', 62)
409
+ def _reduce_24(val, _values, result)
410
+ result = GitlabZOQL::Parser::Statement::Equals.new(val[0], GitlabZOQL::Parser::Statement::Null.new)
472
411
  result
473
412
  end
474
413
  .,.,
475
414
 
476
- # reduce 28 omitted
415
+ # reduce 25 omitted
477
416
 
478
- # reduce 29 omitted
417
+ # reduce 26 omitted
479
418
 
480
- module_eval(<<'.,.,', 'parser.racc', 77)
481
- def _reduce_30(val, _values, result)
419
+ module_eval(<<'.,.,', 'parser.racc', 69)
420
+ def _reduce_27(val, _values, result)
482
421
  result = GitlabZOQL::Parser::Statement::Equals.new(val[0], val[2])
483
422
  result
484
423
  end
485
424
  .,.,
486
425
 
487
- module_eval(<<'.,.,', 'parser.racc', 78)
488
- def _reduce_31(val, _values, result)
426
+ module_eval(<<'.,.,', 'parser.racc', 70)
427
+ def _reduce_28(val, _values, result)
489
428
  result = GitlabZOQL::Parser::Statement::Not.new(GitlabZOQL::Parser::Statement::Equals.new(val[0], val[2]))
490
429
  result
491
430
  end
492
431
  .,.,
493
432
 
494
- module_eval(<<'.,.,', 'parser.racc', 79)
495
- def _reduce_32(val, _values, result)
433
+ module_eval(<<'.,.,', 'parser.racc', 71)
434
+ def _reduce_29(val, _values, result)
496
435
  result = GitlabZOQL::Parser::Statement::Less.new(val[0], val[2])
497
436
  result
498
437
  end
499
438
  .,.,
500
439
 
501
- module_eval(<<'.,.,', 'parser.racc', 80)
502
- def _reduce_33(val, _values, result)
440
+ module_eval(<<'.,.,', 'parser.racc', 72)
441
+ def _reduce_30(val, _values, result)
503
442
  result = GitlabZOQL::Parser::Statement::Greater.new(val[0], val[2])
504
443
  result
505
444
  end
506
445
  .,.,
507
446
 
508
- module_eval(<<'.,.,', 'parser.racc', 81)
509
- def _reduce_34(val, _values, result)
447
+ module_eval(<<'.,.,', 'parser.racc', 73)
448
+ def _reduce_31(val, _values, result)
510
449
  result = GitlabZOQL::Parser::Statement::LessOrEquals.new(val[0], val[2])
511
450
  result
512
451
  end
513
452
  .,.,
514
453
 
515
- module_eval(<<'.,.,', 'parser.racc', 82)
516
- def _reduce_35(val, _values, result)
454
+ module_eval(<<'.,.,', 'parser.racc', 74)
455
+ def _reduce_32(val, _values, result)
517
456
  result = GitlabZOQL::Parser::Statement::GreaterOrEquals.new(val[0], val[2])
518
457
  result
519
458
  end
520
459
  .,.,
521
460
 
522
- # reduce 36 omitted
461
+ # reduce 33 omitted
523
462
 
524
- # reduce 37 omitted
525
-
526
- # reduce 38 omitted
527
-
528
- # reduce 39 omitted
463
+ # reduce 34 omitted
529
464
 
530
- # reduce 40 omitted
531
-
532
- module_eval(<<'.,.,', 'parser.racc', 96)
533
- def _reduce_41(val, _values, result)
465
+ module_eval(<<'.,.,', 'parser.racc', 81)
466
+ def _reduce_35(val, _values, result)
534
467
  result = GitlabZOQL::Parser::Statement::Add.new(val[0], val[2])
535
468
  result
536
469
  end
537
470
  .,.,
538
471
 
539
- module_eval(<<'.,.,', 'parser.racc', 97)
540
- def _reduce_42(val, _values, result)
472
+ module_eval(<<'.,.,', 'parser.racc', 82)
473
+ def _reduce_36(val, _values, result)
541
474
  result = GitlabZOQL::Parser::Statement::Subtract.new(val[0], val[2])
542
475
  result
543
476
  end
544
477
  .,.,
545
478
 
546
- # reduce 43 omitted
479
+ # reduce 37 omitted
547
480
 
548
- module_eval(<<'.,.,', 'parser.racc', 101)
549
- def _reduce_44(val, _values, result)
481
+ module_eval(<<'.,.,', 'parser.racc', 86)
482
+ def _reduce_38(val, _values, result)
550
483
  result = GitlabZOQL::Parser::Statement::Multiply.new(val[0], val[2])
551
484
  result
552
485
  end
553
486
  .,.,
554
487
 
555
- module_eval(<<'.,.,', 'parser.racc', 102)
556
- def _reduce_45(val, _values, result)
488
+ module_eval(<<'.,.,', 'parser.racc', 87)
489
+ def _reduce_39(val, _values, result)
557
490
  result = GitlabZOQL::Parser::Statement::Divide.new(val[0], val[2])
558
491
  result
559
492
  end
560
493
  .,.,
561
494
 
562
- # reduce 46 omitted
495
+ # reduce 40 omitted
563
496
 
564
- module_eval(<<'.,.,', 'parser.racc', 106)
565
- def _reduce_47(val, _values, result)
497
+ module_eval(<<'.,.,', 'parser.racc', 91)
498
+ def _reduce_41(val, _values, result)
566
499
  result = val[0].new(val[1])
567
500
  result
568
501
  end
569
502
  .,.,
570
503
 
571
- # reduce 48 omitted
504
+ # reduce 42 omitted
572
505
 
573
- # reduce 49 omitted
506
+ # reduce 43 omitted
574
507
 
575
- module_eval(<<'.,.,', 'parser.racc', 111)
576
- def _reduce_50(val, _values, result)
577
- result = val[1]
508
+ module_eval(<<'.,.,', 'parser.racc', 96)
509
+ def _reduce_44(val, _values, result)
510
+ result = val[0]
578
511
  result
579
512
  end
580
513
  .,.,
581
514
 
582
- # reduce 51 omitted
515
+ # reduce 45 omitted
583
516
 
584
- # reduce 52 omitted
517
+ # reduce 46 omitted
585
518
 
586
- # reduce 53 omitted
519
+ # reduce 47 omitted
587
520
 
588
- # reduce 54 omitted
521
+ # reduce 48 omitted
589
522
 
590
- module_eval(<<'.,.,', 'parser.racc', 123)
591
- def _reduce_55(val, _values, result)
523
+ module_eval(<<'.,.,', 'parser.racc', 108)
524
+ def _reduce_49(val, _values, result)
592
525
  result = GitlabZOQL::Parser::Statement::Column.new(val[0])
593
526
  result
594
527
  end
595
528
  .,.,
596
529
 
597
- module_eval(<<'.,.,', 'parser.racc', 126)
598
- def _reduce_56(val, _values, result)
530
+ module_eval(<<'.,.,', 'parser.racc', 111)
531
+ def _reduce_50(val, _values, result)
599
532
  result = Array(val[0]) + Array(val[2])
600
533
  result
601
534
  end
602
535
  .,.,
603
536
 
604
- # reduce 57 omitted
537
+ # reduce 51 omitted
605
538
 
606
- module_eval(<<'.,.,', 'parser.racc', 131)
607
- def _reduce_58(val, _values, result)
539
+ module_eval(<<'.,.,', 'parser.racc', 116)
540
+ def _reduce_52(val, _values, result)
608
541
  result = GitlabZOQL::Parser::Statement::Identifier.new(val[0])
609
542
  result
610
543
  end
611
544
  .,.,
612
545
 
613
- module_eval(<<'.,.,', 'parser.racc', 132)
614
- def _reduce_59(val, _values, result)
546
+ module_eval(<<'.,.,', 'parser.racc', 117)
547
+ def _reduce_53(val, _values, result)
615
548
  result = GitlabZOQL::Parser::Statement::Literal.new(val[1])
616
549
  result
617
550
  end
618
551
  .,.,
619
552
 
620
- module_eval(<<'.,.,', 'parser.racc', 133)
621
- def _reduce_60(val, _values, result)
553
+ module_eval(<<'.,.,', 'parser.racc', 118)
554
+ def _reduce_54(val, _values, result)
622
555
  result = GitlabZOQL::Parser::Statement::String.new('')
623
556
  result
624
557
  end
625
558
  .,.,
626
559
 
627
- # reduce 61 omitted
560
+ # reduce 55 omitted
628
561
 
629
- module_eval(<<'.,.,', 'parser.racc', 137)
630
- def _reduce_62(val, _values, result)
562
+ module_eval(<<'.,.,', 'parser.racc', 122)
563
+ def _reduce_56(val, _values, result)
631
564
  result = GitlabZOQL::Parser::Statement::DateTime.new(val[1])
632
565
  result
633
566
  end
634
567
  .,.,
635
568
 
636
- # reduce 63 omitted
569
+ # reduce 57 omitted
637
570
 
638
- module_eval(<<'.,.,', 'parser.racc', 143)
639
- def _reduce_64(val, _values, result)
571
+ module_eval(<<'.,.,', 'parser.racc', 128)
572
+ def _reduce_58(val, _values, result)
640
573
  result = GitlabZOQL::Parser::Statement::Float.new("#{val[0]}.#{val[2]}".to_f)
641
574
  result
642
575
  end
643
576
  .,.,
644
577
 
645
- module_eval(<<'.,.,', 'parser.racc', 144)
646
- def _reduce_65(val, _values, result)
578
+ module_eval(<<'.,.,', 'parser.racc', 129)
579
+ def _reduce_59(val, _values, result)
647
580
  result = GitlabZOQL::Parser::Statement::Float.new(val[0])
648
581
  result
649
582
  end
650
583
  .,.,
651
584
 
652
- module_eval(<<'.,.,', 'parser.racc', 145)
653
- def _reduce_66(val, _values, result)
585
+ module_eval(<<'.,.,', 'parser.racc', 130)
586
+ def _reduce_60(val, _values, result)
654
587
  result = GitlabZOQL::Parser::Statement::Float.new("0.#{val[1]}".to_f)
655
588
  result
656
589
  end
657
590
  .,.,
658
591
 
659
- module_eval(<<'.,.,', 'parser.racc', 146)
660
- def _reduce_67(val, _values, result)
592
+ module_eval(<<'.,.,', 'parser.racc', 131)
593
+ def _reduce_61(val, _values, result)
661
594
  result = GitlabZOQL::Parser::Statement::Integer.new(val[0])
662
595
  result
663
596
  end
@@ -68,34 +68,28 @@ class GitlabZOQL::Parser < Racc::Parser
68
68
  when (text = @ss.scan(/\s+/i))
69
69
  ;
70
70
 
71
- when (text = @ss.scan(/AND/i))
71
+ when (text = @ss.scan(/AND\b/i))
72
72
  action { [:AND, text] }
73
73
 
74
- when (text = @ss.scan(/BY/i))
75
- action { [:BY, text] }
76
-
77
- when (text = @ss.scan(/COUNT/i))
74
+ when (text = @ss.scan(/COUNT\b/i))
78
75
  action { [:COUNT, text] }
79
76
 
80
- when (text = @ss.scan(/ELSE/i))
77
+ when (text = @ss.scan(/ELSE\b/i))
81
78
  action { [:ELSE, text] }
82
79
 
83
- when (text = @ss.scan(/END/i))
84
- action { [:END, text] }
85
-
86
- when (text = @ss.scan(/FROM/i))
80
+ when (text = @ss.scan(/FROM\b/i))
87
81
  action { [:FROM, text] }
88
82
 
89
- when (text = @ss.scan(/NULL/i))
83
+ when (text = @ss.scan(/NULL\b/i))
90
84
  action { [:NULL, text] }
91
85
 
92
- when (text = @ss.scan(/OR/i))
86
+ when (text = @ss.scan(/OR\b/i))
93
87
  action { [:OR, text] }
94
88
 
95
- when (text = @ss.scan(/SELECT/i))
89
+ when (text = @ss.scan(/SELECT\b/i))
96
90
  action { [:SELECT, text] }
97
91
 
98
- when (text = @ss.scan(/WHERE/i))
92
+ when (text = @ss.scan(/WHERE\b/i))
99
93
  action { [:WHERE, text] }
100
94
 
101
95
  when (text = @ss.scan(/!=/i))
@@ -116,12 +110,6 @@ class GitlabZOQL::Parser < Racc::Parser
116
110
  when (text = @ss.scan(/>/i))
117
111
  action { [:greater_than_operator, text] }
118
112
 
119
- when (text = @ss.scan(/\(/i))
120
- action { [:left_paren, text] }
121
-
122
- when (text = @ss.scan(/\)/i))
123
- action { [:right_paren, text] }
124
-
125
113
  when (text = @ss.scan(/,/i))
126
114
  action { [:comma, text] }
127
115
 
@@ -142,14 +130,14 @@ class GitlabZOQL::Parser < Racc::Parser
142
130
 
143
131
  when :STRS
144
132
  case
145
- when (text = @ss.scan(/\'/i))
146
- action { @state = nil; [:quote, text] }
147
-
148
133
  when (text = @ss.scan(/[0-9]+-[0-9]+-[0-9]+T[0-9]+:[0-9]+:[0-9]+\+[0-9]+:[0-9]+/i))
149
134
  action { [:datetime_string, DateTime.parse(text)] }
150
135
 
151
- when (text = @ss.scan(/.*(?=\')/i))
152
- action { [:character_string_literal, text.gsub("''", "'")] }
136
+ when (text = @ss.scan(/(?:[^\\']|\\.|'')+/i))
137
+ action { [:character_string_literal, text] }
138
+
139
+ when (text = @ss.scan(/\'/i))
140
+ action { @state = nil; [:quote, text] }
153
141
 
154
142
 
155
143
  else
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module GitlabZOQL
4
- VERSION = '0.1.0'
4
+ VERSION = '0.2.2'
5
5
  end
@@ -47,14 +47,6 @@ module GitlabZOQL
47
47
  search_condition('AND', o)
48
48
  end
49
49
 
50
- def visit_Is(o)
51
- if @negated
52
- comparison('IS NOT', o)
53
- else
54
- comparison('IS', o)
55
- end
56
- end
57
-
58
50
  def visit_GreaterOrEquals(o)
59
51
  comparison('>=', o)
60
52
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitlab-zoql
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vitaly Slobodin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-19 00:00:00.000000000 Z
11
+ date: 2024-06-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: minitest
@@ -113,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
113
113
  - !ruby/object:Gem::Version
114
114
  version: '0'
115
115
  requirements: []
116
- rubygems_version: 3.5.6
116
+ rubygems_version: 3.5.11
117
117
  signing_key:
118
118
  specification_version: 4
119
119
  summary: A toolkit for working with ZOQL language