87d10eb055
* 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
35 lines
580 B
Plaintext
35 lines
580 B
Plaintext
=== tests/cases/conformance/es6/Symbols/symbolProperty10.ts ===
|
|
class C {
|
|
>C : C
|
|
|
|
[Symbol.iterator]: { x; y };
|
|
>[Symbol.iterator] : { x: any; y: any; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : any
|
|
>y : any
|
|
}
|
|
interface I {
|
|
[Symbol.iterator]?: { x };
|
|
>[Symbol.iterator] : { x: any; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : any
|
|
}
|
|
|
|
var i: I;
|
|
>i : I
|
|
|
|
i = new C;
|
|
>i = new C : C
|
|
>i : I
|
|
>new C : C
|
|
>C : typeof C
|
|
|
|
var c: C = i;
|
|
>c : C
|
|
>i : I
|
|
|