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
|
/// <reference path="fourslash.ts" />
//// interface Sundries {
//// broken: boolean;
//// }
////
//// interface Supplies {
//// spoiled: boolean;
//// }
////
//// interface Crate<T> {
//// contents: T;
//// isSundries(): this is Crate<Sundries>;
//// isSupplies(): this is Crate<Supplies>;
//// isPackedTight(): this is (this & {extraContents: T});
//// }
//// const crate: Crate<any>;
//// if (crate.isPackedTight()) {
//// crate./*1*/;
//// }
//// if (crate.isSundries()) {
//// crate.contents./*2*/;
//// if (crate.isPackedTight()) {
//// crate./*3*/;
//// }
//// }
//// if (crate.isSupplies()) {
//// crate.contents./*4*/;
//// if (crate.isPackedTight()) {
//// crate./*5*/;
//// }
//// }
verify.completions(
{ marker: ["1", "3", "5"], exact: ["contents", "extraContents", "isPackedTight", "isSundries", "isSupplies"] },
{ marker: "2", exact: "broken" },
{ marker: "4", exact: "spoiled" },
);
|