TypeScript/tests/baselines/reference/funcdecl.types

169 lines
4.4 KiB
Plaintext
Raw Normal View History

2014-08-15 23:33:16 +02:00
=== tests/cases/compiler/funcdecl.ts ===
function simpleFunc() {
>simpleFunc : () => string
2014-08-15 23:33:16 +02:00
return "this is my simple func";
2015-04-13 21:36:11 +02:00
>"this is my simple func" : string
2014-08-15 23:33:16 +02:00
}
var simpleFuncVar = simpleFunc;
>simpleFuncVar : () => string
>simpleFunc : () => string
2014-08-15 23:33:16 +02:00
function anotherFuncNoReturn() {
>anotherFuncNoReturn : () => void
2014-08-15 23:33:16 +02:00
}
var anotherFuncNoReturnVar = anotherFuncNoReturn;
>anotherFuncNoReturnVar : () => void
>anotherFuncNoReturn : () => void
2014-08-15 23:33:16 +02:00
function withReturn() : string{
>withReturn : () => string
2014-08-15 23:33:16 +02:00
return "Hello";
2015-04-13 21:36:11 +02:00
>"Hello" : string
2014-08-15 23:33:16 +02:00
}
var withReturnVar = withReturn;
>withReturnVar : () => string
>withReturn : () => string
2014-08-15 23:33:16 +02:00
function withParams(a : string) : string{
>withParams : (a: string) => string
>a : string
2014-08-15 23:33:16 +02:00
return a;
>a : string
2014-08-15 23:33:16 +02:00
}
var withparamsVar = withParams;
>withparamsVar : (a: string) => string
>withParams : (a: string) => string
2014-08-15 23:33:16 +02:00
function withMultiParams(a : number, b, c: Object) {
>withMultiParams : (a: number, b: any, c: Object) => number
>a : number
>b : any
>c : Object
>Object : Object
2014-08-15 23:33:16 +02:00
return a;
>a : number
2014-08-15 23:33:16 +02:00
}
var withMultiParamsVar = withMultiParams;
>withMultiParamsVar : (a: number, b: any, c: Object) => number
>withMultiParams : (a: number, b: any, c: Object) => number
2014-08-15 23:33:16 +02:00
function withOptionalParams(a?: string) {
>withOptionalParams : (a?: string) => void
>a : string
2014-08-15 23:33:16 +02:00
}
var withOptionalParamsVar = withOptionalParams;
>withOptionalParamsVar : (a?: string) => void
>withOptionalParams : (a?: string) => void
2014-08-15 23:33:16 +02:00
function withInitializedParams(a: string, b0, b = 30, c = "string value") {
>withInitializedParams : (a: string, b0: any, b?: number, c?: string) => void
>a : string
>b0 : any
>b : number
2015-04-13 21:36:11 +02:00
>30 : number
>c : string
2015-04-13 21:36:11 +02:00
>"string value" : string
2014-08-15 23:33:16 +02:00
}
var withInitializedParamsVar = withInitializedParams;
>withInitializedParamsVar : (a: string, b0: any, b?: number, c?: string) => void
>withInitializedParams : (a: string, b0: any, b?: number, c?: string) => void
2014-08-15 23:33:16 +02:00
function withOptionalInitializedParams(a: string, c: string = "hello string") {
>withOptionalInitializedParams : (a: string, c?: string) => void
>a : string
>c : string
2015-04-13 21:36:11 +02:00
>"hello string" : string
2014-08-15 23:33:16 +02:00
}
var withOptionalInitializedParamsVar = withOptionalInitializedParams;
>withOptionalInitializedParamsVar : (a: string, c?: string) => void
>withOptionalInitializedParams : (a: string, c?: string) => void
2014-08-15 23:33:16 +02:00
function withRestParams(a: string, ... myRestParameter : number[]) {
>withRestParams : (a: string, ...myRestParameter: number[]) => number[]
>a : string
>myRestParameter : number[]
2014-08-15 23:33:16 +02:00
return myRestParameter;
>myRestParameter : number[]
2014-08-15 23:33:16 +02:00
}
var withRestParamsVar = withRestParams;
>withRestParamsVar : (a: string, ...myRestParameter: number[]) => number[]
>withRestParams : (a: string, ...myRestParameter: number[]) => number[]
2014-08-15 23:33:16 +02:00
function overload1(n: number) : string;
>overload1 : { (n: number): string; (s: string): string; }
>n : number
2014-08-15 23:33:16 +02:00
function overload1(s: string) : string;
>overload1 : { (n: number): string; (s: string): string; }
>s : string
2014-08-15 23:33:16 +02:00
function overload1(ns: any) {
>overload1 : { (n: number): string; (s: string): string; }
>ns : any
2014-08-15 23:33:16 +02:00
return ns.toString();
>ns.toString() : any
>ns.toString : any
>ns : any
2014-08-15 23:33:16 +02:00
>toString : any
}
var withOverloadSignature = overload1;
>withOverloadSignature : { (n: number): string; (s: string): string; }
>overload1 : { (n: number): string; (s: string): string; }
2014-08-15 23:33:16 +02:00
function f(n: () => void) { }
>f : (n: () => void) => void
>n : () => void
2014-08-15 23:33:16 +02:00
module m2 {
>m2 : typeof m2
2014-08-15 23:33:16 +02:00
export function foo(n: () => void ) {
>foo : (n: () => void) => void
>n : () => void
2014-08-15 23:33:16 +02:00
}
}
m2.foo(() => {
2014-08-22 03:39:46 +02:00
>m2.foo(() => { var b = 30; return b;}) : void
>m2.foo : (n: () => void) => void
>m2 : typeof m2
>foo : (n: () => void) => void
2014-08-22 03:39:46 +02:00
>() => { var b = 30; return b;} : () => number
2014-08-15 23:33:16 +02:00
var b = 30;
>b : number
2015-04-13 21:36:11 +02:00
>30 : number
2014-08-15 23:33:16 +02:00
return b;
>b : number
2014-08-15 23:33:16 +02:00
});
declare function fooAmbient(n: number): string;
>fooAmbient : (n: number) => string
>n : number
2014-08-15 23:33:16 +02:00
declare function overloadAmbient(n: number): string;
>overloadAmbient : { (n: number): string; (s: string): string; }
>n : number
2014-08-15 23:33:16 +02:00
declare function overloadAmbient(s: string): string;
>overloadAmbient : { (n: number): string; (s: string): string; }
>s : string
2014-08-15 23:33:16 +02:00
var f2 = () => {
>f2 : () => string
2014-08-22 03:39:46 +02:00
>() => { return "string";} : () => string
2014-08-15 23:33:16 +02:00
return "string";
2015-04-13 21:36:11 +02:00
>"string" : string
2014-08-15 23:33:16 +02:00
}