Class: Stretchy::Filters::NotFilter

Inherits:
Base
  • Object
show all
Defined in:
lib/stretchy/filters/not_filter.rb

Instance Method Summary collapse

Methods included from Utils::Validation

#errors, included, #require_one!, #require_only_one!, #valid?, #validate!, #validator

Constructor Details

#initialize(*filters) ⇒ NotFilter

Returns a new instance of NotFilter.



14
15
16
17
# File 'lib/stretchy/filters/not_filter.rb', line 14

def initialize(*filters)
  @filters = Array(filters).flatten
  validate!
end

Instance Method Details

#filterObject



19
20
21
22
23
24
25
# File 'lib/stretchy/filters/not_filter.rb', line 19

def filter
  if @filters.count > 1
    AndFilter.new(@filters)
  else
    @filters.first
  end
end

#to_searchObject



27
28
29
# File 'lib/stretchy/filters/not_filter.rb', line 27

def to_search
  { not: filter.to_search }
end