やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

組込ライブラリ(Enumerator::Chain)

 別種の繰り返し可能なオブジェクトを1つの Enumerator として扱う。

成果物

情報源

Enumerator::Chain

複数の繰り返し可能なオブジェクトを1つの Enumerator として扱うためのクラス。

 ふーん。

Enumerator::Chain のオブジェクトは、Enumerable#chain や Enumerator#+ から作られます。

 へー。

メンバ抜粋

特異メソッド

new

インスタンスメソッド

each inspect rewind size

new

e = Enumerator::Chain.new(1..3, [4, 5])
e.to_a #=> [1, 2, 3, 4, 5]
e.size #=> 5

 なるほど、範囲オブジェクトと配列はどちらも別種だけど繰り返し可能オブジェクトではある。異なる繰り返しオブジェクトを同じように扱うってことか。

each

e = Enumerator::Chain.new(1..3, [4, 5])
e.each {|v| p v}

 いつもどおりeachでループできる。

対象環境

$ uname -a
Linux raspberrypi 5.10.52-v7l+ #1441 SMP Tue Aug 3 18:11:56 BST 2021 armv7l GNU/Linux