Class: SRL::ResultSet
- Inherits:
-
Object
- Object
- SRL::ResultSet
- Defined in:
- lib/srl/result_set.rb
Overview
Wrapper around various calls to paginated data, such as past races. Contains pagination information, and information on all records, on top of the current page’s records.
Instance Attribute Summary collapse
-
#count ⇒ Object
(also: #total_records, #num_records)
readonly
Total number of records matching the query for this result set.
-
#page ⇒ Object
readonly
The page of this result set.
-
#page_size ⇒ Object
(also: #per_page)
readonly
Returns the value of attribute page_size.
-
#results ⇒ Object
(also: #data, #records, #items)
readonly
Records for this result set.
Instance Method Summary collapse
-
#initialize(results, params = {}) ⇒ ResultSet
constructor
A new instance of ResultSet.
- #last_page? ⇒ Boolean
- #num_pages ⇒ Object (also: #pages)
Constructor Details
#initialize(results, params = {}) ⇒ ResultSet
Returns a new instance of ResultSet.
26 27 28 29 30 31 |
# File 'lib/srl/result_set.rb', line 26 def initialize(results, params = {}) @results = results @page = params.fetch(:page) @page_size = params.fetch(:page_size) @count = params.fetch(:count) end |
Instance Attribute Details
#count ⇒ Object (readonly) Also known as: total_records, num_records
Total number of records matching the query for this result set.
22 23 24 |
# File 'lib/srl/result_set.rb', line 22 def count @count end |
#page ⇒ Object (readonly)
The page of this result set.
16 17 18 |
# File 'lib/srl/result_set.rb', line 16 def page @page end |
#page_size ⇒ Object (readonly) Also known as: per_page
Returns the value of attribute page_size.
18 19 20 |
# File 'lib/srl/result_set.rb', line 18 def page_size @page_size end |
#results ⇒ Object (readonly) Also known as: data, records, items
Records for this result set.
- NOTE
-
Always an array, though the type of object contained in the array can vary depending on the query that spawned it.
10 11 12 |
# File 'lib/srl/result_set.rb', line 10 def results @results end |
Instance Method Details
#last_page? ⇒ Boolean
38 39 40 |
# File 'lib/srl/result_set.rb', line 38 def last_page? page == num_pages end |
#num_pages ⇒ Object Also known as: pages
33 34 35 |
# File 'lib/srl/result_set.rb', line 33 def num_pages (count.to_f / page_size.to_f).ceil end |