File: checkExportsObjectAssignProperty.symbols

package info (click to toggle)
node-typescript 5.0.4%2Bds1-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 459,116 kB
  • sloc: javascript: 1,972,754; makefile: 6; sh: 1
file content (286 lines) | stat: -rw-r--r-- 13,035 bytes parent folder | download | duplicates (3)
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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
=== tests/cases/conformance/jsdoc/validator.ts ===
import "./";

import m1 = require("./mod1");
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))

m1.thing;
>m1.thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))

m1.readonlyProp;
>m1.readonlyProp : Symbol(m1.readonlyProp, Decl(mod1.js, 0, 71))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>readonlyProp : Symbol(m1.readonlyProp, Decl(mod1.js, 0, 71))

m1.rwAccessors;
>m1.rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))

m1.readonlyAccessor;
>m1.readonlyAccessor : Symbol(m1.readonlyAccessor, Decl(mod1.js, 2, 97))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>readonlyAccessor : Symbol(m1.readonlyAccessor, Decl(mod1.js, 2, 97))

m1.setonlyAccessor;
>m1.setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))

// allowed assignments
m1.thing = 10;
>m1.thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))

m1.rwAccessors = 11;
>m1.rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))

m1.setonlyAccessor = "yes";
>m1.setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))

// disallowed assignments
m1.readonlyProp = "name";
>m1.readonlyProp : Symbol(m1.readonlyProp, Decl(mod1.js, 0, 71))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>readonlyProp : Symbol(m1.readonlyProp, Decl(mod1.js, 0, 71))

m1.readonlyAccessor = 12;
>m1.readonlyAccessor : Symbol(m1.readonlyAccessor, Decl(mod1.js, 2, 97))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>readonlyAccessor : Symbol(m1.readonlyAccessor, Decl(mod1.js, 2, 97))

m1.thing = "no";
>m1.thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>thing : Symbol(m1.thing, Decl(mod1.js, 0, 0))

m1.rwAccessors = "no";
>m1.rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>rwAccessors : Symbol(m1.rwAccessors, Decl(mod1.js, 1, 84))

m1.setonlyAccessor = 0;
>m1.setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))
>m1 : Symbol(m1, Decl(validator.ts, 0, 12))
>setonlyAccessor : Symbol(m1.setonlyAccessor, Decl(mod1.js, 3, 79))

import m2 = require("./mod2");
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))

m2.thing;
>m2.thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))

m2.readonlyProp;
>m2.readonlyProp : Symbol(m2.readonlyProp, Decl(mod2.js, 0, 81))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>readonlyProp : Symbol(m2.readonlyProp, Decl(mod2.js, 0, 81))

m2.rwAccessors;
>m2.rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))

m2.readonlyAccessor;
>m2.readonlyAccessor : Symbol(m2.readonlyAccessor, Decl(mod2.js, 2, 104))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>readonlyAccessor : Symbol(m2.readonlyAccessor, Decl(mod2.js, 2, 104))

m2.setonlyAccessor;
>m2.setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))

// allowed assignments
m2.thing = "ok";
>m2.thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))

m2.rwAccessors = 11;
>m2.rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))

m2.setonlyAccessor = "yes";
>m2.setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))

// disallowed assignments
m2.readonlyProp = "name";
>m2.readonlyProp : Symbol(m2.readonlyProp, Decl(mod2.js, 0, 81))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>readonlyProp : Symbol(m2.readonlyProp, Decl(mod2.js, 0, 81))

m2.readonlyAccessor = 12;
>m2.readonlyAccessor : Symbol(m2.readonlyAccessor, Decl(mod2.js, 2, 104))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>readonlyAccessor : Symbol(m2.readonlyAccessor, Decl(mod2.js, 2, 104))

m2.thing = 0;
>m2.thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>thing : Symbol(m2.thing, Decl(mod2.js, 0, 0))

m2.rwAccessors = "no";
>m2.rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>rwAccessors : Symbol(m2.rwAccessors, Decl(mod2.js, 1, 91))

m2.setonlyAccessor = 0;
>m2.setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))
>m2 : Symbol(m2, Decl(validator.ts, 20, 23))
>setonlyAccessor : Symbol(m2.setonlyAccessor, Decl(mod2.js, 3, 86))

=== tests/cases/conformance/jsdoc/mod1.js ===
Object.defineProperty(exports, "thing", { value: 42, writable: true });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>exports : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>"thing" : Symbol(thing, Decl(mod1.js, 0, 0))
>value : Symbol(value, Decl(mod1.js, 0, 41))
>writable : Symbol(writable, Decl(mod1.js, 0, 52))

Object.defineProperty(exports, "readonlyProp", { value: "Smith", writable: false });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>exports : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>"readonlyProp" : Symbol(readonlyProp, Decl(mod1.js, 0, 71))
>value : Symbol(value, Decl(mod1.js, 1, 48))
>writable : Symbol(writable, Decl(mod1.js, 1, 64))

