デバッグでステップすると
public IEnumerator<T> GetEnumerator()の中を動いてるけど
実際は別のクラスが作られていてその中を実行してる

このクラスはコンパイル時に自動実装される

以前は別クラスを自分で作らなければならなかったけど
yield returnが実装されてから楽になった