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

69 lines
5.3 KiB
Plaintext

=== tests/cases/conformance/es6/templates/taggedTemplateStringsWithOverloadResolution2.ts ===
function foo1(strs: TemplateStringsArray, x: number): string;
>foo1 : { (strs: TemplateStringsArray, x: number): string; (strs: string[], x: number): number; }, Symbol(foo1, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 0, 0), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 61), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 49))
>strs : TemplateStringsArray, Symbol(strs, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 14))
>TemplateStringsArray : TemplateStringsArray, Symbol(TemplateStringsArray, Decl(lib.d.ts, 518, 38))
>x : number, Symbol(x, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 41))
function foo1(strs: string[], x: number): number;
>foo1 : { (strs: TemplateStringsArray, x: number): string; (strs: string[], x: number): number; }, Symbol(foo1, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 0, 0), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 61), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 49))
>strs : string[], Symbol(strs, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 14))
>x : number, Symbol(x, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 29))
function foo1(...stuff: any[]): any {
>foo1 : { (strs: TemplateStringsArray, x: number): string; (strs: string[], x: number): number; }, Symbol(foo1, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 0, 0), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 61), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 49))
>stuff : any[], Symbol(stuff, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 3, 14))
return undefined;
>undefined : undefined, Symbol(undefined)
}
var a = foo1 `${1}`; // string
>a : string, Symbol(a, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 7, 3))
>foo1 `${1}` : string
>foo1 : { (strs: TemplateStringsArray, x: number): string; (strs: string[], x: number): number; }, Symbol(foo1, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 0, 0), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 61), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 49))
>`${1}` : string
>1 : number
var b = foo1([], 1); // number
>b : number, Symbol(b, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 3))
>foo1([], 1) : number
>foo1 : { (strs: TemplateStringsArray, x: number): string; (strs: string[], x: number): number; }, Symbol(foo1, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 0, 0), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 1, 61), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 2, 49))
>[] : undefined[]
>1 : number
function foo2(strs: string[], x: number): number;
>foo2 : { (strs: string[], x: number): number; (strs: TemplateStringsArray, x: number): string; }, Symbol(foo2, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 20), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 49), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 61))
>strs : string[], Symbol(strs, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 14))
>x : number, Symbol(x, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 29))
function foo2(strs: TemplateStringsArray, x: number): string;
>foo2 : { (strs: string[], x: number): number; (strs: TemplateStringsArray, x: number): string; }, Symbol(foo2, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 20), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 49), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 61))
>strs : TemplateStringsArray, Symbol(strs, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 14))
>TemplateStringsArray : TemplateStringsArray, Symbol(TemplateStringsArray, Decl(lib.d.ts, 518, 38))
>x : number, Symbol(x, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 41))
function foo2(...stuff: any[]): any {
>foo2 : { (strs: string[], x: number): number; (strs: TemplateStringsArray, x: number): string; }, Symbol(foo2, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 20), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 49), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 61))
>stuff : any[], Symbol(stuff, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 12, 14))
return undefined;
>undefined : undefined, Symbol(undefined)
}
var c = foo2 `${1}`; // number
>c : number, Symbol(c, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 16, 3))
>foo2 `${1}` : number
>foo2 : { (strs: string[], x: number): number; (strs: TemplateStringsArray, x: number): string; }, Symbol(foo2, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 20), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 49), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 61))
>`${1}` : string
>1 : number
var d = foo2([], 1); // number
>d : number, Symbol(d, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 17, 3))
>foo2([], 1) : number
>foo2 : { (strs: string[], x: number): number; (strs: TemplateStringsArray, x: number): string; }, Symbol(foo2, Decl(taggedTemplateStringsWithOverloadResolution2.ts, 8, 20), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 10, 49), Decl(taggedTemplateStringsWithOverloadResolution2.ts, 11, 61))
>[] : undefined[]
>1 : number