Kerbal Space Program  1.12.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Static Public Member Functions | List of all members
Smooth.Slinq.Slinq Class Reference

Provides methods for the creation of chained Slinqs as well as various type specific Slinq comprehensions. More...

Static Public Member Functions

static Slinq< U,
AggregateContext< U, T, C > > 
AggregateRunning< U, T, C > (this Slinq< T, C > slinq, U seed, DelegateFunc< U, T, U > selector)
 Returns a chained Slinq that performs a running aggegatation over the specified Slinq. More...
 
static Slinq< U,
AggregateContext< U, T, C, P > > 
AggregateRunning< U, T, C, P > (this Slinq< T, C > slinq, U seed, DelegateFunc< U, T, P, U > selector, P parameter)
 Returns a chained Slinq that performs a running aggegatation over the specified Slinq. More...
 
static Double Average< C > (this Slinq< Int32, C > slinq)
 Analog to Enumerable.Average(). More...
 
static Double Average< C > (this Slinq< Int64, C > slinq)
 Analog to Enumerable.Average(). More...
 
static Single Average< C > (this Slinq< Single, C > slinq)
 Analog to Enumerable.Average(). More...
 
static Double Average< C > (this Slinq< Double, C > slinq)
 Analog to Enumerable.Average(). More...
 
static Option< Double > AverageOrNone< C > (this Slinq< Int32, C > slinq)
 Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input. More...
 
static Option< Double > AverageOrNone< C > (this Slinq< Int64, C > slinq)
 Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input. More...
 
static Option< Single > AverageOrNone< C > (this Slinq< Single, C > slinq)
 Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input. More...
 
static Option< Double > AverageOrNone< C > (this Slinq< Double, C > slinq)
 Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input. More...
 
static Slinq< T, ConcatContext
< C2, T, C > > 
Concat< C2, T, C > (this Slinq< T, C > first, Slinq< T, C2 > second)
 Analog to Enumerable.Concat(). More...
 
static Slinq< T, EitherContext
< OptionContext< T >, T, C > > 
DefaultIfEmpty< T, C > (this Slinq< T, C > slinq)
 Analog to Enumerable.DefaultIfEmpty(). More...
 
static Slinq< T, EitherContext
< OptionContext< T >, T, C > > 
DefaultIfEmpty< T, C > (this Slinq< T, C > slinq, T defaultValue)
 Analog to Enumerable.DefaultIfEmpty(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Distinct< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Distinct< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > comparer)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Distinct< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Distinct< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< T, C > > 
Distinct< T, C > (this Slinq< T, C > slinq)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< T, C > > 
Distinct< T, C > (this Slinq< T, C > slinq, IEqualityComparer< T > comparer)
 Analog to Enumerable.Distinct(). More...
 
static Slinq< T,
HashSetContext< T, C > > 
Except< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
HashSetContext< T, C > > 
Except< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, IEqualityComparer< T > comparer)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Except< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Except< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector, IEqualityComparer< K > comparer)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Except< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Except< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.Except(). More...
 
static Slinq< T,
FlattenContext< T, C > > 
Flatten< T, C > (this Slinq< Option< T >, C > slinq)
 Returns a chained Slinq that enumerates over each of the nested elements in the specified Slinq. More...
 
static Slinq< T,
FlattenContext< T, C1, C2 > > 
Flatten< T, C1, C2 > (this Slinq< Slinq< T, C1 >, C2 > slinq)
 Returns a chained Slinq that enumerates over each of the nested elements in the specified Slinq. More...
 
static Slinq< Grouping< K, T,
LinkedContext< T >
>, GroupByContext< K, T > > 
GroupBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Analog to Enumerable.GroupBy(). More...
 
static Slinq< Grouping< K, T,
LinkedContext< T >
>, GroupByContext< K, T > > 
GroupBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > comparer)
 Analog to Enumerable.GroupBy(). More...
 
static Slinq< Grouping< K, T,
LinkedContext< T >
>, GroupByContext< K, T > > 
GroupBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.GroupBy(). More...
 
static Slinq< Grouping< K, T,
LinkedContext< T >
>, GroupByContext< K, T > > 
GroupBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.GroupBy(). More...
 
static Slinq< U,
GroupJoinContext< U, K, T2, T,
C > > 
GroupJoin< U, K, T2, C2, T, C > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, K > outerSelector, DelegateFunc< T2, K > innerSelector, DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, U > resultSelector)
 Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U,
GroupJoinContext< U, K, T2, T,
C > > 
GroupJoin< U, K, T2, C2, T, C > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, K > outerSelector, DelegateFunc< T2, K > innerSelector, DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, U > resultSelector, IEqualityComparer< K > comparer)
 Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U,
