yield returnで2分木の外部イテレータ

yield return - チキン煮込みチーズミックス4辛 で、できないとか言ってたけどできるやんけ。なんでこんな事思いつかんのじゃ...。

// NodeクラスのGetEnumeratorだけ抜粋
public IEnumerator<int> GetEnumerator()
{
  if (_left != null)
  {
    foreach (int n in _left)
    {
      yield return n;
    }
  }

  yield return _value;

  if (_right != null)
  {
    foreach (int n in _right)
    {
      yield return n;
    }
  }
}

内部イテレータを外部イテレータに変形する(その2:2分木構造の場合) - チキン煮込みチーズミックス4辛 は長らく放置していて、まだ解決していない。最近また考えている。今後どうにかするつもり。プログラミング楽しいなー。