TypeScript/tests/baselines/reference/fatarrowfunctions.types
2015-04-13 14:29:37 -07:00

247 lines
10 KiB
Plaintext

=== tests/cases/compiler/fatarrowfunctions.ts ===
function foo(x:any) {
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 1, 13))
return x();
>x() : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 1, 13))
}
foo((x:number,y,z)=>{return x+y+z;});
>foo((x:number,y,z)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x:number,y,z)=>{return x+y+z;} : (x: number, y: any, z: any) => any
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 6, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 6, 14))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 6, 16))
>x+y+z : any
>x+y : any
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 6, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 6, 14))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 6, 16))
foo((x,y,z)=>{return x+y+z;});
>foo((x,y,z)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y,z)=>{return x+y+z;} : (x: any, y: any, z: any) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 7, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 7, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 7, 9))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 7, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 7, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 7, 9))
foo((x,y:number,z)=>{return x+y+z;});
>foo((x,y:number,z)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y:number,z)=>{return x+y+z;} : (x: any, y: number, z: any) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 8, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 8, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 8, 16))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 8, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 8, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 8, 16))
foo((x,y:number,z:number)=>{return x+y+z;});
>foo((x,y:number,z:number)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y:number,z:number)=>{return x+y+z;} : (x: any, y: number, z: number) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 9, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 9, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 9, 16))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 9, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 9, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 9, 16))
foo((x,y,z:number)=>{return x+y+z;});
>foo((x,y,z:number)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y,z:number)=>{return x+y+z;} : (x: any, y: any, z: number) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 10, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 10, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 10, 9))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 10, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 10, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 10, 9))
foo(()=>{return 0;});
>foo(()=>{return 0;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>()=>{return 0;} : () => number
>0 : number
foo((x:number,y,z)=>x+y+z);
>foo((x:number,y,z)=>x+y+z) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x:number,y,z)=>x+y+z : (x: number, y: any, z: any) => any
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 13, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 13, 14))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 13, 16))
>x+y+z : any
>x+y : any
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 13, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 13, 14))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 13, 16))
foo((x,y,z)=>x+y+z);
>foo((x,y,z)=>x+y+z) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y,z)=>x+y+z : (x: any, y: any, z: any) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 14, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 14, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 14, 9))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 14, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 14, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 14, 9))
foo((x,y:number,z)=>{return x+y+z;});
>foo((x,y:number,z)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y:number,z)=>{return x+y+z;} : (x: any, y: number, z: any) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 15, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 15, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 15, 16))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 15, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 15, 7))
>z : any, Symbol(z, Decl(fatarrowfunctions.ts, 15, 16))
foo((x,y:number,z:number)=>{return x+y+z;});
>foo((x,y:number,z:number)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y:number,z:number)=>{return x+y+z;} : (x: any, y: number, z: number) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 16, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 16, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 16, 16))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 16, 5))
>y : number, Symbol(y, Decl(fatarrowfunctions.ts, 16, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 16, 16))
foo((x,y,z:number)=>{return x+y+z;});
>foo((x,y,z:number)=>{return x+y+z;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>(x,y,z:number)=>{return x+y+z;} : (x: any, y: any, z: number) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 17, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 17, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 17, 9))
>x+y+z : any
>x+y : any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 17, 5))
>y : any, Symbol(y, Decl(fatarrowfunctions.ts, 17, 7))
>z : number, Symbol(z, Decl(fatarrowfunctions.ts, 17, 9))
foo(()=>{return 0;});
>foo(()=>{return 0;}) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>()=>{return 0;} : () => number
>0 : number
foo(((x) => x));
>foo(((x) => x)) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>((x) => x) : (x: any) => any
>(x) => x : (x: any) => any
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 21, 6))
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 21, 6))
foo(x => x*x);
>foo(x => x*x) : any
>foo : (x: any) => any, Symbol(foo, Decl(fatarrowfunctions.ts, 0, 0))
>x => x*x : (x: any) => number
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 23, 4))
>x*x : number
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 23, 4))
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 23, 4))
var y = x => x*x;
>y : (x: any) => number, Symbol(y, Decl(fatarrowfunctions.ts, 25, 3))
>x => x*x : (x: any) => number
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 25, 7))
>x*x : number
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 25, 7))
>x : any, Symbol(x, Decl(fatarrowfunctions.ts, 25, 7))
var z = (x:number) => x*x;
>z : (x: number) => number, Symbol(z, Decl(fatarrowfunctions.ts, 26, 3))
>(x:number) => x*x : (x: number) => number
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 26, 9))
>x*x : number
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 26, 9))
>x : number, Symbol(x, Decl(fatarrowfunctions.ts, 26, 9))
var w = () => 3;
>w : () => number, Symbol(w, Decl(fatarrowfunctions.ts, 28, 3))
>() => 3 : () => number
>3 : number
function ternaryTest(isWhile:boolean) {
>ternaryTest : (isWhile: boolean) => void, Symbol(ternaryTest, Decl(fatarrowfunctions.ts, 28, 16))
>isWhile : boolean, Symbol(isWhile, Decl(fatarrowfunctions.ts, 30, 21))
var f = isWhile ? function (n) { return n > 0; } : function (n) { return n === 0; };
>f : (n: any) => boolean, Symbol(f, Decl(fatarrowfunctions.ts, 32, 19))
>isWhile ? function (n) { return n > 0; } : function (n) { return n === 0; } : (n: any) => boolean
>isWhile : boolean, Symbol(isWhile, Decl(fatarrowfunctions.ts, 30, 21))
>function (n) { return n > 0; } : (n: any) => boolean
>n : any, Symbol(n, Decl(fatarrowfunctions.ts, 32, 44))
>n > 0 : boolean
>n : any, Symbol(n, Decl(fatarrowfunctions.ts, 32, 44))
>0 : number
>function (n) { return n === 0; } : (n: any) => boolean
>n : any, Symbol(n, Decl(fatarrowfunctions.ts, 32, 77))
>n === 0 : boolean
>n : any, Symbol(n, Decl(fatarrowfunctions.ts, 32, 77))
>0 : number
}
declare function setTimeout(expression: any, msec?: number, language?: any): number;
>setTimeout : (expression: any, msec?: number, language?: any) => number, Symbol(setTimeout, Decl(fatarrowfunctions.ts, 34, 1))
>expression : any, Symbol(expression, Decl(fatarrowfunctions.ts, 36, 28))
>msec : number, Symbol(msec, Decl(fatarrowfunctions.ts, 36, 44))
>language : any, Symbol(language, Decl(fatarrowfunctions.ts, 36, 59))
var messenger = {
>messenger : { message: string; start: () => void; }, Symbol(messenger, Decl(fatarrowfunctions.ts, 38, 3))
>{ message: "Hello World", start: function() { setTimeout(() => { this.message.toString(); }, 3000); }} : { message: string; start: () => void; }
message: "Hello World",
>message : string, Symbol(message, Decl(fatarrowfunctions.ts, 38, 17))
>"Hello World" : string
start: function() {
>start : () => void, Symbol(start, Decl(fatarrowfunctions.ts, 39, 27))
>function() { setTimeout(() => { this.message.toString(); }, 3000); } : () => void
setTimeout(() => { this.message.toString(); }, 3000);
>setTimeout(() => { this.message.toString(); }, 3000) : number
>setTimeout : (expression: any, msec?: number, language?: any) => number, Symbol(setTimeout, Decl(fatarrowfunctions.ts, 34, 1))
>() => { this.message.toString(); } : () => void
>this.message.toString() : any
>this.message.toString : any
>this.message : any
>this : any
>message : any
>toString : any
>3000 : number
}
};