[ruby-dev:49097] [Ruby trunk - Feature #11267] [Assigned] CSV::Row#field と CSV::Table#[] の引数に Range を使えるようにした

From: shibata.hiroshi@...
Date: 2015-06-17 00:42:43 UTC
List: ruby-dev #49097
Issue #11267 has been updated by Hiroshi SHIBATA.

Status changed from Open to Assigned
Assignee set to Hiroshi SHIBATA

やっておきます

----------------------------------------
Feature #11267: CSV::Row#field と CSV::Table#[] の引数に Range を使えるようにした
https://bugs.ruby-lang.org/issues/11267#change-52967

* Author: 三村 益隆
* Status: Assigned
* Priority: Normal
* Assignee: Hiroshi SHIBATA
----------------------------------------
CSV を使用している際、n 行目から m 行目までを取得したいというケースがあり、Array と同じ気持ちで Range オブジェクトを渡したところ動作しないことに気づきました。
~~~
row = CSV::Row.new(%w(A B C), [1, 2, 3])
row[1..2] #=> nil
~~~

CSV::Row でのアクセスでも Range でアクセスできると嬉しいと思い実装してみました。
この修正で以下のような振る舞いになります。

~~~
row[1..2] #=> [2, 3]
~~~

同様に CSV::Table#[] でも Range を許すようにしています。

---Files--------------------------------
csv_field_allow_range.patch (1.93 KB)


-- 
https://bugs.ruby-lang.org/

In This Thread

Prev Next