Module: ActiveHouse::Querying::Limit
- Extended by:
- ActiveSupport::Concern
- Included in:
- ActiveHouse::QueryBuilder
- Defined in:
- lib/active_house/querying/limit.rb
Instance Method Summary collapse
- #build_limit_query_part ⇒ Object
- #initial_values ⇒ Object
- #limit(limit_value, offset_value = nil, limit_by = nil) ⇒ Object
- #limit!(limit_value, offset_value = nil, limit_by = nil) ⇒ Object
Instance Method Details
#build_limit_query_part ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'lib/active_house/querying/limit.rb', line 10 def build_limit_query_part return if values[:limit].nil? parts = ["LIMIT #{values[:limit]}"] parts << "OFFSET #{values[:offset]}" if values[:offset] && values[:offset] != 0 parts << "BY #{values[:limit_by]}" if values[:limit_by] parts.join(' ') end |
#initial_values ⇒ Object
19 20 21 |
# File 'lib/active_house/querying/limit.rb', line 19 def initial_values super.merge offset: nil, limit: nil, limit_by: nil end |
#limit(limit_value, offset_value = nil, limit_by = nil) ⇒ Object
30 31 32 |
# File 'lib/active_house/querying/limit.rb', line 30 def limit(limit_value, offset_value = nil, limit_by = nil) dup.limit!(limit_value, offset_value, limit_by) end |
#limit!(limit_value, offset_value = nil, limit_by = nil) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/active_house/querying/limit.rb', line 23 def limit!(limit_value, offset_value = nil, limit_by = nil) values[:limit] = limit_value values[:offset] = offset_value unless offset_value.nil? values[:limit_by] = limit_by unless limit_by.nil? self end |