Exemple #1
0
    static void Main(string[] args)
    {
        var list1 = new EnumerableNode(
            new Node {
            Data = 1, Next =
                new Node {
                Data = 2, Next =
                    new Node {
                    Data = 3, Next = null
                }
            }
        });
        var list2 = new EnumerableNode(
            new Node {
            Data = 2, Next =
                new Node {
                Data = 3, Next =
                    new Node {
                    Data = 4, Next = null
                }
            }
        });
        var merged = list1.Concat(list2).Distinct();

        Console.WriteLine(String.Join(",", list1));
        Console.WriteLine(String.Join(",", list2));
        Console.WriteLine(String.Join(",", merged));
        Console.ReadLine();
    }
 public void GetCountInformation(out CountInformation info) =>
 EnumerableNode.GetCountInformation(_enumerable, out info);
Exemple #3
0
 public static System.Linq.ILookup <TKey, TSource> ToLookup <TSource, TKey>(this IEnumerable <TSource> source, Func <TSource, TKey> keySelector, IEqualityComparer <TKey> comparer = null) =>
 EnumerableNode.ExecutePush <TSource, System.Linq.ILookup <TKey, TSource>, ToLookup <TSource, TKey> >(source, new ToLookup <TSource, TKey>(comparer, keySelector));
Exemple #4
0
 public static TSource SingleOrDefault <TSource>(this IEnumerable <TSource> source, Func <TSource, bool> predicate) =>
 EnumerableNode.ExecutePush <TSource, TSource, SingleOrDefaultPredicate <TSource> >(source, new SingleOrDefaultPredicate <TSource>(predicate));
Exemple #5
0
 public static TSource SingleOrDefault <TSource>(this IEnumerable <TSource> source) =>
 EnumerableNode.ExecutePush <TSource, TSource, SingleOrDefault <TSource> >(source, new SingleOrDefault <TSource>());
Exemple #6
0
 public static TSource FirstOrDefault <TSource>(this IEnumerable <TSource> source) =>
 EnumerableNode.ExecutePush <TSource, TSource, FirstOrDefault <TSource> >(source, new FirstOrDefault <TSource>());
Exemple #7
0
 public static TSource First <TSource>(this IEnumerable <TSource> source, Func <TSource, bool> predicate) =>
 EnumerableNode.ExecutePush <TSource, TSource, FirstPredicate <TSource> >(source, new FirstPredicate <TSource>(predicate));
Exemple #8
0
 public static HashSet <TSource> ToHashSet <TSource>(this IEnumerable <TSource> source, IEqualityComparer <TSource> comparer = null) =>
 EnumerableNode.ExecutePush <TSource, HashSet <TSource>, ToHashSet <TSource> >(source, new ToHashSet <TSource>(comparer));
Exemple #9
0
 public static int Count <TSource>(this IEnumerable <TSource> source, Func <TSource, bool> predicate) =>
 EnumerableNode.ExecutePush <TSource, int, CountIf <TSource> >(source, new CountIf <TSource>(predicate));
Exemple #10
0
 public static bool Any <TSource>(this IEnumerable <TSource> source, Func <TSource, bool> predicate) =>
 EnumerableNode.ExecutePush <TSource, bool, Any <TSource> >(source, new Any <TSource>(predicate));
Exemple #11
0
 public static bool All <TSource>(this IEnumerable <TSource> source, Func <TSource, bool> predicate) =>
 EnumerableNode.ExecutePush <TSource, bool, All <TSource, FuncToIFunc <TSource, bool> > >(source, new All <TSource, FuncToIFunc <TSource, bool> >(new FuncToIFunc <TSource, bool>(predicate)));
Exemple #12
0
 public static TResult Aggregate <TSource, TAccumulate, TResult>(this IEnumerable <TSource> source, TAccumulate seed, Func <TAccumulate, TSource, TAccumulate> func, Func <TAccumulate, TResult> resultSelector) =>
 resultSelector(EnumerableNode.ExecutePush <TSource, TAccumulate, FoldForward <TSource, TAccumulate> >(source, new FoldForward <TSource, TAccumulate>(func, seed)));
Exemple #13
0
 public static TAccumulate Aggregate <TSource, TAccumulate>(this IEnumerable <TSource> source, TAccumulate seed, Func <TAccumulate, TSource, TAccumulate> func) =>
 EnumerableNode.ExecutePush <TSource, TAccumulate, FoldForward <TSource, TAccumulate> >(source, new FoldForward <TSource, TAccumulate>(func, seed));
Exemple #14
0
 public static TSource Aggregate <TSource>(this IEnumerable <TSource> source, Func <TSource, TSource, TSource> func) =>
 EnumerableNode.ExecutePush <TSource, TSource, ReduceForward <TSource> >(source, new ReduceForward <TSource>(func));
 CreationType INode.CreateViaPullDescend <CreationType, TNodes>(ref TNodes nodes) =>
 EnumerableNode.CreateObjectDescent <T, CreationType, TNodes>(ref nodes, _enumerable);
Exemple #16
0
 public static bool Contains <TSource>(this IEnumerable <TSource> source, TSource value, IEqualityComparer <TSource> comparer) =>
 EnumerableNode.ExecutePush <TSource, bool, ContainsByComparer <TSource> >(source, new ContainsByComparer <TSource>(comparer, value));
Exemple #17
0
 public static Dictionary <TKey, TValue> ToDictionary <TSource, TKey, TValue>(this IEnumerable <TSource> source, Func <TSource, TKey> keySelector, Func <TSource, TValue> elementSelector, IEqualityComparer <TKey> comparer = null) =>
 EnumerableNode.ExecutePush <TSource, Dictionary <TKey, TValue>, ToDictionary <TSource, TKey, TValue> >(source, new ToDictionary <TSource, TKey, TValue>(keySelector, elementSelector, comparer));