Module: Pacer::Filter::LuceneFilter

Defined in:
lib/pacer-neo4j2/lucene_filter.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#fastObject

Returns the value of attribute fast.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def fast
  @fast
end

#indexObject

Returns the value of attribute index.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def index
  @index
end

#queryObject

Returns the value of attribute query.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def query
  @query
end

#reverse_numericObject

Returns the value of attribute reverse_numeric.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def reverse_numeric
  @reverse_numeric
end

#sort_byObject

Returns the value of attribute sort_by.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def sort_by
  @sort_by
end

#sort_by_scoreObject

Returns the value of attribute sort_by_score.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def sort_by_score
  @sort_by_score
end

#sort_numericObject

Returns the value of attribute sort_numeric.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def sort_numeric
  @sort_numeric
end

#topObject

Returns the value of attribute top.



37
38
39
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 37

def top
  @top
end

Instance Method Details

#count(max = nil) ⇒ Object



39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 39

def count(max = nil)
  iter = query_result
  c = iter.count
  if c >= 0
    c
  elsif max
    iter.inject(0) do |n, _|
      if n == max
        return :max
      else
        n + 1
      end
    end
  else
    iter.inject(0) { |n, _| n + 1 }
  end
ensure
  iter.close
end

#fast!Object



74
75
76
77
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 74

def fast!
  self.fast = true
  self
end

#sort(*keys) ⇒ Object



64
65
66
67
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 64

def sort(*keys)
  self.sort_by = keys
  self
end

#sort_by_score!Object



59
60
61
62
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 59

def sort_by_score!
  self.sort_by_score = true
  self
end

#top_hits(n) ⇒ Object



69
70
71
72
# File 'lib/pacer-neo4j2/lucene_filter.rb', line 69

def top_hits(n)
  self.top = n
  self
end