import { Comparer, IEnumerableFactory, IOrderedEnumerable } from '../../types'; import { orderByGenerator } from '../../utilities/utilityFunctions'; export function applyOrderBy( factory: IEnumerableFactory, src: Iterable, ascending: boolean, selector: (item: TSource) => TKey, comparer?: Comparer ): IOrderedEnumerable { return factory.createOrderedEnumerable(() => orderByGenerator(src, ascending, selector, comparer)); }