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 57 58 59 60 61 62 63 64 65
|
=== tests/cases/compiler/fuzzy.ts ===
module M {
>M : typeof M
export interface I {
works:()=>R;
>works : () => R
alsoWorks:()=>R;
>alsoWorks : () => R
doesntWork:()=>R;
>doesntWork : () => R
}
export interface R {
anything:number;
>anything : number
oneI:I;
>oneI : I
}
export class C implements I {
>C : C
constructor(public x:number) {
>x : number
}
works():R {
>works : () => R
return <R>({ anything: 1 });
><R>({ anything: 1 }) : R
>({ anything: 1 }) : { anything: number; }
>{ anything: 1 } : { anything: number; }
>anything : number
>1 : 1
}
doesntWork():R {
>doesntWork : () => R
return { anything:1, oneI:this };
>{ anything:1, oneI:this } : { anything: number; oneI: this; }
>anything : number
>1 : 1
>oneI : this
>this : this
}
worksToo():R {
>worksToo : () => R
return <R>({ oneI: this });
><R>({ oneI: this }) : R
>({ oneI: this }) : { oneI: this; }
>{ oneI: this } : { oneI: this; }
>oneI : this
>this : this
}
}
}
|