File: completionsIsPossiblyTypeArgumentPosition.ts

package info (click to toggle)
node-typescript 4.1.3-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 396,552 kB
  • sloc: javascript: 1,444,377; makefile: 7; sh: 3
file content (38 lines) | stat: -rw-r--r-- 1,020 bytes parent folder | download | duplicates (5)
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" />

////const x = 0;
////type T = number;
////function f(x: number) {}
////function g<T>(x: T) {}
////class C<T> {}

////x + {| "valueOnly": true |}
////x < {| "valueOnly": true |}
////f < {| "valueOnly": true |}
////g < /*g*/
////const something: C</*something*/;
////const something2: C<C</*something2*/;
////new C</*C*/;
////new C<C</*CC*/;
////
////declare const callAndConstruct: { new<T>(): callAndConstruct<T>; <T>(): string; };
////interface callAndConstruct<T> {}
////new callAndConstruct<callAndConstruct</*callAndConstruct*/

for (const marker of test.markers()) {
    if (marker.data && marker.data.valueOnly) {
        verify.completions({ marker, includes: "x", excludes: "T" });
    }
    else {
        verify.completions({ marker, includes: "T", excludes: "x" });
    }
}

verify.signatureHelp({
    marker: "callAndConstruct",
    text: "callAndConstruct<T>(): string",
    parameterName: "T",
    parameterSpan: "T",
    parameterCount: 1,
    argumentCount: 1,
});