Masafumi Yokoyama
null+****@clear*****
Tue Dec 6 17:09:54 JST 2016
Masafumi Yokoyama 2016-12-06 17:09:54 +0900 (Tue, 06 Dec 2016) New Revision: 994255150b6ee27cf288d91175815f47ce86f190 https://github.com/ranguba/groonga-client/commit/994255150b6ee27cf288d91175815f47ce86f190 Message: Extract methods Modified files: lib/groonga/client/response/select.rb Modified: lib/groonga/client/response/select.rb (+20 -12) =================================================================== --- lib/groonga/client/response/select.rb 2016-12-06 16:40:03 +0900 (4ed91c6) +++ lib/groonga/client/response/select.rb 2016-12-06 17:09:54 +0900 (7da52e1) @@ -65,11 +65,7 @@ module Groonga body[1..-1].each do |record| if record.is_a?(::Hash) && record.first[1][1].none? {|key| key[0] == "_nsubrecs"} - @slices = {} - record.each do |key, slice_body| - n_hits, body = parse_match_records_v1(slice_body) - @slices[key] = body - end + @slices = parse_slices_v1(record) else @drilldowns = parse_drilldowns_v1([record]) end @@ -77,13 +73,7 @@ module Groonga else @n_hits, @records = parse_match_records_v3(body) @drilldowns = parse_drilldowns_v3(body["drilldowns"]) - @slices = {} - if body["slices"] - body["slices"].each do |key, records| - n_hits, body = parse_match_records_v3(records) - @slices[key] = body - end - end + @slices = parse_slices_v3(body["slices"]) end body end @@ -164,6 +154,15 @@ module Groonga end end + def parse_slices_v1(raw_slices) + slices = {} + (raw_slices || {}).each do |key, slice_body| + n_hits, body = parse_match_records_v1(slice_body) + slices[key] = body + end + slices + end + def parse_drilldowns_v3(raw_drilldowns) drilldowns = {} (raw_drilldowns || {}).each do |key, raw_drilldown| @@ -173,6 +172,15 @@ module Groonga drilldowns end + def parse_slices_v3(raw_slices) + slices = {} + (raw_slices || {}).each do |key, records| + n_hits, body = parse_match_records_v3(records) + slices[key] = body + end + slices + end + class Record < ::Hash include Hashie::Extensions::MethodAccess end -------------- next part -------------- HTML����������������������������...Télécharger