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

26 lines
1.6 KiB
Plaintext

=== tests/cases/compiler/functionOverloads35.ts ===
function foo(bar:{a:number;}):number;
>foo : { (bar: { a: number; }): number; (bar: { a: string; }): string; }, Symbol(foo, Decl(functionOverloads35.ts, 0, 0), Decl(functionOverloads35.ts, 0, 37), Decl(functionOverloads35.ts, 1, 37))
>bar : { a: number; }, Symbol(bar, Decl(functionOverloads35.ts, 0, 13))
>a : number, Symbol(a, Decl(functionOverloads35.ts, 0, 18))
function foo(bar:{a:string;}):string;
>foo : { (bar: { a: number; }): number; (bar: { a: string; }): string; }, Symbol(foo, Decl(functionOverloads35.ts, 0, 0), Decl(functionOverloads35.ts, 0, 37), Decl(functionOverloads35.ts, 1, 37))
>bar : { a: string; }, Symbol(bar, Decl(functionOverloads35.ts, 1, 13))
>a : string, Symbol(a, Decl(functionOverloads35.ts, 1, 18))
function foo(bar:{a:any;}):any{ return bar }
>foo : { (bar: { a: number; }): number; (bar: { a: string; }): string; }, Symbol(foo, Decl(functionOverloads35.ts, 0, 0), Decl(functionOverloads35.ts, 0, 37), Decl(functionOverloads35.ts, 1, 37))
>bar : { a: any; }, Symbol(bar, Decl(functionOverloads35.ts, 2, 13))
>a : any, Symbol(a, Decl(functionOverloads35.ts, 2, 18))
>bar : { a: any; }, Symbol(bar, Decl(functionOverloads35.ts, 2, 13))
var x = foo({a:1});
>x : number, Symbol(x, Decl(functionOverloads35.ts, 3, 3))
>foo({a:1}) : number
>foo : { (bar: { a: number; }): number; (bar: { a: string; }): string; }, Symbol(foo, Decl(functionOverloads35.ts, 0, 0), Decl(functionOverloads35.ts, 0, 37), Decl(functionOverloads35.ts, 1, 37))
>{a:1} : { a: number; }
>a : number, Symbol(a, Decl(functionOverloads35.ts, 3, 13))
>1 : number