GroupJoinContext< U, K, T2, T,
C, P > > 
GroupJoin< U, K, T2, C2, T, C, P > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, P, K > outerSelector, DelegateFunc< T2, P, K > innerSelector, DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, P, U > resultSelector, P parameter)
 Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U,
GroupJoinContext< U, K, T2, T,
C, P > > 
GroupJoin< U, K, T2, C2, T, C, P > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, P, K > outerSelector, DelegateFunc< T2, P, K > innerSelector, DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, P, U > resultSelector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq. More...
 
static Slinq< T,
HashSetContext< T, C > > 
Intersect< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< T,
HashSetContext< T, C > > 
Intersect< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, IEqualityComparer< T > comparer)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Intersect< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< T,
HashSetContext< K, T, C > > 
Intersect< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector, IEqualityComparer< K > comparer)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Intersect< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< T,
HashSetContext< K, T, C, P > > 
Intersect< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.Intersect(). More...
 
static Slinq< U, JoinContext
< U, K, T2, T, C > > 
Join< U, K, T2, C2, T, C > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, K > outerSelector, DelegateFunc< T2, K > innerSelector, DelegateFunc< T, T2, U > resultSelector)
 Analog to Enumerable.Join(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U, JoinContext
< U, K, T2, T, C > > 
Join< U, K, T2, C2, T, C > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, K > outerSelector, DelegateFunc< T2, K > innerSelector, DelegateFunc< T, T2, U > resultSelector, IEqualityComparer< K > comparer)
 Analog to Enumerable.Join(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U, JoinContext
< U, K, T2, T, C, P > > 
Join< U, K, T2, C2, T, C, P > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, P, K > outerSelector, DelegateFunc< T2, P, K > innerSelector, DelegateFunc< T, T2, P, U > resultSelector, P parameter)
 Analog to Enumerable.Join(), with removal operations chained to the outer Slinq. More...
 
static Slinq< U, JoinContext
< U, K, T2, T, C, P > > 
Join< U, K, T2, C2, T, C, P > (this Slinq< T, C > outer, Slinq< T2, C2 > inner, DelegateFunc< T, P, K > outerSelector, DelegateFunc< T2, P, K > innerSelector, DelegateFunc< T, T2, P, U > resultSelector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.Join(), with removal operations chained to the outer Slinq. More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IComparer< K > comparer)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, Comparison< K > comparison)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, Comparison< K > comparison, bool ascending)
 Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering. More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IComparer< K > comparer)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, Comparison< K > comparison)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderBy< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, Comparison< K > comparison, bool ascending)
 Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderBy< T, C > (this Slinq< T, C > slinq)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderBy< T, C > (this Slinq< T, C > slinq, IComparer< T > comparer)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderBy< T, C > (this Slinq< T, C > slinq, Comparison< T > comparison)
 Analog to Enumerable.OrderBy(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderBy< T, C > (this Slinq< T, C > slinq, Comparison< T > comparison, bool ascending)
 Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering. More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IComparer< K > comparer)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, Comparison< K > comparison)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IComparer< K > comparer)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< K, T > > 
OrderByDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, Comparison< K > comparison)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByDescending< T, C > (this Slinq< T, C > slinq)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByDescending< T, C > (this Slinq< T, C > slinq, IComparer< T > comparer)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByDescending< T, C > (this Slinq< T, C > slinq, Comparison< T > comparison)
 Analog to Enumerable.OrderByDescending(). More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered by the default sort order comparer for K. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > equalityComparer, IComparer< K > comparer)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified sort order comparer. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > equalityComparer, Comparison< K > comparison)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified comparison. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered by the default sort order comparer for K. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > equalityComparer, IComparer< K > comparer)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified sort order comparer. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroup< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > equalityComparer, Comparison< K > comparison)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified comparison. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered descendingly by the default sort order comparer for K. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > equalityComparer, IComparer< K > comparer)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified sort order comparer. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, K > selector, IEqualityComparer< K > equalityComparer, Comparison< K > comparison)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified comparison. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered descendingly by the default sort order comparer for K. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > equalityComparer, IComparer< K > comparer)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified sort order comparer. More...
 
static Slinq< T, LinkedContext
< T > > 
OrderByGroupDescending< K, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > equalityComparer, Comparison< K > comparison)
 Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified comparison. More...
 
static Slinq< T, LinkedContext
< T > > 
Reverse< T, C > (this Slinq< T, C > slinq)
 Analog to Enumerable.Reverse(). More...
 
