* Eliminate well-known symbols in the checker: 2021 edition * Actually update the lib text to say unique symbol, too (this is unneeded with compat code in place, but this makes goto-def make more sense) * Add test showing mismatched symbol constructor type interop * Add more test cases for some other related issues this fixes * Revert computed name change * Style comments
40 lines
814 B
Text
40 lines
814 B
Text
=== tests/cases/conformance/es6/for-ofStatements/for-of30.ts ===
|
|
class StringIterator {
|
|
>StringIterator : StringIterator
|
|
|
|
next() {
|
|
>next : () => { done: boolean; value: string; }
|
|
|
|
return {
|
|
>{ done: false, value: "" } : { done: boolean; value: string; }
|
|
|
|
done: false,
|
|
>done : boolean
|
|
>false : false
|
|
|
|
value: ""
|
|
>value : string
|
|
>"" : ""
|
|
}
|
|
}
|
|
|
|
return = 0;
|
|
>return : number
|
|
>0 : 0
|
|
|
|
[Symbol.iterator]() {
|
|
>[Symbol.iterator] : () => this
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
|
|
return this;
|
|
>this : this
|
|
}
|
|
}
|
|
|
|
for (var v of new StringIterator) { }
|
|
>v : string
|
|
>new StringIterator : StringIterator
|
|
>StringIterator : typeof StringIterator
|
|
|