#if FAT using System; using System.Collections.Generic; using LinqInternal.Collections.Specialized; namespace LinqInternal.Collections { internal static partial class Extensions { public static IEnumerable Append(this IEnumerable target, IEnumerable append) { return new ExtendedEnumerable(target, append); } public static IEnumerable Append(this IEnumerable target, T append) { return new ExtendedEnumerable(target, AsUnaryEnumerable(append)); } public static IEnumerable Cycle(this IEnumerable source) { if (source == null) { throw new ArgumentNullException("source"); } var progressive = new ProgressiveCollection(source); while (true) { foreach (var item in progressive) { yield return item; } } // Infinite Loop - This method creates an endless IEnumerable } public static IEnumerable Prepend(this IEnumerable target, IEnumerable prepend) { return new ExtendedEnumerable(prepend, target); } public static IEnumerable Prepend(this IEnumerable target, T prepend) { return new ExtendedEnumerable(AsUnaryEnumerable(prepend), target); } } } #endif