このEnumerator#feed メソッドがあり、偶然発見しました。次のように定義されています。
feed obj → nil
次のyieldで返される値をe内に設定します。値が設定されていない場合、yield は nil を返します。この値は譲られた後にクリアされます。
私は例を調べて、「やった!」と考えましたfeed
。
enum = ['cat', 'bird', 'goat'].each # creates an enumerator
enum.next #=> 'cat'
enum.feed 'dog'
enum.next #=> returns 'bird', but I expected 'dog'
しかし、うまくいきません。内部で使用していない'dog'
ため、を返さないと思います。each
yield
問題は、ドキュメントの例から実際のユースケースを推測できなかったことです.Googleはこの質問の友達ではなく、(私が試したことから)feed
他のEnumerator
/Enumeration
メソッド。
を説明する良い例を教えてください。そうすれば、理解できますfeed
か?