Options
All
  • Public
  • Public/Protected
  • All
Menu

Enumerable is a wrapper class that allows more primitive enumerables to exhibit LINQ behavior.

In C# Enumerable is not an instance but has extensions for IEnumerable. In this case, we use Enumerable as the underlying class that is being chained.

Type parameters

  • T

Hierarchy

Implements

Index

Constructors

constructor

  • new Enumerable(enumeratorFactory: function, finalizer?: function, isEndless?: boolean): Enumerable

Properties

Protected _disposableObjectName

_disposableObjectName: string

Protected _enumeratorFactory

_enumeratorFactory: function

Type declaration

Protected _isEndless

_isEndless: boolean

Accessors

isEndless

  • get isEndless(): boolean

wasDisposed

  • get wasDisposed(): boolean

Methods

Protected _choose

Protected _onDispose

  • _onDispose(): void

Protected _selectMany

  • Type parameters

    • TElement

    • TResult

    Parameters

    • collectionSelector: Selector<T, IEnumerableOrArray>
    • Optional resultSelector: function
        • (collection: T, element: TElement): TResult
        • Parameters

          • collection: T
          • element: TElement

          Returns TResult

    Returns Enumerable<TResult>

aggregate

  • aggregate(func: function, seed?: T): T
  • Parameters

    • func: function
        • (a: T, b: T): T
        • Parameters

          • a: T
          • b: T

          Returns T

    • Optional seed: T

    Returns T

all

alternate

  • alternate(...sequence: T[])

alternateMultiple

alternateSingle

  • alternateSingle(value: T)

any

asEnumerable

  • asEnumerable()

average

  • average(selector?: Selector<T, number>): number
  • Parameters

    • Default value selector: Selector<T, number> = Type.numberOrNaN

    Returns number

buffer

catchError

  • catchError(handler: function)
  • Parameters

    • handler: function
        • (e: any): void
        • Parameters

          • e: any

          Returns void

choose

concat

contains

  • contains<TCompare>(value: T, compareSelector?: Selector<T, TCompare>): boolean
  • Type parameters

    • TCompare

    Parameters

    • value: T
    • Optional compareSelector: Selector<T, TCompare>

    Returns boolean

copyTo

  • copyTo(target: T[], index?: number, count?: number): T[]
  • Parameters

    • target: T[]
    • Default value index: number = 0
    • Default value count: number = Infinity

    Returns T[]

count

defaultIfEmpty

  • defaultIfEmpty(defaultValue?: T)

dispose

  • dispose(): void

distinct

  • distinct(compareSelector?: function)
  • Parameters

    • Optional compareSelector: function
        • (value: T): T
        • Parameters

          • value: T

          Returns T

distinctUntilChanged

  • distinctUntilChanged<TCompare>(compareSelector?: Selector<T, TCompare>)

doAction

  • Similar to forEach, but executes an action for each time a value is enumerated. If the action explicitly returns false or 0 (EnumerationAction.Break), the enumeration will complete. If it returns a 2 (EnumerationAction.Skip) it will move on to the next item. This also automatically handles disposing the enumerator.

    Parameters

elementAt

  • elementAt(index: number): T

elementAtOrDefault

  • elementAtOrDefault(index: number, defaultValue?: T): T

every

except

finallyAction

  • finallyAction(action: function)

first

  • first(): T

firstOrDefault

  • firstOrDefault(defaultValue?: T): T

flatten

forEach

force

  • force(): void

getEnumerator

groupBy

groupJoin

  • Type parameters

    • TInner

    • TKey

    • TResult

    • TCompare

    Parameters

    • inner: IEnumerableOrArray
    • outerKeySelector: Selector<T, TKey>
    • innerKeySelector: Selector<TInner, TKey>
    • resultSelector: function
        • (outer: T, inner: TInner[]): TResult
        • Parameters

          • outer: T
          • inner: TInner[]

          Returns TResult

    • Default value compareSelector: Selector<TKey, TCompare> = Functions.Identity

    Returns Enumerable<TResult>

