* 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
1 KiB
Plaintext
40 lines
1 KiB
Plaintext
=== tests/cases/conformance/es6/Symbols/symbolProperty39.ts ===
|
|
class C {
|
|
>C : C
|
|
|
|
[Symbol.iterator](x: string): string;
|
|
>[Symbol.iterator] : { (x: string): string; (x: number): number; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : string
|
|
|
|
[Symbol.iterator](x: number): number;
|
|
>[Symbol.iterator] : { (x: string): string; (x: number): number; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : number
|
|
|
|
[Symbol.iterator](x: any) {
|
|
>[Symbol.iterator] : { (x: string): string; (x: number): number; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : any
|
|
|
|
return undefined;
|
|
>undefined : undefined
|
|
}
|
|
[Symbol.iterator](x: any) {
|
|
>[Symbol.iterator] : { (x: string): string; (x: number): number; }
|
|
>Symbol.iterator : unique symbol
|
|
>Symbol : SymbolConstructor
|
|
>iterator : unique symbol
|
|
>x : any
|
|
|
|
return undefined;
|
|
>undefined : undefined
|
|
}
|
|
}
|