Class: Ecoportal::API::GraphQL::Input::SearchConf::Or

Inherits:
Object
  • Object
show all
Includes:
Composable
Defined in:
lib/ecoportal/api/graphql/input/search_conf.rb

Overview


Filter: or_filter

Constant Summary collapse

OPERATION =
'or_filter'.freeze

Instance Method Summary collapse

Methods included from Composable

#&, #|

Constructor Details

#initialize(*filters) ⇒ Or

Returns a new instance of Or.



177
178
179
# File 'lib/ecoportal/api/graphql/input/search_conf.rb', line 177

def initialize(*filters)
  @filters = filters.flatten
end

Instance Method Details

#substitute(subs) ⇒ Object



185
186
187
# File 'lib/ecoportal/api/graphql/input/search_conf.rb', line 185

def substitute(subs)
  self.class.new(*@filters.map { |f| f.respond_to?(:substitute) ? f.substitute(subs) : f })
end

#to_hObject



181
182
183
# File 'lib/ecoportal/api/graphql/input/search_conf.rb', line 181

def to_h
  { operation: OPERATION, params: { filters: @filters.map(&:to_h) } }
end