instance method ===

Ruby on Rails edge

Since v6.0.6.1

Available in: v6.0.6.1 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3.2 v8.0.5.1 v8.1.3.1 edge

Signature

===(value)

Extends the default Range#=== to support range comparisons.

(1..5) === (1..5)  # => true
(1..5) === (2..3)  # => true
(1..5) === (1...6) # => true
(1..5) === (2..6)  # => false

The native Range#=== behavior is untouched.

('a'..'f') === ('c') # => true
(5..9) === (11) # => false

The given range must be fully bounded, with both start and end.

Parameters

value req
Source
# File activesupport/lib/active_support/core_ext/range/compare_range.rb, line 23
    def ===(value)
      if value.is_a?(::Range)
        cover?(value)
      else
        super
      end
    end

Defined in activesupport/lib/active_support/core_ext/range/compare_range.rb line 23 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActiveSupport::CompareWithRange

Type at least 2 characters to search.

Use the arrow keys to navigate results, Enter to open one, Escape to close.

Keyboard shortcuts

/
Focus search
⌘K / Ctrl-K
Command palette
?
This help
Esc
Close