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 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
=== tests/cases/conformance/override/override20.ts ===
const Foo: C1 & C2 =
>Foo : C1 & C2
class {
>class { m1() { } m2() { } } : typeof Foo
m1() { }
>m1 : () => void
m2() { }
>m2 : () => void
}
interface I1 {
m1(): void;
>m1 : () => void
}
interface I2 {
m1(): void;
>m1 : () => void
m2(): void;
>m2 : () => void
}
interface C1 {
new(...args: any[]): I1;
>args : any[]
}
interface C2 {
new(...args: any[]): I2;
>args : any[]
}
export class Bar extends Foo {
>Bar : Bar
>Foo : I1 & I2
m1() {
>m1 : () => void
super.m1();
>super.m1() : void
>super.m1 : (() => void) & (() => void)
>super : I1 & I2
>m1 : (() => void) & (() => void)
}
m2() {
>m2 : () => void
super.m2();
>super.m2() : void
>super.m2 : () => void
>super : I1 & I2
>m2 : () => void
}
}
|