Pot.Iter

{Pot.Iter} new Pot.Iter ()

Pot.js と PotLite.js で利用可能。

コンストラクタ。Pot.Iter インスタンスを作成します。

Pot.Iter コンストラクタ。
新しい Pot.Iter インスタンスを作成します。

Pot.Iter を利用することで、独自のイテレータを作成することができます。
インスタンスに next という名前のメソッドを定義することで イテレータとして認識されます。
作成したイテレータは、Pot.iterate() によりループ処理を行うことができます。

Pot.globalize() が適応されている場合、new Iter() として作成できます。

Pot.Iter オブジェクト インスタンスを返します。

var results = [];
var iter = new Pot.Iter();

// next は StopIteration を throw することで終了します
iter.next = (function() {
    var i = 0;
    var end = 10;
    return function() {
        if (i >= end) {
            throw Pot.StopIteration;
        }
        return i++;
    };
})();

Pot.iterate(iter, function(i) {
    results.push(i);
});

debug(results); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]