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.
|
* Removes the last element from an array and returns it.
|
||||||
*/
|
*/
|
||||||
pop(): T | undefined;
|
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.
|
* Combines two or more arrays.
|
||||||
* @param items Additional items to add to the end of array1.
|
* @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