Class: ModelSet::SetQuery

Inherits:
Query
  • Object
show all
Defined in:
lib/model_set/set_query.rb

Instance Attribute Summary

Attributes inherited from Query

#limit, #set_class, #sort_order

Instance Method Summary collapse

Methods inherited from Query

#after_query, after_query, before_query, #before_query, #clear_cache!, #clear_limited_cache!, #condition_ops, #initialize, #limit!, #limit_enabled?, #model_class, #model_name, #offset, on_exception, #on_exception, #order_by!, #page, #page!, #pages, #table_name, #transform_condition, #unlimited!, #unsorted!

Constructor Details

This class inherits a constructor from ModelSet::Query

Instance Method Details

#anchor!(query) ⇒ Object



5
6
7
# File 'lib/model_set/set_query.rb', line 5

def anchor!(query)
  @set = query.ids.to_ordered_set
end

#countObject



29
30
31
# File 'lib/model_set/set_query.rb', line 29

def count
  set.size
end

#idsObject



13
14
15
16
17
18
19
# File 'lib/model_set/set_query.rb', line 13

def ids
  if limit
    set.limit(limit, offset)
  else
    set.clone
  end
end

#setObject



9
10
11
# File 'lib/model_set/set_query.rb', line 9

def set
  @set ||= [].to_ordered_set
end

#sizeObject



21
22
23
24
25
26
27
# File 'lib/model_set/set_query.rb', line 21

def size
  if limit
    [count - offset, limit].min
  else
    count
  end
end