ActiveSupport::ArrayInquirer (original) (raw)
Array Inquirer¶ ↑
Wrapping an array in an ArrayInquirer gives a friendlier way to check its string-like contents:
variants = ActiveSupport::ArrayInquirer.new([:phone, :tablet])
variants.phone?
variants.tablet?
variants.desktop?
Methods
A
Instance Public methods
any?(*candidates)Link
Passes each element of candidates collection to ArrayInquirer collection. The method returns true if any element from the ArrayInquirer collection is equal to the stringified or symbolized form of any element in the candidates collection.
If candidates collection is not given, method returns true.
variants = ActiveSupport::ArrayInquirer.new([:phone, :tablet])
variants.any?
variants.any?(:phone, :tablet)
variants.any?('phone', 'desktop')
variants.any?(:desktop, :watch)
def any?(*candidates) if candidates.none? super else candidates.any? do |candidate| include?(candidate.to_sym) || include?(candidate.to_s) end end end