public static int SumEnumerable(ListLike <int> list) { var sum = 0; // foreach (var x in list) で行けるんだけど、比較のために生利用 var e = list.GetEnumerator(); while (e.MoveNext()) { sum += e.Current; } return(sum); }
[Benchmark] public int SumEnumeratorInterface() => Sum.SumEnumeratorInterface(_data.GetEnumerator());
[Fact] public void SumEnumeratorInterface() => Assert.Equal(_expected, Sum.SumEnumeratorInterface(_data.GetEnumerator()));