Iterator-ID 段落は、この見出し部で反復子の定義を導入することを示し、その反復子を識別する名前を指定する。Method-ID を指定できる場所であれば、Iterator-id を指定できる。静的反復子またはインスタンス反復子のいずれかを定義するために使用できる。
一般形式

構文規則:
- 反復子の手続き部ヘッダーには Yielding 指定が必要。Yielding 指定する項目の型で、反復子の型が決まる。
- 属性句については、「属性、カスタム属性」のトピックに記載されている。
一般規則
- T 型の反復子の場合、ネストされたクラスが自動的に生成され、IEnumerable[T] および IEnumerator[T] の両方が実装される。
- Iterator-ID 段落で指定した名前のメソッドも生成される。このメソッドは、GR 1 で定義されたネストされた型の項目を返す。
- 反復子のコンテキストの外側にあるコードでこのメソッドを呼び出すことで反復子オブジェクトが返され、PERFORM THROUGH コレクション クラスの構文 (PERFORM 文のフォーマット 5 を参照) を使用して反復できる。
- 反復の順序は、各 EXIT ITERATOR 文が実行されたときに、後に続く RETURNING の値によって決まる。