static Slinq< U, SelectContext
< U, T, C > > 
Select< U, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, U > selector)
 Analog to Enumerable.Select(). More...
 
static Slinq< U, SelectContext
< U, T, C, P > > 
Select< U, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, U > selector, P parameter)
 Analog to Enumerable.Select(). More...
 
static Slinq< U,
SelectOptionContext< U, T, C > > 
SelectMany< U, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, Option< U >> selector)
 Analog to Enumerable.SelectMany(). More...
 
static Slinq< U,
SelectOptionContext< U, T, C,
P > > 
SelectMany< U, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, Option< U >> selector, P parameter)
 Analog to Enumerable.SelectMany(). More...
 
static Slinq< U,
SelectSlinqContext< U, UC, T,
C > > 
SelectMany< U, UC, T, C > (this Slinq< T, C > slinq, DelegateFunc< T, Slinq< U, UC >> selector)
 Analog to Enumerable.SelectMany(). More...
 
static Slinq< U,
SelectSlinqContext< U, UC, T,
C, P > > 
SelectMany< U, UC, T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, Slinq< U, UC >> selector, P parameter)
 Analog to Enumerable.SelectMany(). More...
 
static Int32 Sum< C > (this Slinq< Int32, C > slinq)
 Analog to Enumerable.Sum(). More...
 
static Int64 Sum< C > (this Slinq< Int64, C > slinq)
 Analog to Enumerable.Sum(). More...
 
static Single Sum< C > (this Slinq< Single, C > slinq)
 Analog to Enumerable.Sum(). More...
 
static Double Sum< C > (this Slinq< Double, C > slinq)
 Analog to Enumerable.Sum(). More...
 
static Slinq< T, IntContext< T,
C > > 
Take< T, C > (this Slinq< T, C > slinq, int count)
 Analog to Enumerable.Take(). More...
 
static Slinq< T, LinkedContext
< T > > 
TakeRight< T, C > (this Slinq< T, C > slinq, int count)
 Returns a chained Slinq that contains up to count elements from the end of the specified Slinq. More...
 
static Slinq< T,
PredicateContext< T, C > > 
TakeWhile< T, C > (this Slinq< T, C > slinq, DelegateFunc< T, bool > predicate)
 Analog to Enumerable.TakeWhile(). More...
 
static Slinq< T,
PredicateContext< T, C, P > > 
TakeWhile< T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, bool > predicate, P parameter)
 Analog to Enumerable.TakeWhile(). More...
 
static Slinq< T,
HashSetContext< T,
ConcatContext< C2, T, C > > > 
Union< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
HashSetContext< T,
ConcatContext< C2, T, C > > > 
Union< C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, IEqualityComparer< T > comparer)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
HashSetContext< K, T,
ConcatContext< C2, T, C > > > 
Union< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
HashSetContext< K, T,
ConcatContext< C2, T, C > > > 
Union< K, C2, T, C > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, K > selector, IEqualityComparer< K > comparer)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
HashSetContext< K, T,
ConcatContext< C2, T, C >, P > > 
Union< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
HashSetContext< K, T,
ConcatContext< C2, T, C >, P > > 
Union< K, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T, C2 > other, DelegateFunc< T, P, K > selector, P parameter, IEqualityComparer< K > comparer)
 Analog to Enumerable.Union(). More...
 
static Slinq< T,
PredicateContext< T, C > > 
Where< T, C > (this Slinq< T, C > slinq, DelegateFunc< T, bool > predicate)
 Analog to Enumerable.Where(). More...
 
static Slinq< T,
PredicateContext< T, C, P > > 
Where< T, C, P > (this Slinq< T, C > slinq, DelegateFunc< T, P, bool > predicate, P parameter)
 Analog to Enumerable.Where(). More...
 
static Slinq
< Smooth.Algebraics.Tuple< T,
T2 >, ZipContext< T2, C2, T, C > > 
Zip< T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with)
 Analog to Enumerable.Zip() that combines elements into tuples and chains removal operations to the left Slinq. More...
 
static Slinq
< Smooth.Algebraics.Tuple< T,
T2 >, ZipContext< T2, C2, T, C > > 
Zip< T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, ZipRemoveFlags removeFlags)
 Analog to Enumerable.Zip() that combines elements into tuples and chains removal operations to the the specified Slinq(s). More...
 
static Slinq< U, ZipContext< U,
T2, C2, T, C > > 
Zip< U, T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< T, T2, U > selector)
 Analog to Enumerable.Zip() that chains removal operations to the left Slinq. More...
 
