public <TKey, TElement, TResult> Queryable<TResult> groupBy( FunctionExpression<Function1<T, TKey>> keySelector, FunctionExpression<Function1<T, TElement>> elementSelector, FunctionExpression<Function2<TKey, Enumerable<TElement>, TResult>> resultSelector, EqualityComparer<TKey> comparer) { return EnumerableDefaults.groupBy(getThis(), keySelector.getFunction(), elementSelector.getFunction(), resultSelector.getFunction(), comparer) .asQueryable(); }
public <TInner, TKey, TResult> Queryable<TResult> groupJoin( Enumerable<TInner> inner, FunctionExpression<Function1<T, TKey>> outerKeySelector, FunctionExpression<Function1<TInner, TKey>> innerKeySelector, FunctionExpression<Function2<T, Enumerable<TInner>, TResult>> resultSelector, EqualityComparer<TKey> comparer) { return EnumerableDefaults.groupJoin(getThis(), inner, outerKeySelector.getFunction(), innerKeySelector.getFunction(), resultSelector.getFunction(), comparer).asQueryable(); }
public <TKey, TResult> Queryable<TResult> groupByK( FunctionExpression<Function1<T, TKey>> keySelector, FunctionExpression<Function2<TKey, Enumerable<T>, TResult>> resultSelector) { return EnumerableDefaults.groupBy(getThis(), keySelector.getFunction(), resultSelector.getFunction()).asQueryable(); }
public <TCollection, TResult> Queryable<TResult> selectManyN( FunctionExpression<Function1<T, Enumerable<TCollection>>> collectionSelector, FunctionExpression<Function2<T, TCollection, TResult>> resultSelector) { return EnumerableDefaults.selectMany(getThis(), collectionSelector.getFunction(), resultSelector.getFunction()) .asQueryable(); }
public <TKey, TElement> Queryable<Grouping<TKey, TElement>> groupBy( FunctionExpression<Function1<T, TKey>> keySelector, FunctionExpression<Function1<T, TElement>> elementSelector, EqualityComparer<TKey> comparer) { return EnumerableDefaults.groupBy(getThis(), keySelector.getFunction(), elementSelector.getFunction(), comparer).asQueryable(); }
public <TKey, TResult> Queryable<TResult> groupByK( FunctionExpression<Function1<T, TKey>> keySelector, FunctionExpression<Function2<TKey, Enumerable<T>, TResult>> resultSelector, EqualityComparer<TKey> comparer) { return EnumerableDefaults.groupBy(getThis(), keySelector.getFunction(), resultSelector.getFunction(), comparer).asQueryable(); }
public Enumerator<T> enumerator() { return new EnumerableDefaults.SkipWhileEnumerator<>( source.enumerator(), predicate.getFunction()); } };
public <TAccumulate> TAccumulate aggregate(TAccumulate seed, FunctionExpression<Function2<TAccumulate, T, TAccumulate>> selector) { return EnumerableDefaults.aggregate(getThis(), seed, selector.getFunction()); }
public Double sumNullableDouble( FunctionExpression<NullableDoubleFunction1<T>> selector) { return EnumerableDefaults.sum(getThis(), selector.getFunction()); }
public <TKey> OrderedQueryable<T> orderByDescending( FunctionExpression<Function1<T, TKey>> keySelector, Comparator<TKey> comparator) { return EnumerableDefaults.asOrderedQueryable( EnumerableDefaults.orderByDescending(getThis(), keySelector.getFunction(), comparator)); }
public <TResult> Queryable<TResult> selectN( FunctionExpression<Function2<T, Integer, TResult>> selector) { return EnumerableDefaults.select(getThis(), selector.getFunction()) .asQueryable(); }
public Queryable<T> where( FunctionExpression<? extends Predicate1<T>> predicate) { return EnumerableDefaults.where(getThis(), predicate.getFunction()) .asQueryable(); }
public <T1, TResult> Queryable<TResult> zip(Enumerable<T1> source1, FunctionExpression<Function2<T, T1, TResult>> resultSelector) { return EnumerableDefaults.zip(getThis(), source1, resultSelector.getFunction()).asQueryable(); }
public <TKey extends Comparable> OrderedQueryable<T> orderBy( FunctionExpression<Function1<T, TKey>> keySelector) { return EnumerableDefaults.asOrderedQueryable( EnumerableDefaults.orderBy(getThis(), keySelector.getFunction())); }
public <TResult> Queryable<TResult> select( FunctionExpression<Function1<T, TResult>> selector) { return EnumerableDefaults.select(getThis(), selector.getFunction()) .asQueryable(); }
public <TResult> Queryable<TResult> selectMany( FunctionExpression<Function1<T, Enumerable<TResult>>> selector) { return EnumerableDefaults.selectMany(getThis(), selector.getFunction()) .asQueryable(); }
public <TResult> Queryable<TResult> selectManyN( FunctionExpression<Function2<T, Integer, Enumerable<TResult>>> selector) { return EnumerableDefaults.selectMany(getThis(), selector.getFunction()) .asQueryable(); }
public Queryable<T> skipWhileN( FunctionExpression<Predicate2<T, Integer>> predicate) { return EnumerableDefaults.skipWhile(getThis(), predicate.getFunction()) .asQueryable(); }
public Queryable<T> skipWhile(FunctionExpression<Predicate1<T>> predicate) { return EnumerableDefaults.skipWhile(getThis(), predicate.getFunction()) .asQueryable(); }
public Queryable<T> takeWhile(FunctionExpression<Predicate1<T>> predicate) { return EnumerableDefaults.takeWhile(getThis(), predicate.getFunction()) .asQueryable(); }