40 lines
625 B
TypeScript
40 lines
625 B
TypeScript
|
//// [iterableArrayPattern6.ts]
|
||
|
var a: Bar, b: string[];
|
||
|
[a, ...b] = new FooIterator;
|
||
|
class Bar { x }
|
||
|
class Foo extends Bar { y }
|
||
|
class FooIterator {
|
||
|
next() {
|
||
|
return {
|
||
|
value: new Foo,
|
||
|
done: false
|
||
|
};
|
||
|
}
|
||
|
|
||
|
[Symbol.iterator]() {
|
||
|
return this;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
//// [iterableArrayPattern6.js]
|
||
|
var a, b;
|
||
|
[
|
||
|
a,
|
||
|
...b
|
||
|
] = new FooIterator;
|
||
|
class Bar {
|
||
|
}
|
||
|
class Foo extends Bar {
|
||
|
}
|
||
|
class FooIterator {
|
||
|
next() {
|
||
|
return {
|
||
|
value: new Foo,
|
||
|
done: false
|
||
|
};
|
||
|
}
|
||
|
[Symbol.iterator]() {
|
||
|
return this;
|
||
|
}
|
||
|
}
|