static Slinq< U, ZipContext< U,
T2, C2, T, C > > 
Zip< U, T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< T, T2, U > selector, ZipRemoveFlags removeFlags)
 Analog to Enumerable.Zip() that chains removal operations to the specified Slinq(s). More...
 
static Slinq< U, ZipContext< U,
T2, C2, T, C, P > > 
Zip< U, T2, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< T, T2, P, U > selector, P parameter)
 Analog to Enumerable.Zip() that chains removal operations to the left Slinq. More...
 
static Slinq< U, ZipContext< U,
T2, C2, T, C, P > > 
Zip< U, T2, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< T, T2, P, U > selector, P parameter, ZipRemoveFlags removeFlags)
 Analog to Enumerable.Zip() that chains removal operations to the specified Slinq(s). More...
 
static Slinq
< Smooth.Algebraics.Tuple
< Option< T >, Option< T2 >
>, ZipAllContext< T2, C2, T,
C > > 
ZipAll< T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs into tuples and chains removal operations to the left Slinq. More...
 
static Slinq
< Smooth.Algebraics.Tuple
< Option< T >, Option< T2 >
>, ZipAllContext< T2, C2, T,
C > > 
ZipAll< T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, ZipRemoveFlags removeFlags)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs into tuples and chains removal operations to the specified Slinq(s). More...
 
static Slinq< U, ZipAllContext
< U, T2, C2, T, C > > 
ZipAll< U, T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< Option< T >, Option< T2 >, U > selector)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the left Slinq. More...
 
static Slinq< U, ZipAllContext
< U, T2, C2, T, C > > 
ZipAll< U, T2, C2, T, C > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< Option< T >, Option< T2 >, U > selector, ZipRemoveFlags removeFlags)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the specified Slinq(s). More...
 
static Slinq< U, ZipAllContext
< U, T2, C2, T, C, P > > 
ZipAll< U, T2, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< Option< T >, Option< T2 >, P, U > selector, P parameter)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the left Slinq. More...
 
static Slinq< U, ZipAllContext
< U, T2, C2, T, C, P > > 
ZipAll< U, T2, C2, T, C, P > (this Slinq< T, C > slinq, Slinq< T2, C2 > with, DelegateFunc< Option< T >, Option< T2 >, P, U > selector, P parameter, ZipRemoveFlags removeFlags)
 Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the specified Slinq(s). More...
 
static Slinq
< Smooth.Algebraics.Tuple< T,
int >, ZipContext< int,
FuncContext< int, int >, T, C > > 
ZipWithIndex< T, C > (this Slinq< T, C > slinq)
 Zips the specified Slinq with a zero-based index. More...
 

Detailed Description

Provides methods for the creation of chained Slinqs as well as various type specific Slinq comprehensions.

Member Function Documentation

static Slinq<U, AggregateContext<U, T, C> > Smooth.Slinq.Slinq.AggregateRunning< U, T, C > ( this Slinq< T, C slinq,
seed,
DelegateFunc< U, T, U >  selector 
)
inlinestatic

Returns a chained Slinq that performs a running aggegatation over the specified Slinq.

static Slinq<U, AggregateContext<U, T, C, P> > Smooth.Slinq.Slinq.AggregateRunning< U, T, C, P > ( this Slinq< T, C slinq,
seed,
DelegateFunc< U, T, P, U >  selector,
parameter 
)
inlinestatic

Returns a chained Slinq that performs a running aggegatation over the specified Slinq.

static Double Smooth.Slinq.Slinq.Average< C > ( this Slinq< Int32, C slinq)
inlinestatic

Analog to Enumerable.Average().

This operation will consume and dispose the Slinq.

static Double Smooth.Slinq.Slinq.Average< C > ( this Slinq< Int64, C slinq)
inlinestatic

Analog to Enumerable.Average().

This operation will consume and dispose the Slinq.

static Single Smooth.Slinq.Slinq.Average< C > ( this Slinq< Single, C slinq)
inlinestatic

Analog to Enumerable.Average().

This operation will consume and dispose the Slinq.

static Double Smooth.Slinq.Slinq.Average< C > ( this Slinq< Double, C slinq)
inlinestatic

Analog to Enumerable.Average().

This operation will consume and dispose the Slinq.

static Option<Double> Smooth.Slinq.Slinq.AverageOrNone< C > ( this Slinq< Int32, C slinq)
inlinestatic

Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input.

This operation will consume and dispose the Slinq.

static Option<Double> Smooth.Slinq.Slinq.AverageOrNone< C > ( this Slinq< Int64, C slinq)
inlinestatic

Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input.

This operation will consume and dispose the Slinq.