Object.defineProperty(exports, "rwAccessors", { get() { return 98122 }, set(_) { /*ignore*/ } });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>exports : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>"rwAccessors" : Symbol(rwAccessors, Decl(mod1.js, 1, 84))
>get : Symbol(get, Decl(mod1.js, 2, 47))
>set : Symbol(set, Decl(mod1.js, 2, 71))
>_ : Symbol(_, Decl(mod1.js, 2, 76))

Object.defineProperty(exports, "readonlyAccessor", { get() { return 21.75 } });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>exports : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>"readonlyAccessor" : Symbol(readonlyAccessor, Decl(mod1.js, 2, 97))
>get : Symbol(get, Decl(mod1.js, 3, 52))

Object.defineProperty(exports, "setonlyAccessor", {
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>exports : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>"setonlyAccessor" : Symbol(setonlyAccessor, Decl(mod1.js, 3, 79))

    /** @param {string} str */
    set(str) {
>set : Symbol(set, Decl(mod1.js, 4, 51))
>str : Symbol(str, Decl(mod1.js, 6, 8))

        this.rwAccessors = Number(str) 
>rwAccessors : Symbol(rwAccessors, Decl(mod1.js, 6, 14))
>Number : Symbol(Number, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>str : Symbol(str, Decl(mod1.js, 6, 8))
    }
});

=== tests/cases/conformance/jsdoc/mod2.js ===
Object.defineProperty(module.exports, "thing", { value: "yes", writable: true });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>module.exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>module : Symbol(module, Decl(mod2.js, 0, 22))
>exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>"thing" : Symbol(thing, Decl(mod2.js, 0, 0))
>value : Symbol(value, Decl(mod2.js, 0, 48))
>writable : Symbol(writable, Decl(mod2.js, 0, 62))

Object.defineProperty(module.exports, "readonlyProp", { value: "Smith", writable: false });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>module.exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>module : Symbol(module, Decl(mod2.js, 0, 22))
>exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>"readonlyProp" : Symbol(readonlyProp, Decl(mod2.js, 0, 81))
>value : Symbol(value, Decl(mod2.js, 1, 55))
>writable : Symbol(writable, Decl(mod2.js, 1, 71))

Object.defineProperty(module.exports, "rwAccessors", { get() { return 98122 }, set(_) { /*ignore*/ } });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>module.exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>module : Symbol(module, Decl(mod2.js, 0, 22))
>exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>"rwAccessors" : Symbol(rwAccessors, Decl(mod2.js, 1, 91))
>get : Symbol(get, Decl(mod2.js, 2, 54))
>set : Symbol(set, Decl(mod2.js, 2, 78))
>_ : Symbol(_, Decl(mod2.js, 2, 83))

Object.defineProperty(module.exports, "readonlyAccessor", { get() { return 21.75 } });
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>module.exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>module : Symbol(module, Decl(mod2.js, 0, 22))
>exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>"readonlyAccessor" : Symbol(readonlyAccessor, Decl(mod2.js, 2, 104))
>get : Symbol(get, Decl(mod2.js, 3, 59))

Object.defineProperty(module.exports, "setonlyAccessor", {
>Object.defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>Object : Symbol(Object, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>defineProperty : Symbol(ObjectConstructor.defineProperty, Decl(lib.es5.d.ts, --, --))
>module.exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>module : Symbol(module, Decl(mod2.js, 0, 22))
>exports : Symbol(module.exports, Decl(mod2.js, 0, 0))
>"setonlyAccessor" : Symbol(setonlyAccessor, Decl(mod2.js, 3, 86))

    /** @param {string} str */
    set(str) {
>set : Symbol(set, Decl(mod2.js, 4, 58))
>str : Symbol(str, Decl(mod2.js, 6, 8))

        this.rwAccessors = Number(str) 
>rwAccessors : Symbol(rwAccessors, Decl(mod2.js, 6, 14))
>Number : Symbol(Number, Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --), Decl(lib.es5.d.ts, --, --))
>str : Symbol(str, Decl(mod2.js, 6, 8))
    }
});

=== tests/cases/conformance/jsdoc/index.js ===
/**
 * @type {number}
 */
const q = require("./mod1").thing;
>q : Symbol(q, Decl(index.js, 3, 5))
>require("./mod1").thing : Symbol(thing, Decl(mod1.js, 0, 0))
>require : Symbol(require)
>"./mod1" : Symbol("tests/cases/conformance/jsdoc/mod1", Decl(mod1.js, 0, 0))
>thing : Symbol(thing, Decl(mod1.js, 0, 0))

/**
 * @type {string}
 */
const u = require("./mod2").thing;
>u : Symbol(u, Decl(index.js, 8, 5))
>require("./mod2").thing : Symbol(thing, Decl(mod2.js, 0, 0))
>require : Symbol(require)
>"./mod2" : Symbol("tests/cases/conformance/jsdoc/mod2", Decl(mod2.js, 0, 0))
>thing : Symbol(thing, Decl(mod2.js, 0, 0))