2014-08-15 23:33:16 +02:00
|
|
|
=== tests/cases/compiler/overloadOnConstConstraintChecks3.ts ===
|
|
|
|
class A { private x = 1}
|
2015-04-13 23:01:57 +02:00
|
|
|
>A : A, Symbol(A, Decl(overloadOnConstConstraintChecks3.ts, 0, 0))
|
|
|
|
>x : number, Symbol(x, Decl(overloadOnConstConstraintChecks3.ts, 0, 9))
|
2015-04-13 21:36:11 +02:00
|
|
|
>1 : number
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
class B extends A {}
|
2015-04-13 23:01:57 +02:00
|
|
|
>B : B, Symbol(B, Decl(overloadOnConstConstraintChecks3.ts, 0, 24))
|
|
|
|
>A : A, Symbol(A, Decl(overloadOnConstConstraintChecks3.ts, 0, 0))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
class C extends A {
|
2015-04-13 23:01:57 +02:00
|
|
|
>C : C, Symbol(C, Decl(overloadOnConstConstraintChecks3.ts, 1, 20))
|
|
|
|
>A : A, Symbol(A, Decl(overloadOnConstConstraintChecks3.ts, 0, 0))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
public foo() { }
|
2015-04-13 23:01:57 +02:00
|
|
|
>foo : () => void, Symbol(foo, Decl(overloadOnConstConstraintChecks3.ts, 2, 19))
|
2014-08-15 23:33:16 +02:00
|
|
|
}
|
|
|
|
function foo(name: 'hi'): B;
|
2015-04-13 23:01:57 +02:00
|
|
|
>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))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
function foo(name: 'bye'): C;
|
2015-04-13 23:01:57 +02:00
|
|
|
>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))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
function foo(name: string): A;
|
2015-04-13 23:01:57 +02:00
|
|
|
>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))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
function foo(name: any): A {
|
2015-04-13 23:01:57 +02:00
|
|
|
>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))
|
2014-08-15 23:33:16 +02:00
|
|
|
|
|
|
|
return null;
|
2015-04-13 21:36:11 +02:00
|
|
|
>null : null
|
2014-08-15 23:33:16 +02:00
|
|
|
}
|
|
|
|
|