static Option<Single> Smooth.Slinq.Slinq.AverageOrNone< C > ( this Slinq< Single, C slinq)
inlinestatic

Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input.

This operation will consume and dispose the Slinq.

static Option<Double> Smooth.Slinq.Slinq.AverageOrNone< C > ( this Slinq< Double, C slinq)
inlinestatic

Analog to Enumerable.Average(), but returns an option rather than throwing an exception on empty input.

This operation will consume and dispose the Slinq.

static Slinq<T, ConcatContext<C2, T, C> > Smooth.Slinq.Slinq.Concat< C2, T, C > ( this Slinq< T, C first,
Slinq< T, C2 >  second 
)
inlinestatic

Analog to Enumerable.Concat().

static Slinq<T, EitherContext<OptionContext<T>, T, C> > Smooth.Slinq.Slinq.DefaultIfEmpty< T, C > ( this Slinq< T, C slinq)
inlinestatic

Analog to Enumerable.DefaultIfEmpty().

static Slinq<T, EitherContext<OptionContext<T>, T, C> > Smooth.Slinq.Slinq.DefaultIfEmpty< T, C > ( this Slinq< T, C slinq,
defaultValue 
)
inlinestatic

Analog to Enumerable.DefaultIfEmpty().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Distinct< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Distinct< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Distinct< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Distinct< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Distinct< T, C > ( this Slinq< T, C slinq)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Distinct< T, C > ( this Slinq< T, C slinq,
IEqualityComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.Distinct().

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Except< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Except< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
IEqualityComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Except< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Except< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Except< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Except< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Except().

static Slinq<T, FlattenContext<T, C> > Smooth.Slinq.Slinq.Flatten< T, C > ( this Slinq< Option< T >, C slinq)
inlinestatic

Returns a chained Slinq that enumerates over each of the nested elements in the specified Slinq.

See: SelectMany().

static Slinq<T, FlattenContext<T, C1, C2> > Smooth.Slinq.Slinq.Flatten< T, C1, C2 > ( this Slinq< Slinq< T, C1 >, C2 >  slinq)
inlinestatic

Returns a chained Slinq that enumerates over each of the nested elements in the specified Slinq.

See: SelectMany().

static Slinq<Grouping<K, T, LinkedContext<T> >, GroupByContext<K, T> > Smooth.Slinq.Slinq.GroupBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.GroupBy().

static Slinq<Grouping<K, T, LinkedContext<T> >, GroupByContext<K, T> > Smooth.Slinq.Slinq.GroupBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.GroupBy().

static Slinq<Grouping<K, T, LinkedContext<T> >, GroupByContext<K, T> > Smooth.Slinq.Slinq.GroupBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.GroupBy().

static Slinq<Grouping<K, T, LinkedContext<T> >, GroupByContext<K, T> > Smooth.Slinq.Slinq.GroupBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.GroupBy().

static Slinq<U, GroupJoinContext<U, K, T2, T, C> > Smooth.Slinq.Slinq.GroupJoin< U, K, T2, C2, T, C > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, K >  outerSelector,
DelegateFunc< T2, K >  innerSelector,
DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, U >  resultSelector 
)
inlinestatic

Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq.

static Slinq<U, GroupJoinContext<U, K, T2, T, C> > Smooth.Slinq.Slinq.GroupJoin< U, K, T2, C2, T, C > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, K >  outerSelector,
DelegateFunc< T2, K >  innerSelector,
DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, U >  resultSelector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq.

static Slinq<U, GroupJoinContext<U, K, T2, T, C, P> > Smooth.Slinq.Slinq.GroupJoin< U, K, T2, C2, T, C, P > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, P, K >  outerSelector,
DelegateFunc< T2, P, K >  innerSelector,
DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, P, U >  resultSelector,
parameter 
)
inlinestatic

Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq.

static Slinq<U, GroupJoinContext<U, K, T2, T, C, P> > Smooth.Slinq.Slinq.GroupJoin< U, K, T2, C2, T, C, P > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, P, K >  outerSelector,
DelegateFunc< T2, P, K >  innerSelector,
DelegateFunc< T, Slinq< T2, LinkedContext< T2 >>, P, U >  resultSelector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.GroupJoin(), with removal operations chained to the outer Slinq.

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Intersect< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<T, HashSetContext<T, C> > Smooth.Slinq.Slinq.Intersect< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
IEqualityComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Intersect< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<T, HashSetContext<K, T, C> > Smooth.Slinq.Slinq.Intersect< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Intersect< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<T, HashSetContext<K, T, C, P> > Smooth.Slinq.Slinq.Intersect< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Intersect().

