ddbcli 0.3.8 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0043de0270c140bdb072514660ae8f066f151f6e
4
- data.tar.gz: e38be5ea35a5e423137a942791aef4c27a637375
3
+ metadata.gz: 0b9b5689abaab19b224c1faf91c18b8f017f2e28
4
+ data.tar.gz: 58179d820b68f1a2cbfbf31bc2765aefeed81dca
5
5
  SHA512:
6
- metadata.gz: 02701f2b2218109a15ff333137902518399aed9b62adc3fce54a34893e9b757f1903a0bae90046ceab58ab2c89330afb9ed26c90657f17589b59c02a99ab1b20
7
- data.tar.gz: f9dd54e271ace36069517e1322d5cad66433a43ebcfc5cfd92513f6352c0440a0ef0e5cdab1de6ba2822318978d105f60e0220642df7e9ffd5fd0f94f20396ad
6
+ metadata.gz: 84df621c127d0b18d690e486a6711909a3e134fb5625618d3c7a1e7ac2e960ccb696384d3de86c6afc831d250ca4fa08f2770e1aae96f3eac0c5403090c65337
7
+ data.tar.gz: 46f74db1ce0f3fc58f37da124cee5038e9d820cf4627e9e6bbe3797fd36a6f34459ed5b2623b29a0f2be8111a3af989939133e0423d45af055731044ac38d5cb
data/README.md CHANGED
@@ -3,7 +3,6 @@
3
3
  ddbcli is an interactive command-line client of Amazon DynamoDB.
4
4
 
