mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
update test
This commit is contained in:
@@ -23,15 +23,9 @@ tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(106,5):
|
||||
Property 'x' is missing in type '{ y: false; }'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(138,6): error TS2322: Type 'string' is not assignable to type 'number'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(138,9): error TS2322: Type 'number' is not assignable to type 'string'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(158,16): error TS2403: Subsequent variable declarations must have the same type. Variable 'a' must be of type 'number[]', but here has type '[number, number]'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(159,19): error TS2403: Subsequent variable declarations must have the same type. Variable 'a' must be of type 'number[]', but here has type '[number]'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(160,22): error TS2403: Subsequent variable declarations must have the same type. Variable 'a3' must be of type 'any[]', but here has type '[]'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(176,16): error TS2403: Subsequent variable declarations must have the same type. Variable 'a1' must be of type '(string | boolean)[]', but here has type '[string, boolean]'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(177,19): error TS2403: Subsequent variable declarations must have the same type. Variable 'a2' must be of type 'boolean[]', but here has type '[boolean]'.
|
||||
tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(178,22): error TS2403: Subsequent variable declarations must have the same type. Variable 'a3' must be of type 'any[]', but here has type '[]'.
|
||||
|
||||
|
||||
==== tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts (28 errors) ====
|
||||
==== tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts (22 errors) ====
|
||||
function f0() {
|
||||
var [] = [1, "hello"];
|
||||
var [x] = [1, "hello"];
|
||||
@@ -229,49 +223,39 @@ tests/cases/conformance/es6/destructuring/declarationsAndAssignments.ts(178,22):
|
||||
var x = ([a, b] = [1, 2]);
|
||||
}
|
||||
|
||||
function f20() {
|
||||
function f20(v: [number, number, number]) {
|
||||
var x: number;
|
||||
var y: number;
|
||||
var z: number;
|
||||
var a: number[];
|
||||
var a3: any[];
|
||||
var [...a] = [1, 2, 3];
|
||||
var [x, ...a] = [1, 2, 3];
|
||||
~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a' must be of type 'number[]', but here has type '[number, number]'.
|
||||
var [x, y, ...a] = [1, 2, 3];
|
||||
~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a' must be of type 'number[]', but here has type '[number]'.
|
||||
var [x, y, z, ...a3] = [1, 2, 3];
|
||||
~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a3' must be of type 'any[]', but here has type '[]'.
|
||||
[...a] = [1, 2, 3];
|
||||
[x, ...a] = [1, 2, 3];
|
||||
[x, y, ...a] = [1, 2, 3];
|
||||
[x, y, z, ...a3] = [1, 2, 3];
|
||||
var a0: [];
|
||||
var a1: [number];
|
||||
var a2: [number, number];
|
||||
var a3: [number, number, number];
|
||||
var [...a3] = v;
|
||||
var [x, ...a2] = v;
|
||||
var [x, y, ...a1] = v;
|
||||
var [x, y, z, ...a0] = v;
|
||||
[...a3] = v;
|
||||
[x, ...a2] = v;
|
||||
[x, y, ...a1] = v;
|
||||
[x, y, z, ...a0] = v;
|
||||
}
|
||||
|
||||
function f21() {
|
||||
function f21(v: [number, string, boolean]) {
|
||||
var x: number;
|
||||
var y: string;
|
||||
var z: boolean;
|
||||
var a0: (number | string | boolean)[];
|
||||
var a1: (string | boolean)[];
|
||||
var a2: boolean[];
|
||||
var a3: any[];
|
||||
var [...a0] = [1, "hello", true];
|
||||
var [x, ...a1] = [1, "hello", true];
|
||||
~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a1' must be of type '(string | boolean)[]', but here has type '[string, boolean]'.
|
||||
var [x, y, ...a2] = [1, "hello", true];
|
||||
~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a2' must be of type 'boolean[]', but here has type '[boolean]'.
|
||||
var [x, y, z, ...a3] = [1, "hello", true];
|
||||
~~
|
||||
!!! error TS2403: Subsequent variable declarations must have the same type. Variable 'a3' must be of type 'any[]', but here has type '[]'.
|
||||
[...a0] = [1, "hello", true];
|
||||
[x, ...a1] = [1, "hello", true];
|
||||
[x, y, ...a2] = [1, "hello", true];
|
||||
[x, y, z, ...a3] = [1, "hello", true];
|
||||
var a0: [number, string, boolean];
|
||||
var a1: [string, boolean];
|
||||
var a2: [boolean];
|
||||
var a3: [];
|
||||
var [...a0] = v;
|
||||
var [x, ...a1] = v;
|
||||
var [x, y, ...a2] = v;
|
||||
var [x, y, z, ...a3] = v;
|
||||
[...a0] = v;
|
||||
[x, ...a1] = v;
|
||||
[x, y, ...a2] = v;
|
||||
[x, y, z, ...a3] = v;
|
||||
}
|
||||
|
||||
@@ -149,38 +149,40 @@ function f19() {
|
||||
var x = ([a, b] = [1, 2]);
|
||||
}
|
||||
|
||||
function f20() {
|
||||
function f20(v: [number, number, number]) {
|
||||
var x: number;
|
||||
var y: number;
|
||||
var z: number;
|
||||
var a: number[];
|
||||
var a3: any[];
|
||||
var [...a] = [1, 2, 3];
|
||||
var [x, ...a] = [1, 2, 3];
|
||||
var [x, y, ...a] = [1, 2, 3];
|
||||
var [x, y, z, ...a3] = [1, 2, 3];
|
||||
[...a] = [1, 2, 3];
|
||||
[x, ...a] = [1, 2, 3];
|
||||
[x, y, ...a] = [1, 2, 3];
|
||||
[x, y, z, ...a3] = [1, 2, 3];
|
||||
var a0: [];
|
||||
var a1: [number];
|
||||
var a2: [number, number];
|
||||
var a3: [number, number, number];
|
||||
var [...a3] = v;
|
||||
var [x, ...a2] = v;
|
||||
var [x, y, ...a1] = v;
|
||||
var [x, y, z, ...a0] = v;
|
||||
[...a3] = v;
|
||||
[x, ...a2] = v;
|
||||
[x, y, ...a1] = v;
|
||||
[x, y, z, ...a0] = v;
|
||||
}
|
||||
|
||||
function f21() {
|
||||
function f21(v: [number, string, boolean]) {
|
||||
var x: number;
|
||||
var y: string;
|
||||
var z: boolean;
|
||||
var a0: (number | string | boolean)[];
|
||||
var a1: (string | boolean)[];
|
||||
var a2: boolean[];
|
||||
var a3: any[];
|
||||
var [...a0] = [1, "hello", true];
|
||||
var [x, ...a1] = [1, "hello", true];
|
||||
var [x, y, ...a2] = [1, "hello", true];
|
||||
var [x, y, z, ...a3] = [1, "hello", true];
|
||||
[...a0] = [1, "hello", true];
|
||||
[x, ...a1] = [1, "hello", true];
|
||||
[x, y, ...a2] = [1, "hello", true];
|
||||
[x, y, z, ...a3] = [1, "hello", true];
|
||||
var a0: [number, string, boolean];
|
||||
var a1: [string, boolean];
|
||||
var a2: [boolean];
|
||||
var a3: [];
|
||||
var [...a0] = v;
|
||||
var [x, ...a1] = v;
|
||||
var [x, y, ...a2] = v;
|
||||
var [x, y, z, ...a3] = v;
|
||||
[...a0] = v;
|
||||
[x, ...a1] = v;
|
||||
[x, y, ...a2] = v;
|
||||
[x, y, z, ...a3] = v;
|
||||
}
|
||||
|
||||
|
||||
@@ -320,24 +322,7 @@ function f19() {
|
||||
_d = [[2, 3]][0], _e = _d === void 0 ? [1, 2] : _d, a = _e[0], b = _e[1];
|
||||
var x = (_f = [1, 2], a = _f[0], b = _f[1], _f);
|
||||
}
|
||||
function f20() {
|
||||
var _a, _b, _c;
|
||||
var x;
|
||||
var y;
|
||||
var z;
|
||||
var a;
|
||||
var a3;
|
||||
var a = [1, 2, 3].slice(0);
|
||||
var _d = [1, 2, 3], x = _d[0], a = _d.slice(1);
|
||||
var _e = [1, 2, 3], x = _e[0], y = _e[1], a = _e.slice(2);
|
||||
var _f = [1, 2, 3], x = _f[0], y = _f[1], z = _f[2], a3 = _f.slice(3);
|
||||
a = [1, 2, 3].slice(0);
|
||||
_a = [1, 2, 3], x = _a[0], a = _a.slice(1);
|
||||
_b = [1, 2, 3], x = _b[0], y = _b[1], a = _b.slice(2);
|
||||
_c = [1, 2, 3], x = _c[0], y = _c[1], z = _c[2], a3 = _c.slice(3);
|
||||
}
|
||||
function f21() {
|
||||
var _a, _b, _c;
|
||||
function f20(v) {
|
||||
var x;
|
||||
var y;
|
||||
var z;
|
||||
@@ -345,12 +330,29 @@ function f21() {
|
||||
var a1;
|
||||
var a2;
|
||||
var a3;
|
||||
var a0 = [1, "hello", true].slice(0);
|
||||
var _d = [1, "hello", true], x = _d[0], a1 = _d.slice(1);
|
||||
var _e = [1, "hello", true], x = _e[0], y = _e[1], a2 = _e.slice(2);
|
||||
var _f = [1, "hello", true], x = _f[0], y = _f[1], z = _f[2], a3 = _f.slice(3);
|
||||
a0 = [1, "hello", true].slice(0);
|
||||
_a = [1, "hello", true], x = _a[0], a1 = _a.slice(1);
|
||||
_b = [1, "hello", true], x = _b[0], y = _b[1], a2 = _b.slice(2);
|
||||
_c = [1, "hello", true], x = _c[0], y = _c[1], z = _c[2], a3 = _c.slice(3);
|
||||
var a3 = v.slice(0);
|
||||
var x = v[0], a2 = v.slice(1);
|
||||
var x = v[0], y = v[1], a1 = v.slice(2);
|
||||
var x = v[0], y = v[1], z = v[2], a0 = v.slice(3);
|
||||
a3 = v.slice(0);
|
||||
x = v[0], a2 = v.slice(1);
|
||||
x = v[0], y = v[1], a1 = v.slice(2);
|
||||
x = v[0], y = v[1], z = v[2], a0 = v.slice(3);
|
||||
}
|
||||
function f21(v) {
|
||||
var x;
|
||||
var y;
|
||||
var z;
|
||||
var a0;
|
||||
var a1;
|
||||
var a2;
|
||||
var a3;
|
||||
var a0 = v.slice(0);
|
||||
var x = v[0], a1 = v.slice(1);
|
||||
var x = v[0], y = v[1], a2 = v.slice(2);
|
||||
var x = v[0], y = v[1], z = v[2], a3 = v.slice(3);
|
||||
a0 = v.slice(0);
|
||||
x = v[0], a1 = v.slice(1);
|
||||
x = v[0], y = v[1], a2 = v.slice(2);
|
||||
x = v[0], y = v[1], z = v[2], a3 = v.slice(3);
|
||||
}
|
||||
|
||||
@@ -471,119 +471,143 @@ function f19() {
|
||||
>b : Symbol(b, Decl(declarationsAndAssignments.ts, 142, 10))
|
||||
}
|
||||
|
||||
function f20() {
|
||||
function f20(v: [number, number, number]) {
|
||||
>f20 : Symbol(f20, Decl(declarationsAndAssignments.ts, 148, 1))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
var x: number;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
|
||||
var y: number;
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 158, 11), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 160, 11), Decl(declarationsAndAssignments.ts, 161, 11))
|
||||
|
||||
var z: number;
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 159, 14))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 161, 14))
|
||||
|
||||
var a: number[];
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var a0: [];
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 161, 17))
|
||||
|
||||
var a3: any[];
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 159, 17))
|
||||
var a1: [number];
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 160, 14))
|
||||
|
||||
var [...a] = [1, 2, 3];
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var a2: [number, number];
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 156, 7), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
|
||||
var [x, ...a] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var a3: [number, number, number];
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 157, 7), Decl(declarationsAndAssignments.ts, 158, 9))
|
||||
|
||||
var [x, y, ...a] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 158, 11), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var [...a3] = v;
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 157, 7), Decl(declarationsAndAssignments.ts, 158, 9))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
var [x, y, z, ...a3] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 158, 11), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 159, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 159, 17))
|
||||
var [x, ...a2] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 156, 7), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[...a] = [1, 2, 3];
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var [x, y, ...a1] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 160, 11), Decl(declarationsAndAssignments.ts, 161, 11))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 160, 14))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[x, ...a] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
var [x, y, z, ...a0] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 160, 11), Decl(declarationsAndAssignments.ts, 161, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 161, 14))
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 161, 17))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[x, y, ...a] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 158, 11), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>a : Symbol(a, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 156, 9), Decl(declarationsAndAssignments.ts, 157, 11), Decl(declarationsAndAssignments.ts, 158, 14))
|
||||
[...a3] = v;
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 157, 7), Decl(declarationsAndAssignments.ts, 158, 9))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[x, y, z, ...a3] = [1, 2, 3];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 157, 9), Decl(declarationsAndAssignments.ts, 158, 9), Decl(declarationsAndAssignments.ts, 159, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 158, 11), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 159, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 159, 17))
|
||||
[x, ...a2] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 156, 7), Decl(declarationsAndAssignments.ts, 159, 11))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[x, y, ...a1] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 160, 11), Decl(declarationsAndAssignments.ts, 161, 11))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 155, 7), Decl(declarationsAndAssignments.ts, 160, 14))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
|
||||
[x, y, z, ...a0] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 151, 7), Decl(declarationsAndAssignments.ts, 159, 9), Decl(declarationsAndAssignments.ts, 160, 9), Decl(declarationsAndAssignments.ts, 161, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 152, 7), Decl(declarationsAndAssignments.ts, 160, 11), Decl(declarationsAndAssignments.ts, 161, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 153, 7), Decl(declarationsAndAssignments.ts, 161, 14))
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 154, 7), Decl(declarationsAndAssignments.ts, 161, 17))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 150, 13))
|
||||
}
|
||||
|
||||
function f21() {
|
||||
>f21 : Symbol(f21, Decl(declarationsAndAssignments.ts, 164, 1))
|
||||
function f21(v: [number, string, boolean]) {
|
||||
>f21 : Symbol(f21, Decl(declarationsAndAssignments.ts, 166, 1))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
var x: number;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
|
||||
var y: string;
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 168, 7), Decl(declarationsAndAssignments.ts, 176, 11), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 178, 11), Decl(declarationsAndAssignments.ts, 179, 11))
|
||||
|
||||
var z: boolean;
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 14))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 179, 14))
|
||||
|
||||
var a0: (number | string | boolean)[];
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 174, 9))
|
||||
var a0: [number, string, boolean];
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 9))
|
||||
|
||||
var a1: (string | boolean)[];
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 175, 11))
|
||||
var a1: [string, boolean];
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
|
||||
var a2: boolean[];
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 14))
|
||||
var a2: [boolean];
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 174, 7), Decl(declarationsAndAssignments.ts, 178, 14))
|
||||
|
||||
var a3: any[];
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 17))
|
||||
var a3: [];
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 175, 7), Decl(declarationsAndAssignments.ts, 179, 17))
|
||||
|
||||
var [...a0] = [1, "hello", true];
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 174, 9))
|
||||
var [...a0] = v;
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 9))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
var [x, ...a1] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 175, 11))
|
||||
var [x, ...a1] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
var [x, y, ...a2] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 168, 7), Decl(declarationsAndAssignments.ts, 176, 11), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 14))
|
||||
var [x, y, ...a2] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 178, 11), Decl(declarationsAndAssignments.ts, 179, 11))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 174, 7), Decl(declarationsAndAssignments.ts, 178, 14))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
var [x, y, z, ...a3] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 168, 7), Decl(declarationsAndAssignments.ts, 176, 11), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 17))
|
||||
var [x, y, z, ...a3] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 178, 11), Decl(declarationsAndAssignments.ts, 179, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 179, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 175, 7), Decl(declarationsAndAssignments.ts, 179, 17))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
[...a0] = [1, "hello", true];
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 174, 9))
|
||||
[...a0] = v;
|
||||
>a0 : Symbol(a0, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 9))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
[x, ...a1] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 175, 11))
|
||||
[x, ...a1] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>a1 : Symbol(a1, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
[x, y, ...a2] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 168, 7), Decl(declarationsAndAssignments.ts, 176, 11), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 172, 7), Decl(declarationsAndAssignments.ts, 176, 14))
|
||||
[x, y, ...a2] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 178, 11), Decl(declarationsAndAssignments.ts, 179, 11))
|
||||
>a2 : Symbol(a2, Decl(declarationsAndAssignments.ts, 174, 7), Decl(declarationsAndAssignments.ts, 178, 14))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
|
||||
[x, y, z, ...a3] = [1, "hello", true];
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 167, 7), Decl(declarationsAndAssignments.ts, 175, 9), Decl(declarationsAndAssignments.ts, 176, 9), Decl(declarationsAndAssignments.ts, 177, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 168, 7), Decl(declarationsAndAssignments.ts, 176, 11), Decl(declarationsAndAssignments.ts, 177, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 173, 7), Decl(declarationsAndAssignments.ts, 177, 17))
|
||||
[x, y, z, ...a3] = v;
|
||||
>x : Symbol(x, Decl(declarationsAndAssignments.ts, 169, 7), Decl(declarationsAndAssignments.ts, 177, 9), Decl(declarationsAndAssignments.ts, 178, 9), Decl(declarationsAndAssignments.ts, 179, 9))
|
||||
>y : Symbol(y, Decl(declarationsAndAssignments.ts, 170, 7), Decl(declarationsAndAssignments.ts, 178, 11), Decl(declarationsAndAssignments.ts, 179, 11))
|
||||
>z : Symbol(z, Decl(declarationsAndAssignments.ts, 171, 7), Decl(declarationsAndAssignments.ts, 179, 14))
|
||||
>a3 : Symbol(a3, Decl(declarationsAndAssignments.ts, 175, 7), Decl(declarationsAndAssignments.ts, 179, 17))
|
||||
>v : Symbol(v, Decl(declarationsAndAssignments.ts, 168, 13))
|
||||
}
|
||||
|
||||
|
||||
@@ -678,8 +678,9 @@ function f19() {
|
||||
>2 : 2
|
||||
}
|
||||
|
||||
function f20() {
|
||||
>f20 : () => void
|
||||
function f20(v: [number, number, number]) {
|
||||
>f20 : (v: [number, number, number]) => void
|
||||
>v : [number, number, number]
|
||||
|
||||
var x: number;
|
||||
>x : number
|
||||
@@ -690,95 +691,78 @@ function f20() {
|
||||
var z: number;
|
||||
>z : number
|
||||
|
||||
var a: number[];
|
||||
>a : number[]
|
||||
var a0: [];
|
||||
>a0 : []
|
||||
|
||||
var a3: any[];
|
||||
>a3 : any[]
|
||||
var a1: [number];
|
||||
>a1 : [number]
|
||||
|
||||
var [...a] = [1, 2, 3];
|
||||
>a : number[]
|
||||
>[1, 2, 3] : number[]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
var a2: [number, number];
|
||||
>a2 : [number, number]
|
||||
|
||||
var [x, ...a] = [1, 2, 3];
|
||||
var a3: [number, number, number];
|
||||
>a3 : [number, number, number]
|
||||
|
||||
var [...a3] = v;
|
||||
>a3 : [number, number, number]
|
||||
>v : [number, number, number]
|
||||
|
||||
var [x, ...a2] = v;
|
||||
>x : number
|
||||
>a : number[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>a2 : [number, number]
|
||||
>v : [number, number, number]
|
||||
|
||||
var [x, y, ...a] = [1, 2, 3];
|
||||
var [x, y, ...a1] = v;
|
||||
>x : number
|
||||
>y : number
|
||||
>a : number[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>a1 : [number]
|
||||
>v : [number, number, number]
|
||||
|
||||
var [x, y, z, ...a3] = [1, 2, 3];
|
||||
var [x, y, z, ...a0] = v;
|
||||
>x : number
|
||||
>y : number
|
||||
>z : number
|
||||
>a3 : any[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>a0 : []
|
||||
>v : [number, number, number]
|
||||
|
||||
[...a] = [1, 2, 3];
|
||||
>[...a] = [1, 2, 3] : number[]
|
||||
>[...a] : number[]
|
||||
>...a : number
|
||||
>a : number[]
|
||||
>[1, 2, 3] : number[]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
[...a3] = v;
|
||||
>[...a3] = v : [number, number, number]
|
||||
>[...a3] : number[]
|
||||
>...a3 : number
|
||||
>a3 : [number, number, number]
|
||||
>v : [number, number, number]
|
||||
|
||||
[x, ...a] = [1, 2, 3];
|
||||
>[x, ...a] = [1, 2, 3] : [number, number, number]
|
||||
>[x, ...a] : [number, ...number[]]
|
||||
[x, ...a2] = v;
|
||||
>[x, ...a2] = v : [number, number, number]
|
||||
>[x, ...a2] : [number, ...number[]]
|
||||
>x : number
|
||||
>...a : number
|
||||
>a : number[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>...a2 : number
|
||||
>a2 : [number, number]
|
||||
>v : [number, number, number]
|
||||
|
||||
[x, y, ...a] = [1, 2, 3];
|
||||
>[x, y, ...a] = [1, 2, 3] : [number, number, number]
|
||||
>[x, y, ...a] : [number, number, ...number[]]
|
||||
[x, y, ...a1] = v;
|
||||
>[x, y, ...a1] = v : [number, number, number]
|
||||
>[x, y, ...a1] : [number, number, ...number[]]
|
||||
>x : number
|
||||
>y : number
|
||||
>...a : number
|
||||
>a : number[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>...a1 : number
|
||||
>a1 : [number]
|
||||
>v : [number, number, number]
|
||||
|
||||
[x, y, z, ...a3] = [1, 2, 3];
|
||||
>[x, y, z, ...a3] = [1, 2, 3] : [number, number, number]
|
||||
>[x, y, z, ...a3] : [number, number, number, ...any[]]
|
||||
[x, y, z, ...a0] = v;
|
||||
>[x, y, z, ...a0] = v : [number, number, number]
|
||||
>[x, y, z, ...a0] : [number, number, number, ...never[]]
|
||||
>x : number
|
||||
>y : number
|
||||
>z : number
|
||||
>...a3 : any
|
||||
>a3 : any[]
|
||||
>[1, 2, 3] : [number, number, number]
|
||||
>1 : 1
|
||||
>2 : 2
|
||||
>3 : 3
|
||||
>...a0 : never
|
||||
>a0 : []
|
||||
>v : [number, number, number]
|
||||
}
|
||||
|
||||
function f21() {
|
||||
>f21 : () => void
|
||||
function f21(v: [number, string, boolean]) {
|
||||
>f21 : (v: [number, string, boolean]) => void
|
||||
>v : [number, string, boolean]
|
||||
|
||||
var x: number;
|
||||
>x : number
|
||||
@@ -789,96 +773,72 @@ function f21() {
|
||||
var z: boolean;
|
||||
>z : boolean
|
||||
|
||||
var a0: (number | string | boolean)[];
|
||||
>a0 : (string | number | boolean)[]
|
||||
var a0: [number, string, boolean];
|
||||
>a0 : [number, string, boolean]
|
||||
|
||||
var a1: (string | boolean)[];
|
||||
>a1 : (string | boolean)[]
|
||||
var a1: [string, boolean];
|
||||
>a1 : [string, boolean]
|
||||
|
||||
var a2: boolean[];
|
||||
>a2 : boolean[]
|
||||
var a2: [boolean];
|
||||
>a2 : [boolean]
|
||||
|
||||
var a3: any[];
|
||||
>a3 : any[]
|
||||
var a3: [];
|
||||
>a3 : []
|
||||
|
||||
var [...a0] = [1, "hello", true];
|
||||
>a0 : (string | number | boolean)[]
|
||||
>[1, "hello", true] : (string | number | boolean)[]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
var [...a0] = v;
|
||||
>a0 : [number, string, boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
var [x, ...a1] = [1, "hello", true];
|
||||
var [x, ...a1] = v;
|
||||
>x : number
|
||||
>a1 : (string | boolean)[]
|
||||
>[1, "hello", true] : [number, string, boolean]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a1 : [string, boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
var [x, y, ...a2] = [1, "hello", true];
|
||||
var [x, y, ...a2] = v;
|
||||
>x : number
|
||||
>y : string
|
||||
>a2 : boolean[]
|
||||
>[1, "hello", true] : [number, string, boolean]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a2 : [boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
var [x, y, z, ...a3] = [1, "hello", true];
|
||||
var [x, y, z, ...a3] = v;
|
||||
>x : number
|
||||
>y : string
|
||||
>z : boolean
|
||||
>a3 : any[]
|
||||
>[1, "hello", true] : [number, string, boolean]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a3 : []
|
||||
>v : [number, string, boolean]
|
||||
|
||||
[...a0] = [1, "hello", true];
|
||||
>[...a0] = [1, "hello", true] : (string | number | true)[]
|
||||
[...a0] = v;
|
||||
>[...a0] = v : [number, string, boolean]
|
||||
>[...a0] : (string | number | boolean)[]
|
||||
>...a0 : string | number | boolean
|
||||
>a0 : (string | number | boolean)[]
|
||||
>[1, "hello", true] : (string | number | true)[]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a0 : [number, string, boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
[x, ...a1] = [1, "hello", true];
|
||||
>[x, ...a1] = [1, "hello", true] : [number, string, true]
|
||||
[x, ...a1] = v;
|
||||
>[x, ...a1] = v : [number, string, boolean]
|
||||
>[x, ...a1] : [number, ...(string | boolean)[]]
|
||||
>x : number
|
||||
>...a1 : string | boolean
|
||||
>a1 : (string | boolean)[]
|
||||
>[1, "hello", true] : [number, string, true]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a1 : [string, boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
[x, y, ...a2] = [1, "hello", true];
|
||||
>[x, y, ...a2] = [1, "hello", true] : [number, string, true]
|
||||
[x, y, ...a2] = v;
|
||||
>[x, y, ...a2] = v : [number, string, boolean]
|
||||
>[x, y, ...a2] : [number, string, ...boolean[]]
|
||||
>x : number
|
||||
>y : string
|
||||
>...a2 : boolean
|
||||
>a2 : boolean[]
|
||||
>[1, "hello", true] : [number, string, true]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>a2 : [boolean]
|
||||
>v : [number, string, boolean]
|
||||
|
||||
[x, y, z, ...a3] = [1, "hello", true];
|
||||
>[x, y, z, ...a3] = [1, "hello", true] : [number, string, true]
|
||||
>[x, y, z, ...a3] : [number, string, boolean, ...any[]]
|
||||
[x, y, z, ...a3] = v;
|
||||
>[x, y, z, ...a3] = v : [number, string, boolean]
|
||||
>[x, y, z, ...a3] : [number, string, boolean, ...never[]]
|
||||
>x : number
|
||||
>y : string
|
||||
>z : boolean
|
||||
>...a3 : any
|
||||
>a3 : any[]
|
||||
>[1, "hello", true] : [number, string, true]
|
||||
>1 : 1
|
||||
>"hello" : "hello"
|
||||
>true : true
|
||||
>...a3 : never
|
||||
>a3 : []
|
||||
>v : [number, string, boolean]
|
||||
}
|
||||
|
||||
|
||||
@@ -148,36 +148,38 @@ function f19() {
|
||||
var x = ([a, b] = [1, 2]);
|
||||
}
|
||||
|
||||
function f20() {
|
||||
function f20(v: [number, number, number]) {
|
||||
var x: number;
|
||||
var y: number;
|
||||
var z: number;
|
||||
var a: number[];
|
||||
var a3: any[];
|
||||
var [...a] = [1, 2, 3];
|
||||
var [x, ...a] = [1, 2, 3];
|
||||
var [x, y, ...a] = [1, 2, 3];
|
||||
var [x, y, z, ...a3] = [1, 2, 3];
|
||||
[...a] = [1, 2, 3];
|
||||
[x, ...a] = [1, 2, 3];
|
||||
[x, y, ...a] = [1, 2, 3];
|
||||
[x, y, z, ...a3] = [1, 2, 3];
|
||||
var a0: [];
|
||||
var a1: [number];
|
||||
var a2: [number, number];
|
||||
var a3: [number, number, number];
|
||||
var [...a3] = v;
|
||||
var [x, ...a2] = v;
|
||||
var [x, y, ...a1] = v;
|
||||
var [x, y, z, ...a0] = v;
|
||||
[...a3] = v;
|
||||
[x, ...a2] = v;
|
||||
[x, y, ...a1] = v;
|
||||
[x, y, z, ...a0] = v;
|
||||
}
|
||||
|
||||
function f21() {
|
||||
function f21(v: [number, string, boolean]) {
|
||||
var x: number;
|
||||
var y: string;
|
||||
var z: boolean;
|
||||
var a0: (number | string | boolean)[];
|
||||
var a1: (string | boolean)[];
|
||||
var a2: boolean[];
|
||||
var a3: any[];
|
||||
var [...a0] = [1, "hello", true];
|
||||
var [x, ...a1] = [1, "hello", true];
|
||||
var [x, y, ...a2] = [1, "hello", true];
|
||||
var [x, y, z, ...a3] = [1, "hello", true];
|
||||
[...a0] = [1, "hello", true];
|
||||
[x, ...a1] = [1, "hello", true];
|
||||
[x, y, ...a2] = [1, "hello", true];
|
||||
[x, y, z, ...a3] = [1, "hello", true];
|
||||
var a0: [number, string, boolean];
|
||||
var a1: [string, boolean];
|
||||
var a2: [boolean];
|
||||
var a3: [];
|
||||
var [...a0] = v;
|
||||
var [x, ...a1] = v;
|
||||
var [x, y, ...a2] = v;
|
||||
var [x, y, z, ...a3] = v;
|
||||
[...a0] = v;
|
||||
[x, ...a1] = v;
|
||||
[x, y, ...a2] = v;
|
||||
[x, y, z, ...a3] = v;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user