Wrapping an array in an ArrayInquirer
gives a friendlier way to check its string-like contents:
variants = ActiveSupport::ArrayInquirer.new([:phone, :tablet]) variants.phone? # => true variants.tablet? # => true variants.desktop? # => false
Passes each element of candidates
collection to ArrayInquirer collection. The method returns true if at least one element is the same. If candidates
collection is not given, method returns true.
variants = ActiveSupport::ArrayInquirer.new([:phone, :tablet]) variants.any? # => true variants.any?(:phone, :tablet) # => true variants.any?('phone', 'desktop') # => true variants.any?(:desktop, :watch) # => false
# File activesupport/lib/active_support/array_inquirer.rb, line 21 def any?(*candidates, &block) if candidates.none? super else candidates.any? do |candidate| include?(candidate.to_sym) || include?(candidate.to_s) end end end
© 2004–2017 David Heinemeier Hansson
Licensed under the MIT License.