Re-add concat overload to support inferring tuples
This commit is contained in:
parent
c578367c26
commit
09f518243d
5
src/lib/es5.d.ts
vendored
5
src/lib/es5.d.ts
vendored
|
@ -1108,6 +1108,11 @@ interface Array<T> {
|
|||
* Removes the last element from an array and returns it.
|
||||
*/
|
||||
pop(): T | undefined;
|
||||
/**
|
||||
* Combines two or more arrays.
|
||||
* @param items Additional items to add to the end of array1.
|
||||
*/
|
||||
concat(...items: T[][]): T[];
|
||||
/**
|
||||
* Combines two or more arrays.
|
||||
* @param items Additional items to add to the end of array1.
|
||||
|
|
8
tests/baselines/reference/concatTuples.js
Normal file
8
tests/baselines/reference/concatTuples.js
Normal file
|
@ -0,0 +1,8 @@
|
|||
//// [concatTuples.ts]
|
||||
let ijs: [number, number][] = [[1, 2]];
|
||||
ijs = ijs.concat([[3, 4], [5, 6]]);
|
||||
|
||||
|
||||
//// [concatTuples.js]
|
||||
var ijs = [[1, 2]];
|
||||
ijs = ijs.concat([[3, 4], [5, 6]]);
|
10
tests/baselines/reference/concatTuples.symbols
Normal file
10
tests/baselines/reference/concatTuples.symbols
Normal file
|
@ -0,0 +1,10 @@
|
|||
=== tests/cases/compiler/concatTuples.ts ===
|
||||
let ijs: [number, number][] = [[1, 2]];
|
||||
>ijs : Symbol(ijs, Decl(concatTuples.ts, 0, 3))
|
||||
|
||||
ijs = ijs.concat([[3, 4], [5, 6]]);
|
||||
>ijs : Symbol(ijs, Decl(concatTuples.ts, 0, 3))
|
||||
>ijs.concat : Symbol(Array.concat, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
|
||||
>ijs : Symbol(ijs, Decl(concatTuples.ts, 0, 3))
|
||||
>concat : Symbol(Array.concat, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
|
||||
|
23
tests/baselines/reference/concatTuples.types
Normal file
23
tests/baselines/reference/concatTuples.types
Normal file
|
@ -0,0 +1,23 @@
|
|||
=== tests/cases/compiler/concatTuples.ts ===
|
||||
let ijs: [number, number][] = [[1, 2]];
|
||||
>ijs : [number, number][]
|
||||
>[[1, 2]] : [number, number][]
|
||||
>[1, 2] : [number, number]
|
||||
>1 : number
|
||||
>2 : number
|
||||
|
||||
ijs = ijs.concat([[3, 4], [5, 6]]);
|
||||
>ijs = ijs.concat([[3, 4], [5, 6]]) : [number, number][]
|
||||
>ijs : [number, number][]
|
||||
>ijs.concat([[3, 4], [5, 6]]) : [number, number][]
|
||||
>ijs.concat : { (...items: [number, number][][]): [number, number][]; (...items: ([number, number] | [number, number][])[]): [number, number][]; }
|
||||
>ijs : [number, number][]
|
||||
>concat : { (...items: [number, number][][]): [number, number][]; (...items: ([number, number] | [number, number][])[]): [number, number][]; }
|
||||
>[[3, 4], [5, 6]] : [number, number][]
|
||||
>[3, 4] : [number, number]
|
||||
>3 : number
|
||||
>4 : number
|
||||
>[5, 6] : [number, number]
|
||||
>5 : number
|
||||
>6 : number
|
||||
|
2
tests/cases/compiler/concatTuples.ts
Normal file
2
tests/cases/compiler/concatTuples.ts
Normal file
|
@ -0,0 +1,2 @@
|
|||
let ijs: [number, number][] = [[1, 2]];
|
||||
ijs = ijs.concat([[3, 4], [5, 6]]);
|
Loading…
Reference in a new issue