class Tire::Search::Query::CustomFiltersScoreQuery

Public Class Methods

new(&block) click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 88
def initialize(&block)
  @value = {}
  block.arity < 1 ? self.instance_eval(&block) : block.call(self) if block_given?
end

Public Instance Methods

filter(&block) click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 98
def filter(&block)
  custom_filter = CustomFilter.new
  block.arity < 1 ? custom_filter.instance_eval(&block) : block.call(custom_filter) if block_given?
  @value[:filters] ||= []
  @value[:filters] << custom_filter.to_hash
  @value
end
params(value) click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 111
def params(value)
  @value[:params] = value
  @value
end
query(options={}, &block) click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 93
def query(options={}, &block)
  @value[:query] = Query.new(&block).to_hash
  @value
end
score_mode(value) click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 106
def score_mode(value)
  @value[:score_mode] = value
  @value
end
to_hash() click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 116
def to_hash
  @value[:filters] ?
  @value :
  @value.merge(:filters => [CustomFilter.new{ filter(:match_all); boost(1) }.to_hash]) # Needs at least one filter
end
to_json() click to toggle source
# File lib/tire/search/queries/custom_filters_score.rb, line 122
def to_json
  to_hash.to_json
end