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 62
|
=== tests/cases/conformance/override/override2.ts ===
abstract class AB {
>AB : AB
abstract foo(v: string): void;
>foo : (v: string) => void
>v : string
abstract bar(v: string): void;
>bar : (v: string) => void
>v : string
abstract baz(v: string): void;
>baz : (v: string) => void
>v : string
}
abstract class AD1 extends AB {
>AD1 : AD1
>AB : AB
}
abstract class AD2 extends AB {
>AD2 : AD2
>AB : AB
abstract foo(v: ''): void // need override?
>foo : (v: '') => void
>v : ""
}
abstract class AD3 extends AB {
>AD3 : AD3
>AB : AB
override foo(v: ''): void { } // need override?
>foo : (v: '') => void
>v : ""
abstract bar(): void;
>bar : () => void
baz(): void { }
>baz : () => void
}
class D4 extends AB {
>D4 : D4
>AB : AB
override foo(v: ''): void {}
>foo : (v: '') => void
>v : ""
override bar(v: ''): void {}
>bar : (v: '') => void
>v : ""
baz(): void { }
>baz : () => void
}
|