sdbcli 1.3.5 → 1.3.6
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.
- data/README +4 -0
- data/bin/sdbcli +5 -1
- data/lib/sdbcli/sdb-driver.rb +23 -1
- data/lib/sdbcli/sdb-parser.tab.rb +232 -214
- data/lib/sdbcli/sdb-parser.y +11 -2
- data/lib/sdbcli/sdb-runner.rb +3 -1
- metadata +46 -60
data/README
CHANGED
|
@@ -80,6 +80,10 @@ https://bitbucket.org/winebarrel/sdbcli
|
|
|
80
80
|
displays a continuation of a result
|
|
81
81
|
(NEXT statement is published after SELECT statement)
|
|
82
82
|
|
|
83
|
+
CUR[RENT]
|
|
84
|
+
displays a present result
|
|
85
|
+
(CURRENT statement is published after SELECT statement)
|
|
86
|
+
|
|
83
87
|
DESC domain_name
|
|
84
88
|
displays information about the domain
|
|
85
89
|
|
data/bin/sdbcli
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env ruby
|
|
2
2
|
$LOAD_PATH << File.join(File.dirname(__FILE__), '..', 'lib')
|
|
3
3
|
|
|
4
|
-
Version = '1.3.
|
|
4
|
+
Version = '1.3.6'
|
|
5
5
|
HISTORY_FILE = File.join((ENV['HOME'] || ENV['USERPROFILE'] || '.'), '.sdbcli_history')
|
|
6
6
|
HISTSIZE = 500
|
|
7
7
|
SELECT_LIMIT = 2500
|
|
@@ -394,6 +394,10 @@ NEXT
|
|
|
394
394
|
displays a continuation of a result
|
|
395
395
|
(NEXT statement is published after SELECT statement)
|
|
396
396
|
|
|
397
|
+
CUR[RENT]
|
|
398
|
+
displays a present result
|
|
399
|
+
(CURRENT statement is published after SELECT statement)
|
|
400
|
+
|
|
397
401
|
DESC domain_name
|
|
398
402
|
displays information about the domain
|
|
399
403
|
|
data/lib/sdbcli/sdb-driver.rb
CHANGED
|
@@ -12,6 +12,7 @@ module SimpleDB
|
|
|
12
12
|
@client = Client.new(accessKeyId, secretAccessKey, endpoint)
|
|
13
13
|
@select_expr = nil
|
|
14
14
|
@next_token = nil
|
|
15
|
+
@current_token = nil
|
|
15
16
|
end
|
|
16
17
|
|
|
17
18
|
def endpoint
|
|
@@ -119,6 +120,7 @@ module SimpleDB
|
|
|
119
120
|
|
|
120
121
|
if persist
|
|
121
122
|
@select_expr = expr
|
|
123
|
+
@current_token = nil
|
|
122
124
|
@next_token = token
|
|
123
125
|
end
|
|
124
126
|
|
|
@@ -133,7 +135,27 @@ module SimpleDB
|
|
|
133
135
|
params = {:SelectExpression => @select_expr, :ConsistentRead => consistent}
|
|
134
136
|
items = []
|
|
135
137
|
|
|
136
|
-
|
|
138
|
+
token = iterate(:select, params, @next_token) do |doc|
|
|
139
|
+
doc.css('Item').map do |i|
|
|
140
|
+
items << [i.at_css('Name').content, attrs_to_hash(i)]
|
|
141
|
+
end
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
@current_token = @next_token
|
|
145
|
+
@next_token = token
|
|
146
|
+
|
|
147
|
+
return items
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
def current_list(consistent = false)
|
|
151
|
+
unless @select_expr
|
|
152
|
+
return []
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
params = {:SelectExpression => @select_expr, :ConsistentRead => consistent}
|
|
156
|
+
items = []
|
|
157
|
+
|
|
158
|
+
iterate(:select, params, @current_token || :first) do |doc|
|
|
137
159
|
doc.css('Item').map do |i|
|
|
138
160
|
items << [i.at_css('Name').content, attrs_to_hash(i)]
|
|
139
161
|
end
|
|
@@ -13,7 +13,7 @@ module SimpleDB
|
|
|
13
13
|
|
|
14
14
|
class Parser < Racc::Parser
|
|
15
15
|
|
|
16
|
-
module_eval(<<'...end sdb-parser.y/module_eval...', 'sdb-parser.y',
|
|
16
|
+
module_eval(<<'...end sdb-parser.y/module_eval...', 'sdb-parser.y', 263)
|
|
17
17
|
|
|
18
18
|
KEYWORDS = %w(
|
|
19
19
|
ADD
|
|
@@ -90,6 +90,8 @@ def scan
|
|
|
90
90
|
yield [:SELECT, tok + @ss.scan(/.*/)]
|
|
91
91
|
elsif (tok = @ss.scan /NEXT\b/i)
|
|
92
92
|
yield [:NEXT, @ss.scan(/\s*\|\s*.*/)]
|
|
93
|
+
elsif (tok = @ss.scan /CUR(RENT)?\b/i)
|
|
94
|
+
yield [:CURRENT, @ss.scan(/\s*\|\s*.*/)]
|
|
93
95
|
elsif (tok = @ss.scan /NULL\b/i)
|
|
94
96
|
yield [:NULL, nil]
|
|
95
97
|
elsif (tok = @ss.scan /`([^`]|``)*`/)
|
|
@@ -98,8 +100,8 @@ def scan
|
|
|
98
100
|
yield [:VALUE, tok.slice(1...-1).gsub(/''/, "'")]
|
|
99
101
|
elsif (tok = @ss.scan /"([^"]|"")*"/) #"
|
|
100
102
|
yield [:VALUE, tok.slice(1...-1).gsub(/""/, '"')]
|
|
101
|
-
elsif (tok = @ss.scan
|
|
102
|
-
yield [:
|
|
103
|
+
elsif (tok = @ss.scan /\d+(\.\d+)?/)
|
|
104
|
+
yield [:VALUE, tok]
|
|
103
105
|
elsif (tok = @ss.scan /[,\(\)\*]/)
|
|
104
106
|
yield [tok, tok]
|
|
105
107
|
elsif (tok = @ss.scan /[a-z_$][-0-9a-z_$.]*\b/i)
|
|
@@ -133,57 +135,57 @@ end
|
|
|
133
135
|
##### State transition tables begin ###
|
|
134
136
|
|
|
135
137
|
racc_action_table = [
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
20, 21,
|
|
139
|
-
|
|
140
|
-
49,
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
86, 87,
|
|
144
|
-
|
|
138
|
+
15, 9, 16, 71, 68, 29, 67, 33, 66, 46,
|
|
139
|
+
69, 69, 31, 17, 47, 67, 18, 66, 48, 19,
|
|
140
|
+
20, 21, 22, 23, 44, 24, 25, 102, 98, 26,
|
|
141
|
+
27, 28, 75, 76, 40, 41, 97, 98, 61, 62,
|
|
142
|
+
49, 50, 51, 47, 52, 53, 54, 55, 56, 59,
|
|
143
|
+
59, 43, 63, 42, 39, 70, 45, 72, 73, 74,
|
|
144
|
+
38, 77, 59, 79, 80, 81, 82, 83, 33, 85,
|
|
145
|
+
86, 87, 88, 89, 91, 92, 93, 95, 96, 35,
|
|
146
|
+
99, 100, 95, 34 ]
|
|
145
147
|
|
|
146
148
|
racc_action_check = [
|
|
147
|
-
0, 0,
|
|
148
|
-
|
|
149
|
-
0, 0,
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
80, 81,
|
|
155
|
-
|
|
149
|
+
0, 0, 0, 60, 57, 1, 56, 16, 56, 30,
|
|
150
|
+
60, 57, 16, 0, 32, 76, 0, 76, 34, 0,
|
|
151
|
+
0, 0, 0, 0, 28, 0, 0, 101, 101, 0,
|
|
152
|
+
0, 0, 64, 64, 25, 25, 94, 94, 51, 51,
|
|
153
|
+
35, 35, 36, 37, 38, 39, 46, 47, 48, 49,
|
|
154
|
+
50, 27, 54, 26, 24, 59, 29, 61, 62, 63,
|
|
155
|
+
23, 68, 69, 70, 71, 72, 74, 75, 19, 77,
|
|
156
|
+
80, 81, 82, 83, 85, 86, 87, 89, 90, 18,
|
|
157
|
+
96, 98, 99, 17 ]
|
|
156
158
|
|
|
157
159
|
racc_action_pointer = [
|
|
158
|
-
-1,
|
|
159
|
-
nil, nil, nil, nil, nil, 2,
|
|
160
|
-
nil, 35, 29, 6,
|
|
161
|
-
1, nil, 13,
|
|
162
|
-
nil, nil, nil, nil,
|
|
163
|
-
nil, nil,
|
|
164
|
-
|
|
165
|
-
57, nil,
|
|
166
|
-
62,
|
|
167
|
-
nil, nil,
|
|
168
|
-
nil ]
|
|
160
|
+
-1, 5, nil, nil, nil, nil, nil, nil, nil, nil,
|
|
161
|
+
nil, nil, nil, nil, nil, nil, 2, 68, 74, 63,
|
|
162
|
+
nil, nil, nil, 35, 29, 6, 48, 46, 19, 56,
|
|
163
|
+
5, nil, 1, nil, 13, 22, 38, 30, 39, 40,
|
|
164
|
+
nil, nil, nil, nil, nil, nil, 41, 42, 37, 44,
|
|
165
|
+
45, 33, nil, nil, 46, nil, 1, -2, nil, 47,
|
|
166
|
+
-3, 51, 51, 52, 20, nil, nil, nil, 54, 57,
|
|
167
|
+
54, 57, 58, nil, 58, 51, 10, 61, nil, nil,
|
|
168
|
+
62, 63, 63, 62, nil, 65, 66, 67, nil, 68,
|
|
169
|
+
65, nil, nil, nil, 24, nil, 69, nil, 72, 73,
|
|
170
|
+
nil, 15, nil ]
|
|
169
171
|
|
|
170
172
|
racc_action_default = [
|
|
171
|
-
-
|
|
172
|
-
-9, -10, -11, -12, -13, -
|
|
173
|
-
-43, -
|
|
174
|
-
-
|
|
175
|
-
-48, -49, -50,
|
|
176
|
-
-
|
|
177
|
-
-
|
|
178
|
-
-
|
|
179
|
-
-
|
|
180
|
-
-
|
|
181
|
-
-
|
|
173
|
+
-57, -57, -1, -2, -3, -4, -5, -6, -7, -8,
|
|
174
|
+
-9, -10, -11, -12, -13, -14, -16, -57, -57, -41,
|
|
175
|
+
-43, -44, -45, -57, -57, -57, -57, -57, -57, -57,
|
|
176
|
+
-57, -17, -18, -53, -57, -57, -57, -42, -57, -57,
|
|
177
|
+
-48, -49, -50, -51, -52, 103, -57, -57, -57, -57,
|
|
178
|
+
-57, -57, -46, -47, -57, -54, -57, -27, -34, -57,
|
|
179
|
+
-31, -38, -39, -57, -57, -22, -24, -25, -28, -57,
|
|
180
|
+
-57, -32, -57, -40, -57, -57, -57, -29, -35, -36,
|
|
181
|
+
-33, -57, -57, -57, -23, -57, -57, -57, -15, -57,
|
|
182
|
+
-21, -26, -30, -37, -57, -55, -57, -19, -57, -57,
|
|
183
|
+
-56, -57, -20 ]
|
|
182
184
|
|
|
183
185
|
racc_goto_table = [
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
186
|
+
65, 94, 32, 57, 60, 37, 13, 6, 7, 8,
|
|
187
|
+
10, 101, 11, 12, 5, 14, 30, 1, 90, 4,
|
|
188
|
+
84, 64, 3, 2, 78, 36 ]
|
|
187
189
|
|
|
188
190
|
racc_goto_check = [
|
|
189
191
|
19, 17, 15, 20, 20, 15, 12, 6, 7, 8,
|
|
@@ -192,109 +194,113 @@ racc_goto_check = [
|
|
|
192
194
|
|
|
193
195
|
racc_goto_pointer = [
|
|
194
196
|
nil, 17, 23, 22, 19, 14, 7, 8, 9, 10,
|
|
195
|
-
12, 13, 6, 15,
|
|
196
|
-
-
|
|
197
|
+
12, 13, 6, 15, 0, -14, -65, -88, -35, -56,
|
|
198
|
+
-46, -45, 6 ]
|
|
197
199
|
|
|
198
200
|
racc_goto_default = [
|
|
199
201
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
|
200
202
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
|
201
|
-
nil,
|
|
203
|
+
nil, 58, nil ]
|
|
202
204
|
|
|
203
205
|
racc_reduce_table = [
|
|
204
206
|
0, 0, :racc_error,
|
|
205
|
-
1,
|
|
206
|
-
1,
|
|
207
|
-
1,
|
|
208
|
-
1,
|
|
209
|
-
1,
|
|
210
|
-
1,
|
|
211
|
-
1,
|
|
212
|
-
1,
|
|
213
|
-
1,
|
|
214
|
-
1,
|
|
215
|
-
1,
|
|
216
|
-
1,
|
|
217
|
-
1,
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
1,
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
1,
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
3,
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
4,
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
1,
|
|
247
|
-
1,
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
2,
|
|
207
|
+
1, 34, :_reduce_none,
|
|
208
|
+
1, 34, :_reduce_none,
|
|
209
|
+
1, 34, :_reduce_none,
|
|
210
|
+
1, 34, :_reduce_none,
|
|
211
|
+
1, 34, :_reduce_none,
|
|
212
|
+
1, 34, :_reduce_none,
|
|
213
|
+
1, 34, :_reduce_none,
|
|
214
|
+
1, 34, :_reduce_none,
|
|
215
|
+
1, 34, :_reduce_none,
|
|
216
|
+
1, 34, :_reduce_none,
|
|
217
|
+
1, 34, :_reduce_none,
|
|
218
|
+
1, 34, :_reduce_none,
|
|
219
|
+
1, 34, :_reduce_none,
|
|
220
|
+
1, 34, :_reduce_14,
|
|
221
|
+
8, 35, :_reduce_15,
|
|
222
|
+
0, 47, :_reduce_16,
|
|
223
|
+
1, 47, :_reduce_17,
|
|
224
|
+
1, 47, :_reduce_none,
|
|
225
|
+
3, 49, :_reduce_19,
|
|
226
|
+
5, 49, :_reduce_20,
|
|
227
|
+
8, 36, :_reduce_21,
|
|
228
|
+
1, 51, :_reduce_22,
|
|
229
|
+
3, 51, :_reduce_23,
|
|
230
|
+
1, 52, :_reduce_none,
|
|
231
|
+
1, 52, :_reduce_none,
|
|
232
|
+
8, 37, :_reduce_26,
|
|
233
|
+
4, 37, :_reduce_27,
|
|
234
|
+
5, 37, :_reduce_28,
|
|
235
|
+
6, 37, :_reduce_29,
|
|
236
|
+
8, 38, :_reduce_30,
|
|
237
|
+
4, 38, :_reduce_31,
|
|
238
|
+
5, 38, :_reduce_32,
|
|
239
|
+
6, 38, :_reduce_33,
|
|
240
|
+
1, 53, :_reduce_34,
|
|
241
|
+
3, 53, :_reduce_35,
|
|
242
|
+
3, 54, :_reduce_36,
|
|
243
|
+
8, 39, :_reduce_37,
|
|
244
|
+
4, 39, :_reduce_38,
|
|
245
|
+
4, 39, :_reduce_39,
|
|
246
|
+
5, 39, :_reduce_40,
|
|
247
|
+
0, 55, :_reduce_41,
|
|
248
|
+
1, 55, :_reduce_none,
|
|
249
|
+
1, 40, :_reduce_43,
|
|
250
|
+
1, 41, :_reduce_44,
|
|
251
|
+
1, 41, :_reduce_45,
|
|
252
|
+
3, 42, :_reduce_46,
|
|
253
|
+
3, 43, :_reduce_47,
|
|
254
|
+
2, 44, :_reduce_48,
|
|
253
255
|
2, 44, :_reduce_49,
|
|
254
|
-
2,
|
|
255
|
-
|
|
256
|
-
|
|
256
|
+
2, 45, :_reduce_50,
|
|
257
|
+
2, 46, :_reduce_51,
|
|
258
|
+
2, 46, :_reduce_52,
|
|
257
259
|
1, 48, :_reduce_53,
|
|
258
|
-
3, 48, :_reduce_54
|
|
260
|
+
3, 48, :_reduce_54,
|
|
261
|
+
1, 50, :_reduce_55,
|
|
262
|
+
3, 50, :_reduce_56 ]
|
|
259
263
|
|
|
260
|
-
racc_reduce_n =
|
|
264
|
+
racc_reduce_n = 57
|
|
261
265
|
|
|
262
|
-
racc_shift_n =
|
|
266
|
+
racc_shift_n = 103
|
|
263
267
|
|
|
264
268
|
racc_token_table = {
|
|
265
269
|
false => 0,
|
|
266
270
|
:error => 1,
|
|
267
|
-
:
|
|
268
|
-
:
|
|
269
|
-
:
|
|
270
|
-
:
|
|
271
|
-
:
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
"
|
|
276
|
-
"
|
|
277
|
-
"
|
|
278
|
-
|
|
279
|
-
:
|
|
280
|
-
:
|
|
281
|
-
:
|
|
282
|
-
:
|
|
283
|
-
:
|
|
284
|
-
:
|
|
285
|
-
:
|
|
286
|
-
:
|
|
287
|
-
:
|
|
288
|
-
:
|
|
289
|
-
:
|
|
290
|
-
:
|
|
291
|
-
:
|
|
292
|
-
:
|
|
293
|
-
:
|
|
294
|
-
:
|
|
295
|
-
:
|
|
296
|
-
|
|
297
|
-
|
|
271
|
+
:current_stmt => 2,
|
|
272
|
+
:GET => 3,
|
|
273
|
+
:FROM => 4,
|
|
274
|
+
:IDENTIFIER => 5,
|
|
275
|
+
:WHERE => 6,
|
|
276
|
+
:ITEMNAME => 7,
|
|
277
|
+
"=" => 8,
|
|
278
|
+
:VALUE => 9,
|
|
279
|
+
"*" => 10,
|
|
280
|
+
"(" => 11,
|
|
281
|
+
")" => 12,
|
|
282
|
+
"," => 13,
|
|
283
|
+
:INSERT => 14,
|
|
284
|
+
:INTO => 15,
|
|
285
|
+
:VALUES => 16,
|
|
286
|
+
:UPDATE => 17,
|
|
287
|
+
:SET => 18,
|
|
288
|
+
:ADD => 19,
|
|
289
|
+
:DELETE => 20,
|
|
290
|
+
:SELECT => 21,
|
|
291
|
+
:NEXT => 22,
|
|
292
|
+
:CURRENT => 23,
|
|
293
|
+
:CREATE => 24,
|
|
294
|
+
:DOMAIN => 25,
|
|
295
|
+
:DROP => 26,
|
|
296
|
+
:SHOW => 27,
|
|
297
|
+
:DOMAINS => 28,
|
|
298
|
+
:REGIONS => 29,
|
|
299
|
+
:USE => 30,
|
|
300
|
+
:DESC => 31,
|
|
301
|
+
:DESCRIBE => 32 }
|
|
302
|
+
|
|
303
|
+
racc_nt_base = 33
|
|
298
304
|
|
|
299
305
|
racc_use_result_var = false
|
|
300
306
|
|
|
@@ -317,6 +323,7 @@ Racc_arg = [
|
|
|
317
323
|
Racc_token_to_s_table = [
|
|
318
324
|
"$end",
|
|
319
325
|
"error",
|
|
326
|
+
"current_stmt",
|
|
320
327
|
"GET",
|
|
321
328
|
"FROM",
|
|
322
329
|
"IDENTIFIER",
|
|
@@ -337,6 +344,7 @@ Racc_token_to_s_table = [
|
|
|
337
344
|
"DELETE",
|
|
338
345
|
"SELECT",
|
|
339
346
|
"NEXT",
|
|
347
|
+
"CURRENT",
|
|
340
348
|
"CREATE",
|
|
341
349
|
"DOMAIN",
|
|
342
350
|
"DROP",
|
|
@@ -400,52 +408,54 @@ Racc_debug_parser = false
|
|
|
400
408
|
|
|
401
409
|
# reduce 12 omitted
|
|
402
410
|
|
|
403
|
-
|
|
404
|
-
|
|
411
|
+
# reduce 13 omitted
|
|
412
|
+
|
|
413
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 18)
|
|
414
|
+
def _reduce_14(val, _values)
|
|
405
415
|
@stmt_with_expr
|
|
406
416
|
|
|
407
417
|
end
|
|
408
418
|
.,.,
|
|
409
419
|
|
|
410
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
411
|
-
def
|
|
420
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 23)
|
|
421
|
+
def _reduce_15(val, _values)
|
|
412
422
|
struct(:GET, :domain => val[3], :item_name => val[7], :attr_names => val[1])
|
|
413
423
|
|
|
414
424
|
end
|
|
415
425
|
.,.,
|
|
416
426
|
|
|
417
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
418
|
-
def
|
|
427
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 28)
|
|
428
|
+
def _reduce_16(val, _values)
|
|
419
429
|
[]
|
|
420
430
|
|
|
421
431
|
end
|
|
422
432
|
.,.,
|
|
423
433
|
|
|
424
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
425
|
-
def
|
|
434
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 32)
|
|
435
|
+
def _reduce_17(val, _values)
|
|
426
436
|
[]
|
|
427
437
|
|
|
428
438
|
end
|
|
429
439
|
.,.,
|
|
430
440
|
|
|
431
|
-
# reduce
|
|
441
|
+
# reduce 18 omitted
|
|
432
442
|
|
|
433
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
434
|
-
def
|
|
443
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 38)
|
|
444
|
+
def _reduce_19(val, _values)
|
|
435
445
|
[val[1]]
|
|
436
446
|
|
|
437
447
|
end
|
|
438
448
|
.,.,
|
|
439
449
|
|
|
440
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
441
|
-
def
|
|
450
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 42)
|
|
451
|
+
def _reduce_20(val, _values)
|
|
442
452
|
val[0] + [val[3]]
|
|
443
453
|
|
|
444
454
|
end
|
|
445
455
|
.,.,
|
|
446
456
|
|
|
447
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
448
|
-
def
|
|
457
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 47)
|
|
458
|
+
def _reduce_21(val, _values)
|
|
449
459
|
items = val[7].map do |vals|
|
|
450
460
|
unless val[4].length == vals.length
|
|
451
461
|
raise Racc::ParseError, 'The number of an attribute and values differs'
|
|
@@ -470,26 +480,26 @@ module_eval(<<'.,.,', 'sdb-parser.y', 46)
|
|
|
470
480
|
end
|
|
471
481
|
.,.,
|
|
472
482
|
|
|
473
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
474
|
-
def
|
|
483
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 71)
|
|
484
|
+
def _reduce_22(val, _values)
|
|
475
485
|
[val[0]]
|
|
476
486
|
|
|
477
487
|
end
|
|
478
488
|
.,.,
|
|
479
489
|
|
|
480
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
481
|
-
def
|
|
490
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 75)
|
|
491
|
+
def _reduce_23(val, _values)
|
|
482
492
|
val[0] + [val[2]]
|
|
483
493
|
|
|
484
494
|
end
|
|
485
495
|
.,.,
|
|
486
496
|
|
|
487
|
-
# reduce 23 omitted
|
|
488
|
-
|
|
489
497
|
# reduce 24 omitted
|
|
490
498
|
|
|
491
|
-
|
|
492
|
-
|
|
499
|
+
# reduce 25 omitted
|
|
500
|
+
|
|
501
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 83)
|
|
502
|
+
def _reduce_26(val, _values)
|
|
493
503
|
attrs = {}
|
|
494
504
|
val[3].each {|k, v| attrs[k] = v }
|
|
495
505
|
struct(:UPDATE, :domain => val[1], :items => [[val[7], attrs]])
|
|
@@ -497,8 +507,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 82)
|
|
|
497
507
|
end
|
|
498
508
|
.,.,
|
|
499
509
|
|
|
500
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
501
|
-
def
|
|
510
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 89)
|
|
511
|
+
def _reduce_27(val, _values)
|
|
502
512
|
attrs = {}
|
|
503
513
|
val[3].each {|k, v| attrs[k] = v }
|
|
504
514
|
@stmt_with_expr = struct(:UPDATE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => '')
|
|
@@ -506,8 +516,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 88)
|
|
|
506
516
|
end
|
|
507
517
|
.,.,
|
|
508
518
|
|
|
509
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
510
|
-
def
|
|
519
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 95)
|
|
520
|
+
def _reduce_28(val, _values)
|
|
511
521
|
attrs = {}
|
|
512
522
|
val[3].each {|k, v| attrs[k] = v }
|
|
513
523
|
@stmt_with_expr = struct(:UPDATE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => 'WHERE ')
|
|
@@ -515,8 +525,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 94)
|
|
|
515
525
|
end
|
|
516
526
|
.,.,
|
|
517
527
|
|
|
518
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
519
|
-
def
|
|
528
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 101)
|
|
529
|
+
def _reduce_29(val, _values)
|
|
520
530
|
attrs = {}
|
|
521
531
|
val[3].each {|k, v| attrs[k] = v }
|
|
522
532
|
@stmt_with_expr = struct(:UPDATE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => 'WHERE itemName')
|
|
@@ -524,8 +534,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 100)
|
|
|
524
534
|
end
|
|
525
535
|
.,.,
|
|
526
536
|
|
|
527
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
528
|
-
def
|
|
537
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 108)
|
|
538
|
+
def _reduce_30(val, _values)
|
|
529
539
|
attrs = {}
|
|
530
540
|
val[3].each {|k, v| attrs[k] = v }
|
|
531
541
|
struct(:MERGE, :domain => val[1], :items => [[val[7], attrs]])
|
|
@@ -533,8 +543,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 107)
|
|
|
533
543
|
end
|
|
534
544
|
.,.,
|
|
535
545
|
|
|
536
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
537
|
-
def
|
|
546
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 114)
|
|
547
|
+
def _reduce_31(val, _values)
|
|
538
548
|
attrs = {}
|
|
539
549
|
val[3].each {|k, v| attrs[k] = v }
|
|
540
550
|
@stmt_with_expr = struct(:MERGE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => '')
|
|
@@ -542,8 +552,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 113)
|
|
|
542
552
|
end
|
|
543
553
|
.,.,
|
|
544
554
|
|
|
545
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
546
|
-
def
|
|
555
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 120)
|
|
556
|
+
def _reduce_32(val, _values)
|
|
547
557
|
attrs = {}
|
|
548
558
|
val[3].each {|k, v| attrs[k] = v }
|
|
549
559
|
@stmt_with_expr = struct(:MERGE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => 'WHERE ')
|
|
@@ -551,8 +561,8 @@ module_eval(<<'.,.,', 'sdb-parser.y', 119)
|
|
|
551
561
|
end
|
|
552
562
|
.,.,
|
|
553
563
|
|
|
554
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
555
|
-
def
|
|
564
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 126)
|
|
565
|
+
def _reduce_33(val, _values)
|
|
556
566
|
attrs = {}
|
|
557
567
|
val[3].each {|k, v| attrs[k] = v }
|
|
558
568
|
@stmt_with_expr = struct(:MERGE_WITH_EXPR, :domain => val[1], :attrs => attrs, :expr => 'WHERE itemName')
|
|
@@ -560,66 +570,66 @@ module_eval(<<'.,.,', 'sdb-parser.y', 125)
|
|
|
560
570
|
end
|
|
561
571
|
.,.,
|
|
562
572
|
|
|
563
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
564
|
-
def
|
|
573
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 133)
|
|
574
|
+
def _reduce_34(val, _values)
|
|
565
575
|
[val[0]]
|
|
566
576
|
|
|
567
577
|
end
|
|
568
578
|
.,.,
|
|
569
579
|
|
|
570
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
571
|
-
def
|
|
580
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 137)
|
|
581
|
+
def _reduce_35(val, _values)
|
|
572
582
|
val[0] + [val[2]]
|
|
573
583
|
|
|
574
584
|
end
|
|
575
585
|
.,.,
|
|
576
586
|
|
|
577
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
578
|
-
def
|
|
587
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 142)
|
|
588
|
+
def _reduce_36(val, _values)
|
|
579
589
|
[val[0], val[2]]
|
|
580
590
|
|
|
581
591
|
end
|
|
582
592
|
.,.,
|
|
583
593
|
|
|
584
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
585
|
-
def
|
|
594
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 147)
|
|
595
|
+
def _reduce_37(val, _values)
|
|
586
596
|
struct(:DELETE, :domain => val[3], :items => [[val[7], val[1]]])
|
|
587
597
|
|
|
588
598
|
end
|
|
589
599
|
.,.,
|
|
590
600
|
|
|
591
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
592
|
-
def
|
|
601
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 151)
|
|
602
|
+
def _reduce_38(val, _values)
|
|
593
603
|
@stmt_with_expr = struct(:DELETE_WITH_EXPR, :domain => val[3], :attrs => val[1], :expr => '')
|
|
594
604
|
|
|
595
605
|
end
|
|
596
606
|
.,.,
|
|
597
607
|
|
|
598
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
599
|
-
def
|
|
608
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 155)
|
|
609
|
+
def _reduce_39(val, _values)
|
|
600
610
|
@stmt_with_expr = struct(:DELETE_WITH_EXPR, :domain => val[3], :attrs => val[1], :expr => 'WHERE ')
|
|
601
611
|
|
|
602
612
|
end
|
|
603
613
|
.,.,
|
|
604
614
|
|
|
605
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
606
|
-
def
|
|
615
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 159)
|
|
616
|
+
def _reduce_40(val, _values)
|
|
607
617
|
@stmt_with_expr = struct(:DELETE_WITH_EXPR, :domain => val[3], :attrs => val[1], :expr => 'WHERE itemName')
|
|
608
618
|
|
|
609
619
|
end
|
|
610
620
|
.,.,
|
|
611
621
|
|
|
612
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
613
|
-
def
|
|
622
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 164)
|
|
623
|
+
def _reduce_41(val, _values)
|
|
614
624
|
[]
|
|
615
625
|
|
|
616
626
|
end
|
|
617
627
|
.,.,
|
|
618
628
|
|
|
619
|
-
# reduce
|
|
629
|
+
# reduce 42 omitted
|
|
620
630
|
|
|
621
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
622
|
-
def
|
|
631
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 170)
|
|
632
|
+
def _reduce_43(val, _values)
|
|
623
633
|
query = ''
|
|
624
634
|
ruby = nil
|
|
625
635
|
|
|
@@ -646,86 +656,94 @@ module_eval(<<'.,.,', 'sdb-parser.y', 169)
|
|
|
646
656
|
end
|
|
647
657
|
.,.,
|
|
648
658
|
|
|
649
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
650
|
-
def
|
|
659
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 196)
|
|
660
|
+
def _reduce_44(val, _values)
|
|
651
661
|
ruby = val[0].sub(/\A\s*\|\s*/, '') if val[0]
|
|
652
662
|
struct(:NEXT, :ruby => ruby)
|
|
653
663
|
|
|
654
664
|
end
|
|
655
665
|
.,.,
|
|
656
666
|
|
|
657
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
658
|
-
def
|
|
667
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 202)
|
|
668
|
+
def _reduce_45(val, _values)
|
|
669
|
+
ruby = val[0].sub(/\A\s*\|\s*/, '') if val[0]
|
|
670
|
+
struct(:CURRENT, :ruby => ruby)
|
|
671
|
+
|
|
672
|
+
end
|
|
673
|
+
.,.,
|
|
674
|
+
|
|
675
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 208)
|
|
676
|
+
def _reduce_46(val, _values)
|
|
659
677
|
struct(:CREATE, :domain => val[2])
|
|
660
678
|
|
|
661
679
|
end
|
|
662
680
|
.,.,
|
|
663
681
|
|
|
664
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
665
|
-
def
|
|
682
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 213)
|
|
683
|
+
def _reduce_47(val, _values)
|
|
666
684
|
struct(:DROP, :domain => val[2])
|
|
667
685
|
|
|
668
686
|
end
|
|
669
687
|
.,.,
|
|
670
688
|
|
|
671
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
672
|
-
def
|
|
689
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 218)
|
|
690
|
+
def _reduce_48(val, _values)
|
|
673
691
|
struct(:SHOW, :operand => :domains)
|
|
674
692
|
|
|
675
693
|
end
|
|
676
694
|
.,.,
|
|
677
695
|
|
|
678
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
679
|
-
def
|
|
696
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 222)
|
|
697
|
+
def _reduce_49(val, _values)
|
|
680
698
|
struct(:SHOW, :operand => :regions)
|
|
681
699
|
|
|
682
700
|
end
|
|
683
701
|
.,.,
|
|
684
702
|
|
|
685
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
686
|
-
def
|
|
703
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 226)
|
|
704
|
+
def _reduce_50(val, _values)
|
|
687
705
|
struct(:USE, :endpoint => val[1])
|
|
688
706
|
|
|
689
707
|
end
|
|
690
708
|
.,.,
|
|
691
709
|
|
|
692
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
693
|
-
def
|
|
710
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 230)
|
|
711
|
+
def _reduce_51(val, _values)
|
|
694
712
|
struct(:DESCRIBE, :domain => val[1])
|
|
695
713
|
|
|
696
714
|
end
|
|
697
715
|
.,.,
|
|
698
716
|
|
|
699
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
700
|
-
def
|
|
717
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 234)
|
|
718
|
+
def _reduce_52(val, _values)
|
|
701
719
|
struct(:DESCRIBE, :domain => val[1])
|
|
702
720
|
|
|
703
721
|
end
|
|
704
722
|
.,.,
|
|
705
723
|
|
|
706
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
707
|
-
def
|
|
724
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 239)
|
|
725
|
+
def _reduce_53(val, _values)
|
|
708
726
|
[val[0]]
|
|
709
727
|
|
|
710
728
|
end
|
|
711
729
|
.,.,
|
|
712
730
|
|
|
713
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
714
|
-
def
|
|
731
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 243)
|
|
732
|
+
def _reduce_54(val, _values)
|
|
715
733
|
val[0] + [val[2]]
|
|
716
734
|
|
|
717
735
|
end
|
|
718
736
|
.,.,
|
|
719
737
|
|
|
720
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
721
|
-
def
|
|
738
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 248)
|
|
739
|
+
def _reduce_55(val, _values)
|
|
722
740
|
[val[0]]
|
|
723
741
|
|
|
724
742
|
end
|
|
725
743
|
.,.,
|
|
726
744
|
|
|
727
|
-
module_eval(<<'.,.,', 'sdb-parser.y',
|
|
728
|
-
def
|
|
745
|
+
module_eval(<<'.,.,', 'sdb-parser.y', 252)
|
|
746
|
+
def _reduce_56(val, _values)
|
|
729
747
|
[val[0], val[2]].flatten
|
|
730
748
|
|
|
731
749
|
end
|
data/lib/sdbcli/sdb-parser.y
CHANGED
|
@@ -8,6 +8,7 @@ rule
|
|
|
8
8
|
| delete_stmt
|
|
9
9
|
| select_stmt
|
|
10
10
|
| next_stmt
|
|
11
|
+
| current_stmt
|
|
11
12
|
| create_stmt
|
|
12
13
|
| drop_stmt
|
|
13
14
|
| show_stmt
|
|
@@ -197,6 +198,12 @@ rule
|
|
|
197
198
|
struct(:NEXT, :ruby => ruby)
|
|
198
199
|
}
|
|
199
200
|
|
|
201
|
+
next_stmt : CURRENT
|
|
202
|
+
{
|
|
203
|
+
ruby = val[0].sub(/\A\s*\|\s*/, '') if val[0]
|
|
204
|
+
struct(:CURRENT, :ruby => ruby)
|
|
205
|
+
}
|
|
206
|
+
|
|
200
207
|
create_stmt : CREATE DOMAIN IDENTIFIER
|
|
201
208
|
{
|
|
202
209
|
struct(:CREATE, :domain => val[2])
|
|
@@ -329,6 +336,8 @@ def scan
|
|
|
329
336
|
yield [:SELECT, tok + @ss.scan(/.*/)]
|
|
330
337
|
elsif (tok = @ss.scan /NEXT\b/i)
|
|
331
338
|
yield [:NEXT, @ss.scan(/\s*\|\s*.*/)]
|
|
339
|
+
elsif (tok = @ss.scan /CUR(RENT)?\b/i)
|
|
340
|
+
yield [:CURRENT, @ss.scan(/\s*\|\s*.*/)]
|
|
332
341
|
elsif (tok = @ss.scan /NULL\b/i)
|
|
333
342
|
yield [:NULL, nil]
|
|
334
343
|
elsif (tok = @ss.scan /`([^`]|``)*`/)
|
|
@@ -337,8 +346,8 @@ def scan
|
|
|
337
346
|
yield [:VALUE, tok.slice(1...-1).gsub(/''/, "'")]
|
|
338
347
|
elsif (tok = @ss.scan /"([^"]|"")*"/) #"
|
|
339
348
|
yield [:VALUE, tok.slice(1...-1).gsub(/""/, '"')]
|
|
340
|
-
elsif (tok = @ss.scan
|
|
341
|
-
yield [:
|
|
349
|
+
elsif (tok = @ss.scan /\d+(\.\d+)?/)
|
|
350
|
+
yield [:VALUE, tok]
|
|
342
351
|
elsif (tok = @ss.scan /[,\(\)\*]/)
|
|
343
352
|
yield [tok, tok]
|
|
344
353
|
elsif (tok = @ss.scan /[a-z_$][-0-9a-z_$.]*\b/i)
|
data/lib/sdbcli/sdb-runner.rb
CHANGED
|
@@ -132,12 +132,14 @@ module SimpleDB
|
|
|
132
132
|
rownum = items.length
|
|
133
133
|
@driver.delete(parsed.domain, items)
|
|
134
134
|
Rownum.new(rownum)
|
|
135
|
-
when :SELECT, :NEXT
|
|
135
|
+
when :SELECT, :NEXT, :CURRENT
|
|
136
136
|
items = case command
|
|
137
137
|
when :SELECT
|
|
138
138
|
@driver.select(parsed.query, consistent, true)
|
|
139
139
|
when :NEXT
|
|
140
140
|
@driver.next_list(consistent)
|
|
141
|
+
when :CURRENT
|
|
142
|
+
@driver.current_list(consistent)
|
|
141
143
|
else
|
|
142
144
|
raise 'must not happen'
|
|
143
145
|
end
|
metadata
CHANGED
|
@@ -1,59 +1,55 @@
|
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: sdbcli
|
|
3
|
-
version: !ruby/object:Gem::Version
|
|
4
|
-
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 1.3.6
|
|
5
5
|
prerelease:
|
|
6
|
-
segments:
|
|
7
|
-
- 1
|
|
8
|
-
- 3
|
|
9
|
-
- 5
|
|
10
|
-
version: 1.3.5
|
|
11
6
|
platform: ruby
|
|
12
|
-
authors:
|
|
7
|
+
authors:
|
|
13
8
|
- winebarrel
|
|
14
9
|
autorequire:
|
|
15
10
|
bindir: bin
|
|
16
11
|
cert_chain: []
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
- !ruby/object:Gem::Dependency
|
|
12
|
+
date: 2013-02-04 00:00:00.000000000 Z
|
|
13
|
+
dependencies:
|
|
14
|
+
- !ruby/object:Gem::Dependency
|
|
21
15
|
name: nokogiri
|
|
22
|
-
|
|
23
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
|
24
17
|
none: false
|
|
25
|
-
requirements:
|
|
26
|
-
- -
|
|
27
|
-
- !ruby/object:Gem::Version
|
|
28
|
-
|
|
29
|
-
segments:
|
|
30
|
-
- 0
|
|
31
|
-
version: "0"
|
|
18
|
+
requirements:
|
|
19
|
+
- - ! '>='
|
|
20
|
+
- !ruby/object:Gem::Version
|
|
21
|
+
version: '0'
|
|
32
22
|
type: :runtime
|
|
33
|
-
version_requirements: *id001
|
|
34
|
-
- !ruby/object:Gem::Dependency
|
|
35
|
-
name: json
|
|
36
23
|
prerelease: false
|
|
37
|
-
|
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
25
|
+
none: false
|
|
26
|
+
requirements:
|
|
27
|
+
- - ! '>='
|
|
28
|
+
- !ruby/object:Gem::Version
|
|
29
|
+
version: '0'
|
|
30
|
+
- !ruby/object:Gem::Dependency
|
|
31
|
+
name: json
|
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
|
38
33
|
none: false
|
|
39
|
-
requirements:
|
|
40
|
-
- -
|
|
41
|
-
- !ruby/object:Gem::Version
|
|
42
|
-
|
|
43
|
-
segments:
|
|
44
|
-
- 0
|
|
45
|
-
version: "0"
|
|
34
|
+
requirements:
|
|
35
|
+
- - ! '>='
|
|
36
|
+
- !ruby/object:Gem::Version
|
|
37
|
+
version: '0'
|
|
46
38
|
type: :runtime
|
|
47
|
-
|
|
39
|
+
prerelease: false
|
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
41
|
+
none: false
|
|
42
|
+
requirements:
|
|
43
|
+
- - ! '>='
|
|
44
|
+
- !ruby/object:Gem::Version
|
|
45
|
+
version: '0'
|
|
48
46
|
description:
|
|
49
47
|
email: sgwr_dts@yahoo.co.jp
|
|
50
|
-
executables:
|
|
48
|
+
executables:
|
|
51
49
|
- sdbcli
|
|
52
50
|
extensions: []
|
|
53
|
-
|
|
54
51
|
extra_rdoc_files: []
|
|
55
|
-
|
|
56
|
-
files:
|
|
52
|
+
files:
|
|
57
53
|
- README
|
|
58
54
|
- bin/sdbcli
|
|
59
55
|
- lib/sdbcli/sdb-client.rb
|
|
@@ -64,36 +60,26 @@ files:
|
|
|
64
60
|
- lib/sdbcli.rb
|
|
65
61
|
homepage: https://bitbucket.org/winebarrel/sdbcli
|
|
66
62
|
licenses: []
|
|
67
|
-
|
|
68
63
|
post_install_message:
|
|
69
64
|
rdoc_options: []
|
|
70
|
-
|
|
71
|
-
require_paths:
|
|
65
|
+
require_paths:
|
|
72
66
|
- lib
|
|
73
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
|
67
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
74
68
|
none: false
|
|
75
|
-
requirements:
|
|
76
|
-
- -
|
|
77
|
-
- !ruby/object:Gem::Version
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- 0
|
|
81
|
-
version: "0"
|
|
82
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
|
+
requirements:
|
|
70
|
+
- - ! '>='
|
|
71
|
+
- !ruby/object:Gem::Version
|
|
72
|
+
version: '0'
|
|
73
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
83
74
|
none: false
|
|
84
|
-
requirements:
|
|
85
|
-
- -
|
|
86
|
-
- !ruby/object:Gem::Version
|
|
87
|
-
|
|
88
|
-
segments:
|
|
89
|
-
- 0
|
|
90
|
-
version: "0"
|
|
75
|
+
requirements:
|
|
76
|
+
- - ! '>='
|
|
77
|
+
- !ruby/object:Gem::Version
|
|
78
|
+
version: '0'
|
|
91
79
|
requirements: []
|
|
92
|
-
|
|
93
80
|
rubyforge_project:
|
|
94
|
-
rubygems_version: 1.8.
|
|
81
|
+
rubygems_version: 1.8.23
|
|
95
82
|
signing_key:
|
|
96
83
|
specification_version: 3
|
|
97
84
|
summary: sdbcli is an interactive command-line client of Amazon SimpleDB.
|
|
98
85
|
test_files: []
|
|
99
|
-
|