Issue #6596 has been updated by mame (Yusuke Endoh).

Status changed from Feedback to Assigned
Assignee changed from mame (Yusuke Endoh) to matz (Yukihiro Matsumoto)
Target version changed from 2.0.0 to next minor

ko1 (Koichi Sasada) wrote:
> Is it a bug or a feature?

I think it is a feature, in every respect.

-- 
Yusuke Endoh <mame / tsg.ne.jp>
----------------------------------------
Bug #6596: New method for Arrays : Array#index
https://bugs.ruby-lang.org/issues/6596#change-31786

Author: robin850 (Robin Dupret)
Status: Assigned
Priority: Normal
Assignee: matz (Yukihiro Matsumoto)
Category: core
Target version: next minor
ruby -v: 2.0.0


Hello

5 days ago, I submitted a pull request on Github which provides a new method for the array objects which is Array#indexes. I have fist edit the Array#index method in order it to return an array of indexes and not a single index (which is the first occurrence it finds). I found it more logical but a user (trans) tells us that it could break the contract of Array#index so I decided to move it into Array#indexes. Eric (drbrain) tells me I should reasonning why I want to add this method ; it's just a point of view : I don't really understand why Array#index return a single index if the parameter is in the array several times. 

Examples

a = [1, 2, 3, 1]
a.indexes(1)
Return : [0, 3]
a.index(1)
Return : 0
In my opinion, it's not really logical, 1 is in the array twice

Moreover, this pull request doesn't beak anything because we don't edit the Array#index method so programms which were created with previous version of Ruby will work. 

I hope my post is complete. Have a nice day.




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