1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
=== tests/cases/conformance/es6/Symbols/symbolProperty41.ts ===
class C {
>C : C
[Symbol.iterator](x: string): { x: string };
>[Symbol.iterator] : { (x: string): { x: string; }; (x: "hello"): { x: string; hello: string; }; }
>Symbol.iterator : symbol
>Symbol : SymbolConstructor
>iterator : symbol
>x : string
>x : string
[Symbol.iterator](x: "hello"): { x: string; hello: string };
>[Symbol.iterator] : { (x: string): { x: string; }; (x: "hello"): { x: string; hello: string; }; }
>Symbol.iterator : symbol
>Symbol : SymbolConstructor
>iterator : symbol
>x : "hello"
>x : string
>hello : string
[Symbol.iterator](x: any) {
>[Symbol.iterator] : { (x: string): { x: string; }; (x: "hello"): { x: string; hello: string; }; }
>Symbol.iterator : symbol
>Symbol : SymbolConstructor
>iterator : symbol
>x : any
return undefined;
>undefined : undefined
}
}
var c = new C;
>c : C
>new C : C
>C : typeof C
c[Symbol.iterator]("");
>c[Symbol.iterator]("") : { x: string; }
>c[Symbol.iterator] : { (x: string): { x: string; }; (x: "hello"): { x: string; hello: string; }; }
>c : C
>Symbol.iterator : symbol
>Symbol : SymbolConstructor
>iterator : symbol
>"" : ""
c[Symbol.iterator]("hello");
>c[Symbol.iterator]("hello") : { x: string; hello: string; }
>c[Symbol.iterator] : { (x: string): { x: string; }; (x: "hello"): { x: string; hello: string; }; }
>c : C
>Symbol.iterator : symbol
>Symbol : SymbolConstructor
>iterator : symbol
>"hello" : "hello"
|