File: completionsRecommended_local.ts

package info (click to toggle)
node-typescript 5.0.4%2Bds1-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 459,140 kB
  • sloc: javascript: 1,972,754; makefile: 6; sh: 1
file content (43 lines) | stat: -rw-r--r-- 1,206 bytes parent folder | download | duplicates (6)
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
/// <reference path="fourslash.ts" />

////enum Enu {}
////class Cls {}
////abstract class Abs {}
////const e: Enu = E/*e0*/;
////const e: Enu = /*e1*/;
////const c: Cls = new C/*c0*/;
////const c: Cls = new /*c1*/;
////const a: Abs = new A/*a0*/;
////const a: Abs = new /*a1*/;

// Also works on mutations
////let enu: Enu;
////enu = E/*let0*/;
////enu = E/*let1*/;

const cls = (ctr: boolean): FourSlashInterface.ExpectedCompletionEntry => ({
    name: "Cls",
    text: ctr ? "constructor Cls(): Cls" : "class Cls",
    kind: "class",
    isRecommended: true,
});

// Not recommended, because it's an abstract class
const abs = (ctr: boolean): FourSlashInterface.ExpectedCompletionEntry => ({
    name: "Abs",
    text: ctr ? "constructor Abs(): Abs" : "class Abs",
    kind: "class",
    kindModifiers: "abstract",
});

verify.completions(
    {
        marker: ["e0", "e1", "let0", "let1"],
        includes: { name: "Enu", text: "enum Enu", kind: "enum", isRecommended: true },
        isNewIdentifierLocation: true,
    },
    { marker: "c0", includes: cls(true) },
    { marker: "c1", includes: cls(false) },
    { marker: "a0", includes: abs(true) },
    { marker: "a1", includes: abs(false) },
);