Class: Sunspot::NullResult

Inherits:
Object
  • Object
show all
Defined in:
lib/sunspot/null_result.rb,
lib/sunspot/null_result/hit.rb,
lib/sunspot/null_result/facet.rb,
lib/sunspot/null_result/group.rb,
lib/sunspot/null_result/version.rb,
lib/sunspot/null_result/grouped_collection.rb,
lib/sunspot/null_result/paginated_null_array.rb

Defined Under Namespace

Classes: Facet, Group, GroupedCollection, Hit, PaginatedNullArray

Constant Summary collapse

VERSION =
"0.6.0"

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(collection = [], **options) ⇒ NullResult

Returns a new instance of NullResult.



13
14
15
16
17
# File 'lib/sunspot/null_result.rb', line 13

def initialize(collection = [], **options)
  @collection = collection
  @options    = options
  @group_by   = nil
end

Instance Attribute Details

#collectionObject (readonly)

Returns the value of attribute collection.



11
12
13
# File 'lib/sunspot/null_result.rb', line 11

def collection
  @collection
end

#group_byObject (readonly)

Returns the value of attribute group_by.



11
12
13
# File 'lib/sunspot/null_result.rb', line 11

def group_by
  @group_by
end

#optionsObject (readonly)

Returns the value of attribute options.



11
12
13
# File 'lib/sunspot/null_result.rb', line 11

def options
  @options
end

Instance Method Details

#facetObject



40
41
42
# File 'lib/sunspot/null_result.rb', line 40

def facet(*)
  Sunspot::NullResult::Facet.new
end

#group(group) ⇒ Object



27
28
29
30
# File 'lib/sunspot/null_result.rb', line 27

def group(group)
  @group_by = group
  self
end

#groupsObject



32
33
34
# File 'lib/sunspot/null_result.rb', line 32

def groups
  GroupedCollection.new(collection: collection, group_by: group_by, current_page: results.current_page, total_pages: results.total_pages)
end

#hitsObject



19
20
21
# File 'lib/sunspot/null_result.rb', line 19

def hits
  PaginatedNullArray.new(collection, options)
end

#matchesObject



36
37
38
# File 'lib/sunspot/null_result.rb', line 36

def matches
  results.size
end

#resultsObject



23
24
25
# File 'lib/sunspot/null_result.rb', line 23

def results
  PaginatedNullArray.new(collection, options)
end

#totalObject



44
45
46
# File 'lib/sunspot/null_result.rb', line 44

def total
  collection.size
end