るりまサーチ (Ruby 2.7.0)

最速Rubyリファレンスマニュアル検索!
1件ヒット [1-1件を表示] (0.038秒)
トップページ > ライブラリ:ビルトイン[x] > バージョン:2.7.0[x] > クエリ:Range[x] > クラス:Range[x] > クエリ:===[x]

別のキーワード

  1. range max
  2. range min
  3. net/http set_range
  4. httpheader set_range
  5. range step

検索結果

Range#===(obj) -> bool (117544.0)

始端と終端の中に obj があるとき、true を返します。 そうでないとき、false を返します。

...始端と終端の中に obj があるとき、true を返します。
そうでないとき、false を返します。

Range
#=== は主に case 式での比較に用いられます。

//emlist[例][ruby]{
p (0...50) === 79 #=> false
p (60...80) === 79 #=> true

case 79
when 0...60 then puts...
...で呼んでいました。

しかし、2.6 以降では、(文字列を除いて) Range#cover? と同様の処理をするように切り替わりました。

ただし、=== は、Range#cover? のように Range オブジェクトを引数にはとる設計はありません。

//emlist[例][ru...
...> true
# 2.5 以前は、=== は、include? と同じく比較できず false を返していました。
//}

2.7 以降の === は、文字列も Range#cover? と同様の処理をするようになりました。

//emlist[例][ruby]{
p ('a'..'z').include? 'at' #=> false
p ('a'..'z').cover? 'at'...