indexOf

  • indexOf<TCompare>(value: T, compareSelector?: Selector<T, TCompare>): number
  • Type parameters

    • TCompare

    Parameters

    • value: T
    • Optional compareSelector: Selector<T, TCompare>

    Returns number

insertAt

intersect

isEmpty

  • isEmpty(): boolean

join

  • Type parameters

    • TInner

    • TKey

    • TResult

    • TCompare

    Parameters

    • inner: IEnumerableOrArray
    • outerKeySelector: Selector<T, TKey>
    • innerKeySelector: Selector<TInner, TKey>
    • resultSelector: function
        • (outer: T, inner: TInner): TResult
        • Parameters

          • outer: T
          • inner: TInner

          Returns TResult

    • Default value compareSelector: Selector<TKey, TCompare> = Functions.Identity

    Returns Enumerable<TResult>

last

  • last(): T

lastIndexOf

  • lastIndexOf<TCompare>(value: T, compareSelector?: Selector<T, TCompare>): number
  • Type parameters

    • TCompare

    Parameters

    • value: T
    • Optional compareSelector: Selector<T, TCompare>

    Returns number

lastOrDefault

  • lastOrDefault(defaultValue?: T): T
  • Parameters

    • Default value defaultValue: T = null

    Returns T

max

  • max(): T
  • Returns T

maxBy

  • maxBy<TCompare>(keySelector?: Selector<T, TCompare>): T
  • Type parameters

    • TCompare

    Parameters

    • Default value keySelector: Selector<T, TCompare> = Functions.Identity

    Returns T

memoize

  • memoize()

merge

min

  • min(): T
  • Returns T

minBy

  • minBy<TCompare>(keySelector?: Selector<T, TCompare>): T
  • Type parameters

    • TCompare

    Parameters

    • Default value keySelector: Selector<T, TCompare> = Functions.Identity

    Returns T

ofType

orderBy

orderByDescending

orderUsing

orderUsingReversed

pairwise

  • pairwise<TSelect>(selector: function): Enumerable<TSelect>
  • Type parameters

    • TSelect

    Parameters

    • selector: function
        • (prev: T, current: T): TSelect
        • Parameters

          • prev: T
          • current: T

          Returns TSelect

    Returns Enumerable<TSelect>

partitionBy

  • Type parameters

    • TKey

    Parameters

    Returns Enumerable<IGrouping<TKey, T>>

  • Type parameters

    • TKey

    • TElement

    • TCompare

    Parameters

    • keySelector: Selector<T, TKey>
    • elementSelector: Selector<T, TElement>
    • Optional resultSelector: function
        • (key: TKey, element: TElement[]): IGrouping<TKey, TElement>
        • Parameters

          • key: TKey
          • element: TElement[]

          Returns IGrouping<TKey, TElement>

    • Optional compareSelector: Selector<TKey, TCompare>

    Returns Enumerable<IGrouping<TKey, TElement>>

product

  • product(selector?: Selector<T, number>): number
  • Parameters

    • Default value selector: Selector<T, number> = Type.numberOrNaN

    Returns number

quotient

  • quotient(selector?: Selector<T, number>): number
  • Takes the first number and divides it by all following.

    Parameters

    • Default value selector: Selector<T, number> = Type.numberOrNaN

    Returns number

reverse

  • reverse()

scan

  • scan(func: function, seed?: T)
  • Parameters

    • func: function
        • (a: T, b: T): T
        • Parameters

          • a: T
          • b: T

          Returns T

    • Optional seed: T

select

selectMany

sequenceEqual

share

  • share()

shuffle

  • shuffle()

single

  • single(): T

singleOrDefault

  • singleOrDefault(defaultValue?: T): T

skip

  • skip(count: number)

skipToLast

  • skipToLast(count: number)

skipWhile

some

