⛳
[Feature #20953] Array#fetch_values と Array#values_at を同じ挙動にするチケット
[Feature #20953] Array#fetch_values vs #values_at protocols
-
Array#fetch_values
とArray#values_at
は同じような挙動を期待するが差異があるというチケット
pp [1, 2, 3, 4, 5].values_at(0, 3..4) #=> [1, 4, 5]
pp [1, 2, 3, 4, 5].fetch_values(0, 3..4) # TypeError: in 'Array#fetch': no implicit conversion of Range into Integer
-
Array#fetch_values
は Ruby 3.4 で追加される配列の複数の位置から複数の要素を取得するメソッドですね -
Array#values_at
はRange
を受け取るけどArray#fetch_values
はそうではない感じみたいですねー
# 引数の数に関係なくエラーになる
# error: no implicit conversion of Range into Integer (TypeError)
pp [1, 2, 3, 4, 5].fetch_values(3..4)
- このあたりの挙動を揃えたいっていうチケットになります
- どうするのかは matz 次第みたですかね?
Discussion