5
5
  [![Gem Version](https://badge.fury.io/rb/ddbcli.png)](http://badge.fury.io/rb/ddbcli)
6
- [![Build Status](https://drone.io/bitbucket.org/winebarrel/ddbcli/status.png)](https://drone.io/bitbucket.org/winebarrel/ddbcli/latest)
7
6
 
8
7
  ## Installation
9
8
 
@@ -11,14 +10,7 @@ ddbcli is an interactive command-line client of Amazon DynamoDB.
11
10
 
12
11
  If you are not using RubyGems, you can use the script files that depend on only Ruby.
13
12
 
14
- [ddbcli-0.3.8](https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.8)
15
-
16
- ```sh
17
- wget https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-0.3.8
18
- mv ddbcli-0.3.8 ddbcli
19
- chmod 755 ddbcli
20
- ./ddbcli # show prompt
21
- ```
13
+ [ddbcli (all-in-one script version)](https://github.com/winebarrel/ddbcli/releases)
22
14
 
23
15
  ## Usage
24
16
 
@@ -41,7 +33,7 @@ ddbcli # show prompt
41
33
 
42
34
  ## Demo
43
35
 
44
- ![ddbcli demo](https://bitbucket.org/winebarrel/ddbcli/downloads/ddbcli-demo.gif)
36
+ ![ddbcli demo](https://raw.githubusercontent.com/winebarrel/ddbcli/master/etc/ddbcli-demo.gif)
45
37
 
46
38
  ## GROUP BY (Aggregate)
47
39
 
@@ -124,6 +116,10 @@ UPDATE ALL table_name {SET|ADD} attr1 = 'val1', ... [WHERE attr1 = '...' AND ...
124
116
  updates items
125
117
  ("UPDATE" can update only one record. Please use "UPDATE ALL", when you update more than one.)
126
118
 
119
+ UPDATE table_name DEL[ETE] attr1, ... WHERE key1 = '...' AND ...
120
+ UPDATE ALL table_name DEL[ETE] attr1, ... [WHERE attr1 = '...' AND ...] [LIMIT limit]
121
+ updates items (delete attribute)
122
+
127
123
  DELETE FROM table_name WHERE key1 = '...' AND ..
128
124
  DELETE ALL FROM table_name WHERE [WHERE attr1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
129
125
  deletes items
@@ -160,9 +156,15 @@ Binary
160
156
  Identifier
161
157
  `ABCD...` or Non-keywords
162
158
 
163
- Array
159
+ Set
164
160
  ('String', 'String', ...), (1, 2, 3, ...)
165
161
 
162
+ List
163
+ ['String', (1, 2, 3), {foo: 'FOO', bar: 'BAR'}, ...]
164
+
165
+ Map
166
+ {key1:'String', "key2":(1, 2, 3), key3: ['FOO', 'BAR'], ...}
167
+
166
168
 
167
169
  ##### Operator #####
168
170
 
data/ddbcli.gemspec CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.email = 'sgwr_dts@yahoo.co.jp'
11
11
  spec.description = 'ddbcli is an interactive command-line client of Amazon DynamoDB.'
12
12
  spec.summary = spec.description
13
- spec.homepage = 'https://bitbucket.org/winebarrel/ddbcli'
13
+ spec.homepage = 'https://github.com/winebarrel/ddbcli'
14
14
  spec.license = 'MIT'
15
15
 
16
16
  spec.files = `git ls-files`.split($/)
Binary file
@@ -53,6 +53,10 @@ UPDATE ALL table_name {SET|ADD} attr1 = 'val1', ... [WHERE attr1 = '...' AND ...
53
53
  updates items
54
54
  ("UPDATE" can update only one record. Please use "UPDATE ALL", when you update more than one.)
55
55
 
56
+ UPDATE table_name DEL[ETE] attr1, ... WHERE key1 = '...' AND ...
57
+ UPDATE ALL table_name DEL[ETE] attr1, ... [WHERE attr1 = '...' AND ...] [LIMIT limit]
58
+ updates items (delete attribute)
59
+
56
60
  DELETE FROM table_name WHERE key1 = '...' AND ..
57
61
  DELETE ALL FROM table_name WHERE [WHERE attr1 = '...' AND ...] [ORDER {ASC|DESC}] [LIMIT limit]
58
62
  deletes items
@@ -89,9 +93,15 @@ Binary
89
93
  Identifier
90
94
  `ABCD...` or Non-keywords
91
95
 
92
- Array
96
+ Set
93
97
  ('String', 'String', ...), (1, 2, 3, ...)
94
98
 
99
+ List
100
+ ['String', (1, 2, 3), {foo: 'FOO', bar: 'BAR'}, ...]
101
+
102
+ Map
103
+ {key1:'String', "key2":(1, 2, 3), key3: ['FOO', 'BAR'], ...}
104
+
95
105
 
96
106
  ##### Operator #####
97
107
 
@@ -757,12 +757,10 @@ module DynamoDB
757
757
 
758
758
  parsed.attrs.each do |attr, val|
759
759
  h = req_hash['AttributeUpdates'][attr] = {}
760
+ h['Action'] = parsed.action.to_s.upcase
760
761
 
761
- if val
762
- h['Action'] = parsed.action.to_s.upcase
762
+ if h['Action'] != 'DELETE'
763
763
  h['Value'] = convert_to_attribute_value(val)
764
- else
765
- h['Action'] = 'DELETE'
766
764
  end
767
765
  end # attribute updates
768
766
 
@@ -794,12 +792,10 @@ module DynamoDB
794
792
 
795
793
  parsed.attrs.each do |attr, val|
796
794
  h = req_hash['AttributeUpdates'][attr] = {}
795
+ h['Action'] = parsed.action.to_s.upcase
797
796
 
798
- if val
799
- h['Action'] = parsed.action.to_s.upcase
797
+ if h['Action'] != 'DELETE'
800
798
  h['Value'] = convert_to_attribute_value(val)
801
- else
802
- h['Action'] = 'DELETE'
803
799
  end
804
800
  end # attribute updates
805
801
 
@@ -908,26 +904,39 @@ module DynamoDB
908
904
  end
909
905
 
910
906
  def convert_to_attribute_value(val)
911
- suffix = ''
912
- obj = val
913
-
914
- if val.kind_of?(Array)
915
- suffix = 'S'
916
- obj = val.first
917
- val = val.map {|i| i.to_s }
907
+ case val
908
+ when Array
909
+ {'L' => val.map {|i| convert_to_attribute_value(i) }}
910
+ when Hash
911
+ h = {}
912
+ val.each {|k, v| h[k] = convert_to_attribute_value(v) }
913
+ {'M' => h}
914
+ when TrueClass, FalseClass
915
+ {'BOOL' => val.to_s}
916
+ when NilClass
917
+ {'NULL' => "true"}
918
918
  else
919
- val = val.to_s
920
- end
919
+ suffix = ''
920
+ obj = val
921
921
 
922
- case obj
923
- when DynamoDB::Binary
924
- {"B#{suffix}" => val}
925
- when String
926
- {"S#{suffix}" => val}
927
- when Numeric
928
- {"N#{suffix}" => val}
929
- else
930
- raise 'must not happen'
922
+ if val.kind_of?(Set)
923
+ suffix = 'S'
924
+ obj = val.first
925
+ val = val.map {|i| i.to_s }
926
+ else
927
+ val = val.to_s
928
+ end
929
+
930
+ case obj
931
+ when DynamoDB::Binary
932
+ {"B#{suffix}" => val}
933
+ when String
934
+ {"S#{suffix}" => val}
935
+ when Numeric
936
+ {"N#{suffix}" => val}
937
+ else
938
+ raise 'must not happen'
939
+ end
931
940
  end
932
941
  end
933
942
 
@@ -935,24 +944,36 @@ module DynamoDB
935
944
  h = {}
936
945
 
937
946
  (item || {}).sort_by {|a, b| a }.map do |name, val|
938
- val = val.map do |val_type, ddb_val|
939
- case val_type
940
- when 'NS'
941
- ddb_val.map {|i| str_to_num(i) }
942
- when 'N'
943
- str_to_num(ddb_val)
944
- else
945
- ddb_val
946
- end
947
- end
948
-
949
- val = val.first if val.length == 1
950
- h[name] = val
947
+ h[name] = convert_to_ruby_value0(val)
951
948
  end
952
949
 
953
950
  return h
954
951
  end
955
952
 
953
+ def convert_to_ruby_value0(val)
954
+ val = val.map do |val_type, ddb_val|
955
+ case val_type
956
+ when 'L'
957
+ ddb_val.map {|i| convert_to_ruby_value0(i) }
958
+ when 'M'
959
+ h = {}
960
+ ddb_val.map {|k, v| h[k] = convert_to_ruby_value0(v) }
961
+ h
962
+ when 'NS'
963
+ ddb_val.map {|i| str_to_num(i) }
964
+ when 'N'
965
+ str_to_num(ddb_val)
966
+ when 'NULL'
967
+ nil
968
+ else
969
+ ddb_val
970
+ end
971
+ end
972
+
973
+ val = val.first if val.length == 1
974
+ val
975
+ end
976
+
956
977
  def do_insert(parsed)
957
978
  n = 0
958
979
 
@@ -9,12 +9,13 @@ require 'racc/parser.rb'
9
9
 
10
10
  require 'strscan'
11
11
  require 'ddbcli/ddb-binary'
12
+ require 'set'
12
13
 
13
14
  module DynamoDB
14
15
 
15
16
  class Parser < Racc::Parser
16
17
 
17
- module_eval(<<'...end ddb-parser.y/module_eval...', 'ddb-parser.y', 554)
18
+ module_eval(<<'...end ddb-parser.y/module_eval...', 'ddb-parser.y', 622)
18
19
 
19
20
  KEYWORDS = %w(
20
21
  ADD
@@ -30,6 +31,7 @@ KEYWORDS = %w(
30
31
  CONTAINS
31
32
  COUNT
32
33
  DELETE
34
+ DEL
33
35
  DESCRIBE
34
36
  DESC
35
37
  DROP
@@ -132,14 +134,20 @@ def scan
132
134
  yield [:STRING_VALUE, tok.slice(1...-1).gsub(/""/, '"')]
133
135
  elsif (tok = @ss.scan /\d+(?:\.\d+)?/)
134
136
  yield [:NUMBER_VALUE, (tok =~ /\./ ? tok.to_f : tok.to_i)]
135
- elsif (tok = @ss.scan /[,\(\)\*\/]/)
137
+ elsif (tok = @ss.scan /[,\(\)\*\/\[\]\{\}:]/)
136
138
  yield [tok, tok]
137
139
  elsif (tok = @ss.scan /\|(?:.*)/)
138
140
  yield [:RUBY_SCRIPT, tok.slice(1..-1)]
141
+ elsif (tok = @ss.scan /\|(?:.*)/)
142
+ yield [:RUBY_SCRIPT, tok.slice(1..-1)]
139
143
  elsif (tok = @ss.scan /\!(?:.*)/)
140
144
  yield [:SHELL_SCRIPT, tok.slice(1..-1)]
141
- elsif (tok = @ss.scan %r|[-.0-9a-z_:/]*|i)
142
- yield [:IDENTIFIER, tok]
145
+ elsif (tok = @ss.scan %r|[-.0-9a-z_]*|i)
146
+ if ['true', 'false'].include?(tok)
147
+ yield [:BOOL, 'true' == tok]
148
+ else
149
+ yield [:IDENTIFIER, tok]
150
+ end
143
151
  else
144
152
  raise_error(tok, @prev_tokens, @ss)
145
153
  end
@@ -186,369 +194,424 @@ end
186
194
  ##### State transition tables begin ###
187
195
 
188
196
  racc_action_table = [
189
- 3, 4, 57, 163, 163, 18, 163, 163, 195, 56,
190
- 21, 175, 297, 19, 52, 163, 20, 165, 165, 176,
191
- 165, 165, 130, 163, 163, 260, 163, 162, 162, 165,
192
- 162, 162, 194, 22, 23, 24, 25, 165, 165, 162,
193
- 165, 26, 50, 115, 108, 52, 259, 162, 162, 95,
194
- 162, 163, 205, 52, 94, 130, 177, 159, 116, 27,
195
- 163, 178, 28, 29, 256, 165, 30, 164, 164, 163,
196
- 164, 164, 196, 50, 165, 162, 201, 136, 257, 164,
197
- 73, 50, 117, 165, 162, 205, 119, 164, 164, 52,
198
- 164, 111, 54, 162, 209, 202, 203, 204, 206, 208,
199
- 210, 213, 214, 215, 316, 49, 256, 317, 48, 201,
200
- 25, 55, 90, 120, 254, 164, 47, 50, 256, 91,
201
- 257, 121, 92, 91, 164, 123, 92, 227, 202, 203,
202
- 204, 206, 257, 164, 32, 33, 34, 124, 35, 36,
203
- 37, 91, 38, 39, 92, 91, 78, 79, 92, 310,
204
- 311, 312, 310, 311, 312, 145, 146, 147, 233, 235,
205
- 234, 236, 237, 125, 238, 145, 146, 147, 145, 146,
206
- 147, 287, 325, 288, 326, 301, 126, 288, 145, 146,
207
- 147, 145, 146, 147, 245, 244, 78, 79, 110, 108,
208
- 108, 131, 106, 135, 136, 69, 140, 141, 142, 143,
209
- 106, 103, 150, 151, 152, 136, 154, 155, 106, 102,
210
- 101, 167, 168, 171, 63, 173, 96, 100, 99, 98,
211
- 97, 180, 182, 185, 186, 187, 63, 189, 190, 96,
212
- 63, 135, 88, 200, 85, 216, 217, 218, 219, 220,
213
- 221, 223, 171, 225, 86, 229, 123, 231, 136, 85,
214
- 83, 82, 171, 81, 165, 80, 76, 246, 248, 249,
215
- 250, 251, 252, 75, 63, 74, 200, 185, 71, 70,
216
- 264, 150, 136, 63, 268, 269, 270, 271, 272, 273,
217
- 69, 276, 277, 278, 67, 280, 281, 282, 182, 63,
218
- 66, 286, 65, 64, 290, 291, 292, 63, 223, 61,
219
- 60, 114, 298, 299, 63, 59, 58, 45, 305, 278,
220
- 306, 307, 44, 43, 42, 314, 315, 41, 319, 321,
221
- 322, 323, 40, 31, 327, 328, 329, 176, 178 ]
197
+ 175, 258, 227, 210, 175, 256, 55, 53, 175, 211,
198
+ 190, 53, 175, 188, 191, 177, 175, 216, 330, 177,
199
+ 189, 100, 136, 177, 174, 56, 223, 177, 174, 53,
200
+ 58, 177, 174, 131, 175, 51, 174, 57, 175, 51,
201
+ 174, 215, 114, 144, 249, 224, 225, 226, 228, 177,
202
+ 114, 171, 257, 177, 255, 171, 74, 51, 174, 171,
203
+ 273, 272, 174, 171, 207, 170, 172, 171, 173, 170,
204
+ 172, 176, 173, 170, 172, 176, 173, 170, 172, 176,
205
+ 173, 170, 172, 176, 173, 171, 175, 176, 217, 171,
206
+ 288, 348, 41, 175, 349, 100, 117, 175, 42, 170,
207
+ 172, 177, 173, 170, 172, 176, 173, 136, 177, 176,
208
+ 174, 287, 177, 53, 25, 175, 144, 174, 282, 175,
209
+ 153, 174, 284, 175, 130, 137, 154, 155, 114, 50,
210
+ 177, 175, 49, 129, 177, 284, 285, 171, 177, 174,
211
+ 48, 51, 284, 174, 171, 110, 177, 174, 171, 285,
212
+ 95, 170, 172, 96, 173, 174, 285, 176, 170, 172,
213
+ 70, 173, 170, 172, 176, 173, 171, 99, 176, 153,
214
+ 171, 143, 153, 98, 171, 154, 155, 175, 154, 155,
215
+ 170, 172, 171, 173, 170, 172, 176, 173, 170, 172,
216
+ 176, 173, 177, 144, 176, 94, 170, 172, 204, 173,
217
+ 70, 174, 176, 3, 4, 153, 95, 227, 18, 96,
218
+ 148, 154, 155, 21, 153, 95, 19, 210, 96, 20,
219
+ 154, 155, 333, 211, 320, 32, 33, 34, 171, 35,
220
+ 149, 223, 80, 81, 82, 83, 22, 23, 24, 25,
221
+ 150, 151, 170, 172, 26, 173, 127, 126, 176, 231,
222
+ 224, 225, 226, 228, 230, 232, 235, 236, 237, 158,
223
+ 36, 37, 27, 38, 39, 28, 95, 29, 159, 96,
224
+ 30, 80, 81, 82, 83, 342, 343, 344, 342, 343,
225
+ 344, 261, 263, 262, 264, 319, 357, 320, 358, 265,
226
+ 160, 266, 144, 162, 163, 110, 60, 125, 123, 180,
227
+ 181, 184, 64, 186, 100, 122, 121, 120, 116, 193,
228
+ 195, 198, 199, 200, 64, 202, 203, 59, 114, 70,
229
+ 64, 64, 143, 110, 222, 107, 238, 239, 240, 241,
230
+ 242, 243, 245, 184, 247, 106, 251, 129, 253, 144,
231
+ 105, 104, 259, 260, 103, 102, 101, 184, 100, 177,
232
+ 92, 89, 274, 276, 277, 278, 279, 280, 90, 64,
233
+ 89, 222, 198, 46, 45, 292, 158, 144, 64, 44,
234
+ 87, 43, 86, 300, 301, 302, 303, 304, 305, 40,
235
+ 308, 309, 310, 85, 312, 313, 314, 195, 64, 84,
236
+ 318, 77, 76, 322, 323, 324, 75, 245, 61, 31,
237
+ 329, 132, 331, 64, 62, 72, 71, 337, 310, 338,
238
+ 339, 70, 68, 67, 346, 347, 66, 351, 353, 354,
239
+ 355, 65, 64, 359, 360, 361, 189, 191 ]
222
240
 
223
241
  racc_action_check = [
224
- 0, 0, 28, 227, 282, 0, 131, 286, 165, 28,
225
- 0, 141, 290, 0, 26, 168, 0, 227, 282, 141,
226
- 131, 286, 104, 288, 226, 223, 207, 227, 282, 168,
227
- 131, 286, 165, 0, 0, 0, 0, 288, 226, 168,
228
- 207, 0, 26, 90, 104, 101, 223, 288, 226, 67,
229
- 207, 209, 171, 48, 67, 132, 142, 131, 91, 0,
230
- 271, 142, 0, 0, 278, 209, 0, 227, 282, 248,
231
- 131, 286, 165, 101, 271, 209, 171, 132, 278, 168,
232
- 48, 48, 92, 248, 271, 185, 94, 288, 226, 25,
233
- 207, 83, 27, 248, 171, 171, 171, 171, 171, 171,
234
- 171, 171, 171, 171, 313, 25, 297, 313, 25, 185,
235
- 83, 27, 66, 95, 221, 209, 25, 25, 221, 143,
236
- 297, 96, 143, 66, 271, 97, 66, 185, 185, 185,
237
- 185, 185, 221, 248, 2, 2, 2, 98, 2, 18,
238
- 18, 120, 18, 18, 120, 140, 80, 80, 140, 307,
239
- 307, 307, 306, 306, 306, 305, 305, 305, 191, 192,
240
- 191, 192, 193, 99, 193, 298, 298, 298, 254, 254,
241
- 254, 274, 320, 274, 320, 295, 100, 295, 119, 119,
242
- 119, 319, 319, 319, 210, 210, 54, 54, 82, 103,
243
- 81, 106, 107, 108, 110, 111, 115, 116, 117, 118,
244
- 77, 76, 122, 123, 124, 125, 126, 127, 130, 75,
245
- 74, 133, 135, 136, 137, 138, 139, 73, 72, 71,
246
- 70, 144, 149, 150, 151, 152, 153, 154, 155, 68,
247
- 166, 167, 65, 169, 64, 173, 175, 176, 177, 178,
248
- 180, 181, 182, 183, 63, 186, 187, 189, 190, 62,
249
- 58, 57, 200, 56, 208, 55, 53, 215, 216, 217,
250
- 218, 219, 220, 51, 222, 49, 224, 225, 47, 46,
251
- 229, 230, 231, 232, 234, 236, 238, 242, 245, 247,
252
- 43, 249, 251, 253, 42, 256, 257, 263, 265, 266,
253
- 40, 273, 39, 37, 279, 280, 281, 36, 283, 35,
254
- 34, 85, 291, 292, 294, 31, 29, 24, 299, 302,
255
- 303, 304, 23, 22, 21, 308, 312, 20, 314, 315,
256
- 316, 317, 19, 1, 322, 323, 326, 327, 328 ]
242
+ 318, 208, 198, 173, 320, 205, 27, 105, 314, 173,
243
+ 150, 26, 303, 149, 150, 318, 276, 177, 323, 320,
244
+ 149, 111, 139, 314, 318, 27, 198, 303, 320, 49,
245
+ 28, 276, 314, 103, 260, 105, 303, 28, 259, 26,
246
+ 276, 177, 111, 139, 198, 198, 198, 198, 198, 260,
247
+ 107, 318, 208, 259, 205, 320, 49, 49, 260, 314,
248
+ 232, 232, 259, 303, 173, 318, 318, 276, 318, 320,
249
+ 320, 318, 320, 314, 314, 320, 314, 303, 303, 314,
250
+ 303, 276, 276, 303, 276, 260, 256, 276, 177, 259,
251
+ 245, 345, 20, 249, 345, 140, 87, 248, 20, 260,
252
+ 260, 256, 260, 259, 259, 260, 259, 108, 249, 259,
253
+ 256, 245, 248, 25, 87, 231, 140, 249, 243, 229,
254
+ 282, 248, 243, 181, 102, 110, 282, 282, 108, 25,
255
+ 231, 172, 25, 101, 229, 329, 243, 256, 181, 231,
256
+ 25, 25, 310, 229, 249, 112, 172, 181, 248, 329,
257
+ 151, 256, 256, 151, 256, 172, 310, 256, 249, 249,
258
+ 113, 249, 248, 248, 249, 248, 231, 68, 248, 351,
259
+ 229, 114, 337, 68, 181, 351, 351, 137, 337, 337,
260
+ 231, 231, 172, 231, 229, 229, 231, 229, 181, 181,
261
+ 229, 181, 137, 116, 181, 67, 172, 172, 172, 172,
262
+ 117, 137, 172, 0, 0, 125, 67, 184, 0, 67,
263
+ 121, 125, 125, 0, 330, 148, 0, 258, 148, 0,
264
+ 330, 330, 327, 258, 327, 2, 2, 2, 137, 2,
265
+ 122, 184, 84, 84, 84, 84, 0, 0, 0, 0,
266
+ 123, 124, 137, 137, 0, 137, 100, 99, 137, 184,
267
+ 184, 184, 184, 184, 184, 184, 184, 184, 184, 128,
268
+ 18, 18, 0, 18, 18, 0, 126, 0, 129, 126,
269
+ 0, 55, 55, 55, 55, 338, 338, 338, 339, 339,
270
+ 339, 212, 213, 212, 213, 306, 352, 306, 352, 214,
271
+ 130, 214, 131, 132, 133, 136, 31, 98, 96, 141,
272
+ 143, 144, 145, 146, 147, 95, 94, 89, 86, 152,
273
+ 157, 158, 159, 160, 161, 162, 163, 29, 85, 79,
274
+ 178, 179, 180, 78, 182, 77, 186, 188, 189, 190,
275
+ 191, 193, 194, 195, 196, 76, 199, 200, 202, 203,
276
+ 75, 74, 210, 211, 73, 72, 71, 222, 69, 230,
277
+ 66, 65, 237, 238, 239, 240, 241, 242, 64, 244,
278
+ 63, 246, 247, 24, 23, 251, 252, 253, 254, 22,
279
+ 59, 21, 58, 262, 264, 266, 270, 273, 275, 19,
280
+ 277, 279, 281, 57, 284, 285, 291, 293, 294, 56,
281
+ 305, 54, 52, 311, 312, 313, 50, 315, 34, 1,
282
+ 322, 104, 324, 326, 35, 48, 47, 331, 334, 335,
283
+ 336, 44, 43, 40, 340, 344, 39, 346, 347, 348,
284
+ 349, 37, 36, 354, 355, 358, 359, 360 ]
257
285
 
258
286
  racc_action_pointer = [
259
- -2, 323, 132, nil, nil, nil, nil, nil, nil, nil,
260
- nil, nil, nil, nil, nil, nil, nil, nil, 131, 313,
261
- 304, 305, 304, 299, 294, 76, 1, 79, -30, 240,
262
- nil, 305, nil, nil, 295, 294, 238, 283, nil, 283,
263
- 277, nil, 271, 267, nil, nil, 230, 249, 40, 223,
264
- nil, 241, nil, 217, 124, 242, 240, 212, 237, nil,
265
- nil, nil, 235, 215, 220, 219, 96, 35, 207, nil,
266
- 207, 178, 179, 198, 181, 196, 188, 187, nil, nil,
267
- 84, 146, 175, 72, nil, 296, nil, nil, nil, nil,
268
- 26, 30, 54, nil, 73, 100, 108, 107, 117, 150,
269
- 135, 32, nil, 145, 0, nil, 163, 179, 180, nil,
270
- 150, 182, nil, nil, nil, 183, 168, 169, 179, 154,
271
- 114, nil, 158, 186, 165, 161, 186, 168, nil, nil,
272
- 195, 1, 33, 166, nil, 184, 200, 155, 195, 194,
273
- 118, -11, 34, 92, 200, nil, nil, nil, nil, 162,
274
- 210, 205, 212, 167, 188, 215, nil, nil, nil, nil,
275
- nil, nil, nil, nil, nil, 3, 171, 218, 10, 188,
276
- nil, 48, nil, 168, nil, 206, 209, 211, 211, nil,
277
- 218, 184, 229, 198, nil, 81, 232, 228, nil, 234,
278
- 204, 138, 139, 142, nil, nil, nil, nil, nil, nil,
279
- 239, nil, nil, nil, nil, nil, nil, 21, 235, 46,
280
- 129, nil, nil, nil, nil, 203, 239, 231, 231, 233,
281
- 233, 101, 205, -12, 221, 254, 19, -2, nil, 250,
282
- 227, 228, 214, nil, 245, nil, 270, nil, 207, nil,
283
- nil, nil, 232, nil, nil, 222, nil, 257, 64, 252,
284
- nil, 253, nil, 261, 144, nil, 272, 269, nil, nil,
285
- nil, nil, nil, 242, nil, 228, 230, nil, nil, nil,
286
- nil, 55, nil, 272, 151, nil, nil, nil, 47, 271,
287
- 276, 283, -1, 241, nil, nil, 2, nil, 18, nil,
288
- -10, 289, 284, nil, 245, 155, nil, 89, 141, 295,
289
- nil, nil, 287, 290, 291, 131, 120, 117, 293, nil,
290
- nil, nil, 297, 77, 305, 306, 292, 293, nil, 157,
291
- 152, nil, 295, 296, nil, nil, 313, 297, 301, nil ]
287
+ 201, 399, 223, nil, nil, nil, nil, nil, nil, nil,
288
+ nil, nil, nil, nil, nil, nil, nil, nil, 252, 370,
289
+ 79, 362, 360, 351, 350, 100, -2, -7, -2, 250,
290
+ nil, 296, nil, nil, 393, 399, 363, 411, nil, 407,
291
+ 400, nil, nil, 399, 398, nil, nil, 367, 385, 16,
292
+ 354, nil, 369, nil, 352, 209, 376, 370, 333, 357,
293
+ nil, nil, nil, 346, 329, 337, 337, 179, 153, 325,
294
+ nil, 333, 304, 305, 321, 311, 322, 312, 310, 306,
295
+ nil, nil, nil, nil, 170, 274, 295, 76, nil, 302,
296
+ nil, nil, nil, nil, 289, 277, 270, nil, 284, 234,
297
+ 233, 115, 103, 20, 360, -6, nil, 6, 84, nil,
298
+ 97, -2, 132, 147, 158, nil, 149, 187, nil, nil,
299
+ nil, 197, 201, 211, 220, 186, 239, nil, 215, 251,
300
+ 251, 248, 272, 255, nil, nil, 282, 172, nil, -1,
301
+ 72, 254, nil, 272, 288, 243, 282, 281, 188, -10,
302
+ -13, 123, 287, nil, nil, nil, nil, 250, 298, 292,
303
+ 300, 255, 276, 303, nil, nil, nil, nil, nil, nil,
304
+ nil, nil, 126, -10, nil, nil, nil, 12, 261, 262,
305
+ 309, 118, 279, nil, 203, nil, 258, nil, 297, 300,
306
+ 302, 302, nil, 308, 275, 320, 289, nil, -2, 323,
307
+ 319, nil, 325, 295, nil, -18, nil, nil, -22, nil,
308
+ 267, 268, 260, 261, 268, nil, nil, nil, nil, nil,
309
+ nil, nil, 334, nil, nil, nil, nil, nil, nil, 114,
310
+ 329, 110, 5, nil, nil, nil, nil, 298, 333, 326,
311
+ 326, 328, 328, 105, 300, 53, 316, 349, 92, 88,
312
+ nil, 344, 322, 323, 309, nil, 81, nil, 204, 33,
313
+ 29, nil, 344, nil, 369, nil, 299, nil, nil, nil,
314
+ 331, nil, nil, 321, nil, 355, 11, 351, nil, 352,
315
+ nil, 359, 101, nil, 371, 368, nil, nil, nil, nil,
316
+ nil, 341, nil, 327, 329, nil, nil, nil, nil, nil,
317
+ nil, nil, nil, 7, nil, 370, 264, nil, nil, nil,
318
+ 125, 369, 374, 382, 3, 340, nil, nil, -5, nil,
319
+ -1, nil, 377, 5, 382, nil, 344, 201, nil, 118,
320
+ 195, 394, nil, nil, 385, 388, 389, 153, 243, 246,
321
+ 391, nil, nil, nil, 395, 64, 404, 405, 391, 392,
322
+ nil, 150, 265, nil, 394, 395, nil, nil, 412, 396,
323
+ 400, nil ]
292
324
 
293
325
  racc_action_default = [
294
- -147, -147, -1, -6, -7, -8, -9, -10, -11, -12,
295
- -13, -14, -15, -16, -17, -18, -19, -20, -147, -147,
296
- -147, -147, -147, -147, -147, -147, -147, -147, -147, -147,
297
- -128, -147, -2, -3, -147, -147, -103, -147, -23, -147,
298
- -147, -29, -147, -147, -58, -59, -147, -147, -147, -147,
299
- -66, -67, -68, -147, -147, -147, -147, -147, -147, 330,
300
- -4, -5, -25, -147, -25, -147, -147, -147, -57, -145,
301
- -147, -147, -147, -147, -147, -147, -147, -147, -109, -110,
302
- -147, -147, -147, -147, -21, -147, -104, -22, -24, -27,
303
- -147, -147, -147, -42, -147, -147, -147, -70, -147, -147,
304
- -147, -147, -69, -147, -147, -111, -147, -147, -147, -118,
305
- -85, -147, -121, -122, -26, -147, -147, -147, -147, -147,
306
- -31, -146, -72, -147, -147, -85, -147, -147, -65, -107,
307
- -147, -147, -85, -114, -115, -147, -147, -103, -147, -123,
308
- -147, -147, -147, -147, -147, -37, -38, -39, -32, -105,
309
- -147, -147, -147, -103, -147, -147, -112, -113, -129, -130,
310
- -131, -132, -133, -134, -135, -147, -103, -147, -147, -86,
311
- -87, -147, -119, -147, -28, -147, -147, -147, -147, -30,
312
- -33, -100, -147, -73, -74, -147, -147, -70, -62, -147,
313
- -85, -147, -147, -147, -139, -141, -143, -108, -116, -117,
314
- -147, -79, -80, -81, -82, -83, -84, -147, -147, -147,
315
- -147, -93, -94, -95, -96, -147, -147, -147, -147, -147,
316
- -147, -147, -103, -147, -106, -147, -147, -147, -78, -147,
317
- -72, -85, -103, -136, -147, -137, -147, -138, -147, -88,
318
- -89, -90, -147, -92, -98, -147, -97, -120, -147, -147,
319
- -43, -147, -44, -34, -147, -45, -147, -147, -60, -101,
320
- -102, -75, -76, -147, -71, -105, -103, -64, -140, -142,
321
- -144, -147, -99, -147, -147, -126, -40, -41, -147, -147,
322
- -147, -147, -147, -100, -63, -91, -147, -124, -147, -46,
323
- -35, -147, -147, -77, -103, -147, -127, -147, -147, -147,
324
- -61, -125, -36, -147, -147, -147, -147, -147, -50, -47,
325
- -52, -53, -147, -48, -147, -147, -147, -147, -49, -147,
326
- -147, -55, -147, -147, -51, -54, -147, -147, -147, -56 ]
326
+ -164, -164, -1, -6, -7, -8, -9, -10, -11, -12,
327
+ -13, -14, -15, -16, -17, -18, -19, -20, -164, -164,
328
+ -164, -164, -164, -164, -164, -164, -164, -164, -164, -164,
329
+ -133, -164, -2, -3, -164, -164, -104, -164, -23, -164,
330
+ -164, -29, -30, -164, -164, -59, -60, -164, -164, -164,
331
+ -164, -67, -68, -69, -164, -164, -164, -164, -164, -164,
332
+ 362, -4, -5, -25, -164, -25, -164, -164, -164, -58,
333
+ -162, -164, -164, -164, -164, -164, -164, -164, -164, -164,
334
+ -112, -113, -114, -115, -164, -164, -164, -164, -21, -164,
335
+ -105, -22, -24, -27, -164, -164, -164, -43, -164, -164,
336
+ -164, -71, -164, -164, -164, -164, -70, -164, -164, -116,
337
+ -164, -164, -164, -164, -164, -123, -86, -164, -126, -127,
338
+ -26, -164, -164, -164, -164, -164, -32, -163, -73, -164,
339
+ -164, -86, -164, -164, -66, -108, -164, -164, -110, -86,
340
+ -86, -119, -120, -164, -164, -104, -164, -128, -164, -164,
341
+ -164, -164, -164, -38, -39, -40, -33, -106, -164, -164,
342
+ -164, -104, -164, -164, -117, -118, -134, -135, -136, -137,
343
+ -138, -139, -164, -164, -150, -151, -152, -164, -104, -104,
344
+ -164, -164, -87, -88, -164, -124, -164, -28, -164, -164,
345
+ -164, -164, -31, -34, -101, -164, -74, -75, -164, -164,
346
+ -71, -63, -164, -86, -140, -164, -142, -144, -164, -146,
347
+ -164, -164, -164, -164, -164, -156, -158, -160, -109, -111,
348
+ -121, -122, -164, -80, -81, -82, -83, -84, -85, -164,
349
+ -164, -164, -164, -94, -95, -96, -97, -164, -164, -164,
350
+ -164, -164, -164, -164, -104, -164, -107, -164, -164, -164,
351
+ -79, -164, -73, -86, -104, -141, -164, -145, -164, -164,
352
+ -164, -153, -164, -154, -164, -155, -164, -89, -90, -91,
353
+ -164, -93, -99, -164, -98, -125, -164, -164, -44, -164,
354
+ -45, -35, -164, -46, -164, -164, -61, -102, -103, -76,
355
+ -77, -164, -72, -106, -104, -65, -143, -147, -148, -149,
356
+ -157, -159, -161, -164, -100, -164, -164, -131, -41, -42,
357
+ -164, -164, -164, -164, -164, -101, -64, -92, -164, -129,
358
+ -164, -47, -36, -164, -164, -78, -104, -164, -132, -164,
359
+ -164, -164, -62, -130, -37, -164, -164, -164, -164, -164,
360
+ -51, -48, -53, -54, -164, -49, -164, -164, -164, -164,
361
+ -50, -164, -164, -56, -164, -164, -52, -55, -164, -164,
362
+ -164, -57 ]
327
363
 
328
364
  racc_goto_table = [
329
- 62, 144, 158, 137, 181, 149, 222, 11, 12, 122,
330
- 89, 184, 253, 46, 53, 134, 169, 68, 153, 274,
331
- 104, 77, 109, 211, 84, 166, 87, 309, 313, 1,
332
- 320, 289, 318, 304, 118, 17, 72, 228, 16, 199,
333
- 15, 14, 183, 13, 128, 129, 226, 107, 10, 9,
334
- 132, 8, 239, 207, 241, 243, 212, 295, 7, 6,
335
- 156, 157, 224, 133, 148, 5, 138, 247, 2, 191,
336
- 192, 193, nil, nil, 198, nil, nil, nil, 240, nil,
337
- 242, nil, nil, 232, 174, 139, 261, 179, 302, 127,
338
- 112, 113, nil, nil, nil, nil, nil, 262, 263, 230,
339
- nil, 172, nil, nil, nil, nil, nil, nil, 294, nil,
340
- nil, nil, nil, 265, nil, nil, nil, 188, nil, nil,
341
- 283, nil, nil, nil, 266, nil, nil, nil, nil, nil,
342
- 197, nil, nil, nil, nil, nil, 279, nil, nil, nil,
343
- nil, nil, 285, nil, nil, nil, nil, nil, nil, nil,
344
- nil, nil, nil, 293, nil, nil, nil, nil, nil, 296,
365
+ 63, 152, 145, 244, 165, 194, 157, 128, 197, 281,
366
+ 93, 142, 12, 11, 69, 182, 209, 161, 306, 108,
367
+ 233, 78, 47, 54, 1, 178, 179, 79, 88, 115,
368
+ 91, 341, 345, 336, 250, 321, 350, 352, 124, 206,
369
+ 17, 16, 196, 15, 248, 14, 73, 13, 221, 111,
370
+ 112, 134, 135, 139, 10, 138, 113, 267, 229, 269,
371
+ 327, 271, 234, 9, 8, 7, 246, 164, 141, 156,
372
+ 6, 146, 275, 5, 205, 208, 2, 220, 212, 213,
373
+ 214, nil, nil, 140, nil, nil, nil, 147, nil, 254,
374
+ nil, 187, nil, nil, 192, 334, 268, 289, 270, 119,
375
+ 118, 297, 133, nil, nil, nil, 252, nil, nil, 185,
376
+ nil, nil, nil, nil, nil, 290, 291, nil, nil, nil,
377
+ nil, nil, nil, 296, 326, 201, 298, 299, nil, nil,
378
+ 293, nil, nil, nil, nil, nil, nil, nil, nil, 294,
379
+ nil, 315, 218, 219, nil, nil, nil, nil, nil, nil,
380
+ nil, nil, nil, nil, nil, nil, nil, nil, 311, nil,
381
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
382
+ 317, nil, nil, nil, nil, nil, nil, nil, nil, nil,
383
+ nil, 325, nil, nil, nil, nil, nil, 328, nil, nil,
345
384
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
385
+ nil, nil, nil, nil, nil, nil, 335, nil, 286, nil,
386
+ nil, nil, nil, 340, nil, nil, nil, nil, 295, nil,
387
+ nil, nil, nil, nil, nil, nil, nil, 356, nil, nil,
346
388
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
347
- 303, nil, nil, nil, nil, nil, 258, 308, nil, nil,
348
- nil, nil, nil, nil, nil, nil, 267, nil, nil, nil,
349
- nil, 324, nil, nil, nil, nil, nil, nil, nil, nil,
350
389
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
390
+ nil, nil, nil, nil, nil, nil, nil, nil, 316, nil,
351
391
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
352
- 284, nil, nil, nil, nil, nil, nil, nil, nil, nil,
353
392
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
354
- nil, nil, nil, nil, nil, nil, nil, nil, 300 ]
393
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
394
+ 332 ]
355
395
 
356
396
  racc_goto_check = [
357
- 16, 20, 39, 33, 31, 30, 32, 9, 10, 29,
358
- 18, 37, 21, 28, 28, 52, 41, 27, 33, 55,
359
- 48, 47, 34, 40, 17, 33, 17, 24, 24, 1,
360
- 26, 23, 22, 25, 19, 15, 28, 40, 14, 39,
361
- 13, 12, 36, 11, 34, 34, 38, 47, 8, 7,
362
- 48, 6, 42, 43, 44, 45, 46, 55, 5, 4,
363
- 49, 50, 41, 51, 18, 3, 53, 54, 2, 57,
364
- 58, 59, nil, nil, 52, nil, nil, nil, 39, nil,
365
- 39, nil, nil, 33, 18, 27, 37, 18, 21, 28,
366
- 9, 10, nil, nil, nil, nil, nil, 39, 39, 29,
367
- nil, 16, nil, nil, nil, nil, nil, nil, 32, nil,
368
- nil, nil, nil, 30, nil, nil, nil, 16, nil, nil,
369
- 31, nil, nil, nil, 33, nil, nil, nil, nil, nil,
370
- 16, nil, nil, nil, nil, nil, 20, nil, nil, nil,
371
- nil, nil, 39, nil, nil, nil, nil, nil, nil, nil,
372
- nil, nil, nil, 39, nil, nil, nil, nil, nil, 39,
397
+ 16, 20, 33, 32, 39, 31, 30, 29, 37, 21,
398
+ 18, 52, 10, 9, 27, 41, 61, 33, 55, 48,
399
+ 40, 47, 28, 28, 1, 33, 33, 49, 17, 34,
400
+ 17, 24, 24, 25, 40, 23, 22, 26, 19, 39,
401
+ 15, 14, 36, 13, 38, 12, 28, 11, 39, 27,
402
+ 47, 34, 34, 48, 8, 34, 49, 42, 43, 44,
403
+ 55, 45, 46, 7, 6, 5, 41, 50, 51, 18,
404
+ 4, 53, 54, 3, 59, 60, 2, 52, 62, 63,
405
+ 64, nil, nil, 27, nil, nil, nil, 27, nil, 33,
406
+ nil, 18, nil, nil, 18, 21, 39, 37, 39, 10,
407
+ 9, 61, 28, nil, nil, nil, 29, nil, nil, 16,
408
+ nil, nil, nil, nil, nil, 39, 39, nil, nil, nil,
409
+ nil, nil, nil, 39, 32, 16, 39, 39, nil, nil,
410
+ 30, nil, nil, nil, nil, nil, nil, nil, nil, 33,
411
+ nil, 31, 16, 16, nil, nil, nil, nil, nil, nil,
412
+ nil, nil, nil, nil, nil, nil, nil, nil, 20, nil,
413
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
414
+ 39, nil, nil, nil, nil, nil, nil, nil, nil, nil,
415
+ nil, 39, nil, nil, nil, nil, nil, 39, nil, nil,
373
416
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
417
+ nil, nil, nil, nil, nil, nil, 20, nil, 16, nil,
418
+ nil, nil, nil, 20, nil, nil, nil, nil, 16, nil,
419
+ nil, nil, nil, nil, nil, nil, nil, 20, nil, nil,
374
420
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
375
- 20, nil, nil, nil, nil, nil, 16, 20, nil, nil,
376
- nil, nil, nil, nil, nil, nil, 16, nil, nil, nil,
377
- nil, 20, nil, nil, nil, nil, nil, nil, nil, nil,
378
421
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
422
+ nil, nil, nil, nil, nil, nil, nil, nil, 16, nil,
379
423
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
380
- 16, nil, nil, nil, nil, nil, nil, nil, nil, nil,
381
424
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
382
- nil, nil, nil, nil, nil, nil, nil, nil, 16 ]
425
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
426
+ 16 ]
383
427
 
384
428
  racc_goto_pointer = [
385
- nil, 29, 68, 65, 59, 58, 51, 49, 48, 7,
386
- 8, 43, 41, 40, 38, 35, -36, -38, -56, -60,
387
- -118, -209, -281, -247, -279, -266, -285, -26, -12, -88,
388
- -117, -145, -175, -107, -59, nil, -108, -139, -139, -129,
389
- -148, -120, -148, -118, -154, -155, -115, -33, -57, -70,
390
- -70, -45, -93, -45, -149, -229, nil, -96, -95, -94 ]
429
+ nil, 24, 76, 73, 70, 65, 64, 63, 54, 13,
430
+ 12, 47, 45, 43, 41, 40, -36, -35, -57, -60,
431
+ -124, -234, -309, -275, -307, -298, -310, -30, -3, -94,
432
+ -122, -152, -191, -114, -56, nil, -116, -150, -154, -133,
433
+ -164, -129, -165, -126, -171, -171, -122, -34, -59, -28,
434
+ -69, -46, -103, -46, -166, -258, nil, nil, nil, -98,
435
+ -98, -157, -99, -98, -97 ]
391
436
 
392
437
  racc_goto_default = [
393
438
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
394
439
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
395
- nil, nil, 93, 255, nil, nil, nil, nil, nil, nil,
396
- nil, nil, nil, nil, nil, 51, nil, nil, nil, 275,
397
- nil, nil, 170, nil, 161, nil, nil, nil, nil, 105,
398
- nil, nil, nil, nil, nil, nil, 160, nil, nil, nil ]
440
+ nil, nil, 97, 283, nil, nil, nil, nil, nil, nil,
441
+ nil, nil, nil, nil, nil, 52, nil, nil, nil, 307,
442
+ nil, nil, 183, nil, 167, nil, nil, nil, nil, nil,
443
+ 109, nil, nil, nil, nil, nil, 166, 168, 169, nil,
444
+ nil, nil, nil, nil, nil ]
399
445
 
400
446
  racc_reduce_table = [
401
447
  0, 0, :racc_error,
402
- 1, 71, :_reduce_1,
403
- 2, 71, :_reduce_2,
404
- 2, 71, :_reduce_3,
405
- 3, 71, :_reduce_4,
406
- 3, 71, :_reduce_5,
407
- 1, 71, :_reduce_6,
408
- 1, 71, :_reduce_7,
409
- 1, 72, :_reduce_none,
410
- 1, 72, :_reduce_none,
411
- 1, 72, :_reduce_none,
412
- 1, 72, :_reduce_none,
413
- 1, 72, :_reduce_none,
414
- 1, 72, :_reduce_none,
415
- 1, 72, :_reduce_none,
416
- 1, 72, :_reduce_none,
417
- 1, 72, :_reduce_none,
418
- 1, 72, :_reduce_none,
419
- 1, 72, :_reduce_none,
420
- 1, 72, :_reduce_none,
421
- 1, 72, :_reduce_none,
422
- 4, 73, :_reduce_21,
423
- 4, 73, :_reduce_22,
424
- 2, 73, :_reduce_23,
425
- 4, 73, :_reduce_24,
426
- 0, 87, :_reduce_none,
427
- 2, 87, :_reduce_26,
428
- 4, 74, :_reduce_27,
429
- 7, 74, :_reduce_28,
430
- 2, 75, :_reduce_29,
431
- 7, 76, :_reduce_30,
432
- 5, 76, :_reduce_31,
433
- 6, 76, :_reduce_32,
434
- 3, 89, :_reduce_33,
435
- 5, 89, :_reduce_34,
436
- 7, 89, :_reduce_35,
437
- 9, 89, :_reduce_36,
438
- 1, 90, :_reduce_37,
439
- 1, 90, :_reduce_38,
440
- 1, 90, :_reduce_39,
441
- 7, 88, :_reduce_40,
442
- 7, 88, :_reduce_41,
443
- 1, 88, :_reduce_none,
444
- 6, 92, :_reduce_43,
445
- 6, 92, :_reduce_44,
446
- 1, 91, :_reduce_45,
447
- 3, 91, :_reduce_46,
448
- 7, 93, :_reduce_47,
449
- 7, 93, :_reduce_48,
450
- 8, 93, :_reduce_49,
451
- 2, 95, :_reduce_50,
452
- 5, 95, :_reduce_51,
453
- 1, 94, :_reduce_52,
454
- 1, 94, :_reduce_53,
455
- 4, 94, :_reduce_54,
456
- 1, 96, :_reduce_55,
457
- 3, 96, :_reduce_56,
458
- 3, 77, :_reduce_57,
459
- 2, 78, :_reduce_58,
460
- 2, 78, :_reduce_59,
461
- 9, 79, :_reduce_60,
462
- 12, 79, :_reduce_61,
463
- 7, 80, :_reduce_62,
464
- 10, 80, :_reduce_63,
465
- 9, 80, :_reduce_64,
466
- 5, 81, :_reduce_65,
467
- 1, 98, :_reduce_66,
468
- 1, 98, :_reduce_67,
448
+ 1, 78, :_reduce_1,
449
+ 2, 78, :_reduce_2,
450
+ 2, 78, :_reduce_3,
451
+ 3, 78, :_reduce_4,
452
+ 3, 78, :_reduce_5,
453
+ 1, 78, :_reduce_6,
454
+ 1, 78, :_reduce_7,
455
+ 1, 79, :_reduce_none,
456
+ 1, 79, :_reduce_none,
457
+ 1, 79, :_reduce_none,
458
+ 1, 79, :_reduce_none,
459
+ 1, 79, :_reduce_none,
460
+ 1, 79, :_reduce_none,
461
+ 1, 79, :_reduce_none,
462
+ 1, 79, :_reduce_none,
463
+ 1, 79, :_reduce_none,
464
+ 1, 79, :_reduce_none,
465
+ 1, 79, :_reduce_none,
466
+ 1, 79, :_reduce_none,
467
+ 1, 79, :_reduce_none,
468
+ 4, 80, :_reduce_21,
469
+ 4, 80, :_reduce_22,
470
+ 2, 80, :_reduce_23,
471
+ 4, 80, :_reduce_24,
472
+ 0, 94, :_reduce_none,
473
+ 2, 94, :_reduce_26,
474
+ 4, 81, :_reduce_27,
475
+ 7, 81, :_reduce_28,
476
+ 2, 82, :_reduce_29,
477
+ 2, 82, :_reduce_30,
478
+ 7, 83, :_reduce_31,
479
+ 5, 83, :_reduce_32,
480
+ 6, 83, :_reduce_33,
481
+ 3, 96, :_reduce_34,
482
+ 5, 96, :_reduce_35,
483
+ 7, 96, :_reduce_36,
484
+ 9, 96, :_reduce_37,
485
+ 1, 97, :_reduce_38,
486
+ 1, 97, :_reduce_39,
487
+ 1, 97, :_reduce_40,
488
+ 7, 95, :_reduce_41,
489
+ 7, 95, :_reduce_42,
490
+ 1, 95, :_reduce_none,
491
+ 6, 99, :_reduce_44,
492
+ 6, 99, :_reduce_45,
493
+ 1, 98, :_reduce_46,
494
+ 3, 98, :_reduce_47,
495
+ 7, 100, :_reduce_48,
496
+ 7, 100, :_reduce_49,
497
+ 8, 100, :_reduce_50,
498
+ 2, 102, :_reduce_51,
499
+ 5, 102, :_reduce_52,
500
+ 1, 101, :_reduce_53,
501
+ 1, 101, :_reduce_54,
502
+ 4, 101, :_reduce_55,
503
+ 1, 103, :_reduce_56,
504
+ 3, 103, :_reduce_57,
505
+ 3, 84, :_reduce_58,
506
+ 2, 85, :_reduce_59,
507
+ 2, 85, :_reduce_60,
508
+ 9, 86, :_reduce_61,
509
+ 12, 86, :_reduce_62,
510
+ 7, 87, :_reduce_63,
511
+ 10, 87, :_reduce_64,
512
+ 9, 87, :_reduce_65,
513
+ 5, 88, :_reduce_66,
514
+ 1, 105, :_reduce_67,
469
515
  1, 105, :_reduce_68,
470
- 3, 105, :_reduce_69,
471
- 0, 99, :_reduce_none,
472
- 5, 99, :_reduce_71,
473
- 0, 100, :_reduce_none,
474
- 2, 100, :_reduce_73,
475
- 1, 106, :_reduce_74,
476
- 3, 106, :_reduce_75,
477
- 3, 107, :_reduce_76,
478
- 5, 107, :_reduce_77,
479
- 1, 108, :_reduce_none,
480
- 1, 110, :_reduce_79,
481
- 1, 110, :_reduce_80,
482
- 1, 110, :_reduce_81,
483
- 1, 110, :_reduce_82,
484
- 1, 110, :_reduce_83,
485
- 1, 110, :_reduce_none,
486
- 0, 103, :_reduce_none,
487
- 2, 103, :_reduce_86,
488
- 1, 111, :_reduce_87,
489
- 3, 111, :_reduce_88,
490
- 3, 112, :_reduce_89,
491
- 3, 112, :_reduce_90,
492
- 5, 112, :_reduce_91,
493
- 3, 112, :_reduce_92,
494
- 1, 113, :_reduce_none,
495
- 1, 113, :_reduce_none,
496
- 1, 113, :_reduce_95,
497
- 1, 116, :_reduce_none,
498
- 2, 116, :_reduce_97,
499
- 1, 115, :_reduce_98,
500
- 2, 115, :_reduce_99,
501
- 0, 102, :_reduce_none,
502
- 2, 102, :_reduce_101,
503
- 2, 102, :_reduce_102,
504
- 0, 86, :_reduce_none,
505
- 2, 86, :_reduce_104,
506
- 0, 101, :_reduce_none,
507
- 2, 101, :_reduce_106,
508
- 5, 82, :_reduce_107,
509
- 7, 82, :_reduce_108,
510
- 1, 117, :_reduce_109,
511
- 1, 117, :_reduce_110,
512
- 1, 118, :_reduce_111,
513
- 3, 118, :_reduce_112,
514
- 3, 119, :_reduce_113,
515
- 2, 104, :_reduce_114,
516
- 1, 121, :_reduce_115,
517
- 3, 121, :_reduce_116,
518
- 3, 122, :_reduce_117,
519
- 4, 83, :_reduce_118,
520
- 6, 83, :_reduce_119,
521
- 8, 84, :_reduce_120,
522
- 4, 84, :_reduce_121,
523
- 4, 84, :_reduce_122,
524
- 1, 123, :_reduce_none,
525
- 3, 124, :_reduce_124,
526
- 5, 124, :_reduce_125,
527
- 1, 125, :_reduce_126,
528
- 3, 125, :_reduce_127,
529
- 1, 85, :_reduce_128,
516
+ 1, 112, :_reduce_69,
517
+ 3, 112, :_reduce_70,
518
+ 0, 106, :_reduce_none,
519
+ 5, 106, :_reduce_72,
520
+ 0, 107, :_reduce_none,
521
+ 2, 107, :_reduce_74,
522
+ 1, 113, :_reduce_75,
523
+ 3, 113, :_reduce_76,
524
+ 3, 114, :_reduce_77,
525
+ 5, 114, :_reduce_78,
526
+ 1, 115, :_reduce_none,
527
+ 1, 117, :_reduce_80,
528
+ 1, 117, :_reduce_81,
529
+ 1, 117, :_reduce_82,
530
+ 1, 117, :_reduce_83,
531
+ 1, 117, :_reduce_84,
532
+ 1, 117, :_reduce_none,
533
+ 0, 110, :_reduce_none,
534
+ 2, 110, :_reduce_87,
535
+ 1, 118, :_reduce_88,
536
+ 3, 118, :_reduce_89,
537
+ 3, 119, :_reduce_90,
538
+ 3, 119, :_reduce_91,
539
+ 5, 119, :_reduce_92,
540
+ 3, 119, :_reduce_93,
530
541
  1, 120, :_reduce_none,
531
542
  1, 120, :_reduce_none,
532
- 1, 109, :_reduce_none,
533
- 1, 109, :_reduce_none,
534
- 1, 126, :_reduce_none,
535
- 1, 126, :_reduce_none,
536
- 1, 126, :_reduce_none,
537
- 3, 114, :_reduce_136,
538
- 3, 114, :_reduce_137,
539
- 3, 114, :_reduce_138,
540
- 1, 127, :_reduce_139,
541
- 3, 127, :_reduce_140,
542
- 1, 128, :_reduce_141,
543
- 3, 128, :_reduce_142,
544
- 1, 129, :_reduce_143,
545
- 3, 129, :_reduce_144,
546
- 1, 97, :_reduce_145,
547
- 3, 97, :_reduce_146 ]
548
-
549
- racc_reduce_n = 147
550
-
551
- racc_shift_n = 330
543
+ 1, 120, :_reduce_96,
544
+ 1, 123, :_reduce_none,
545
+ 2, 123, :_reduce_98,
546
+ 1, 122, :_reduce_99,
547
+ 2, 122, :_reduce_100,
548
+ 0, 109, :_reduce_none,
549
+ 2, 109, :_reduce_102,
550
+ 2, 109, :_reduce_103,
551
+ 0, 93, :_reduce_none,
552
+ 2, 93, :_reduce_105,
553
+ 0, 108, :_reduce_none,
554
+ 2, 108, :_reduce_107,
555
+ 5, 89, :_reduce_108,
556
+ 7, 89, :_reduce_109,
557
+ 5, 89, :_reduce_110,
558
+ 7, 89, :_reduce_111,
559
+ 1, 124, :_reduce_112,
560
+ 1, 124, :_reduce_113,
561
+ 1, 126, :_reduce_114,
562
+ 1, 126, :_reduce_115,
563
+ 1, 125, :_reduce_116,
564
+ 3, 125, :_reduce_117,
565
+ 3, 127, :_reduce_118,
566
+ 2, 111, :_reduce_119,
567
+ 1, 128, :_reduce_120,
568
+ 3, 128, :_reduce_121,
569
+ 3, 129, :_reduce_122,
570
+ 4, 90, :_reduce_123,
571
+ 6, 90, :_reduce_124,
572
+ 8, 91, :_reduce_125,
573
+ 4, 91, :_reduce_126,
574
+ 4, 91, :_reduce_127,
575
+ 1, 130, :_reduce_none,
576
+ 3, 131, :_reduce_129,
577
+ 5, 131, :_reduce_130,
578
+ 1, 132, :_reduce_131,
579
+ 3, 132, :_reduce_132,
580
+ 1, 92, :_reduce_133,
581
+ 1, 116, :_reduce_none,
582
+ 1, 116, :_reduce_none,
583
+ 1, 116, :_reduce_none,
584
+ 1, 116, :_reduce_none,
585
+ 1, 116, :_reduce_none,
586
+ 1, 116, :_reduce_none,
587
+ 2, 134, :_reduce_none,
588
+ 3, 134, :_reduce_141,
589
+ 1, 136, :_reduce_142,
590
+ 3, 136, :_reduce_143,
591
+ 2, 135, :_reduce_144,
592
+ 3, 135, :_reduce_145,
593
+ 1, 137, :_reduce_none,
594
+ 3, 137, :_reduce_147,
595
+ 3, 138, :_reduce_148,
596
+ 3, 138, :_reduce_149,
597
+ 1, 133, :_reduce_none,
598
+ 1, 133, :_reduce_none,
599
+ 1, 133, :_reduce_none,
600
+ 3, 121, :_reduce_153,
601
+ 3, 121, :_reduce_154,
602
+ 3, 121, :_reduce_155,
603
+ 1, 139, :_reduce_156,
604
+ 3, 139, :_reduce_157,
605
+ 1, 140, :_reduce_158,
606
+ 3, 140, :_reduce_159,
607
+ 1, 141, :_reduce_160,
608
+ 3, 141, :_reduce_161,
609
+ 1, 104, :_reduce_162,
610
+ 3, 104, :_reduce_163 ]
611
+
612
+ racc_reduce_n = 164
613
+
614
+ racc_shift_n = 362
552
615
 
553
616
  racc_token_table = {
554
617
  false => 0,
@@ -570,12 +633,12 @@ racc_token_table = {
570
633
  :CHANGE => 16,
571
634
  :INDEX => 17,
572
635
  :USE => 18,
573
- "(" => 19,
574
- ")" => 20,
575
- :HASH => 21,
576
- "," => 22,
577
- :RANGE => 23,
578
- :STRING => 24,
636
+ :STRING => 19,
637
+ "(" => 20,
638
+ ")" => 21,
639
+ :HASH => 22,
640
+ "," => 23,
641
+ :RANGE => 24,
579
642
  :NUMBER => 25,
580
643
  :BINARY => 26,
581
644
  :READ => 27,
@@ -616,13 +679,20 @@ racc_token_table = {
616
679
  :SET => 62,
617
680
  :ADD => 63,
618
681
  :DELETE => 64,
619
- :INSERT => 65,
620
- :INTO => 66,
621
- :VALUES => 67,
622
- :NEXT => 68,
623
- :BINARY_VALUE => 69 }
624
-
625
- racc_nt_base = 70
682
+ :DEL => 65,
683
+ :INSERT => 66,
684
+ :INTO => 67,
685
+ :VALUES => 68,
686
+ :NEXT => 69,
687
+ :BOOL => 70,
688
+ "[" => 71,
689
+ "]" => 72,
690
+ "{" => 73,
691
+ "}" => 74,
692
+ ":" => 75,
693
+ :BINARY_VALUE => 76 }
694
+
695
+ racc_nt_base = 77
626
696
 
627
697
  racc_use_result_var = false
628
698
 
@@ -662,12 +732,12 @@ Racc_token_to_s_table = [
662
732
  "CHANGE",
663
733
  "INDEX",
664
734
  "USE",
735
+ "STRING",
665
736
  "\"(\"",
666
737
  "\")\"",
667
738
  "HASH",
668
739
  "\",\"",
669
740
  "RANGE",
670
- "STRING",
671
741
  "NUMBER",
672
742
  "BINARY",
673
743
  "READ",
@@ -708,10 +778,17 @@ Racc_token_to_s_table = [
708
778
  "SET",
709
779
  "ADD",
710
780
  "DELETE",
781
+ "DEL",
711
782
  "INSERT",
712
783
  "INTO",
713
784
  "VALUES",
714
785
  "NEXT",
786
+ "BOOL",
787
+ "\"[\"",
788
+ "\"]\"",
789
+ "\"{\"",
790
+ "\"}\"",
791
+ "\":\"",
715
792
  "BINARY_VALUE",
716
793
  "$start",
717
794
  "stmt",
@@ -762,14 +839,19 @@ Racc_token_to_s_table = [
762
839
  "contains_operator",
763
840
  "set_or_add",
764
841
  "attr_to_update_list",
842
+ "delete_or_del",
765
843
  "attr_to_update",
766
- "value_or_null",
767
844
  "update_expr_list",
768
845
  "update_expr",
769
846
  "attr_to_insert_list",
770
847
  "insert_value_clause",
771
848
  "insert_value_list",
772
849
  "single_value",
850
+ "list",
851
+ "map",
852
+ "list_items",
853
+ "map_items",
854
+ "map_item",
773
855
  "number_list",
774
856
  "string_list",
775
857
  "binary_list" ]
@@ -915,148 +997,155 @@ module_eval(<<'.,.,', 'ddb-parser.y', 81)
915
997
 
916
998
  module_eval(<<'.,.,', 'ddb-parser.y', 86)
917
999
  def _reduce_30(val, _values)
918
- struct(:CREATE, val[4].merge(:table => val[2], :capacity => val[6]))
919
-
1000
+ struct(:USE, :endpoint_or_region => val[1])
1001
+
920
1002
  end
921
1003
  .,.,
922
1004
 
923
- module_eval(<<'.,.,', 'ddb-parser.y', 90)
1005
+ module_eval(<<'.,.,', 'ddb-parser.y', 91)
924
1006
  def _reduce_31(val, _values)
925
- struct(:CREATE_LIKE, :table => val[2], :like => val[4], :capacity => nil)
1007
+ struct(:CREATE, val[4].merge(:table => val[2], :capacity => val[6]))
926
1008
 
927
1009
  end
928
1010
  .,.,
929
1011
 
930
- module_eval(<<'.,.,', 'ddb-parser.y', 94)
1012
+ module_eval(<<'.,.,', 'ddb-parser.y', 95)
931
1013
  def _reduce_32(val, _values)
932
- struct(:CREATE_LIKE, :table => val[2], :like => val[4], :capacity => val[5])
1014
+ struct(:CREATE_LIKE, :table => val[2], :like => val[4], :capacity => nil)
933
1015
 
934
1016
  end
935
1017
  .,.,
936
1018
 
937
1019
  module_eval(<<'.,.,', 'ddb-parser.y', 99)
938
1020
  def _reduce_33(val, _values)
939
- {:hash => {:name => val[0], :type => val[1]}, :range => nil, :indices => nil}
940
-
1021
+ struct(:CREATE_LIKE, :table => val[2], :like => val[4], :capacity => val[5])
1022
+
941
1023
  end
942
1024
  .,.,
943
1025
 
944
- module_eval(<<'.,.,', 'ddb-parser.y', 103)
1026
+ module_eval(<<'.,.,', 'ddb-parser.y', 104)
945
1027
  def _reduce_34(val, _values)
946
- {:hash => {:name => val[0], :type => val[1]}, :range => nil, :indices => val[4]}
1028
+ {:hash => {:name => val[0], :type => val[1]}, :range => nil, :indices => nil}
947
1029
 
948
1030
  end
949
1031
  .,.,
950
1032
 
951
- module_eval(<<'.,.,', 'ddb-parser.y', 107)
1033
+ module_eval(<<'.,.,', 'ddb-parser.y', 108)
952
1034
  def _reduce_35(val, _values)
953
- {:hash => {:name => val[0], :type => val[1]}, :range => {:name => val[4], :type => val[5]}, :indices => nil}
1035
+ {:hash => {:name => val[0], :type => val[1]}, :range => nil, :indices => val[4]}
954
1036
 
955
1037
  end
956
1038
  .,.,
957
1039
 
958
- module_eval(<<'.,.,', 'ddb-parser.y', 111)
1040
+ module_eval(<<'.,.,', 'ddb-parser.y', 112)
959
1041
  def _reduce_36(val, _values)
960
- {:hash => {:name => val[0], :type => val[1]}, :range => {:name => val[4], :type => val[5]}, :indices => val[8]}
1042
+ {:hash => {:name => val[0], :type => val[1]}, :range => {:name => val[4], :type => val[5]}, :indices => nil}
961
1043
 
962
1044
  end
963
1045
  .,.,
964
1046
 
965
1047
  module_eval(<<'.,.,', 'ddb-parser.y', 116)
966
1048
  def _reduce_37(val, _values)
967
- 'S'
968
-
1049
+ {:hash => {:name => val[0], :type => val[1]}, :range => {:name => val[4], :type => val[5]}, :indices => val[8]}
1050
+
969
1051
  end
970
1052
  .,.,
971
1053
 
972
- module_eval(<<'.,.,', 'ddb-parser.y', 120)
1054
+ module_eval(<<'.,.,', 'ddb-parser.y', 121)
973
1055
  def _reduce_38(val, _values)
974
- 'N'
1056
+ 'S'
975
1057
 
976
1058
  end
977
1059
  .,.,
978
1060
 
979
- module_eval(<<'.,.,', 'ddb-parser.y', 124)
1061
+ module_eval(<<'.,.,', 'ddb-parser.y', 125)
980
1062
  def _reduce_39(val, _values)
981
- 'B'
1063
+ 'N'
982
1064
 
983
1065
  end
984
1066
  .,.,
985
1067
 
986
1068
  module_eval(<<'.,.,', 'ddb-parser.y', 129)
987
1069
  def _reduce_40(val, _values)
1070
+ 'B'
1071
+
1072
+ end
1073
+ .,.,
1074
+
1075
+ module_eval(<<'.,.,', 'ddb-parser.y', 134)
1076
+ def _reduce_41(val, _values)
988
1077
  {:read => val[2], :write => val[6]}
989
1078
 
990
1079
  end
991
1080
  .,.,
992
1081
 
993
- module_eval(<<'.,.,', 'ddb-parser.y', 133)
994
- def _reduce_41(val, _values)
1082
+ module_eval(<<'.,.,', 'ddb-parser.y', 138)
1083
+ def _reduce_42(val, _values)
995
1084
  {:read => val[6], :write => val[2]}
996
1085
 
997
1086
  end
998
1087
  .,.,
999
1088
 
1000
- # reduce 42 omitted
1089
+ # reduce 43 omitted
1001
1090
 
1002
- module_eval(<<'.,.,', 'ddb-parser.y', 139)
1003
- def _reduce_43(val, _values)
1091
+ module_eval(<<'.,.,', 'ddb-parser.y', 144)
1092
+ def _reduce_44(val, _values)
1004
1093
  {:read => val[2], :write => val[5]}
1005
1094
 
1006
1095
  end
1007
1096
  .,.,
1008
1097
 
1009
- module_eval(<<'.,.,', 'ddb-parser.y', 143)
1010
- def _reduce_44(val, _values)
1098
+ module_eval(<<'.,.,', 'ddb-parser.y', 148)
1099
+ def _reduce_45(val, _values)
1011
1100
  {:read => val[5], :write => val[2]}
1012
1101
 
1013
1102
  end
1014
1103
  .,.,
1015
1104
 
1016
- module_eval(<<'.,.,', 'ddb-parser.y', 148)
1017
- def _reduce_45(val, _values)
1105
+ module_eval(<<'.,.,', 'ddb-parser.y', 153)
1106
+ def _reduce_46(val, _values)
1018
1107
  [val[0]]
1019
1108
 
1020
1109
  end
1021
1110
  .,.,
1022
1111
 
1023
- module_eval(<<'.,.,', 'ddb-parser.y', 152)
1024
- def _reduce_46(val, _values)
1112
+ module_eval(<<'.,.,', 'ddb-parser.y', 157)
1113
+ def _reduce_47(val, _values)
1025
1114
  val[0] + [val[2]]
1026
1115
 
1027
1116
  end
1028
1117
  .,.,
1029
1118
 
1030
- module_eval(<<'.,.,', 'ddb-parser.y', 157)
1031
- def _reduce_47(val, _values)
1119
+ module_eval(<<'.,.,', 'ddb-parser.y', 162)
1120
+ def _reduce_48(val, _values)
1032
1121
  {:name => val[1], :key => val[3], :type => val[4], :projection => val[6]}
1033
1122
 
1034
1123
  end
1035
1124
  .,.,
1036
1125
 
1037
- module_eval(<<'.,.,', 'ddb-parser.y', 161)
1038
- def _reduce_48(val, _values)
1126
+ module_eval(<<'.,.,', 'ddb-parser.y', 166)
1127
+ def _reduce_49(val, _values)
1039
1128
  {:name => val[2], :keys => val[4], :projection => val[6], :global => true}
1040
1129
 
1041
1130
  end
1042
1131
  .,.,
1043
1132
 
1044
- module_eval(<<'.,.,', 'ddb-parser.y', 165)
1045
- def _reduce_49(val, _values)
1133
+ module_eval(<<'.,.,', 'ddb-parser.y', 170)
1134
+ def _reduce_50(val, _values)
1046
1135
  {:name => val[2], :keys => val[4], :projection => val[6], :capacity => val[7], :global => true}
1047
1136
 
1048
1137
  end
1049
1138
  .,.,
1050
1139
 
1051
- module_eval(<<'.,.,', 'ddb-parser.y', 170)
1052
- def _reduce_50(val, _values)
1140
+ module_eval(<<'.,.,', 'ddb-parser.y', 175)
1141
+ def _reduce_51(val, _values)
1053
1142
  {:hash => {:key => val[0], :type => val[1]}}
1054
1143
 
1055
1144
  end
1056
1145
  .,.,
1057
1146
 
1058
- module_eval(<<'.,.,', 'ddb-parser.y', 174)
1059
- def _reduce_51(val, _values)
1147
+ module_eval(<<'.,.,', 'ddb-parser.y', 179)
1148
+ def _reduce_52(val, _values)
1060
1149
  {
1061
1150
  :hash => {:key => val[0], :type => val[1]},
1062
1151
  :range => {:key => val[3], :type => val[4]},
@@ -1065,571 +1154,667 @@ module_eval(<<'.,.,', 'ddb-parser.y', 174)
1065
1154
  end
1066
1155
  .,.,
1067
1156
 
1068
- module_eval(<<'.,.,', 'ddb-parser.y', 182)
1069
- def _reduce_52(val, _values)
1157
+ module_eval(<<'.,.,', 'ddb-parser.y', 187)
1158
+ def _reduce_53(val, _values)
1070
1159
  {:type => 'ALL'}
1071
1160
 
1072
1161
  end
1073
1162
  .,.,
1074
1163
 
1075
- module_eval(<<'.,.,', 'ddb-parser.y', 186)
1076
- def _reduce_53(val, _values)
1164
+ module_eval(<<'.,.,', 'ddb-parser.y', 191)
1165
+ def _reduce_54(val, _values)
1077
1166
  {:type => 'KEYS_ONLY'}
1078
1167
 
1079
1168
  end
1080
1169
  .,.,
1081
1170
 
1082
- module_eval(<<'.,.,', 'ddb-parser.y', 190)
1083
- def _reduce_54(val, _values)
1171
+ module_eval(<<'.,.,', 'ddb-parser.y', 195)
1172
+ def _reduce_55(val, _values)
1084
1173
  {:type => 'INCLUDE', :attrs => val[2]}
1085
1174
 
1086
1175
  end
1087
1176
  .,.,
1088
1177
 
1089
- module_eval(<<'.,.,', 'ddb-parser.y', 195)
1090
- def _reduce_55(val, _values)
1178
+ module_eval(<<'.,.,', 'ddb-parser.y', 200)
1179
+ def _reduce_56(val, _values)
1091
1180
  [val[0]]
1092
1181
 
1093
1182
  end
1094
1183
  .,.,
1095
1184
 
1096
- module_eval(<<'.,.,', 'ddb-parser.y', 199)
1097
- def _reduce_56(val, _values)
1185
+ module_eval(<<'.,.,', 'ddb-parser.y', 204)
1186
+ def _reduce_57(val, _values)
1098
1187
  val[0] + [val[2]]
1099
1188
 
1100
1189
  end
1101
1190
  .,.,
1102
1191
 
1103
- module_eval(<<'.,.,', 'ddb-parser.y', 204)
1104
- def _reduce_57(val, _values)
1192
+ module_eval(<<'.,.,', 'ddb-parser.y', 209)
1193
+ def _reduce_58(val, _values)
1105
1194
  struct(:DROP, :tables => val[2])
1106
1195
 
1107
1196
  end
1108
1197
  .,.,
1109
1198
 
1110
- module_eval(<<'.,.,', 'ddb-parser.y', 209)
1111
- def _reduce_58(val, _values)
1199
+ module_eval(<<'.,.,', 'ddb-parser.y', 214)
1200
+ def _reduce_59(val, _values)
1112
1201
  struct(:DESCRIBE, :table => val[1])
1113
1202
 
1114
1203
  end
1115
1204
  .,.,
1116
1205
 
1117
- module_eval(<<'.,.,', 'ddb-parser.y', 213)
1118
- def _reduce_59(val, _values)
1206
+ module_eval(<<'.,.,', 'ddb-parser.y', 218)
1207
+ def _reduce_60(val, _values)
1119
1208
  struct(:DESCRIBE, :table => val[1])
1120
1209
 
1121
1210
  end
1122
1211
  .,.,
1123
1212
 
1124
- module_eval(<<'.,.,', 'ddb-parser.y', 218)
1125
- def _reduce_60(val, _values)
1213
+ module_eval(<<'.,.,', 'ddb-parser.y', 223)
1214
+ def _reduce_61(val, _values)
1126
1215
  struct(:SELECT, :attrs => val[1], :table => val[3], :index => val[4], :conds => val[5], :having => val[6], :order_asc => val[7], :limit => val[8], :count => false)
1127
1216
 
1128
1217
  end
1129
1218
  .,.,
1130
1219
 
1131
- module_eval(<<'.,.,', 'ddb-parser.y', 222)
1132
- def _reduce_61(val, _values)
1220
+ module_eval(<<'.,.,', 'ddb-parser.y', 227)
1221
+ def _reduce_62(val, _values)
1133
1222
  struct(:SELECT, :attrs => [], :table => val[6], :index => val[7], :conds => val[8], :having => val[9], :order_asc => val[10], :limit => val[11], :count => true)
1134
1223
 
1135
1224
  end
1136
1225
  .,.,
1137
1226
 
1138
- module_eval(<<'.,.,', 'ddb-parser.y', 227)
1139
- def _reduce_62(val, _values)
1227
+ module_eval(<<'.,.,', 'ddb-parser.y', 232)
1228
+ def _reduce_63(val, _values)
1140
1229
  struct(:SCAN, :attrs => val[2], :table => val[4], :conds => val[5], :limit => val[6], :count => false, :segment => nil, :total_segments => nil)
1141
1230
 
1142
1231
  end
1143
1232
  .,.,
1144
1233
 
1145
- module_eval(<<'.,.,', 'ddb-parser.y', 231)
1146
- def _reduce_63(val, _values)
1234
+ module_eval(<<'.,.,', 'ddb-parser.y', 236)
1235
+ def _reduce_64(val, _values)
1147
1236
  struct(:SCAN, :attrs => [], :table => val[7], :conds => val[8], :limit => val[9], :count => true, :segment => nil, :total_segments => nil)
1148
1237
 
1149
1238
  end
1150
1239
  .,.,
1151
1240
 
1152
- module_eval(<<'.,.,', 'ddb-parser.y', 235)
1153
- def _reduce_64(val, _values)
1241
+ module_eval(<<'.,.,', 'ddb-parser.y', 240)
1242
+ def _reduce_65(val, _values)
1154
1243
  struct(:SCAN, :attrs => val[4], :table => val[6], :conds => val[7], :limit => val[8], :count => false, :segment => val[1], :total_segments => val[3])
1155
1244
 
1156
1245
  end
1157
1246
  .,.,
1158
1247
 
1159
- module_eval(<<'.,.,', 'ddb-parser.y', 240)
1160
- def _reduce_65(val, _values)
1248
+ module_eval(<<'.,.,', 'ddb-parser.y', 245)
1249
+ def _reduce_66(val, _values)
1161
1250
  struct(:GET, :attrs => val[1], :table => val[3], :conds => val[4])
1162
1251
 
1163
1252
  end
1164
1253
  .,.,
1165
1254
 
1166
- module_eval(<<'.,.,', 'ddb-parser.y', 245)
1167
- def _reduce_66(val, _values)
1255
+ module_eval(<<'.,.,', 'ddb-parser.y', 250)
1256
+ def _reduce_67(val, _values)
1168
1257
  []
1169
1258
 
1170
1259
  end
1171
1260
  .,.,
1172
1261
 
1173
- module_eval(<<'.,.,', 'ddb-parser.y', 249)
1174
- def _reduce_67(val, _values)
1262
+ module_eval(<<'.,.,', 'ddb-parser.y', 254)
1263
+ def _reduce_68(val, _values)
1175
1264
  val[0]
1176
1265
 
1177
1266
  end
1178
1267
  .,.,
1179
1268
 
1180
- module_eval(<<'.,.,', 'ddb-parser.y', 254)
1181
- def _reduce_68(val, _values)
1269
+ module_eval(<<'.,.,', 'ddb-parser.y', 259)
1270
+ def _reduce_69(val, _values)
1182
1271
  [val[0]]
1183
1272
 
1184
1273
  end
1185
1274
  .,.,
1186
1275
 
1187
- module_eval(<<'.,.,', 'ddb-parser.y', 258)
1188
- def _reduce_69(val, _values)
1276
+ module_eval(<<'.,.,', 'ddb-parser.y', 263)
1277
+ def _reduce_70(val, _values)
1189
1278
  val[0] + [val[2]]
1190
1279
 
1191
1280
  end
1192
1281
  .,.,
1193
1282
 
1194
- # reduce 70 omitted
1283
+ # reduce 71 omitted
1195
1284
 
1196
- module_eval(<<'.,.,', 'ddb-parser.y', 264)
1197
- def _reduce_71(val, _values)
1285
+ module_eval(<<'.,.,', 'ddb-parser.y', 269)
1286
+ def _reduce_72(val, _values)
1198
1287
  val[3]
1199
1288
 
1200
1289
  end
1201
1290
  .,.,
1202
1291
 
1203
- # reduce 72 omitted
1292
+ # reduce 73 omitted
1204
1293
 
1205
- module_eval(<<'.,.,', 'ddb-parser.y', 270)
1206
- def _reduce_73(val, _values)
1294
+ module_eval(<<'.,.,', 'ddb-parser.y', 275)
1295
+ def _reduce_74(val, _values)
1207
1296
  val[1]
1208
1297
 
1209
1298
  end
1210
1299
  .,.,
1211
1300
 
1212
- module_eval(<<'.,.,', 'ddb-parser.y', 275)
1213
- def _reduce_74(val, _values)
1301
+ module_eval(<<'.,.,', 'ddb-parser.y', 280)
1302
+ def _reduce_75(val, _values)
1214
1303
  [val[0]]
1215
1304
 
1216
1305
  end
1217
1306
  .,.,
1218
1307
 
1219
- module_eval(<<'.,.,', 'ddb-parser.y', 279)
1220
- def _reduce_75(val, _values)
1308
+ module_eval(<<'.,.,', 'ddb-parser.y', 284)
1309
+ def _reduce_76(val, _values)
1221
1310
  val[0] + [val[2]]
1222
1311
 
1223
1312
  end
1224
1313
  .,.,
1225
1314
 
1226
- module_eval(<<'.,.,', 'ddb-parser.y', 284)
1227
- def _reduce_76(val, _values)
1315
+ module_eval(<<'.,.,', 'ddb-parser.y', 289)
1316
+ def _reduce_77(val, _values)
1228
1317
  [val[0], val[1].to_s.upcase.to_sym, [val[2]]]
1229
1318
 
1230
1319
  end
1231
1320
  .,.,
1232
1321
 
1233
- module_eval(<<'.,.,', 'ddb-parser.y', 288)
1234
- def _reduce_77(val, _values)
1322
+ module_eval(<<'.,.,', 'ddb-parser.y', 293)
1323
+ def _reduce_78(val, _values)
1235
1324
  [val[0], val[1].to_s.upcase.to_sym, [val[2], val[4]]]
1236
1325
 
1237
1326
  end
1238
1327
  .,.,
1239
1328
 
1240
- # reduce 78 omitted
1329
+ # reduce 79 omitted
1241
1330
 
1242
- module_eval(<<'.,.,', 'ddb-parser.y', 295)
1243
- def _reduce_79(val, _values)
1331
+ module_eval(<<'.,.,', 'ddb-parser.y', 300)
1332
+ def _reduce_80(val, _values)
1244
1333
  :EQ
1245
1334
 
1246
1335
  end
1247
1336
  .,.,
1248
1337
 
1249
- module_eval(<<'.,.,', 'ddb-parser.y', 299)
1250
- def _reduce_80(val, _values)
1338
+ module_eval(<<'.,.,', 'ddb-parser.y', 304)
1339
+ def _reduce_81(val, _values)
1251
1340
  :LE
1252
1341
 
1253
1342
  end
1254
1343
  .,.,
1255
1344
 
1256
- module_eval(<<'.,.,', 'ddb-parser.y', 303)
1257
- def _reduce_81(val, _values)
1345
+ module_eval(<<'.,.,', 'ddb-parser.y', 308)
1346
+ def _reduce_82(val, _values)
1258
1347
  :LT
1259
1348
 
1260
1349
  end
1261
1350
  .,.,
1262
1351
 
1263
- module_eval(<<'.,.,', 'ddb-parser.y', 307)
1264
- def _reduce_82(val, _values)
1352
+ module_eval(<<'.,.,', 'ddb-parser.y', 312)
1353
+ def _reduce_83(val, _values)
1265
1354
  :GE
1266
1355
 
1267
1356
  end
1268
1357
  .,.,
1269
1358
 
1270
- module_eval(<<'.,.,', 'ddb-parser.y', 311)
1271
- def _reduce_83(val, _values)
1359
+ module_eval(<<'.,.,', 'ddb-parser.y', 316)
1360
+ def _reduce_84(val, _values)
1272
1361
  :GT
1273
1362
 
1274
1363
  end
1275
1364
  .,.,
1276
1365
 
1277
- # reduce 84 omitted
1278
-
1279
1366
  # reduce 85 omitted
1280
1367
 
1281
- module_eval(<<'.,.,', 'ddb-parser.y', 318)
1282
- def _reduce_86(val, _values)
1368
+ # reduce 86 omitted
1369
+
1370
+ module_eval(<<'.,.,', 'ddb-parser.y', 323)
1371
+ def _reduce_87(val, _values)
1283
1372
  val[1]
1284
1373
 
1285
1374
  end
1286
1375
  .,.,
1287
1376
 
1288
- module_eval(<<'.,.,', 'ddb-parser.y', 323)
1289
- def _reduce_87(val, _values)
1377
+ module_eval(<<'.,.,', 'ddb-parser.y', 328)
1378
+ def _reduce_88(val, _values)
1290
1379
  [val[0]]
1291
1380
 
1292
1381
  end
1293
1382
  .,.,
1294
1383
 
1295
- module_eval(<<'.,.,', 'ddb-parser.y', 327)
1296
- def _reduce_88(val, _values)
1384
+ module_eval(<<'.,.,', 'ddb-parser.y', 332)
1385
+ def _reduce_89(val, _values)
1297
1386
  val[0] + [val[2]]
1298
1387
 
1299
1388
  end
1300
1389
  .,.,
1301
1390
 
1302
- module_eval(<<'.,.,', 'ddb-parser.y', 332)
1303
- def _reduce_89(val, _values)
1391
+ module_eval(<<'.,.,', 'ddb-parser.y', 337)
1392
+ def _reduce_90(val, _values)
1304
1393
  [val[0], val[1].to_s.upcase.to_sym, [val[2]]]
1305
1394
 
1306
1395
  end
1307
1396
  .,.,
1308
1397
 
1309
- module_eval(<<'.,.,', 'ddb-parser.y', 336)
1310
- def _reduce_90(val, _values)
1398
+ module_eval(<<'.,.,', 'ddb-parser.y', 341)
1399
+ def _reduce_91(val, _values)
1311
1400
  [val[0], val[1].to_s.upcase.to_sym, val[2]]
1312
1401
 
1313
1402
  end
1314
1403
  .,.,
1315
1404
 
1316
- module_eval(<<'.,.,', 'ddb-parser.y', 340)
1317
- def _reduce_91(val, _values)
1405
+ module_eval(<<'.,.,', 'ddb-parser.y', 345)
1406
+ def _reduce_92(val, _values)
1318
1407
  [val[0], val[1].to_s.upcase.to_sym, [val[2], val[4]]]
1319
1408
 
1320
1409
  end
1321
1410
  .,.,
1322
1411
 
1323
- module_eval(<<'.,.,', 'ddb-parser.y', 344)
1324
- def _reduce_92(val, _values)
1412
+ module_eval(<<'.,.,', 'ddb-parser.y', 349)
1413
+ def _reduce_93(val, _values)
1325
1414
  [val[0], val[2].to_s.upcase.to_sym, []]
1326
1415
 
1327
1416
  end
1328
1417
  .,.,
1329
1418
 
1330
- # reduce 93 omitted
1331
-
1332
1419
  # reduce 94 omitted
1333
1420
 
1334
- module_eval(<<'.,.,', 'ddb-parser.y', 350)
1335
- def _reduce_95(val, _values)
1421
+ # reduce 95 omitted
1422
+
1423
+ module_eval(<<'.,.,', 'ddb-parser.y', 355)
1424
+ def _reduce_96(val, _values)
1336
1425
  :NE
1337
1426
 
1338
1427
  end
1339
1428
  .,.,
1340
1429
 
1341
- # reduce 96 omitted
1430
+ # reduce 97 omitted
1342
1431
 
1343
- module_eval(<<'.,.,', 'ddb-parser.y', 356)
1344
- def _reduce_97(val, _values)
1432
+ module_eval(<<'.,.,', 'ddb-parser.y', 361)
1433
+ def _reduce_98(val, _values)
1345
1434
  :NOT_CONTAINS
1346
1435
 
1347
1436
  end
1348
1437
  .,.,
1349
1438
 
1350
- module_eval(<<'.,.,', 'ddb-parser.y', 360)
1351
- def _reduce_98(val, _values)
1439
+ module_eval(<<'.,.,', 'ddb-parser.y', 365)
1440
+ def _reduce_99(val, _values)
1352
1441
  :NULL
1353
1442
 
1354
1443
  end
1355
1444
  .,.,
1356
1445
 
1357
- module_eval(<<'.,.,', 'ddb-parser.y', 364)
1358
- def _reduce_99(val, _values)
1446
+ module_eval(<<'.,.,', 'ddb-parser.y', 369)
1447
+ def _reduce_100(val, _values)
1359
1448
  :NOT_NULL
1360
1449
 
1361
1450
  end
1362
1451
  .,.,
1363
1452
 
1364
- # reduce 100 omitted
1453
+ # reduce 101 omitted
1365
1454
 
1366
- module_eval(<<'.,.,', 'ddb-parser.y', 370)
1367
- def _reduce_101(val, _values)
1455
+ module_eval(<<'.,.,', 'ddb-parser.y', 375)
1456
+ def _reduce_102(val, _values)
1368
1457
  true
1369
1458
 
1370
1459
  end
1371
1460
  .,.,
1372
1461
 
1373
- module_eval(<<'.,.,', 'ddb-parser.y', 374)
1374
- def _reduce_102(val, _values)
1462
+ module_eval(<<'.,.,', 'ddb-parser.y', 379)
1463
+ def _reduce_103(val, _values)
1375
1464
  false
1376
1465
 
1377
1466
  end
1378
1467
  .,.,
1379
1468
 
1380
- # reduce 103 omitted
1469
+ # reduce 104 omitted
1381
1470
 
1382
- module_eval(<<'.,.,', 'ddb-parser.y', 380)
1383
- def _reduce_104(val, _values)
1471
+ module_eval(<<'.,.,', 'ddb-parser.y', 385)
1472
+ def _reduce_105(val, _values)
1384
1473
  val[1]
1385
1474
 
1386
1475
  end
1387
1476
  .,.,
1388
1477
 
1389
- # reduce 105 omitted
1478
+ # reduce 106 omitted
1390
1479
 
1391
- module_eval(<<'.,.,', 'ddb-parser.y', 386)
1392
- def _reduce_106(val, _values)
1480
+ module_eval(<<'.,.,', 'ddb-parser.y', 391)
1481
+ def _reduce_107(val, _values)
1393
1482
  val[1]
1394
1483
 
1395
1484
  end
1396
1485
  .,.,
1397
1486
 
1398
- module_eval(<<'.,.,', 'ddb-parser.y', 391)
1399
- def _reduce_107(val, _values)
1487
+ module_eval(<<'.,.,', 'ddb-parser.y', 396)
1488
+ def _reduce_108(val, _values)
1400
1489
  struct(:UPDATE, :table => val[1], :action => val[2], :attrs => val[3], :conds => val[4])
1401
1490
 
1402
1491
  end
1403
1492
  .,.,
1404
1493
 
1405
- module_eval(<<'.,.,', 'ddb-parser.y', 395)
1406
- def _reduce_108(val, _values)
1494
+ module_eval(<<'.,.,', 'ddb-parser.y', 400)
1495
+ def _reduce_109(val, _values)
1407
1496
  struct(:UPDATE_ALL, :table => val[2], :action => val[3], :attrs => val[4], :conds => val[5], :limit => val[6])
1408
1497
 
1409
1498
  end
1410
1499
  .,.,
1411
1500
 
1412
- module_eval(<<'.,.,', 'ddb-parser.y', 400)
1413
- def _reduce_109(val, _values)
1501
+ module_eval(<<'.,.,', 'ddb-parser.y', 404)
1502
+ def _reduce_110(val, _values)
1503
+ attrs = {}
1504
+ val[3].each {|i| attrs[i] = true }
1505
+ struct(:UPDATE, :table => val[1], :action => val[2], :attrs => attrs, :conds => val[4])
1506
+
1507
+ end
1508
+ .,.,
1509
+
1510
+ module_eval(<<'.,.,', 'ddb-parser.y', 410)
1511
+ def _reduce_111(val, _values)
1512
+ attrs = {}
1513
+ val[4].each {|i| attrs[i] = true }
1514
+ struct(:UPDATE_ALL, :table => val[2], :action => val[3], :attrs => attrs, :conds => val[5], :limit => val[6])
1515
+
1516
+ end
1517
+ .,.,
1518
+
1519
+ module_eval(<<'.,.,', 'ddb-parser.y', 417)
1520
+ def _reduce_112(val, _values)
1414
1521
  :PUT
1415
1522
 
1416
1523
  end
1417
1524
  .,.,
1418
1525
 
1419
- module_eval(<<'.,.,', 'ddb-parser.y', 404)
1420
- def _reduce_110(val, _values)
1526
+ module_eval(<<'.,.,', 'ddb-parser.y', 421)
1527
+ def _reduce_113(val, _values)
1421
1528
  :ADD
1422
1529
 
1423
1530
  end
1424
1531
  .,.,
1425
1532
 
1426
- module_eval(<<'.,.,', 'ddb-parser.y', 409)
1427
- def _reduce_111(val, _values)
1533
+ module_eval(<<'.,.,', 'ddb-parser.y', 426)
1534
+ def _reduce_114(val, _values)
1535
+ :DELETE
1536
+
1537
+ end
1538
+ .,.,
1539
+
1540
+ module_eval(<<'.,.,', 'ddb-parser.y', 430)
1541
+ def _reduce_115(val, _values)
1542
+ :DELETE
1543
+
1544
+ end
1545
+ .,.,
1546
+
1547
+ module_eval(<<'.,.,', 'ddb-parser.y', 435)
1548
+ def _reduce_116(val, _values)
1428
1549
  [val[0]]
1429
1550
 
1430
1551
  end
1431
1552
  .,.,
1432
1553
 
1433
- module_eval(<<'.,.,', 'ddb-parser.y', 413)
1434
- def _reduce_112(val, _values)
1554
+ module_eval(<<'.,.,', 'ddb-parser.y', 439)
1555
+ def _reduce_117(val, _values)
1435
1556
  val[0] + [val[2]]
1436
1557
 
1437
1558
  end
1438
1559
  .,.,
1439
1560
 
1440
- module_eval(<<'.,.,', 'ddb-parser.y', 418)
1441
- def _reduce_113(val, _values)
1561
+ module_eval(<<'.,.,', 'ddb-parser.y', 444)
1562
+ def _reduce_118(val, _values)
1442
1563
  [val[0], val[2]]
1443
1564
 
1444
1565
  end
1445
1566
  .,.,
1446
1567
 
1447
- module_eval(<<'.,.,', 'ddb-parser.y', 423)
1448
- def _reduce_114(val, _values)
1568
+ module_eval(<<'.,.,', 'ddb-parser.y', 449)
1569
+ def _reduce_119(val, _values)
1449
1570
  val[1]
1450
1571
 
1451
1572
  end
1452
1573
  .,.,
1453
1574
 
1454
- module_eval(<<'.,.,', 'ddb-parser.y', 428)
1455
- def _reduce_115(val, _values)
1575
+ module_eval(<<'.,.,', 'ddb-parser.y', 454)
1576
+ def _reduce_120(val, _values)
1456
1577
  [val[0]]
1457
1578
 
1458
1579
  end
1459
1580
  .,.,
1460
1581
 
1461
- module_eval(<<'.,.,', 'ddb-parser.y', 432)
1462
- def _reduce_116(val, _values)
1582
+ module_eval(<<'.,.,', 'ddb-parser.y', 458)
1583
+ def _reduce_121(val, _values)
1463
1584
  val[0] + [val[2]]
1464
1585
 
1465
1586
  end
1466
1587
  .,.,
1467
1588
 
1468
- module_eval(<<'.,.,', 'ddb-parser.y', 437)
1469
- def _reduce_117(val, _values)
1589
+ module_eval(<<'.,.,', 'ddb-parser.y', 463)
1590
+ def _reduce_122(val, _values)
1470
1591
  [val[0], val[2]]
1471
1592
 
1472
1593
  end
1473
1594
  .,.,
1474
1595
 
1475
- module_eval(<<'.,.,', 'ddb-parser.y', 442)
1476
- def _reduce_118(val, _values)
1596
+ module_eval(<<'.,.,', 'ddb-parser.y', 468)
1597
+ def _reduce_123(val, _values)
1477
1598
  struct(:DELETE, :table => val[2], :conds => val[3])
1478
1599
 
1479
1600
  end
1480
1601
  .,.,
1481
1602
 
1482
- module_eval(<<'.,.,', 'ddb-parser.y', 446)
1483
- def _reduce_119(val, _values)
1603
+ module_eval(<<'.,.,', 'ddb-parser.y', 472)
1604
+ def _reduce_124(val, _values)
1484
1605
  struct(:DELETE_ALL, :table => val[3], :conds => val[4], :limit => val[5])
1485
1606
 
1486
1607
  end
1487
1608
  .,.,
1488
1609
 
1489
- module_eval(<<'.,.,', 'ddb-parser.y', 451)
1490
- def _reduce_120(val, _values)
1610
+ module_eval(<<'.,.,', 'ddb-parser.y', 477)
1611
+ def _reduce_125(val, _values)
1491
1612
  struct(:INSERT, :table => val[2], :attrs => val[4], :values => val[7])
1492
1613
 
1493
1614
  end
1494
1615
  .,.,
1495
1616
 
1496
- module_eval(<<'.,.,', 'ddb-parser.y', 455)
1497
- def _reduce_121(val, _values)
1617
+ module_eval(<<'.,.,', 'ddb-parser.y', 481)
1618
+ def _reduce_126(val, _values)
1498
1619
  struct(:INSERT_SELECT, :table => val[2], :select => val[3])
1499
1620
 
1500
1621
  end
1501
1622
  .,.,
1502
1623
 
1503
- module_eval(<<'.,.,', 'ddb-parser.y', 459)
1504
- def _reduce_122(val, _values)
1624
+ module_eval(<<'.,.,', 'ddb-parser.y', 485)
1625
+ def _reduce_127(val, _values)
1505
1626
  struct(:INSERT_SCAN, :table => val[2], :select => val[3])
1506
1627
 
1507
1628
  end
1508
1629
  .,.,
1509
1630
 
1510
- # reduce 123 omitted
1631
+ # reduce 128 omitted
1511
1632
 
1512
- module_eval(<<'.,.,', 'ddb-parser.y', 466)
1513
- def _reduce_124(val, _values)
1633
+ module_eval(<<'.,.,', 'ddb-parser.y', 492)
1634
+ def _reduce_129(val, _values)
1514
1635
  [val[1]]
1515
1636
 
1516
1637
  end
1517
1638
  .,.,
1518
1639
 
1519
- module_eval(<<'.,.,', 'ddb-parser.y', 470)
1520
- def _reduce_125(val, _values)
1640
+ module_eval(<<'.,.,', 'ddb-parser.y', 496)
1641
+ def _reduce_130(val, _values)
1521
1642
  val[0] + [val[3]]
1522
1643
 
1523
1644
  end
1524
1645
  .,.,
1525
1646
 
1526
- module_eval(<<'.,.,', 'ddb-parser.y', 475)
1527
- def _reduce_126(val, _values)
1647
+ module_eval(<<'.,.,', 'ddb-parser.y', 501)
1648
+ def _reduce_131(val, _values)
1528
1649
  [val[0]]
1529
1650
 
1530
1651
  end
1531
1652
  .,.,
1532
1653
 
1533
- module_eval(<<'.,.,', 'ddb-parser.y', 479)
1534
- def _reduce_127(val, _values)
1654
+ module_eval(<<'.,.,', 'ddb-parser.y', 505)
1655
+ def _reduce_132(val, _values)
1535
1656
  val[0] + [val[2]]
1536
1657
 
1537
1658
  end
1538
1659
  .,.,
1539
1660
 
1540
- module_eval(<<'.,.,', 'ddb-parser.y', 484)
1541
- def _reduce_128(val, _values)
1661
+ module_eval(<<'.,.,', 'ddb-parser.y', 510)
1662
+ def _reduce_133(val, _values)
1542
1663
  struct(:NEXT)
1543
1664
 
1544
1665
  end
1545
1666
  .,.,
1546
1667
 
1547
- # reduce 129 omitted
1668
+ # reduce 134 omitted
1548
1669
 
1549
- # reduce 130 omitted
1670
+ # reduce 135 omitted
1550
1671
 
1551
- # reduce 131 omitted
1672
+ # reduce 136 omitted
1552
1673
 
1553
- # reduce 132 omitted
1674
+ # reduce 137 omitted
1554
1675
 
1555
- # reduce 133 omitted
1676
+ # reduce 138 omitted
1556
1677
 
1557
- # reduce 134 omitted
1678
+ # reduce 139 omitted
1558
1679
 
1559
- # reduce 135 omitted
1680
+ # reduce 140 omitted
1681
+
1682
+ module_eval(<<'.,.,', 'ddb-parser.y', 523)
1683
+ def _reduce_141(val, _values)
1684
+ val[1]
1685
+
1686
+ end
1687
+ .,.,
1688
+
1689
+ module_eval(<<'.,.,', 'ddb-parser.y', 528)
1690
+ def _reduce_142(val, _values)
1691
+ [val[0]]
1692
+
1693
+ end
1694
+ .,.,
1560
1695
 
1561
- module_eval(<<'.,.,', 'ddb-parser.y', 498)
1562
- def _reduce_136(val, _values)
1696
+ module_eval(<<'.,.,', 'ddb-parser.y', 532)
1697
+ def _reduce_143(val, _values)
1698
+ val[0] + [val[2]]
1699
+
1700
+ end
1701
+ .,.,
1702
+
1703
+ module_eval(<<'.,.,', 'ddb-parser.y', 537)
1704
+ def _reduce_144(val, _values)
1705
+ {}
1706
+
1707
+ end
1708
+ .,.,
1709
+
1710
+ module_eval(<<'.,.,', 'ddb-parser.y', 541)
1711
+ def _reduce_145(val, _values)
1712
+ val[1]
1713
+
1714
+ end
1715
+ .,.,
1716
+
1717
+ # reduce 146 omitted
1718
+
1719
+ module_eval(<<'.,.,', 'ddb-parser.y', 547)
1720
+ def _reduce_147(val, _values)
1721
+ val[0].merge(val[2])
1722
+
1723
+ end
1724
+ .,.,
1725
+
1726
+ module_eval(<<'.,.,', 'ddb-parser.y', 552)
1727
+ def _reduce_148(val, _values)
1728
+ {val[0] => val[2]}
1729
+
1730
+ end
1731
+ .,.,
1732
+
1733
+ module_eval(<<'.,.,', 'ddb-parser.y', 556)
1734
+ def _reduce_149(val, _values)
1735
+ {val[0] => val[2]}
1736
+
1737
+ end
1738
+ .,.,
1739
+
1740
+ # reduce 150 omitted
1741
+
1742
+ # reduce 151 omitted
1743
+
1744
+ # reduce 152 omitted
1745
+
1746
+ module_eval(<<'.,.,', 'ddb-parser.y', 565)
1747
+ def _reduce_153(val, _values)
1563
1748
  val[1]
1564
1749
 
1565
1750
  end
1566
1751
  .,.,
1567
1752
 
1568
- module_eval(<<'.,.,', 'ddb-parser.y', 502)
1569
- def _reduce_137(val, _values)
1753
+ module_eval(<<'.,.,', 'ddb-parser.y', 569)
1754
+ def _reduce_154(val, _values)
1570
1755
  val[1]
1571
1756
 
1572
1757
  end
1573
1758
  .,.,
1574
1759
 
1575
- module_eval(<<'.,.,', 'ddb-parser.y', 506)
1576
- def _reduce_138(val, _values)
1760
+ module_eval(<<'.,.,', 'ddb-parser.y', 573)
1761
+ def _reduce_155(val, _values)
1577
1762
  val[1]
1578
1763
 
1579
1764
  end
1580
1765
  .,.,
1581
1766
 
1582
- module_eval(<<'.,.,', 'ddb-parser.y', 511)
1583
- def _reduce_139(val, _values)
1584
- [val[0]]
1767
+ module_eval(<<'.,.,', 'ddb-parser.y', 578)
1768
+ def _reduce_156(val, _values)
1769
+ Set[val[0]]
1585
1770
 
1586
1771
  end
1587
1772
  .,.,
1588
1773
 
1589
- module_eval(<<'.,.,', 'ddb-parser.y', 515)
1590
- def _reduce_140(val, _values)
1591
- val[0] + [val[2]]
1774
+ module_eval(<<'.,.,', 'ddb-parser.y', 582)
1775
+ def _reduce_157(val, _values)
1776
+ val[0] + Set[val[2]]
1592
1777
 
1593
1778
  end
1594
1779
  .,.,
1595
1780
 
1596
- module_eval(<<'.,.,', 'ddb-parser.y', 520)
1597
- def _reduce_141(val, _values)
1598
- [val[0]]
1781
+ module_eval(<<'.,.,', 'ddb-parser.y', 587)
1782
+ def _reduce_158(val, _values)
1783
+ Set[val[0]]
1599
1784
 
1600
1785
  end
1601
1786
  .,.,
1602
1787
 
1603
- module_eval(<<'.,.,', 'ddb-parser.y', 524)
1604
- def _reduce_142(val, _values)
1605
- val[0] + [val[2]]
1788
+ module_eval(<<'.,.,', 'ddb-parser.y', 591)
1789
+ def _reduce_159(val, _values)
1790
+ val[0] + Set[val[2]]
1606
1791
 
1607
1792
  end
1608
1793
  .,.,
1609
1794
 
1610
- module_eval(<<'.,.,', 'ddb-parser.y', 529)
1611
- def _reduce_143(val, _values)
1612
- [val[0]]
1795
+ module_eval(<<'.,.,', 'ddb-parser.y', 596)
1796
+ def _reduce_160(val, _values)
1797
+ Set[val[0]]
1613
1798
 
1614
1799
  end
1615
1800
  .,.,
1616
1801
 
1617
- module_eval(<<'.,.,', 'ddb-parser.y', 533)
1618
- def _reduce_144(val, _values)
1619
- val[0] + [val[2]]
1802
+ module_eval(<<'.,.,', 'ddb-parser.y', 600)
1803
+ def _reduce_161(val, _values)
1804
+ val[0] + Set[val[2]]
1620
1805
 
1621
1806
  end
1622
1807
  .,.,
1623
1808
 
1624
- module_eval(<<'.,.,', 'ddb-parser.y', 538)
1625
- def _reduce_145(val, _values)
1809
+ module_eval(<<'.,.,', 'ddb-parser.y', 605)
1810
+ def _reduce_162(val, _values)
1626
1811
  [val[0]]
1627
1812
 
1628
1813
  end
1629
1814
  .,.,
1630
1815
 
1631
- module_eval(<<'.,.,', 'ddb-parser.y', 542)
1632
- def _reduce_146(val, _values)
1816
+ module_eval(<<'.,.,', 'ddb-parser.y', 609)
1817
+ def _reduce_163(val, _values)
1633
1818
  val[0] + [val[2]]
1634
1819
 
1635
1820
  end