sum

  • sum(selector?: Selector<T, number>): number
  • Parameters

    • Default value selector: Selector<T, number> = Type.numberOrNaN

    Returns number

take

takeExceptLast

  • takeExceptLast(count?: number)

takeUntil

  • takeUntil(predicate: Predicate<T>, includeUntilValue?: boolean)

takeWhile

Protected throwIfDisposed

  • throwIfDisposed(message?: string, objectName?: string): boolean
  • Parameters

    • Optional message: string
    • Default value objectName: string = this._disposableObjectName

    Returns boolean

toArray

toDictionary

  • toDictionary<TKey, TValue, TCompare>(keySelector: Selector<T, TKey>, elementSelector: Selector<T, TValue>, compareSelector?: Selector<TKey, TCompare>): IDictionary<TKey, TValue>
  • Type parameters

    • TKey

    • TValue

    • TCompare

    Parameters

    • keySelector: Selector<T, TKey>
    • elementSelector: Selector<T, TValue>
    • Default value compareSelector: Selector<TKey, TCompare> = Functions.Identity

    Returns IDictionary<TKey, TValue>

toJoinedString

  • toJoinedString(separator?: string, selector?: Selector<T, string>): string
  • Parameters

    • Default value separator: string = ""
    • Default value selector: Selector<T, string> = Functions.Identity

    Returns string

toLookup

  • toLookup<TKey, TValue, TCompare>(keySelector: Selector<T, TKey>, elementSelector?: Selector<T, TValue>, compareSelector?: Selector<TKey, TCompare>): ILookup<TKey, TValue>
  • Type parameters

    • TKey

    • TValue

    • TCompare

    Parameters

    • keySelector: Selector<T, TKey>
    • Default value elementSelector: Selector<T, TValue> = Functions.Identity
    • Default value compareSelector: Selector<TKey, TCompare> = Functions.Identity

    Returns ILookup<TKey, TValue>

toMap

  • toMap<TResult>(keySelector: Selector<T, string>, elementSelector: Selector<T, TResult>): IMap<TResult>
  • Type parameters

    • TResult

    Parameters

    Returns IMap<TResult>

traverseBreadthFirst

  • traverseBreadthFirst(childrenSelector: function): Enumerable<T>
  • traverseBreadthFirst<TNode>(childrenSelector: function): Enumerable<TNode>
  • traverseBreadthFirst<TResult>(childrenSelector: function, resultSelector?: function): Enumerable<TResult>
  • traverseBreadthFirst<TNode, TResult>(childrenSelector: function, resultSelector?: function): Enumerable<TResult>

traverseDepthFirst

  • traverseDepthFirst(childrenSelector: function): Enumerable<T>
  • traverseDepthFirst<TNode>(childrenSelector: function): Enumerable<TNode>
  • traverseDepthFirst<TResult>(childrenSelector: function, resultSelector?: function): Enumerable<TResult>
  • traverseDepthFirst<TNode, TResult>(childrenSelector: function, resultSelector?: function): Enumerable<TResult>

union

where

zip

  • Type parameters

    • TSecond

    • TResult

    Parameters

    • second: IEnumerableOrArray
    • resultSelector: function
        • (first: T, second: TSecond, index?: number): TResult
        • Parameters

          • first: T
          • second: TSecond
          • Optional index: number

          Returns TResult

    Returns Enumerable<TResult>

zipMultiple

  • zipMultiple<TSecond, TResult>(second: IArray, resultSelector: function): Enumerable<TResult>
  • Type parameters

    • TSecond

    • TResult

    Parameters

    • second: IArray
    • resultSelector: function
        • (first: T, second: TSecond, index?: number): TResult
        • Parameters

          • first: T
          • second: TSecond
          • Optional index: number

          Returns TResult

    Returns Enumerable<TResult>

Static choice

Static chooseFrom

  • Type parameters

    • T

    Parameters

    • Rest ...args: T[]

    Returns InfiniteEnumerable<T>

Static cycle

