# File lib/tire/results/suggestions.rb, line 7 def initialize(response, options={}) @response = response @options = options @shards_info ||= @response.delete '_shards' @keys ||= @response.keys end
# File lib/tire/results/suggestions.rb, line 23 def each(&block) results.each(&block) end
# File lib/tire/results/suggestions.rb, line 55 def error @response['error'] end
# File lib/tire/results/suggestions.rb, line 63 def failure? ! success? end
# File lib/tire/results/suggestions.rb, line 19 def keys @keys end
# File lib/tire/results/suggestions.rb, line 31 def options(suggestion=:all) if suggestion == :all results.map {|k,v| v.map{|s| s['options']}}.flatten else results[suggestion.to_s].map{|s| s['options']}.flatten end end
# File lib/tire/results/suggestions.rb, line 47 def payloads(suggestion=:all) if suggestion == :all results.map {|k,v| v.map{|s| s['options'].map {|o| o['payload']}}}.flatten else results[suggestion.to_s].map{|s| s['options'].map {|o| o['payload']}}.flatten end end
# File lib/tire/results/suggestions.rb, line 14 def results return [] if failure? @results ||= @response end
# File lib/tire/results/suggestions.rb, line 27 def size results.size end
# File lib/tire/results/suggestions.rb, line 59 def success? error.to_s.empty? end
# File lib/tire/results/suggestions.rb, line 39 def texts(suggestion=:all) if suggestion == :all results.map {|k,v| v.map{|s| s['options'].map {|o| o['text']}}}.flatten else results[suggestion.to_s].map{|s| s['options'].map {|o| o['text']}}.flatten end end