static Slinq<U, JoinContext<U, K, T2, T, C> > Smooth.Slinq.Slinq.Join< U, K, T2, C2, T, C > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, K >  outerSelector,
DelegateFunc< T2, K >  innerSelector,
DelegateFunc< T, T2, U >  resultSelector 
)
inlinestatic

Analog to Enumerable.Join(), with removal operations chained to the outer Slinq.

static Slinq<U, JoinContext<U, K, T2, T, C> > Smooth.Slinq.Slinq.Join< U, K, T2, C2, T, C > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, K >  outerSelector,
DelegateFunc< T2, K >  innerSelector,
DelegateFunc< T, T2, U >  resultSelector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Join(), with removal operations chained to the outer Slinq.

static Slinq<U, JoinContext<U, K, T2, T, C, P> > Smooth.Slinq.Slinq.Join< U, K, T2, C2, T, C, P > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, P, K >  outerSelector,
DelegateFunc< T2, P, K >  innerSelector,
DelegateFunc< T, T2, P, U >  resultSelector,
parameter 
)
inlinestatic

Analog to Enumerable.Join(), with removal operations chained to the outer Slinq.

static Slinq<U, JoinContext<U, K, T2, T, C, P> > Smooth.Slinq.Slinq.Join< U, K, T2, C2, T, C, P > ( this Slinq< T, C outer,
Slinq< T2, C2 >  inner,
DelegateFunc< T, P, K >  outerSelector,
DelegateFunc< T2, P, K >  innerSelector,
DelegateFunc< T, T2, P, U >  resultSelector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Join(), with removal operations chained to the outer Slinq.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
Comparison< K >  comparison 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
Comparison< K >  comparison,
bool  ascending 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering.

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
Comparison< K >  comparison 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderBy< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
Comparison< K >  comparison,
bool  ascending 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering.

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderBy< T, C > ( this Slinq< T, C slinq)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderBy< T, C > ( this Slinq< T, C slinq,
IComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderBy< T, C > ( this Slinq< T, C slinq,
Comparison< T >  comparison 
)
inlinestatic

Analog to Enumerable.OrderBy().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderBy< T, C > ( this Slinq< T, C slinq,
Comparison< T >  comparison,
bool  ascending 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq as ordered by the specified key selector, comparison, and ordering.

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
Comparison< K >  comparison 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<K, T> > Smooth.Slinq.Slinq.OrderByDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
Comparison< K >  comparison 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByDescending< T, C > ( this Slinq< T, C slinq)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByDescending< T, C > ( this Slinq< T, C slinq,
IComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByDescending< T, C > ( this Slinq< T, C slinq,
Comparison< T >  comparison 
)
inlinestatic

Analog to Enumerable.OrderByDescending().

This method uses a linked list merge sort algorithm and has O(n) space complexity and O(n log n) average and worst case time complexity.

Note: The Slinq API does not provide methods for ThenBy() orderings, to sort by multiple values in succession you should supply a composite key and/or comparision.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered by the default sort order comparer for K.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  equalityComparer,
IComparer< K >  comparer 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified sort order comparer.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  equalityComparer,
Comparison< K >  comparison 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified comparison.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered by the default sort order comparer for K.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  equalityComparer,
IComparer< K >  comparer 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified sort order comparer.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroup< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  equalityComparer,
Comparison< K >  comparison 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered by the specified comparison.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered descendingly by the default sort order comparer for K.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  equalityComparer,
IComparer< K >  comparer 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified sort order comparer.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  equalityComparer,
Comparison< K >  comparison 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified comparison.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and the default equality comparer for K, with the groups ordered descendingly by the default sort order comparer for K.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  equalityComparer,
IComparer< K >  comparer 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified sort order comparer.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.OrderByGroupDescending< K, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  equalityComparer,
Comparison< K >  comparison 
)
inlinestatic

Returns a chained Slinq that enumerates the elements of the specified Slinq ordered by grouping the elements according to the specified key selector and equality comparer, with the groups ordered descendingly by the specified comparison.

This method has O(n + k) space compexity and O(n + k log k) time complexity where n is the number of elements and k is the number of keys.

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.Reverse< T, C > ( this Slinq< T, C slinq)
inlinestatic

Analog to Enumerable.Reverse().

static Slinq<U, SelectContext<U, T, C> > Smooth.Slinq.Slinq.Select< U, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, U >  selector 
)
inlinestatic

Analog to Enumerable.Select().

static Slinq<U, SelectContext<U, T, C, P> > Smooth.Slinq.Slinq.Select< U, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, U >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Select().

static Slinq<U, SelectOptionContext<U, T, C> > Smooth.Slinq.Slinq.SelectMany< U, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, Option< U >>  selector 
)
inlinestatic

Analog to Enumerable.SelectMany().

static Slinq<U, SelectOptionContext<U, T, C, P> > Smooth.Slinq.Slinq.SelectMany< U, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, Option< U >>  selector,
parameter 
)
inlinestatic

