forked from microsoft/TypeScript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathClassAndModuleThatMergeWithModuleMemberThatUsesClassTypeParameter.js
96 lines (80 loc) · 1.73 KB
/
ClassAndModuleThatMergeWithModuleMemberThatUsesClassTypeParameter.js
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
//// [tests/cases/conformance/internalModules/DeclarationMerging/ClassAndModuleThatMergeWithModuleMemberThatUsesClassTypeParameter.ts] ////
//// [ClassAndModuleThatMergeWithModuleMemberThatUsesClassTypeParameter.ts]
// all expected to be errors
class clodule1<T>{
id: string;
value: T;
}
module clodule1 {
function f(x: T) { }
}
class clodule2<T>{
id: string;
value: T;
}
module clodule2 {
var x: T;
class D<U extends T>{
id: string;
value: U;
}
}
class clodule3<T>{
id: string;
value: T;
}
module clodule3 {
export var y = { id: T };
}
class clodule4<T>{
id: string;
value: T;
}
module clodule4 {
class D {
name: T;
}
}
//// [ClassAndModuleThatMergeWithModuleMemberThatUsesClassTypeParameter.js]
// all expected to be errors
var clodule1 = /** @class */ (function () {
function clodule1() {
}
return clodule1;
}());
(function (clodule1) {
function f(x) { }
})(clodule1 || (clodule1 = {}));
var clodule2 = /** @class */ (function () {
function clodule2() {
}
return clodule2;
}());
(function (clodule2) {
var x;
var D = /** @class */ (function () {
function D() {
}
return D;
}());
})(clodule2 || (clodule2 = {}));
var clodule3 = /** @class */ (function () {
function clodule3() {
}
return clodule3;
}());
(function (clodule3) {
clodule3.y = { id: T };
})(clodule3 || (clodule3 = {}));
var clodule4 = /** @class */ (function () {
function clodule4() {
}
return clodule4;
}());
(function (clodule4) {
var D = /** @class */ (function () {
function D() {
}
return D;
}());
})(clodule4 || (clodule4 = {}));