1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
=== tests/cases/compiler/genericSpecializationToTypeLiteral1.ts ===
interface IEnumerable<T> {
zip<TResult>(second: IEnumerable<T>, resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>;
>zip : { <TResult>(second: IEnumerable<T>, resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(second: T[], resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(...params: any[]): IEnumerable<TResult>; }
>second : IEnumerable<T>
>resultSelector : (first: T, second: T, index: number) => TResult
>first : T
>second : T
>index : number
zip<TResult>(second: T[], resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>;
>zip : { <TResult>(second: IEnumerable<T>, resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(second: T[], resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(...params: any[]): IEnumerable<TResult>; }
>second : T[]
>resultSelector : (first: T, second: T, index: number) => TResult
>first : T
>second : T
>index : number
zip<TResult>(...params: any[]): IEnumerable<TResult>; // last one is selector
>zip : { <TResult>(second: IEnumerable<T>, resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(second: T[], resultSelector: (first: T, second: T, index: number) => TResult): IEnumerable<TResult>; <TResult>(...params: any[]): IEnumerable<TResult>; }
>params : any[]
merge<TResult>(...params: IEnumerable<T>[]): IEnumerable<T>;
>merge : { <TResult>(...params: IEnumerable<T>[]): IEnumerable<T>; <TResult>(...params: T[][]): IEnumerable<T>; }
>params : IEnumerable<T>[]
merge<TResult>(...params: T[][]): IEnumerable<T>;
>merge : { <TResult>(...params: IEnumerable<T>[]): IEnumerable<T>; <TResult>(...params: T[][]): IEnumerable<T>; }
>params : T[][]
concat(...sequences: IEnumerable<T>[]): IEnumerable<T>;
>concat : { (...sequences: IEnumerable<T>[]): IEnumerable<T>; (...sequences: T[]): IEnumerable<T>; }
>sequences : IEnumerable<T>[]
concat(...sequences: T[]): IEnumerable<T>;
>concat : { (...sequences: IEnumerable<T>[]): IEnumerable<T>; (...sequences: T[]): IEnumerable<T>; }
>sequences : T[]
insert(index: number, second: IEnumerable<T>): IEnumerable<T>;
>insert : (index: number, second: IEnumerable<T>) => IEnumerable<T>
>index : number
>second : IEnumerable<T>
sequenceEqual(second: IEnumerable<T>): boolean;
>sequenceEqual : { (second: IEnumerable<T>): boolean; <TCompare>(second: IEnumerable<T>, compareSelector: (element: T) => TCompare): boolean; (second: T[]): boolean; <TCompare>(second: T[], compareSelector: (element: T) => TCompare): boolean; }
>second : IEnumerable<T>
sequenceEqual<TCompare>(second: IEnumerable<T>, compareSelector: (element: T) => TCompare): boolean;
>sequenceEqual : { (second: IEnumerable<T>): boolean; <TCompare>(second: IEnumerable<T>, compareSelector: (element: T) => TCompare): boolean; (second: T[]): boolean; <TCompare>(second: T[], compareSelector: (element: T) => TCompare): boolean; }
>second : IEnumerable<T>
>compareSelector : (element: T) => TCompare
>element : T
sequenceEqual(second: T[]): boolean;
>sequenceEqual : { (second: IEnumerable<T>): boolean; <TCompare>(second: IEnumerable<T>, compareSelector: (element: T) => TCompare): boolean; (second: T[]): boolean; <TCompare>(second: T[], compareSelector: (element: T) => TCompare): boolean; }
>second : T[]
sequenceEqual<TCompare>(second: T[], compareSelector: (element: T) => TCompare): boolean;
>sequenceEqual : { (second: IEnumerable<T>): boolean; <TCompare>(second: IEnumerable<T>, compareSelector: (element: T) => TCompare): boolean; (second: T[]): boolean; <TCompare>(second: T[], compareSelector: (element: T) => TCompare): boolean; }
>second : T[]
>compareSelector : (element: T) => TCompare
>element : T
toDictionary<TKey>(keySelector: (element: T) => TKey): IDictionary<TKey, any>;
>toDictionary : { <TKey>(keySelector: (element: T) => TKey): IDictionary<TKey, any>; <TKey, TValue>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue): IDictionary<TKey, TValue>; <TKey, TValue, TCompare>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue, compareSelector: (key: TKey) => TCompare): IDictionary<TKey, TValue>; }
>keySelector : (element: T) => TKey
>element : T
toDictionary<TKey, TValue>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue): IDictionary<TKey, TValue>;
>toDictionary : { <TKey>(keySelector: (element: T) => TKey): IDictionary<TKey, any>; <TKey, TValue>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue): IDictionary<TKey, TValue>; <TKey, TValue, TCompare>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue, compareSelector: (key: TKey) => TCompare): IDictionary<TKey, TValue>; }
>keySelector : (element: T) => TKey
>element : T
>elementSelector : (element: T) => TValue
>element : T
toDictionary<TKey, TValue, TCompare>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue, compareSelector: (key: TKey) => TCompare): IDictionary<TKey, TValue>;
>toDictionary : { <TKey>(keySelector: (element: T) => TKey): IDictionary<TKey, any>; <TKey, TValue>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue): IDictionary<TKey, TValue>; <TKey, TValue, TCompare>(keySelector: (element: T) => TKey, elementSelector: (element: T) => TValue, compareSelector: (key: TKey) => TCompare): IDictionary<TKey, TValue>; }
>keySelector : (element: T) => TKey
>element : T
>elementSelector : (element: T) => TValue
>element : T
>compareSelector : (key: TKey) => TCompare
>key : TKey
}
interface IDictionary<TKey, TValue> {
toEnumerable(): IEnumerable<{ key: TKey; value: TValue }>;
>toEnumerable : () => IEnumerable<{ key: TKey; value: TValue;}>
>key : TKey
>value : TValue
}
|