TypeScript/tests/baselines/reference/overloadOnConstConstraintChecks3.types

41 lines
2.4 KiB
Text

=== tests/cases/compiler/overloadOnConstConstraintChecks3.ts ===
class A { private x = 1}
>A : A, Symbol(A,Decl(overloadOnConstConstraintChecks3.ts,0,0))
>x : number, Symbol(x,Decl(overloadOnConstConstraintChecks3.ts,0,9))
>1 : number
class B extends A {}
>B : B, Symbol(B,Decl(overloadOnConstConstraintChecks3.ts,0,24))
>A : A, Symbol(A,Decl(overloadOnConstConstraintChecks3.ts,0,0))
class C extends A {
>C : C, Symbol(C,Decl(overloadOnConstConstraintChecks3.ts,1,20))
>A : A, Symbol(A,Decl(overloadOnConstConstraintChecks3.ts,0,0))
public foo() { }
>foo : () => void, Symbol(foo,Decl(overloadOnConstConstraintChecks3.ts,2,19))
}
function foo(name: 'hi'): B;
>foo : { (name: 'hi'): B; (name: 'bye'): C; (name: string): A; }, Symbol(foo,Decl(overloadOnConstConstraintChecks3.ts,4,1),Decl(overloadOnConstConstraintChecks3.ts,5,28),Decl(overloadOnConstConstraintChecks3.ts,6,29),Decl(overloadOnConstConstraintChecks3.ts,7,30))
>name : 'hi', Symbol(name,Decl(overloadOnConstConstraintChecks3.ts,5,13))
>B : B, Symbol(B,Decl(overloadOnConstConstraintChecks3.ts,0,24))
function foo(name: 'bye'): C;
>foo : { (name: 'hi'): B; (name: 'bye'): C; (name: string): A; }, Symbol(foo,Decl(overloadOnConstConstraintChecks3.ts,4,1),Decl(overloadOnConstConstraintChecks3.ts,5,28),Decl(overloadOnConstConstraintChecks3.ts,6,29),Decl(overloadOnConstConstraintChecks3.ts,7,30))
>name : 'bye', Symbol(name,Decl(overloadOnConstConstraintChecks3.ts,6,13))
>C : C, Symbol(C,Decl(overloadOnConstConstraintChecks3.ts,1,20))
function foo(name: string): A;
>foo : { (name: 'hi'): B; (name: 'bye'): C; (name: string): A; }, Symbol(foo,Decl(overloadOnConstConstraintChecks3.ts,4,1),Decl(overloadOnConstConstraintChecks3.ts,5,28),Decl(overloadOnConstConstraintChecks3.ts,6,29),Decl(overloadOnConstConstraintChecks3.ts,7,30))
>name : string, Symbol(name,Decl(overloadOnConstConstraintChecks3.ts,7,13))
>A : A, Symbol(A,Decl(overloadOnConstConstraintChecks3.ts,0,0))
function foo(name: any): A {
>foo : { (name: 'hi'): B; (name: 'bye'): C; (name: string): A; }, Symbol(foo,Decl(overloadOnConstConstraintChecks3.ts,4,1),Decl(overloadOnConstConstraintChecks3.ts,5,28),Decl(overloadOnConstConstraintChecks3.ts,6,29),Decl(overloadOnConstConstraintChecks3.ts,7,30))
>name : any, Symbol(name,Decl(overloadOnConstConstraintChecks3.ts,8,13))
>A : A, Symbol(A,Decl(overloadOnConstConstraintChecks3.ts,0,0))
return null;
>null : null
}