Analog to Enumerable.SelectMany().

static Slinq<U, SelectSlinqContext<U, UC, T, C> > Smooth.Slinq.Slinq.SelectMany< U, UC, T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, Slinq< U, UC >>  selector 
)
inlinestatic

Analog to Enumerable.SelectMany().

static Slinq<U, SelectSlinqContext<U, UC, T, C, P> > Smooth.Slinq.Slinq.SelectMany< U, UC, T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, Slinq< U, UC >>  selector,
parameter 
)
inlinestatic

Analog to Enumerable.SelectMany().

static Int32 Smooth.Slinq.Slinq.Sum< C > ( this Slinq< Int32, C slinq)
inlinestatic

Analog to Enumerable.Sum().

This operation will consume and dispose the Slinq.

static Int64 Smooth.Slinq.Slinq.Sum< C > ( this Slinq< Int64, C slinq)
inlinestatic

Analog to Enumerable.Sum().

This operation will consume and dispose the Slinq.

static Single Smooth.Slinq.Slinq.Sum< C > ( this Slinq< Single, C slinq)
inlinestatic

Analog to Enumerable.Sum().

This operation will consume and dispose the Slinq.

static Double Smooth.Slinq.Slinq.Sum< C > ( this Slinq< Double, C slinq)
inlinestatic

Analog to Enumerable.Sum().

This operation will consume and dispose the Slinq.

static Slinq<T, IntContext<T, C> > Smooth.Slinq.Slinq.Take< T, C > ( this Slinq< T, C slinq,
int  count 
)
inlinestatic

Analog to Enumerable.Take().

static Slinq<T, LinkedContext<T> > Smooth.Slinq.Slinq.TakeRight< T, C > ( this Slinq< T, C slinq,
int  count 
)
inlinestatic

Returns a chained Slinq that contains up to count elements from the end of the specified Slinq.

If count is greater than or equal to the number of elements remaining, the returned Slinq will contain all the remaining elements.

If count is less than or equal to zero, the returned Slinq will be empty.

static Slinq<T, PredicateContext<T, C> > Smooth.Slinq.Slinq.TakeWhile< T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, bool >  predicate 
)
inlinestatic

Analog to Enumerable.TakeWhile().

static Slinq<T, PredicateContext<T, C, P> > Smooth.Slinq.Slinq.TakeWhile< T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, bool >  predicate,
parameter 
)
inlinestatic

Analog to Enumerable.TakeWhile().

static Slinq<T, HashSetContext<T, ConcatContext<C2, T, C> > > Smooth.Slinq.Slinq.Union< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, HashSetContext<T, ConcatContext<C2, T, C> > > Smooth.Slinq.Slinq.Union< C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
IEqualityComparer< T >  comparer 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, HashSetContext<K, T, ConcatContext<C2, T, C> > > Smooth.Slinq.Slinq.Union< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, HashSetContext<K, T, ConcatContext<C2, T, C> > > Smooth.Slinq.Slinq.Union< K, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, K >  selector,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, HashSetContext<K, T, ConcatContext<C2, T, C>, P> > Smooth.Slinq.Slinq.Union< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, HashSetContext<K, T, ConcatContext<C2, T, C>, P> > Smooth.Slinq.Slinq.Union< K, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T, C2 >  other,
DelegateFunc< T, P, K >  selector,
parameter,
IEqualityComparer< K >  comparer 
)
inlinestatic

Analog to Enumerable.Union().

static Slinq<T, PredicateContext<T, C> > Smooth.Slinq.Slinq.Where< T, C > ( this Slinq< T, C slinq,
DelegateFunc< T, bool >  predicate 
)
inlinestatic

Analog to Enumerable.Where().

static Slinq<T, PredicateContext<T, C, P> > Smooth.Slinq.Slinq.Where< T, C, P > ( this Slinq< T, C slinq,
DelegateFunc< T, P, bool >  predicate,
parameter 
)
inlinestatic

Analog to Enumerable.Where().

static Slinq<Smooth.Algebraics.Tuple<T, T2>, ZipContext<T2, C2, T, C> > Smooth.Slinq.Slinq.Zip< T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with 
)
inlinestatic

Analog to Enumerable.Zip() that combines elements into tuples and chains removal operations to the left Slinq.

