1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
|
=== tests/cases/compiler/contextualTypingOfConditionalExpression2.ts ===
class A {
>A : A
foo: number;
>foo : number
}
class B extends A {
>B : B
>A : A
bar: number;
>bar : number
}
class C extends A {
>C : C
>A : A
baz: number;
>baz : number
}
var x2: (a: A) => void = true ? (a: C) => a.foo : (b: number) => { };
>x2 : (a: A) => void
>a : A
>true ? (a: C) => a.foo : (b: number) => { } : ((a: C) => number) | ((b: number) => void)
>true : true
>(a: C) => a.foo : (a: C) => number
>a : C
>a.foo : number
>a : C
>foo : number
>(b: number) => { } : (b: number) => void
>b : number
|