2016-10-28 20:57:30 +02:00
|
|
|
/// <reference path='fourslash.ts' />
|
|
|
|
|
|
|
|
//// abstract class A {
|
2016-12-07 04:46:08 +01:00
|
|
|
//// abstract f(a: number, b: string): boolean;
|
2017-02-23 01:15:16 +01:00
|
|
|
//// abstract f(a: number, b: string): this;
|
2016-12-07 04:46:08 +01:00
|
|
|
//// abstract f(a: string, b: number): Function;
|
|
|
|
//// abstract f(a: string): Function;
|
2017-03-14 02:09:53 +01:00
|
|
|
//// abstract foo(): number;
|
2016-10-28 20:57:30 +02:00
|
|
|
//// }
|
|
|
|
////
|
2016-12-07 04:46:08 +01:00
|
|
|
//// class C extends A {[| |]}
|
2016-10-28 20:57:30 +02:00
|
|
|
|
2016-12-07 04:46:08 +01:00
|
|
|
verify.rangeAfterCodeFix(`
|
|
|
|
f(a: number, b: string): boolean;
|
2017-02-23 01:15:16 +01:00
|
|
|
f(a: number, b: string): this;
|
2016-12-07 04:46:08 +01:00
|
|
|
f(a: string, b: number): Function;
|
|
|
|
f(a: string): Function;
|
2016-12-12 06:50:46 +01:00
|
|
|
f(a: any, b?: any) {
|
2017-03-13 02:52:38 +01:00
|
|
|
throw new Error("Method not implemented.");
|
2016-12-07 04:46:08 +01:00
|
|
|
}
|
2017-03-14 02:09:53 +01:00
|
|
|
foo(): number {
|
|
|
|
throw new Error("Method not implemented.");
|
|
|
|
}
|
2016-12-07 04:46:08 +01:00
|
|
|
`);
|