static Slinq<Smooth.Algebraics.Tuple<T, T2>, ZipContext<T2, C2, T, C> > Smooth.Slinq.Slinq.Zip< T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Analog to Enumerable.Zip() that combines elements into tuples and chains removal operations to the the specified Slinq(s).

static Slinq<U, ZipContext<U, T2, C2, T, C> > Smooth.Slinq.Slinq.Zip< U, T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< T, T2, U >  selector 
)
inlinestatic

Analog to Enumerable.Zip() that chains removal operations to the left Slinq.

static Slinq<U, ZipContext<U, T2, C2, T, C> > Smooth.Slinq.Slinq.Zip< U, T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< T, T2, U >  selector,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Analog to Enumerable.Zip() that chains removal operations to the specified Slinq(s).

static Slinq<U, ZipContext<U, T2, C2, T, C, P> > Smooth.Slinq.Slinq.Zip< U, T2, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< T, T2, P, U >  selector,
parameter 
)
inlinestatic

Analog to Enumerable.Zip() that chains removal operations to the left Slinq.

static Slinq<U, ZipContext<U, T2, C2, T, C, P> > Smooth.Slinq.Slinq.Zip< U, T2, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< T, T2, P, U >  selector,
parameter,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Analog to Enumerable.Zip() that chains removal operations to the specified Slinq(s).

static Slinq<Smooth.Algebraics.Tuple<Option<T>, Option<T2> >, ZipAllContext<T2, C2, T, C> > Smooth.Slinq.Slinq.ZipAll< T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs into tuples and chains removal operations to the left Slinq.

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the enumerated tuples will contain Some options containing the corresponding elements from the Slinq in the corresponding position.

If either of the Slinqs is empty while the other still has elements remaining, the enumerated tuples will contain None options in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<Smooth.Algebraics.Tuple<Option<T>, Option<T2> >, ZipAllContext<T2, C2, T, C> > Smooth.Slinq.Slinq.ZipAll< T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs into tuples and chains removal operations to the specified Slinq(s).

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the enumerated tuples will contain Some options containing the corresponding elements from the Slinq in the corresponding position.

If either of the Slinqs is empty while the other still has elements remaining, the enumerated tuples will contain None options in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<U, ZipAllContext<U, T2, C2, T, C> > Smooth.Slinq.Slinq.ZipAll< U, T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< Option< T >, Option< T2 >, U >  selector 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the left Slinq.

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the selector will be passed Some options containing the corresponding elements from the Slinq.

If either of the Slinqs is empty while the other still has elements remaining, None options will be passed to the selector in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<U, ZipAllContext<U, T2, C2, T, C> > Smooth.Slinq.Slinq.ZipAll< U, T2, C2, T, C > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< Option< T >, Option< T2 >, U >  selector,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the specified Slinq(s).

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the selector will be passed Some options containing the corresponding elements from the Slinq.

If either of the Slinqs is empty while the other still has elements remaining, None options will be passed to the selector in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<U, ZipAllContext<U, T2, C2, T, C, P> > Smooth.Slinq.Slinq.ZipAll< U, T2, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< Option< T >, Option< T2 >, P, U >  selector,
parameter 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the left Slinq.

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the selector will be passed Some options containing the corresponding elements from the Slinq.

If either of the Slinqs is empty while the other still has elements remaining, None options will be passed to the selector in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<U, ZipAllContext<U, T2, C2, T, C, P> > Smooth.Slinq.Slinq.ZipAll< U, T2, C2, T, C, P > ( this Slinq< T, C slinq,
Slinq< T2, C2 >  with,
DelegateFunc< Option< T >, Option< T2 >, P, U >  selector,
parameter,
ZipRemoveFlags  removeFlags 
)
inlinestatic

Returns a Slinq that combines the corresponding elements from the supplied Slinqs using the supplied selector and chains removal operations to the specified Slinq(s).

The returned Slinq will continue enumerating until it reaches the end of the longer of the supplied Slinqs.

While a Slinq has elements remaining, the selector will be passed Some options containing the corresponding elements from the Slinq.

If either of the Slinqs is empty while the other still has elements remaining, None options will be passed to the selector in place of the shorter Slinq's element until the enumeration is complete.

Removal operations will not be chained to an empty Slinq.

static Slinq<Smooth.Algebraics.Tuple<T, int>, ZipContext<int, FuncContext<int, int>, T, C> > Smooth.Slinq.Slinq.ZipWithIndex< T, C > ( this Slinq< T, C slinq)
inlinestatic

Zips the specified Slinq with a zero-based index.


The documentation for this class was generated from the following file: