Test case for ForOf statement with object binding pattern
This commit is contained in:
parent
6f896836b8
commit
c0f9de6d2c
|
@ -0,0 +1,130 @@
|
|||
//// [sourceMapValidationDestructuringForOfObjectBindingPattern.ts]
|
||||
declare var console: {
|
||||
log(msg: any): void;
|
||||
}
|
||||
interface Robot {
|
||||
name: string;
|
||||
skill: string;
|
||||
}
|
||||
|
||||
interface MultiRobot {
|
||||
name: string;
|
||||
skills: {
|
||||
primary: string;
|
||||
secondary: string;
|
||||
};
|
||||
}
|
||||
|
||||
let robots: Robot[] = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }];
|
||||
let multiRobots: MultiRobot[] = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }];
|
||||
|
||||
function getRobots() {
|
||||
return robots;
|
||||
}
|
||||
|
||||
function getMultiRobots() {
|
||||
return multiRobots;
|
||||
}
|
||||
|
||||
for (let {name: nameA } of robots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA } of getRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
|
||||
for (let {name: nameA, skill: skillA } of robots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of getRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
console.log(nameA);
|
||||
}
|
||||
|
||||
//// [sourceMapValidationDestructuringForOfObjectBindingPattern.js]
|
||||
var robots = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }];
|
||||
var multiRobots = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }];
|
||||
function getRobots() {
|
||||
return robots;
|
||||
}
|
||||
function getMultiRobots() {
|
||||
return multiRobots;
|
||||
}
|
||||
for (var _i = 0, robots_1 = robots; _i < robots_1.length; _i++) {
|
||||
var nameA = robots_1[_i].name;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _a = 0, _b = getRobots(); _a < _b.length; _a++) {
|
||||
var nameA = _b[_a].name;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _c = 0, _d = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]; _c < _d.length; _c++) {
|
||||
var nameA = _d[_c].name;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _e = 0, multiRobots_1 = multiRobots; _e < multiRobots_1.length; _e++) {
|
||||
var _f = multiRobots_1[_e].skills, primaryA = _f.primary, secondaryA = _f.secondary;
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (var _g = 0, _h = getMultiRobots(); _g < _h.length; _g++) {
|
||||
var _j = _h[_g].skills, primaryA = _j.primary, secondaryA = _j.secondary;
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (var _k = 0, _l = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]; _k < _l.length; _k++) {
|
||||
var _m = _l[_k].skills, primaryA = _m.primary, secondaryA = _m.secondary;
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (var _o = 0, robots_2 = robots; _o < robots_2.length; _o++) {
|
||||
var _p = robots_2[_o], nameA = _p.name, skillA = _p.skill;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _q = 0, _r = getRobots(); _q < _r.length; _q++) {
|
||||
var _s = _r[_q], nameA = _s.name, skillA = _s.skill;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _t = 0, _u = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]; _t < _u.length; _t++) {
|
||||
var _v = _u[_t], nameA = _v.name, skillA = _v.skill;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _w = 0, multiRobots_2 = multiRobots; _w < multiRobots_2.length; _w++) {
|
||||
var _x = multiRobots_2[_w], nameA = _x.name, _y = _x.skills, primaryA = _y.primary, secondaryA = _y.secondary;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _z = 0, _0 = getMultiRobots(); _z < _0.length; _z++) {
|
||||
var _1 = _0[_z], nameA = _1.name, _2 = _1.skills, primaryA = _2.primary, secondaryA = _2.secondary;
|
||||
console.log(nameA);
|
||||
}
|
||||
for (var _3 = 0, _4 = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]; _3 < _4.length; _3++) {
|
||||
var _5 = _4[_3], nameA = _5.name, _6 = _5.skills, primaryA = _6.primary, secondaryA = _6.secondary;
|
||||
console.log(nameA);
|
||||
}
|
||||
//# sourceMappingURL=sourceMapValidationDestructuringForOfObjectBindingPattern.js.map
|
|
@ -0,0 +1,2 @@
|
|||
//// [sourceMapValidationDestructuringForOfObjectBindingPattern.js.map]
|
||||
{"version":3,"file":"sourceMapValidationDestructuringForOfObjectBindingPattern.js","sourceRoot":"","sources":["sourceMapValidationDestructuringForOfObjectBindingPattern.ts"],"names":[],"mappings":"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"}
|
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1,259 @@
|
|||
=== tests/cases/compiler/sourceMapValidationDestructuringForOfObjectBindingPattern.ts ===
|
||||
declare var console: {
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
|
||||
log(msg: any): void;
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>msg : Symbol(msg, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 1, 8))
|
||||
}
|
||||
interface Robot {
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 2, 1))
|
||||
|
||||
name: string;
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 3, 17))
|
||||
|
||||
skill: string;
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 4, 17))
|
||||
}
|
||||
|
||||
interface MultiRobot {
|
||||
>MultiRobot : Symbol(MultiRobot, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 6, 1))
|
||||
|
||||
name: string;
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 8, 22))
|
||||
|
||||
skills: {
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 9, 17))
|
||||
|
||||
primary: string;
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 10, 13))
|
||||
|
||||
secondary: string;
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 11, 24))
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
let robots: Robot[] = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }];
|
||||
>robots : Symbol(robots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 3))
|
||||
>Robot : Symbol(Robot, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 2, 1))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 24))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 39))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 60))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 77))
|
||||
|
||||
let multiRobots: MultiRobot[] = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>multiRobots : Symbol(multiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 3))
|
||||
>MultiRobot : Symbol(MultiRobot, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 6, 1))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 34))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 49))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 59))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 78))
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }];
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 5))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 22))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 53))
|
||||
|
||||
function getRobots() {
|
||||
>getRobots : Symbol(getRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 79))
|
||||
|
||||
return robots;
|
||||
>robots : Symbol(robots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 3))
|
||||
}
|
||||
|
||||
function getMultiRobots() {
|
||||
>getMultiRobots : Symbol(getMultiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 22, 1))
|
||||
|
||||
return multiRobots;
|
||||
>multiRobots : Symbol(multiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 3))
|
||||
}
|
||||
|
||||
for (let {name: nameA } of robots) {
|
||||
>name : Symbol(Robot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 3, 17))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 28, 10))
|
||||
>robots : Symbol(robots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 3))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 28, 10))
|
||||
}
|
||||
for (let {name: nameA } of getRobots()) {
|
||||
>name : Symbol(Robot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 3, 17))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 31, 10))
|
||||
>getRobots : Symbol(getRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 79))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 31, 10))
|
||||
}
|
||||
for (let {name: nameA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 29))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 10))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 29))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 44))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 65))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 82))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 34, 10))
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
>skills : Symbol(MultiRobot.skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 9, 17))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 10, 13))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 37, 20))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 11, 24))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 37, 39))
|
||||
>multiRobots : Symbol(multiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 3))
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 37, 20))
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
>skills : Symbol(MultiRobot.skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 9, 17))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 10, 13))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 40, 20))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 11, 24))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 40, 39))
|
||||
>getMultiRobots : Symbol(getMultiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 22, 1))
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 40, 20))
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 86))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 96))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 20))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 115))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 39))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 71))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 86))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 96))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 115))
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 44, 5))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 44, 22))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 44, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 44, 53))
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 43, 20))
|
||||
}
|
||||
|
||||
for (let {name: nameA, skill: skillA } of robots) {
|
||||
>name : Symbol(Robot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 3, 17))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 48, 10))
|
||||
>skill : Symbol(Robot.skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 4, 17))
|
||||
>skillA : Symbol(skillA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 48, 22))
|
||||
>robots : Symbol(robots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 16, 3))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 48, 10))
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of getRobots()) {
|
||||
>name : Symbol(Robot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 3, 17))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 51, 10))
|
||||
>skill : Symbol(Robot.skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 4, 17))
|
||||
>skillA : Symbol(skillA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 51, 22))
|
||||
>getRobots : Symbol(getRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 18, 79))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 51, 10))
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 44))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 10))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 59))
|
||||
>skillA : Symbol(skillA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 22))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 44))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 59))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 80))
|
||||
>skill : Symbol(skill, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 97))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 54, 10))
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
>name : Symbol(MultiRobot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 8, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 57, 10))
|
||||
>skills : Symbol(MultiRobot.skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 9, 17))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 10, 13))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 57, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 11, 24))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 57, 51))
|
||||
>multiRobots : Symbol(multiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 17, 3))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 57, 10))
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
>name : Symbol(MultiRobot.name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 8, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 60, 10))
|
||||
>skills : Symbol(MultiRobot.skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 9, 17))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 10, 13))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 60, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 11, 24))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 60, 51))
|
||||
>getMultiRobots : Symbol(getMultiRobots, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 22, 1))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 60, 10))
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 83))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 10))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 98))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 108))
|
||||
>primaryA : Symbol(primaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 127))
|
||||
>secondaryA : Symbol(secondaryA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 51))
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 83))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 98))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 108))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 127))
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
>name : Symbol(name, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 64, 5))
|
||||
>skills : Symbol(skills, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 64, 22))
|
||||
>primary : Symbol(primary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 64, 32))
|
||||
>secondary : Symbol(secondary, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 64, 53))
|
||||
|
||||
console.log(nameA);
|
||||
>console.log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>console : Symbol(console, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 11))
|
||||
>log : Symbol(log, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 0, 22))
|
||||
>nameA : Symbol(nameA, Decl(sourceMapValidationDestructuringForOfObjectBindingPattern.ts, 63, 10))
|
||||
}
|
|
@ -0,0 +1,329 @@
|
|||
=== tests/cases/compiler/sourceMapValidationDestructuringForOfObjectBindingPattern.ts ===
|
||||
declare var console: {
|
||||
>console : { log(msg: any): void; }
|
||||
|
||||
log(msg: any): void;
|
||||
>log : (msg: any) => void
|
||||
>msg : any
|
||||
}
|
||||
interface Robot {
|
||||
>Robot : Robot
|
||||
|
||||
name: string;
|
||||
>name : string
|
||||
|
||||
skill: string;
|
||||
>skill : string
|
||||
}
|
||||
|
||||
interface MultiRobot {
|
||||
>MultiRobot : MultiRobot
|
||||
|
||||
name: string;
|
||||
>name : string
|
||||
|
||||
skills: {
|
||||
>skills : { primary: string; secondary: string; }
|
||||
|
||||
primary: string;
|
||||
>primary : string
|
||||
|
||||
secondary: string;
|
||||
>secondary : string
|
||||
|
||||
};
|
||||
}
|
||||
|
||||
let robots: Robot[] = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }];
|
||||
>robots : Robot[]
|
||||
>Robot : Robot
|
||||
>[{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }] : { name: string; skill: string; }[]
|
||||
>{ name: "mower", skill: "mowing" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skill : string
|
||||
>"mowing" : string
|
||||
>{ name: "trimmer", skill: "trimming" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skill : string
|
||||
>"trimming" : string
|
||||
|
||||
let multiRobots: MultiRobot[] = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>multiRobots : MultiRobot[]
|
||||
>MultiRobot : MultiRobot
|
||||
>[{ name: "mower", skills: { primary: "mowing", secondary: "none" } }, { name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }] : { name: string; skills: { primary: string; secondary: string; }; }[]
|
||||
>{ name: "mower", skills: { primary: "mowing", secondary: "none" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "mowing", secondary: "none" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"mowing" : string
|
||||
>secondary : string
|
||||
>"none" : string
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }];
|
||||
>{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "trimming", secondary: "edging" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"trimming" : string
|
||||
>secondary : string
|
||||
>"edging" : string
|
||||
|
||||
function getRobots() {
|
||||
>getRobots : () => Robot[]
|
||||
|
||||
return robots;
|
||||
>robots : Robot[]
|
||||
}
|
||||
|
||||
function getMultiRobots() {
|
||||
>getMultiRobots : () => MultiRobot[]
|
||||
|
||||
return multiRobots;
|
||||
>multiRobots : MultiRobot[]
|
||||
}
|
||||
|
||||
for (let {name: nameA } of robots) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>robots : Robot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA } of getRobots()) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>getRobots() : Robot[]
|
||||
>getRobots : () => Robot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>[{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }] : { name: string; skill: string; }[]
|
||||
>{ name: "mower", skill: "mowing" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skill : string
|
||||
>"mowing" : string
|
||||
>{ name: "trimmer", skill: "trimming" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skill : string
|
||||
>"trimming" : string
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>multiRobots : MultiRobot[]
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log(primaryA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>primaryA : string
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>getMultiRobots() : MultiRobot[]
|
||||
>getMultiRobots : () => MultiRobot[]
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log(primaryA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>primaryA : string
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>[{ name: "mower", skills: { primary: "mowing", secondary: "none" } }, { name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }] : { name: string; skills: { primary: string; secondary: string; }; }[]
|
||||
>{ name: "mower", skills: { primary: "mowing", secondary: "none" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "mowing", secondary: "none" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"mowing" : string
|
||||
>secondary : string
|
||||
>"none" : string
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
>{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "trimming", secondary: "edging" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"trimming" : string
|
||||
>secondary : string
|
||||
>"edging" : string
|
||||
|
||||
console.log(primaryA);
|
||||
>console.log(primaryA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>primaryA : string
|
||||
}
|
||||
|
||||
for (let {name: nameA, skill: skillA } of robots) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skill : any
|
||||
>skillA : string
|
||||
>robots : Robot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of getRobots()) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skill : any
|
||||
>skillA : string
|
||||
>getRobots() : Robot[]
|
||||
>getRobots : () => Robot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skill : any
|
||||
>skillA : string
|
||||
>[{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }] : { name: string; skill: string; }[]
|
||||
>{ name: "mower", skill: "mowing" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skill : string
|
||||
>"mowing" : string
|
||||
>{ name: "trimmer", skill: "trimming" } : { name: string; skill: string; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skill : string
|
||||
>"trimming" : string
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>multiRobots : MultiRobot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>getMultiRobots() : MultiRobot[]
|
||||
>getMultiRobots : () => MultiRobot[]
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
>name : any
|
||||
>nameA : string
|
||||
>skills : any
|
||||
>primary : any
|
||||
>primaryA : string
|
||||
>secondary : any
|
||||
>secondaryA : string
|
||||
>[{ name: "mower", skills: { primary: "mowing", secondary: "none" } }, { name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }] : { name: string; skills: { primary: string; secondary: string; }; }[]
|
||||
>{ name: "mower", skills: { primary: "mowing", secondary: "none" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"mower" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "mowing", secondary: "none" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"mowing" : string
|
||||
>secondary : string
|
||||
>"none" : string
|
||||
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
>{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } } : { name: string; skills: { primary: string; secondary: string; }; }
|
||||
>name : string
|
||||
>"trimmer" : string
|
||||
>skills : { primary: string; secondary: string; }
|
||||
>{ primary: "trimming", secondary: "edging" } : { primary: string; secondary: string; }
|
||||
>primary : string
|
||||
>"trimming" : string
|
||||
>secondary : string
|
||||
>"edging" : string
|
||||
|
||||
console.log(nameA);
|
||||
>console.log(nameA) : void
|
||||
>console.log : (msg: any) => void
|
||||
>console : { log(msg: any): void; }
|
||||
>log : (msg: any) => void
|
||||
>nameA : string
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
// @sourcemap: true
|
||||
declare var console: {
|
||||
log(msg: any): void;
|
||||
}
|
||||
interface Robot {
|
||||
name: string;
|
||||
skill: string;
|
||||
}
|
||||
|
||||
interface MultiRobot {
|
||||
name: string;
|
||||
skills: {
|
||||
primary: string;
|
||||
secondary: string;
|
||||
};
|
||||
}
|
||||
|
||||
let robots: Robot[] = [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }];
|
||||
let multiRobots: MultiRobot[] = [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }];
|
||||
|
||||
function getRobots() {
|
||||
return robots;
|
||||
}
|
||||
|
||||
function getMultiRobots() {
|
||||
return multiRobots;
|
||||
}
|
||||
|
||||
for (let {name: nameA } of robots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA } of getRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
for (let { skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
console.log(primaryA);
|
||||
}
|
||||
|
||||
for (let {name: nameA, skill: skillA } of robots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of getRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skill: skillA } of [{ name: "mower", skill: "mowing" }, { name: "trimmer", skill: "trimming" }]) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of multiRobots) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of getMultiRobots()) {
|
||||
console.log(nameA);
|
||||
}
|
||||
for (let {name: nameA, skills: { primary: primaryA, secondary: secondaryA } } of [{ name: "mower", skills: { primary: "mowing", secondary: "none" } },
|
||||
{ name: "trimmer", skills: { primary: "trimming", secondary: "edging" } }]) {
|
||||
console.log(nameA);
|
||||
}
|
Loading…
Reference in a new issue