mirror of
https://github.com/microsoft/TypeScript.git
synced 2026-05-09 16:39:46 -05:00
Test case for assignment expression with Array destructuring pattern
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
//// [sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts]
|
||||
declare var console: {
|
||||
log(msg: any): void;
|
||||
}
|
||||
type Robot = [number, string, string];
|
||||
type MultiSkilledRobot = [string, [string, string]];
|
||||
|
||||
var robotA: Robot = [1, "mower", "mowing"];
|
||||
var robotB: Robot = [2, "trimmer", "trimming"];
|
||||
var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]];
|
||||
var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
let nameA: string, numberB: number, nameB: string, skillB: string;
|
||||
let robotAInfo: (number | string)[];
|
||||
|
||||
let multiSkillB: [string, string], nameMB: string, primarySkillB: string, secondarySkillB: string;
|
||||
let multiRobotAInfo: (string | [string, string])[];
|
||||
|
||||
[, nameA] = robotA;
|
||||
[, nameB] = getRobotB();
|
||||
[, nameB] = [2, "trimmer", "trimming"];
|
||||
[, multiSkillB] = multiRobotB;
|
||||
[, multiSkillB] = getMultiRobotB();
|
||||
[, multiSkillB] = ["roomba", ["vaccum", "mopping"]];
|
||||
|
||||
[numberB] = robotB;
|
||||
[numberB] = getRobotB();
|
||||
[numberB] = [2, "trimmer", "trimming"];
|
||||
[nameMB] = multiRobotB;
|
||||
[nameMB] = getMultiRobotB();
|
||||
[nameMB] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
[numberB, nameB, skillB] = robotB;
|
||||
[numberB, nameB, skillB] = getRobotB();
|
||||
[numberB, nameB, skillB] = [2, "trimmer", "trimming"];
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB;
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = getMultiRobotB();
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
[numberB, ...robotAInfo] = robotB;
|
||||
[numberB, ...robotAInfo] = getRobotB();
|
||||
[numberB, ...robotAInfo] = <Robot>[2, "trimmer", "trimming"];
|
||||
[...multiRobotAInfo] = multiRobotA;
|
||||
[...multiRobotAInfo] = getMultiRobotB();
|
||||
[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
if (nameA == nameB) {
|
||||
console.log(skillB);
|
||||
}
|
||||
|
||||
function getRobotB() {
|
||||
return robotB;
|
||||
}
|
||||
|
||||
function getMultiRobotB() {
|
||||
return multiRobotB;
|
||||
}
|
||||
|
||||
//// [sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js]
|
||||
var robotA = [1, "mower", "mowing"];
|
||||
var robotB = [2, "trimmer", "trimming"];
|
||||
var multiRobotA = ["mower", ["mowing", ""]];
|
||||
var multiRobotB = ["trimmer", ["trimming", "edging"]];
|
||||
var nameA, numberB, nameB, skillB;
|
||||
var robotAInfo;
|
||||
var multiSkillB, nameMB, primarySkillB, secondarySkillB;
|
||||
var multiRobotAInfo;
|
||||
nameA = robotA[1];
|
||||
_a = getRobotB(), nameB = _a[1];
|
||||
_b = [2, "trimmer", "trimming"], nameB = _b[1];
|
||||
multiSkillB = multiRobotB[1];
|
||||
_c = getMultiRobotB(), multiSkillB = _c[1];
|
||||
_d = ["roomba", ["vaccum", "mopping"]], multiSkillB = _d[1];
|
||||
numberB = robotB[0];
|
||||
numberB = getRobotB()[0];
|
||||
numberB = [2, "trimmer", "trimming"][0];
|
||||
nameMB = multiRobotB[0];
|
||||
nameMB = getMultiRobotB()[0];
|
||||
nameMB = ["trimmer", ["trimming", "edging"]][0];
|
||||
numberB = robotB[0], nameB = robotB[1], skillB = robotB[2];
|
||||
_e = getRobotB(), numberB = _e[0], nameB = _e[1], skillB = _e[2];
|
||||
_f = [2, "trimmer", "trimming"], numberB = _f[0], nameB = _f[1], skillB = _f[2];
|
||||
nameMB = multiRobotB[0], _g = multiRobotB[1], primarySkillB = _g[0], secondarySkillB = _g[1];
|
||||
_h = getMultiRobotB(), nameMB = _h[0], _j = _h[1], primarySkillB = _j[0], secondarySkillB = _j[1];
|
||||
_k = ["trimmer", ["trimming", "edging"]], nameMB = _k[0], _l = _k[1], primarySkillB = _l[0], secondarySkillB = _l[1];
|
||||
numberB = robotB[0], robotAInfo = robotB.slice(1);
|
||||
_m = getRobotB(), numberB = _m[0], robotAInfo = _m.slice(1);
|
||||
_o = [2, "trimmer", "trimming"], numberB = _o[0], robotAInfo = _o.slice(1);
|
||||
multiRobotAInfo = multiRobotA.slice(0);
|
||||
multiRobotAInfo = getMultiRobotB().slice(0);
|
||||
multiRobotAInfo = ["trimmer", ["trimming", "edging"]].slice(0);
|
||||
if (nameA == nameB) {
|
||||
console.log(skillB);
|
||||
}
|
||||
function getRobotB() {
|
||||
return robotB;
|
||||
}
|
||||
function getMultiRobotB() {
|
||||
return multiRobotB;
|
||||
}
|
||||
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
||||
//# sourceMappingURL=sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js.map
|
||||
@@ -0,0 +1,2 @@
|
||||
//// [sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js.map]
|
||||
{"version":3,"file":"sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js","sourceRoot":"","sources":["sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts"],"names":[],"mappings":"AAMA,IAAI,MAAM,GAAU,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC3C,IAAI,MAAM,GAAU,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAC/C,IAAI,WAAW,GAAsB,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/D,IAAI,WAAW,GAAsB,CAAC,SAAS,EAAE,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEzE,IAAI,KAAa,EAAE,OAAe,EAAE,KAAa,EAAE,MAAc,CAAC;AAClE,IAAI,UAA+B,CAAC;AAEpC,IAAI,WAA6B,EAAE,MAAc,EAAE,aAAqB,EAAE,eAAuB,CAAC;AAClG,IAAI,eAA8C,CAAC;AAEnD,iBAAkB,CAAC;AACP,gBAAW,eAAA,CAAC;AACZ,+BAA0B,eAAA,CAAC;AACvC,4BAA6B,CAAC;AACZ,qBAAgB,qBAAA,CAAC;AACjB,sCAAiC,qBAAA,CAAC;AAEpD,mBAAkB,CAAC;AACnB,wBAAuB,CAAC;AACxB,uCAAsC,CAAC;AACvC,uBAAsB,CAAC;AACvB,4BAA2B,CAAC;AAC5B,+CAA8C,CAAC;AAE/C,0DAAiC,CAAC;AACP,gBAAW,gDAAA,CAAC;AACZ,+BAA0B,gDAAA,CAAC;AACtD,4FAAwD,CAAC;AACZ,qBAAgB,4EAAA,CAAC;AACjB,wCAAmC,4EAAA,CAAC;AAEjF,iDAAiC,CAAC;AACP,gBAAW,2CAAA,CAAC;AACZ,+BAAiC,2CAAA,CAAC;AAC7D,sCAAkC,CAAC;AACnC,2CAAuC,CAAC;AACxC,8DAA0D,CAAC;AAE3D,EAAE,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC;IACjB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED;IACI,MAAM,CAAC,MAAM,CAAC;AAClB,CAAC;AAED;IACI,MAAM,CAAC,WAAW,CAAC;AACvB,CAAC"}
|
||||
@@ -0,0 +1,771 @@
|
||||
===================================================================
|
||||
JsFile: sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js
|
||||
mapUrl: sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js.map
|
||||
sourceRoot:
|
||||
sources: sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts
|
||||
===================================================================
|
||||
-------------------------------------------------------------------
|
||||
emittedFile:tests/cases/compiler/sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js
|
||||
sourceFile:sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts
|
||||
-------------------------------------------------------------------
|
||||
>>>var robotA = [1, "mower", "mowing"];
|
||||
1 >
|
||||
2 >^^^^
|
||||
3 > ^^^^^^
|
||||
4 > ^^^
|
||||
5 > ^
|
||||
6 > ^
|
||||
7 > ^^
|
||||
8 > ^^^^^^^
|
||||
9 > ^^
|
||||
10> ^^^^^^^^
|
||||
11> ^
|
||||
12> ^
|
||||
13> ^^^^^->
|
||||
1 >declare var console: {
|
||||
> log(msg: any): void;
|
||||
>}
|
||||
>type Robot = [number, string, string];
|
||||
>type MultiSkilledRobot = [string, [string, string]];
|
||||
>
|
||||
>
|
||||
2 >var
|
||||
3 > robotA
|
||||
4 > : Robot =
|
||||
5 > [
|
||||
6 > 1
|
||||
7 > ,
|
||||
8 > "mower"
|
||||
9 > ,
|
||||
10> "mowing"
|
||||
11> ]
|
||||
12> ;
|
||||
1 >Emitted(1, 1) Source(7, 1) + SourceIndex(0)
|
||||
2 >Emitted(1, 5) Source(7, 5) + SourceIndex(0)
|
||||
3 >Emitted(1, 11) Source(7, 11) + SourceIndex(0)
|
||||
4 >Emitted(1, 14) Source(7, 21) + SourceIndex(0)
|
||||
5 >Emitted(1, 15) Source(7, 22) + SourceIndex(0)
|
||||
6 >Emitted(1, 16) Source(7, 23) + SourceIndex(0)
|
||||
7 >Emitted(1, 18) Source(7, 25) + SourceIndex(0)
|
||||
8 >Emitted(1, 25) Source(7, 32) + SourceIndex(0)
|
||||
9 >Emitted(1, 27) Source(7, 34) + SourceIndex(0)
|
||||
10>Emitted(1, 35) Source(7, 42) + SourceIndex(0)
|
||||
11>Emitted(1, 36) Source(7, 43) + SourceIndex(0)
|
||||
12>Emitted(1, 37) Source(7, 44) + SourceIndex(0)
|
||||
---
|
||||
>>>var robotB = [2, "trimmer", "trimming"];
|
||||
1->
|
||||
2 >^^^^
|
||||
3 > ^^^^^^
|
||||
4 > ^^^
|
||||
5 > ^
|
||||
6 > ^
|
||||
7 > ^^
|
||||
8 > ^^^^^^^^^
|
||||
9 > ^^
|
||||
10> ^^^^^^^^^^
|
||||
11> ^
|
||||
12> ^
|
||||
13> ^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >var
|
||||
3 > robotB
|
||||
4 > : Robot =
|
||||
5 > [
|
||||
6 > 2
|
||||
7 > ,
|
||||
8 > "trimmer"
|
||||
9 > ,
|
||||
10> "trimming"
|
||||
11> ]
|
||||
12> ;
|
||||
1->Emitted(2, 1) Source(8, 1) + SourceIndex(0)
|
||||
2 >Emitted(2, 5) Source(8, 5) + SourceIndex(0)
|
||||
3 >Emitted(2, 11) Source(8, 11) + SourceIndex(0)
|
||||
4 >Emitted(2, 14) Source(8, 21) + SourceIndex(0)
|
||||
5 >Emitted(2, 15) Source(8, 22) + SourceIndex(0)
|
||||
6 >Emitted(2, 16) Source(8, 23) + SourceIndex(0)
|
||||
7 >Emitted(2, 18) Source(8, 25) + SourceIndex(0)
|
||||
8 >Emitted(2, 27) Source(8, 34) + SourceIndex(0)
|
||||
9 >Emitted(2, 29) Source(8, 36) + SourceIndex(0)
|
||||
10>Emitted(2, 39) Source(8, 46) + SourceIndex(0)
|
||||
11>Emitted(2, 40) Source(8, 47) + SourceIndex(0)
|
||||
12>Emitted(2, 41) Source(8, 48) + SourceIndex(0)
|
||||
---
|
||||
>>>var multiRobotA = ["mower", ["mowing", ""]];
|
||||
1->
|
||||
2 >^^^^
|
||||
3 > ^^^^^^^^^^^
|
||||
4 > ^^^
|
||||
5 > ^
|
||||
6 > ^^^^^^^
|
||||
7 > ^^
|
||||
8 > ^
|
||||
9 > ^^^^^^^^
|
||||
10> ^^
|
||||
11> ^^
|
||||
12> ^
|
||||
13> ^
|
||||
14> ^
|
||||
15> ^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >var
|
||||
3 > multiRobotA
|
||||
4 > : MultiSkilledRobot =
|
||||
5 > [
|
||||
6 > "mower"
|
||||
7 > ,
|
||||
8 > [
|
||||
9 > "mowing"
|
||||
10> ,
|
||||
11> ""
|
||||
12> ]
|
||||
13> ]
|
||||
14> ;
|
||||
1->Emitted(3, 1) Source(9, 1) + SourceIndex(0)
|
||||
2 >Emitted(3, 5) Source(9, 5) + SourceIndex(0)
|
||||
3 >Emitted(3, 16) Source(9, 16) + SourceIndex(0)
|
||||
4 >Emitted(3, 19) Source(9, 38) + SourceIndex(0)
|
||||
5 >Emitted(3, 20) Source(9, 39) + SourceIndex(0)
|
||||
6 >Emitted(3, 27) Source(9, 46) + SourceIndex(0)
|
||||
7 >Emitted(3, 29) Source(9, 48) + SourceIndex(0)
|
||||
8 >Emitted(3, 30) Source(9, 49) + SourceIndex(0)
|
||||
9 >Emitted(3, 38) Source(9, 57) + SourceIndex(0)
|
||||
10>Emitted(3, 40) Source(9, 59) + SourceIndex(0)
|
||||
11>Emitted(3, 42) Source(9, 61) + SourceIndex(0)
|
||||
12>Emitted(3, 43) Source(9, 62) + SourceIndex(0)
|
||||
13>Emitted(3, 44) Source(9, 63) + SourceIndex(0)
|
||||
14>Emitted(3, 45) Source(9, 64) + SourceIndex(0)
|
||||
---
|
||||
>>>var multiRobotB = ["trimmer", ["trimming", "edging"]];
|
||||
1->
|
||||
2 >^^^^
|
||||
3 > ^^^^^^^^^^^
|
||||
4 > ^^^
|
||||
5 > ^
|
||||
6 > ^^^^^^^^^
|
||||
7 > ^^
|
||||
8 > ^
|
||||
9 > ^^^^^^^^^^
|
||||
10> ^^
|
||||
11> ^^^^^^^^
|
||||
12> ^
|
||||
13> ^
|
||||
14> ^
|
||||
1->
|
||||
>
|
||||
2 >var
|
||||
3 > multiRobotB
|
||||
4 > : MultiSkilledRobot =
|
||||
5 > [
|
||||
6 > "trimmer"
|
||||
7 > ,
|
||||
8 > [
|
||||
9 > "trimming"
|
||||
10> ,
|
||||
11> "edging"
|
||||
12> ]
|
||||
13> ]
|
||||
14> ;
|
||||
1->Emitted(4, 1) Source(10, 1) + SourceIndex(0)
|
||||
2 >Emitted(4, 5) Source(10, 5) + SourceIndex(0)
|
||||
3 >Emitted(4, 16) Source(10, 16) + SourceIndex(0)
|
||||
4 >Emitted(4, 19) Source(10, 38) + SourceIndex(0)
|
||||
5 >Emitted(4, 20) Source(10, 39) + SourceIndex(0)
|
||||
6 >Emitted(4, 29) Source(10, 48) + SourceIndex(0)
|
||||
7 >Emitted(4, 31) Source(10, 50) + SourceIndex(0)
|
||||
8 >Emitted(4, 32) Source(10, 51) + SourceIndex(0)
|
||||
9 >Emitted(4, 42) Source(10, 61) + SourceIndex(0)
|
||||
10>Emitted(4, 44) Source(10, 63) + SourceIndex(0)
|
||||
11>Emitted(4, 52) Source(10, 71) + SourceIndex(0)
|
||||
12>Emitted(4, 53) Source(10, 72) + SourceIndex(0)
|
||||
13>Emitted(4, 54) Source(10, 73) + SourceIndex(0)
|
||||
14>Emitted(4, 55) Source(10, 74) + SourceIndex(0)
|
||||
---
|
||||
>>>var nameA, numberB, nameB, skillB;
|
||||
1 >
|
||||
2 >^^^^
|
||||
3 > ^^^^^
|
||||
4 > ^^
|
||||
5 > ^^^^^^^
|
||||
6 > ^^
|
||||
7 > ^^^^^
|
||||
8 > ^^
|
||||
9 > ^^^^^^
|
||||
10> ^
|
||||
1 >
|
||||
>
|
||||
>
|
||||
2 >let
|
||||
3 > nameA: string
|
||||
4 > ,
|
||||
5 > numberB: number
|
||||
6 > ,
|
||||
7 > nameB: string
|
||||
8 > ,
|
||||
9 > skillB: string
|
||||
10> ;
|
||||
1 >Emitted(5, 1) Source(12, 1) + SourceIndex(0)
|
||||
2 >Emitted(5, 5) Source(12, 5) + SourceIndex(0)
|
||||
3 >Emitted(5, 10) Source(12, 18) + SourceIndex(0)
|
||||
4 >Emitted(5, 12) Source(12, 20) + SourceIndex(0)
|
||||
5 >Emitted(5, 19) Source(12, 35) + SourceIndex(0)
|
||||
6 >Emitted(5, 21) Source(12, 37) + SourceIndex(0)
|
||||
7 >Emitted(5, 26) Source(12, 50) + SourceIndex(0)
|
||||
8 >Emitted(5, 28) Source(12, 52) + SourceIndex(0)
|
||||
9 >Emitted(5, 34) Source(12, 66) + SourceIndex(0)
|
||||
10>Emitted(5, 35) Source(12, 67) + SourceIndex(0)
|
||||
---
|
||||
>>>var robotAInfo;
|
||||
1 >
|
||||
2 >^^^^
|
||||
3 > ^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >let
|
||||
3 > robotAInfo: (number | string)[]
|
||||
4 > ;
|
||||
1 >Emitted(6, 1) Source(13, 1) + SourceIndex(0)
|
||||
2 >Emitted(6, 5) Source(13, 5) + SourceIndex(0)
|
||||
3 >Emitted(6, 15) Source(13, 36) + SourceIndex(0)
|
||||
4 >Emitted(6, 16) Source(13, 37) + SourceIndex(0)
|
||||
---
|
||||
>>>var multiSkillB, nameMB, primarySkillB, secondarySkillB;
|
||||
1->
|
||||
2 >^^^^
|
||||
3 > ^^^^^^^^^^^
|
||||
4 > ^^
|
||||
5 > ^^^^^^
|
||||
6 > ^^
|
||||
7 > ^^^^^^^^^^^^^
|
||||
8 > ^^
|
||||
9 > ^^^^^^^^^^^^^^^
|
||||
10> ^
|
||||
1->
|
||||
>
|
||||
>
|
||||
2 >let
|
||||
3 > multiSkillB: [string, string]
|
||||
4 > ,
|
||||
5 > nameMB: string
|
||||
6 > ,
|
||||
7 > primarySkillB: string
|
||||
8 > ,
|
||||
9 > secondarySkillB: string
|
||||
10> ;
|
||||
1->Emitted(7, 1) Source(15, 1) + SourceIndex(0)
|
||||
2 >Emitted(7, 5) Source(15, 5) + SourceIndex(0)
|
||||
3 >Emitted(7, 16) Source(15, 34) + SourceIndex(0)
|
||||
4 >Emitted(7, 18) Source(15, 36) + SourceIndex(0)
|
||||
5 >Emitted(7, 24) Source(15, 50) + SourceIndex(0)
|
||||
6 >Emitted(7, 26) Source(15, 52) + SourceIndex(0)
|
||||
7 >Emitted(7, 39) Source(15, 73) + SourceIndex(0)
|
||||
8 >Emitted(7, 41) Source(15, 75) + SourceIndex(0)
|
||||
9 >Emitted(7, 56) Source(15, 98) + SourceIndex(0)
|
||||
10>Emitted(7, 57) Source(15, 99) + SourceIndex(0)
|
||||
---
|
||||
>>>var multiRobotAInfo;
|
||||
1 >
|
||||
2 >^^^^
|
||||
3 > ^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
1 >
|
||||
>
|
||||
2 >let
|
||||
3 > multiRobotAInfo: (string | [string, string])[]
|
||||
4 > ;
|
||||
1 >Emitted(8, 1) Source(16, 1) + SourceIndex(0)
|
||||
2 >Emitted(8, 5) Source(16, 5) + SourceIndex(0)
|
||||
3 >Emitted(8, 20) Source(16, 51) + SourceIndex(0)
|
||||
4 >Emitted(8, 21) Source(16, 52) + SourceIndex(0)
|
||||
---
|
||||
>>>nameA = robotA[1];
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
>
|
||||
2 >[, nameA] = robotA
|
||||
3 > ;
|
||||
1 >Emitted(9, 1) Source(18, 1) + SourceIndex(0)
|
||||
2 >Emitted(9, 18) Source(18, 19) + SourceIndex(0)
|
||||
3 >Emitted(9, 19) Source(18, 20) + SourceIndex(0)
|
||||
---
|
||||
>>>_a = getRobotB(), nameB = _a[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[, nameB] =
|
||||
2 >getRobotB()
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(10, 1) Source(19, 13) + SourceIndex(0)
|
||||
2 >Emitted(10, 17) Source(19, 24) + SourceIndex(0)
|
||||
3 >Emitted(10, 32) Source(19, 24) + SourceIndex(0)
|
||||
4 >Emitted(10, 33) Source(19, 25) + SourceIndex(0)
|
||||
---
|
||||
>>>_b = [2, "trimmer", "trimming"], nameB = _b[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
1->
|
||||
>[, nameB] =
|
||||
2 >[2, "trimmer", "trimming"]
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(11, 1) Source(20, 13) + SourceIndex(0)
|
||||
2 >Emitted(11, 32) Source(20, 39) + SourceIndex(0)
|
||||
3 >Emitted(11, 47) Source(20, 39) + SourceIndex(0)
|
||||
4 >Emitted(11, 48) Source(20, 40) + SourceIndex(0)
|
||||
---
|
||||
>>>multiSkillB = multiRobotB[1];
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >[, multiSkillB] = multiRobotB
|
||||
3 > ;
|
||||
1 >Emitted(12, 1) Source(21, 1) + SourceIndex(0)
|
||||
2 >Emitted(12, 29) Source(21, 30) + SourceIndex(0)
|
||||
3 >Emitted(12, 30) Source(21, 31) + SourceIndex(0)
|
||||
---
|
||||
>>>_c = getMultiRobotB(), multiSkillB = _c[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[, multiSkillB] =
|
||||
2 >getMultiRobotB()
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(13, 1) Source(22, 19) + SourceIndex(0)
|
||||
2 >Emitted(13, 22) Source(22, 35) + SourceIndex(0)
|
||||
3 >Emitted(13, 43) Source(22, 35) + SourceIndex(0)
|
||||
4 >Emitted(13, 44) Source(22, 36) + SourceIndex(0)
|
||||
---
|
||||
>>>_d = ["roomba", ["vaccum", "mopping"]], multiSkillB = _d[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
1->
|
||||
>[, multiSkillB] =
|
||||
2 >["roomba", ["vaccum", "mopping"]]
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(14, 1) Source(23, 19) + SourceIndex(0)
|
||||
2 >Emitted(14, 39) Source(23, 52) + SourceIndex(0)
|
||||
3 >Emitted(14, 60) Source(23, 52) + SourceIndex(0)
|
||||
4 >Emitted(14, 61) Source(23, 53) + SourceIndex(0)
|
||||
---
|
||||
>>>numberB = robotB[0];
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^->
|
||||
1 >
|
||||
>
|
||||
>
|
||||
2 >[numberB] = robotB
|
||||
3 > ;
|
||||
1 >Emitted(15, 1) Source(25, 1) + SourceIndex(0)
|
||||
2 >Emitted(15, 20) Source(25, 19) + SourceIndex(0)
|
||||
3 >Emitted(15, 21) Source(25, 20) + SourceIndex(0)
|
||||
---
|
||||
>>>numberB = getRobotB()[0];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >[numberB] = getRobotB()
|
||||
3 > ;
|
||||
1->Emitted(16, 1) Source(26, 1) + SourceIndex(0)
|
||||
2 >Emitted(16, 25) Source(26, 24) + SourceIndex(0)
|
||||
3 >Emitted(16, 26) Source(26, 25) + SourceIndex(0)
|
||||
---
|
||||
>>>numberB = [2, "trimmer", "trimming"][0];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
1->
|
||||
>
|
||||
2 >[numberB] = [2, "trimmer", "trimming"]
|
||||
3 > ;
|
||||
1->Emitted(17, 1) Source(27, 1) + SourceIndex(0)
|
||||
2 >Emitted(17, 40) Source(27, 39) + SourceIndex(0)
|
||||
3 >Emitted(17, 41) Source(27, 40) + SourceIndex(0)
|
||||
---
|
||||
>>>nameMB = multiRobotB[0];
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >[nameMB] = multiRobotB
|
||||
3 > ;
|
||||
1 >Emitted(18, 1) Source(28, 1) + SourceIndex(0)
|
||||
2 >Emitted(18, 24) Source(28, 23) + SourceIndex(0)
|
||||
3 >Emitted(18, 25) Source(28, 24) + SourceIndex(0)
|
||||
---
|
||||
>>>nameMB = getMultiRobotB()[0];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >[nameMB] = getMultiRobotB()
|
||||
3 > ;
|
||||
1->Emitted(19, 1) Source(29, 1) + SourceIndex(0)
|
||||
2 >Emitted(19, 29) Source(29, 28) + SourceIndex(0)
|
||||
3 >Emitted(19, 30) Source(29, 29) + SourceIndex(0)
|
||||
---
|
||||
>>>nameMB = ["trimmer", ["trimming", "edging"]][0];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >[nameMB] = ["trimmer", ["trimming", "edging"]]
|
||||
3 > ;
|
||||
1->Emitted(20, 1) Source(30, 1) + SourceIndex(0)
|
||||
2 >Emitted(20, 48) Source(30, 47) + SourceIndex(0)
|
||||
3 >Emitted(20, 49) Source(30, 48) + SourceIndex(0)
|
||||
---
|
||||
>>>numberB = robotB[0], nameB = robotB[1], skillB = robotB[2];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^->
|
||||
1->
|
||||
>
|
||||
>
|
||||
2 >[numberB, nameB, skillB] = robotB
|
||||
3 > ;
|
||||
1->Emitted(21, 1) Source(32, 1) + SourceIndex(0)
|
||||
2 >Emitted(21, 59) Source(32, 34) + SourceIndex(0)
|
||||
3 >Emitted(21, 60) Source(32, 35) + SourceIndex(0)
|
||||
---
|
||||
>>>_e = getRobotB(), numberB = _e[0], nameB = _e[1], skillB = _e[2];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[numberB, nameB, skillB] =
|
||||
2 >getRobotB()
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(22, 1) Source(33, 28) + SourceIndex(0)
|
||||
2 >Emitted(22, 17) Source(33, 39) + SourceIndex(0)
|
||||
3 >Emitted(22, 65) Source(33, 39) + SourceIndex(0)
|
||||
4 >Emitted(22, 66) Source(33, 40) + SourceIndex(0)
|
||||
---
|
||||
>>>_f = [2, "trimmer", "trimming"], numberB = _f[0], nameB = _f[1], skillB = _f[2];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[numberB, nameB, skillB] =
|
||||
2 >[2, "trimmer", "trimming"]
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(23, 1) Source(34, 28) + SourceIndex(0)
|
||||
2 >Emitted(23, 32) Source(34, 54) + SourceIndex(0)
|
||||
3 >Emitted(23, 80) Source(34, 54) + SourceIndex(0)
|
||||
4 >Emitted(23, 81) Source(34, 55) + SourceIndex(0)
|
||||
---
|
||||
>>>nameMB = multiRobotB[0], _g = multiRobotB[1], primarySkillB = _g[0], secondarySkillB = _g[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB
|
||||
3 > ;
|
||||
1->Emitted(24, 1) Source(35, 1) + SourceIndex(0)
|
||||
2 >Emitted(24, 93) Source(35, 57) + SourceIndex(0)
|
||||
3 >Emitted(24, 94) Source(35, 58) + SourceIndex(0)
|
||||
---
|
||||
>>>_h = getMultiRobotB(), nameMB = _h[0], _j = _h[1], primarySkillB = _j[0], secondarySkillB = _j[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] =
|
||||
2 >getMultiRobotB()
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(25, 1) Source(36, 46) + SourceIndex(0)
|
||||
2 >Emitted(25, 22) Source(36, 62) + SourceIndex(0)
|
||||
3 >Emitted(25, 98) Source(36, 62) + SourceIndex(0)
|
||||
4 >Emitted(25, 99) Source(36, 63) + SourceIndex(0)
|
||||
---
|
||||
>>>_k = ["trimmer", ["trimming", "edging"]], nameMB = _k[0], _l = _k[1], primarySkillB = _l[0], secondarySkillB = _l[1];
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
1->
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] =
|
||||
2 >["trimmer", ["trimming", "edging"]]
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(26, 1) Source(37, 46) + SourceIndex(0)
|
||||
2 >Emitted(26, 41) Source(37, 81) + SourceIndex(0)
|
||||
3 >Emitted(26, 117) Source(37, 81) + SourceIndex(0)
|
||||
4 >Emitted(26, 118) Source(37, 82) + SourceIndex(0)
|
||||
---
|
||||
>>>numberB = robotB[0], robotAInfo = robotB.slice(1);
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
>
|
||||
2 >[numberB, ...robotAInfo] = robotB
|
||||
3 > ;
|
||||
1 >Emitted(27, 1) Source(39, 1) + SourceIndex(0)
|
||||
2 >Emitted(27, 50) Source(39, 34) + SourceIndex(0)
|
||||
3 >Emitted(27, 51) Source(39, 35) + SourceIndex(0)
|
||||
---
|
||||
>>>_m = getRobotB(), numberB = _m[0], robotAInfo = _m.slice(1);
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
5 > ^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>[numberB, ...robotAInfo] =
|
||||
2 >getRobotB()
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(28, 1) Source(40, 28) + SourceIndex(0)
|
||||
2 >Emitted(28, 17) Source(40, 39) + SourceIndex(0)
|
||||
3 >Emitted(28, 60) Source(40, 39) + SourceIndex(0)
|
||||
4 >Emitted(28, 61) Source(40, 40) + SourceIndex(0)
|
||||
---
|
||||
>>>_o = [2, "trimmer", "trimming"], numberB = _o[0], robotAInfo = _o.slice(1);
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
4 > ^
|
||||
1->
|
||||
>[numberB, ...robotAInfo] =
|
||||
2 ><Robot>[2, "trimmer", "trimming"]
|
||||
3 >
|
||||
4 > ;
|
||||
1->Emitted(29, 1) Source(41, 28) + SourceIndex(0)
|
||||
2 >Emitted(29, 32) Source(41, 61) + SourceIndex(0)
|
||||
3 >Emitted(29, 75) Source(41, 61) + SourceIndex(0)
|
||||
4 >Emitted(29, 76) Source(41, 62) + SourceIndex(0)
|
||||
---
|
||||
>>>multiRobotAInfo = multiRobotA.slice(0);
|
||||
1 >
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >[...multiRobotAInfo] = multiRobotA
|
||||
3 > ;
|
||||
1 >Emitted(30, 1) Source(42, 1) + SourceIndex(0)
|
||||
2 >Emitted(30, 39) Source(42, 35) + SourceIndex(0)
|
||||
3 >Emitted(30, 40) Source(42, 36) + SourceIndex(0)
|
||||
---
|
||||
>>>multiRobotAInfo = getMultiRobotB().slice(0);
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
2 >[...multiRobotAInfo] = getMultiRobotB()
|
||||
3 > ;
|
||||
1->Emitted(31, 1) Source(43, 1) + SourceIndex(0)
|
||||
2 >Emitted(31, 44) Source(43, 40) + SourceIndex(0)
|
||||
3 >Emitted(31, 45) Source(43, 41) + SourceIndex(0)
|
||||
---
|
||||
>>>multiRobotAInfo = ["trimmer", ["trimming", "edging"]].slice(0);
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
3 > ^
|
||||
1->
|
||||
>
|
||||
2 >[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]]
|
||||
3 > ;
|
||||
1->Emitted(32, 1) Source(44, 1) + SourceIndex(0)
|
||||
2 >Emitted(32, 63) Source(44, 59) + SourceIndex(0)
|
||||
3 >Emitted(32, 64) Source(44, 60) + SourceIndex(0)
|
||||
---
|
||||
>>>if (nameA == nameB) {
|
||||
1 >
|
||||
2 >^^
|
||||
3 > ^
|
||||
4 > ^
|
||||
5 > ^^^^^
|
||||
6 > ^^^^
|
||||
7 > ^^^^^
|
||||
8 > ^
|
||||
9 > ^
|
||||
10> ^
|
||||
11> ^^^^->
|
||||
1 >
|
||||
>
|
||||
>
|
||||
2 >if
|
||||
3 >
|
||||
4 > (
|
||||
5 > nameA
|
||||
6 > ==
|
||||
7 > nameB
|
||||
8 > )
|
||||
9 >
|
||||
10> {
|
||||
1 >Emitted(33, 1) Source(46, 1) + SourceIndex(0)
|
||||
2 >Emitted(33, 3) Source(46, 3) + SourceIndex(0)
|
||||
3 >Emitted(33, 4) Source(46, 4) + SourceIndex(0)
|
||||
4 >Emitted(33, 5) Source(46, 5) + SourceIndex(0)
|
||||
5 >Emitted(33, 10) Source(46, 10) + SourceIndex(0)
|
||||
6 >Emitted(33, 14) Source(46, 14) + SourceIndex(0)
|
||||
7 >Emitted(33, 19) Source(46, 19) + SourceIndex(0)
|
||||
8 >Emitted(33, 20) Source(46, 20) + SourceIndex(0)
|
||||
9 >Emitted(33, 21) Source(46, 21) + SourceIndex(0)
|
||||
10>Emitted(33, 22) Source(46, 22) + SourceIndex(0)
|
||||
---
|
||||
>>> console.log(skillB);
|
||||
1->^^^^
|
||||
2 > ^^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^
|
||||
5 > ^
|
||||
6 > ^^^^^^
|
||||
7 > ^
|
||||
8 > ^
|
||||
1->
|
||||
>
|
||||
2 > console
|
||||
3 > .
|
||||
4 > log
|
||||
5 > (
|
||||
6 > skillB
|
||||
7 > )
|
||||
8 > ;
|
||||
1->Emitted(34, 5) Source(47, 5) + SourceIndex(0)
|
||||
2 >Emitted(34, 12) Source(47, 12) + SourceIndex(0)
|
||||
3 >Emitted(34, 13) Source(47, 13) + SourceIndex(0)
|
||||
4 >Emitted(34, 16) Source(47, 16) + SourceIndex(0)
|
||||
5 >Emitted(34, 17) Source(47, 17) + SourceIndex(0)
|
||||
6 >Emitted(34, 23) Source(47, 23) + SourceIndex(0)
|
||||
7 >Emitted(34, 24) Source(47, 24) + SourceIndex(0)
|
||||
8 >Emitted(34, 25) Source(47, 25) + SourceIndex(0)
|
||||
---
|
||||
>>>}
|
||||
1 >
|
||||
2 >^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >}
|
||||
1 >Emitted(35, 1) Source(48, 1) + SourceIndex(0)
|
||||
2 >Emitted(35, 2) Source(48, 2) + SourceIndex(0)
|
||||
---
|
||||
>>>function getRobotB() {
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
>
|
||||
1->Emitted(36, 1) Source(50, 1) + SourceIndex(0)
|
||||
---
|
||||
>>> return robotB;
|
||||
1->^^^^
|
||||
2 > ^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^
|
||||
5 > ^
|
||||
1->function getRobotB() {
|
||||
>
|
||||
2 > return
|
||||
3 >
|
||||
4 > robotB
|
||||
5 > ;
|
||||
1->Emitted(37, 5) Source(51, 5) + SourceIndex(0)
|
||||
2 >Emitted(37, 11) Source(51, 11) + SourceIndex(0)
|
||||
3 >Emitted(37, 12) Source(51, 12) + SourceIndex(0)
|
||||
4 >Emitted(37, 18) Source(51, 18) + SourceIndex(0)
|
||||
5 >Emitted(37, 19) Source(51, 19) + SourceIndex(0)
|
||||
---
|
||||
>>>}
|
||||
1 >
|
||||
2 >^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >}
|
||||
1 >Emitted(38, 1) Source(52, 1) + SourceIndex(0)
|
||||
2 >Emitted(38, 2) Source(52, 2) + SourceIndex(0)
|
||||
---
|
||||
>>>function getMultiRobotB() {
|
||||
1->
|
||||
2 >^^^^^^^^^^^^^^^^^^^^^^^^->
|
||||
1->
|
||||
>
|
||||
>
|
||||
1->Emitted(39, 1) Source(54, 1) + SourceIndex(0)
|
||||
---
|
||||
>>> return multiRobotB;
|
||||
1->^^^^
|
||||
2 > ^^^^^^
|
||||
3 > ^
|
||||
4 > ^^^^^^^^^^^
|
||||
5 > ^
|
||||
1->function getMultiRobotB() {
|
||||
>
|
||||
2 > return
|
||||
3 >
|
||||
4 > multiRobotB
|
||||
5 > ;
|
||||
1->Emitted(40, 5) Source(55, 5) + SourceIndex(0)
|
||||
2 >Emitted(40, 11) Source(55, 11) + SourceIndex(0)
|
||||
3 >Emitted(40, 12) Source(55, 12) + SourceIndex(0)
|
||||
4 >Emitted(40, 23) Source(55, 23) + SourceIndex(0)
|
||||
5 >Emitted(40, 24) Source(55, 24) + SourceIndex(0)
|
||||
---
|
||||
>>>}
|
||||
1 >
|
||||
2 >^
|
||||
3 > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^->
|
||||
1 >
|
||||
>
|
||||
2 >}
|
||||
1 >Emitted(41, 1) Source(56, 1) + SourceIndex(0)
|
||||
2 >Emitted(41, 2) Source(56, 2) + SourceIndex(0)
|
||||
---
|
||||
>>>var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
||||
>>>//# sourceMappingURL=sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.js.map
|
||||
@@ -0,0 +1,176 @@
|
||||
=== tests/cases/compiler/sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts ===
|
||||
declare var console: {
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 0, 11))
|
||||
|
||||
log(msg: any): void;
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 0, 22))
|
||||
>msg : Symbol(msg, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 1, 8))
|
||||
}
|
||||
type Robot = [number, string, string];
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 2, 1))
|
||||
|
||||
type MultiSkilledRobot = [string, [string, string]];
|
||||
>MultiSkilledRobot : Symbol(MultiSkilledRobot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 3, 38))
|
||||
|
||||
var robotA: Robot = [1, "mower", "mowing"];
|
||||
>robotA : Symbol(robotA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 6, 3))
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 2, 1))
|
||||
|
||||
var robotB: Robot = [2, "trimmer", "trimming"];
|
||||
>robotB : Symbol(robotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 7, 3))
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 2, 1))
|
||||
|
||||
var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]];
|
||||
>multiRobotA : Symbol(multiRobotA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 8, 3))
|
||||
>MultiSkilledRobot : Symbol(MultiSkilledRobot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 3, 38))
|
||||
|
||||
var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]];
|
||||
>multiRobotB : Symbol(multiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 9, 3))
|
||||
>MultiSkilledRobot : Symbol(MultiSkilledRobot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 3, 38))
|
||||
|
||||
let nameA: string, numberB: number, nameB: string, skillB: string;
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 3))
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
>skillB : Symbol(skillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 50))
|
||||
|
||||
let robotAInfo: (number | string)[];
|
||||
>robotAInfo : Symbol(robotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 12, 3))
|
||||
|
||||
let multiSkillB: [string, string], nameMB: string, primarySkillB: string, secondarySkillB: string;
|
||||
>multiSkillB : Symbol(multiSkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 3))
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>primarySkillB : Symbol(primarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 50))
|
||||
>secondarySkillB : Symbol(secondarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 73))
|
||||
|
||||
let multiRobotAInfo: (string | [string, string])[];
|
||||
>multiRobotAInfo : Symbol(multiRobotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 15, 3))
|
||||
|
||||
[, nameA] = robotA;
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 3))
|
||||
>robotA : Symbol(robotA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 6, 3))
|
||||
|
||||
[, nameB] = getRobotB();
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
>getRobotB : Symbol(getRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 47, 1))
|
||||
|
||||
[, nameB] = [2, "trimmer", "trimming"];
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
|
||||
[, multiSkillB] = multiRobotB;
|
||||
>multiSkillB : Symbol(multiSkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 3))
|
||||
>multiRobotB : Symbol(multiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 9, 3))
|
||||
|
||||
[, multiSkillB] = getMultiRobotB();
|
||||
>multiSkillB : Symbol(multiSkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 3))
|
||||
>getMultiRobotB : Symbol(getMultiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 51, 1))
|
||||
|
||||
[, multiSkillB] = ["roomba", ["vaccum", "mopping"]];
|
||||
>multiSkillB : Symbol(multiSkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 3))
|
||||
|
||||
[numberB] = robotB;
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>robotB : Symbol(robotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 7, 3))
|
||||
|
||||
[numberB] = getRobotB();
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>getRobotB : Symbol(getRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 47, 1))
|
||||
|
||||
[numberB] = [2, "trimmer", "trimming"];
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
|
||||
[nameMB] = multiRobotB;
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>multiRobotB : Symbol(multiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 9, 3))
|
||||
|
||||
[nameMB] = getMultiRobotB();
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>getMultiRobotB : Symbol(getMultiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 51, 1))
|
||||
|
||||
[nameMB] = ["trimmer", ["trimming", "edging"]];
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
|
||||
[numberB, nameB, skillB] = robotB;
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
>skillB : Symbol(skillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 50))
|
||||
>robotB : Symbol(robotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 7, 3))
|
||||
|
||||
[numberB, nameB, skillB] = getRobotB();
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
>skillB : Symbol(skillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 50))
|
||||
>getRobotB : Symbol(getRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 47, 1))
|
||||
|
||||
[numberB, nameB, skillB] = [2, "trimmer", "trimming"];
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
>skillB : Symbol(skillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 50))
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB;
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>primarySkillB : Symbol(primarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 50))
|
||||
>secondarySkillB : Symbol(secondarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 73))
|
||||
>multiRobotB : Symbol(multiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 9, 3))
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = getMultiRobotB();
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>primarySkillB : Symbol(primarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 50))
|
||||
>secondarySkillB : Symbol(secondarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 73))
|
||||
>getMultiRobotB : Symbol(getMultiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 51, 1))
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = ["trimmer", ["trimming", "edging"]];
|
||||
>nameMB : Symbol(nameMB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 34))
|
||||
>primarySkillB : Symbol(primarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 50))
|
||||
>secondarySkillB : Symbol(secondarySkillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 14, 73))
|
||||
|
||||
[numberB, ...robotAInfo] = robotB;
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>robotAInfo : Symbol(robotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 12, 3))
|
||||
>robotB : Symbol(robotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 7, 3))
|
||||
|
||||
[numberB, ...robotAInfo] = getRobotB();
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>robotAInfo : Symbol(robotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 12, 3))
|
||||
>getRobotB : Symbol(getRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 47, 1))
|
||||
|
||||
[numberB, ...robotAInfo] = <Robot>[2, "trimmer", "trimming"];
|
||||
>numberB : Symbol(numberB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 18))
|
||||
>robotAInfo : Symbol(robotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 12, 3))
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 2, 1))
|
||||
|
||||
[...multiRobotAInfo] = multiRobotA;
|
||||
>multiRobotAInfo : Symbol(multiRobotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 15, 3))
|
||||
>multiRobotA : Symbol(multiRobotA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 8, 3))
|
||||
|
||||
[...multiRobotAInfo] = getMultiRobotB();
|
||||
>multiRobotAInfo : Symbol(multiRobotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 15, 3))
|
||||
>getMultiRobotB : Symbol(getMultiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 51, 1))
|
||||
|
||||
[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]];
|
||||
>multiRobotAInfo : Symbol(multiRobotAInfo, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 15, 3))
|
||||
|
||||
if (nameA == nameB) {
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 3))
|
||||
>nameB : Symbol(nameB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 35))
|
||||
|
||||
console.log(skillB);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 0, 22))
|
||||
>skillB : Symbol(skillB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 11, 50))
|
||||
}
|
||||
|
||||
function getRobotB() {
|
||||
>getRobotB : Symbol(getRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 47, 1))
|
||||
|
||||
return robotB;
|
||||
>robotB : Symbol(robotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 7, 3))
|
||||
}
|
||||
|
||||
function getMultiRobotB() {
|
||||
>getMultiRobotB : Symbol(getMultiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 51, 1))
|
||||
|
||||
return multiRobotB;
|
||||
>multiRobotB : Symbol(multiRobotB, Decl(sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts, 9, 3))
|
||||
}
|
||||
@@ -0,0 +1,304 @@
|
||||
=== tests/cases/compiler/sourceMapValidationDestructuringVariableStatementArrayBindingPattern3.ts ===
|
||||
declare var console: {
|
||||
>console : { log(msg: any): void; }
|
||||
|
||||
log(msg: any): void;
|
||||
>log : (msg: any) => void
|
||||
>msg : any
|
||||
}
|
||||
type Robot = [number, string, string];
|
||||
>Robot : [number, string, string]
|
||||
|
||||
type MultiSkilledRobot = [string, [string, string]];
|
||||
>MultiSkilledRobot : [string, [string, string]]
|
||||
|
||||
var robotA: Robot = [1, "mower", "mowing"];
|
||||
>robotA : [number, string, string]
|
||||
>Robot : [number, string, string]
|
||||
>[1, "mower", "mowing"] : [number, string, string]
|
||||
>1 : number
|
||||
>"mower" : string
|
||||
>"mowing" : string
|
||||
|
||||
var robotB: Robot = [2, "trimmer", "trimming"];
|
||||
>robotB : [number, string, string]
|
||||
>Robot : [number, string, string]
|
||||
>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>2 : number
|
||||
>"trimmer" : string
|
||||
>"trimming" : string
|
||||
|
||||
var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]];
|
||||
>multiRobotA : [string, [string, string]]
|
||||
>MultiSkilledRobot : [string, [string, string]]
|
||||
>["mower", ["mowing", ""]] : [string, [string, string]]
|
||||
>"mower" : string
|
||||
>["mowing", ""] : [string, string]
|
||||
>"mowing" : string
|
||||
>"" : string
|
||||
|
||||
var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]];
|
||||
>multiRobotB : [string, [string, string]]
|
||||
>MultiSkilledRobot : [string, [string, string]]
|
||||
>["trimmer", ["trimming", "edging"]] : [string, [string, string]]
|
||||
>"trimmer" : string
|
||||
>["trimming", "edging"] : [string, string]
|
||||
>"trimming" : string
|
||||
>"edging" : string
|
||||
|
||||
let nameA: string, numberB: number, nameB: string, skillB: string;
|
||||
>nameA : string
|
||||
>numberB : number
|
||||
>nameB : string
|
||||
>skillB : string
|
||||
|
||||
let robotAInfo: (number | string)[];
|
||||
>robotAInfo : (number | string)[]
|
||||
|
||||
let multiSkillB: [string, string], nameMB: string, primarySkillB: string, secondarySkillB: string;
|
||||
>multiSkillB : [string, string]
|
||||
>nameMB : string
|
||||
>primarySkillB : string
|
||||
>secondarySkillB : string
|
||||
|
||||
let multiRobotAInfo: (string | [string, string])[];
|
||||
>multiRobotAInfo : (string | [string, string])[]
|
||||
|
||||
[, nameA] = robotA;
|
||||
>[, nameA] = robotA : [number, string, string]
|
||||
>[, nameA] : [undefined, string]
|
||||
> : undefined
|
||||
>nameA : string
|
||||
>robotA : [number, string, string]
|
||||
|
||||
[, nameB] = getRobotB();
|
||||
>[, nameB] = getRobotB() : [number, string, string]
|
||||
>[, nameB] : [undefined, string]
|
||||
> : undefined
|
||||
>nameB : string
|
||||
>getRobotB() : [number, string, string]
|
||||
>getRobotB : () => [number, string, string]
|
||||
|
||||
[, nameB] = [2, "trimmer", "trimming"];
|
||||
>[, nameB] = [2, "trimmer", "trimming"] : [number, string, string]
|
||||
>[, nameB] : [undefined, string]
|
||||
> : undefined
|
||||
>nameB : string
|
||||
>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>2 : number
|
||||
>"trimmer" : string
|
||||
>"trimming" : string
|
||||
|
||||
[, multiSkillB] = multiRobotB;
|
||||
>[, multiSkillB] = multiRobotB : [string, [string, string]]
|
||||
>[, multiSkillB] : [undefined, [string, string]]
|
||||
> : undefined
|
||||
>multiSkillB : [string, string]
|
||||
>multiRobotB : [string, [string, string]]
|
||||
|
||||
[, multiSkillB] = getMultiRobotB();
|
||||
>[, multiSkillB] = getMultiRobotB() : [string, [string, string]]
|
||||
>[, multiSkillB] : [undefined, [string, string]]
|
||||
> : undefined
|
||||
>multiSkillB : [string, string]
|
||||
>getMultiRobotB() : [string, [string, string]]
|
||||
>getMultiRobotB : () => [string, [string, string]]
|
||||
|
||||
[, multiSkillB] = ["roomba", ["vaccum", "mopping"]];
|
||||
>[, multiSkillB] = ["roomba", ["vaccum", "mopping"]] : [string, [string, string]]
|
||||
>[, multiSkillB] : [undefined, [string, string]]
|
||||
> : undefined
|
||||
>multiSkillB : [string, string]
|
||||
>["roomba", ["vaccum", "mopping"]] : [string, [string, string]]
|
||||
>"roomba" : string
|
||||
>["vaccum", "mopping"] : [string, string]
|
||||
>"vaccum" : string
|
||||
>"mopping" : string
|
||||
|
||||
[numberB] = robotB;
|
||||
>[numberB] = robotB : [number, string, string]
|
||||
>[numberB] : [number]
|
||||
>numberB : number
|
||||
>robotB : [number, string, string]
|
||||
|
||||
[numberB] = getRobotB();
|
||||
>[numberB] = getRobotB() : [number, string, string]
|
||||
>[numberB] : [number]
|
||||
>numberB : number
|
||||
>getRobotB() : [number, string, string]
|
||||
>getRobotB : () => [number, string, string]
|
||||
|
||||
[numberB] = [2, "trimmer", "trimming"];
|
||||
>[numberB] = [2, "trimmer", "trimming"] : [number, string, string]
|
||||
>[numberB] : [number]
|
||||
>numberB : number
|
||||
>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>2 : number
|
||||
>"trimmer" : string
|
||||
>"trimming" : string
|
||||
|
||||
[nameMB] = multiRobotB;
|
||||
>[nameMB] = multiRobotB : [string, [string, string]]
|
||||
>[nameMB] : [string]
|
||||
>nameMB : string
|
||||
>multiRobotB : [string, [string, string]]
|
||||
|
||||
[nameMB] = getMultiRobotB();
|
||||
>[nameMB] = getMultiRobotB() : [string, [string, string]]
|
||||
>[nameMB] : [string]
|
||||
>nameMB : string
|
||||
>getMultiRobotB() : [string, [string, string]]
|
||||
>getMultiRobotB : () => [string, [string, string]]
|
||||
|
||||
[nameMB] = ["trimmer", ["trimming", "edging"]];
|
||||
>[nameMB] = ["trimmer", ["trimming", "edging"]] : [string, string[]]
|
||||
>[nameMB] : [string]
|
||||
>nameMB : string
|
||||
>["trimmer", ["trimming", "edging"]] : [string, string[]]
|
||||
>"trimmer" : string
|
||||
>["trimming", "edging"] : string[]
|
||||
>"trimming" : string
|
||||
>"edging" : string
|
||||
|
||||
[numberB, nameB, skillB] = robotB;
|
||||
>[numberB, nameB, skillB] = robotB : [number, string, string]
|
||||
>[numberB, nameB, skillB] : [number, string, string]
|
||||
>numberB : number
|
||||
>nameB : string
|
||||
>skillB : string
|
||||
>robotB : [number, string, string]
|
||||
|
||||
[numberB, nameB, skillB] = getRobotB();
|
||||
>[numberB, nameB, skillB] = getRobotB() : [number, string, string]
|
||||
>[numberB, nameB, skillB] : [number, string, string]
|
||||
>numberB : number
|
||||
>nameB : string
|
||||
>skillB : string
|
||||
>getRobotB() : [number, string, string]
|
||||
>getRobotB : () => [number, string, string]
|
||||
|
||||
[numberB, nameB, skillB] = [2, "trimmer", "trimming"];
|
||||
>[numberB, nameB, skillB] = [2, "trimmer", "trimming"] : [number, string, string]
|
||||
>[numberB, nameB, skillB] : [number, string, string]
|
||||
>numberB : number
|
||||
>nameB : string
|
||||
>skillB : string
|
||||
>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>2 : number
|
||||
>"trimmer" : string
|
||||
>"trimming" : string
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB;
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB : [string, [string, string]]
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] : [string, [string, string]]
|
||||
>nameMB : string
|
||||
>[primarySkillB, secondarySkillB] : [string, string]
|
||||
>primarySkillB : string
|
||||
>secondarySkillB : string
|
||||
>multiRobotB : [string, [string, string]]
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = getMultiRobotB();
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] = getMultiRobotB() : [string, [string, string]]
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] : [string, [string, string]]
|
||||
>nameMB : string
|
||||
>[primarySkillB, secondarySkillB] : [string, string]
|
||||
>primarySkillB : string
|
||||
>secondarySkillB : string
|
||||
>getMultiRobotB() : [string, [string, string]]
|
||||
>getMultiRobotB : () => [string, [string, string]]
|
||||
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = ["trimmer", ["trimming", "edging"]];
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] = ["trimmer", ["trimming", "edging"]] : [string, [string, string]]
|
||||
>[nameMB, [primarySkillB, secondarySkillB]] : [string, [string, string]]
|
||||
>nameMB : string
|
||||
>[primarySkillB, secondarySkillB] : [string, string]
|
||||
>primarySkillB : string
|
||||
>secondarySkillB : string
|
||||
>["trimmer", ["trimming", "edging"]] : [string, [string, string]]
|
||||
>"trimmer" : string
|
||||
>["trimming", "edging"] : [string, string]
|
||||
>"trimming" : string
|
||||
>"edging" : string
|
||||
|
||||
[numberB, ...robotAInfo] = robotB;
|
||||
>[numberB, ...robotAInfo] = robotB : [number, string, string]
|
||||
>[numberB, ...robotAInfo] : (number | string)[]
|
||||
>numberB : number
|
||||
>...robotAInfo : number | string
|
||||
>robotAInfo : (number | string)[]
|
||||
>robotB : [number, string, string]
|
||||
|
||||
[numberB, ...robotAInfo] = getRobotB();
|
||||
>[numberB, ...robotAInfo] = getRobotB() : [number, string, string]
|
||||
>[numberB, ...robotAInfo] : (number | string)[]
|
||||
>numberB : number
|
||||
>...robotAInfo : number | string
|
||||
>robotAInfo : (number | string)[]
|
||||
>getRobotB() : [number, string, string]
|
||||
>getRobotB : () => [number, string, string]
|
||||
|
||||
[numberB, ...robotAInfo] = <Robot>[2, "trimmer", "trimming"];
|
||||
>[numberB, ...robotAInfo] = <Robot>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>[numberB, ...robotAInfo] : (number | string)[]
|
||||
>numberB : number
|
||||
>...robotAInfo : number | string
|
||||
>robotAInfo : (number | string)[]
|
||||
><Robot>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>Robot : [number, string, string]
|
||||
>[2, "trimmer", "trimming"] : [number, string, string]
|
||||
>2 : number
|
||||
>"trimmer" : string
|
||||
>"trimming" : string
|
||||
|
||||
[...multiRobotAInfo] = multiRobotA;
|
||||
>[...multiRobotAInfo] = multiRobotA : [string, [string, string]]
|
||||
>[...multiRobotAInfo] : (string | [string, string])[]
|
||||
>...multiRobotAInfo : string | [string, string]
|
||||
>multiRobotAInfo : (string | [string, string])[]
|
||||
>multiRobotA : [string, [string, string]]
|
||||
|
||||
[...multiRobotAInfo] = getMultiRobotB();
|
||||
>[...multiRobotAInfo] = getMultiRobotB() : [string, [string, string]]
|
||||
>[...multiRobotAInfo] : (string | [string, string])[]
|
||||
>...multiRobotAInfo : string | [string, string]
|
||||
>multiRobotAInfo : (string | [string, string])[]
|
||||
>getMultiRobotB() : [string, [string, string]]
|
||||
>getMultiRobotB : () => [string, [string, string]]
|
||||
|
||||
[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]];
|
||||
>[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]] : (string | [string, string])[]
|
||||
>[...multiRobotAInfo] : (string | [string, string])[]
|
||||
>...multiRobotAInfo : string | [string, string]
|
||||
>multiRobotAInfo : (string | [string, string])[]
|
||||
>["trimmer", ["trimming", "edging"]] : (string | [string, string])[]
|
||||
>"trimmer" : string
|
||||
>["trimming", "edging"] : [string, string]
|
||||
>"trimming" : string
|
||||
>"edging" : string
|
||||
|
||||
if (nameA == nameB) {
|
||||
>nameA == nameB : boolean
|
||||
>nameA : string
|
||||
>nameB : string
|
||||
|
||||
console.log(skillB);
|
||||
>console.log(skillB) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>skillB : string
|
||||
}
|
||||
|
||||
function getRobotB() {
|
||||
>getRobotB : () => [number, string, string]
|
||||
|
||||
return robotB;
|
||||
>robotB : [number, string, string]
|
||||
}
|
||||
|
||||
function getMultiRobotB() {
|
||||
>getMultiRobotB : () => [string, [string, string]]
|
||||
|
||||
return multiRobotB;
|
||||
>multiRobotB : [string, [string, string]]
|
||||
}
|
||||
@@ -0,0 +1,57 @@
|
||||
// @sourcemap: true
|
||||
declare var console: {
|
||||
log(msg: any): void;
|
||||
}
|
||||
type Robot = [number, string, string];
|
||||
type MultiSkilledRobot = [string, [string, string]];
|
||||
|
||||
var robotA: Robot = [1, "mower", "mowing"];
|
||||
var robotB: Robot = [2, "trimmer", "trimming"];
|
||||
var multiRobotA: MultiSkilledRobot = ["mower", ["mowing", ""]];
|
||||
var multiRobotB: MultiSkilledRobot = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
let nameA: string, numberB: number, nameB: string, skillB: string;
|
||||
let robotAInfo: (number | string)[];
|
||||
|
||||
let multiSkillB: [string, string], nameMB: string, primarySkillB: string, secondarySkillB: string;
|
||||
let multiRobotAInfo: (string | [string, string])[];
|
||||
|
||||
[, nameA] = robotA;
|
||||
[, nameB] = getRobotB();
|
||||
[, nameB] = [2, "trimmer", "trimming"];
|
||||
[, multiSkillB] = multiRobotB;
|
||||
[, multiSkillB] = getMultiRobotB();
|
||||
[, multiSkillB] = ["roomba", ["vaccum", "mopping"]];
|
||||
|
||||
[numberB] = robotB;
|
||||
[numberB] = getRobotB();
|
||||
[numberB] = [2, "trimmer", "trimming"];
|
||||
[nameMB] = multiRobotB;
|
||||
[nameMB] = getMultiRobotB();
|
||||
[nameMB] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
[numberB, nameB, skillB] = robotB;
|
||||
[numberB, nameB, skillB] = getRobotB();
|
||||
[numberB, nameB, skillB] = [2, "trimmer", "trimming"];
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = multiRobotB;
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = getMultiRobotB();
|
||||
[nameMB, [primarySkillB, secondarySkillB]] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
[numberB, ...robotAInfo] = robotB;
|
||||
[numberB, ...robotAInfo] = getRobotB();
|
||||
[numberB, ...robotAInfo] = <Robot>[2, "trimmer", "trimming"];
|
||||
[...multiRobotAInfo] = multiRobotA;
|
||||
[...multiRobotAInfo] = getMultiRobotB();
|
||||
[...multiRobotAInfo] = ["trimmer", ["trimming", "edging"]];
|
||||
|
||||
if (nameA == nameB) {
|
||||
console.log(skillB);
|
||||
}
|
||||
|
||||
function getRobotB() {
|
||||
return robotB;
|
||||
}
|
||||
|
||||
function getMultiRobotB() {
|
||||
return multiRobotB;
|
||||
}
|
||||
Reference in New Issue
Block a user