internal AppendEnumerator(AppendEnumerable <T> enumerable) { this.enumerable = enumerable; restEnum = enumerable.rest.GetEnumerator(); state = 0; Current = default; }
public void AppendEnumerableExample() { // Append the following two lists int[] one2three = new int[] { 1, 2, 3 }; int[] four2six = new int[] { 4, 5, 6 }; IEnumerable<int> appended = new AppendEnumerable<int>(one2three, four2six); // Writes: 1, 2, 3, 4, 5, 6 Console.WriteLine(EnumerableUtilities.JoinEnumerator(", ", appended)); }
public void TestAppendEnumerable() { int[] odds = new int[] { 3, 5, 7 }; int[] evens = new int[] { 2, 4, 6 }; IEnumerable<int> nums = new AppendEnumerable<int>(odds, evens); // Find the minimum, maximum, and length int min = 10, max = 1, len = 0; foreach (int num in nums) { min = Math.Min(min, num); max = Math.Max(max, num); len++; } Assert.AreEqual(6, len); Assert.AreEqual(2, min); Assert.AreEqual(7, max); }