Feature #2831

Matrix: each, all?, none?, each_with_index, ....

Added by marcandre (Marc-Andre Lafortune) over 10 years ago. Updated over 9 years ago.

Target version:


There is Matrix#collect, but it would be useful to have Matrix#each and include Enumerable.

All methods that return anything else than an array are completely natural: Matrix#all?, Matrix#any?, Matrix#count, Matrix#none?, etc...

Others can be left alone or undefined (#sort, #drop, ...)

Matrix#each_with_index should go over all values, and yield value, row and column

Currently, some basic operations are quite a bit more difficult than they could be. An example: to check if a matrix is composed of Integer:

# Currently, need to build an intermediate array
m = Matrix[...]
integral = m.row_vectors.all? do |row|
row.all? &:integer?
# Could be
integral = m.all? &:integer?

I'll gladly provide precisions on each method and make a patch.


Updated by marcandre (Marc-Andre Lafortune) over 10 years ago

  • Assignee changed from keiju (Keiju Ishitsuka) to marcandre (Marc-Andre Lafortune)




Updated by marcandre (Marc-Andre Lafortune) over 10 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r27158.
Marc-Andre, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


Also available in: Atom PDF