Static cycleThrough

  • Type parameters

    • T

    Parameters

    • Rest ...args: T[]

    Returns InfiniteEnumerable<T>

Static empty

  • Type parameters

    • T

    Returns FiniteEnumerable<T>

Static forEach

  • Type parameters

    • T

    Parameters

    • enumerable: IEnumerableOrArray
    • action: function
        • (element: T, index?: number): any
        • Parameters

          • element: T
          • Optional index: number

          Returns any

    • Default value max: number = Infinity

    Returns number

Static from

  • Universal method for converting a primitive enumerables into a LINQ enabled ones.

    Is not limited to TypeScript usages.

    Type parameters

    • T

    Parameters

    Returns Enumerable<T>

Static fromAny

  • Parameters

    • source: any

    Returns Enumerable<any>

  • Type parameters

    • T

    Parameters

    Returns Enumerable<T>

  • Type parameters

    • T

    Parameters

    • source: any
    • Optional defaultEnumerable: Enumerable<T>

    Returns Enumerable<T>

Static fromOrEmpty

Static generate

  • Type parameters

    • T

    Parameters

    • factory: function
        • (index?: number): T
        • Parameters

          • Optional index: number

          Returns T

    Returns InfiniteEnumerable<T>

  • Type parameters

    • T

    Parameters

    • factory: function
        • (index?: number): T
        • Parameters

          • Optional index: number

          Returns T

    • count: number

    Returns FiniteEnumerable<T>

Static make

  • Creates an enumerable of one element.

    Type parameters

    • T

    Parameters

    • element: T

    Returns FiniteEnumerable<T>

Static map

  • Type parameters

    • T

    • TResult

    Parameters

    Returns TResult[]

Static matches

  • matches(input: string, pattern: any, flags?: string): FiniteEnumerable<RegExpExecArray>
  • Parameters

    • input: string
    • pattern: any
    • Default value flags: string = ""

    Returns FiniteEnumerable<RegExpExecArray>

Static max

  • Parameters

    Returns number

Static min

  • Parameters

    Returns number

Static range

  • Parameters

    • start: number
    • count: number
    • Default value step: number = 1

    Returns FiniteEnumerable<number>

Static rangeDown

  • rangeDown(start: number, count: number, step?: number): FiniteEnumerable<number>
  • Parameters

    • start: number
    • count: number
    • Default value step: number = 1

    Returns FiniteEnumerable<number>

Static rangeTo

  • Parameters

    • start: number
    • to: number
    • Default value step: number = 1

    Returns FiniteEnumerable<number>

Static repeat

  • Type parameters

    • T

    Parameters

    • element: T

    Returns InfiniteEnumerable<T>

  • Type parameters

    • T

    Parameters

    • element: T
    • count: number

    Returns FiniteEnumerable<T>

Static repeatWithFinalize

  • repeatWithFinalize<T>(initializer: function, finalizer: function): InfiniteEnumerable<T>
  • Type parameters

    • T

    Parameters

    • initializer: function
        • (): T
        • Returns T

    • finalizer: function
        • (element: T): void
        • Parameters

          • element: T

          Returns void

    Returns InfiniteEnumerable<T>

Static toArray

  • Static helper for converting enumerables to an array.

    Type parameters

    • T

    Parameters

    Returns T[]

Static toInfinity

  • Parameters

    • Default value start: number = 0
    • Default value step: number = 1

    Returns InfiniteEnumerable<number>

Static toNegativeInfinity

  • Parameters

    • Default value start: number = 0
    • Default value step: number = 1

    Returns InfiniteEnumerable<number>

Static unfold

  • Type parameters

    • T

    Parameters

    • seed: T
    • valueFactory: Selector<T, T>
    • Default value skipSeed: Boolean = false

    Returns InfiniteEnumerable<T>

Static weave

  • Takes any set of collections of the same type and weaves them together.

    Type parameters

    • T

    Parameters

    Returns Enumerable<T>

Generated using TypeDoc