41 lines
757 B
TypeScript
41 lines
757 B
TypeScript
//// [iterableArrayPattern20.ts]
|
|
function fun(...[[a = new Foo], b = [new Foo]]: Bar[][]) { }
|
|
fun(...new FooArrayIterator);
|
|
class Bar { x }
|
|
class Foo extends Bar { y }
|
|
class FooArrayIterator {
|
|
next() {
|
|
return {
|
|
value: [new Foo],
|
|
done: false
|
|
};
|
|
}
|
|
|
|
[Symbol.iterator]() {
|
|
return this;
|
|
}
|
|
}
|
|
|
|
//// [iterableArrayPattern20.js]
|
|
function fun(...[[a = new Foo], b = [
|
|
new Foo
|
|
]]) {
|
|
}
|
|
fun(...new FooArrayIterator);
|
|
class Bar {
|
|
}
|
|
class Foo extends Bar {
|
|
}
|
|
class FooArrayIterator {
|
|
next() {
|
|
return {
|
|
value: [
|
|
new Foo
|
|
],
|
|
done: false
|
|
};
|
|
}
|
|
[Symbol.iterator]() {
|
|
return this;
|
|
}
|
|
}
|