Class: QueryableCollection::Worker::Query

Inherits:
Object
  • Object
show all
Defined in:
lib/queryable_collection/worker.rb

Instance Method Summary collapse

Constructor Details

#initialize(query, queryable_attributes) ⇒ Query

Returns a new instance of Query.



49
50
51
52
53
# File 'lib/queryable_collection/worker.rb', line 49

def initialize(query, queryable_attributes)
  @query = query
  @queryable_attributes = queryable_attributes
  validate!
end

Instance Method Details

#perform(elements) ⇒ Object



55
56
57
58
59
60
61
# File 'lib/queryable_collection/worker.rb', line 55

def perform(elements)
  elements.select { |element|
    @query.all? { |attribute, value|
      element.send(attribute) == value
    }
  }
end