names=each
visibility=public
kind=defined

--- each(which = :all) {|e| ... } -> self
--- each(which = :all) -> Enumerator

行列の各要素を引数としてブロックを呼び出します。

0行目、1行目、…という順番で処理します。
which に以下の [[c:Symbol]] を指定することで
引数として使われる要素を限定することができます。
  * :all - すべての要素(デフォルト)
  * :diagonal - 対角要素
  * :off_diagonal 対角要素以外
  * :lower 対角成分とそれより下側の部分
  * :upper対角成分とそれより上側の部分
  * :strict_lower 対角成分の下側
  * :strict_upper 対角成分の上側

ブロックを省略した場合、 [[c:Enumerator]] を返します。

  Matrix[ [1,2], [3,4] ].each { |e| puts e }
  # => prints the numbers 1 to 4
  Matrix[ [1,2], [3,4] ].each(:strict_lower).to_a # => [3]

@param which どの要素に対してブロックを呼び出すのかを [[c:Symbol]] で指定します
@see [[m:Matrix#each_with_index]]

