File: contextualTypeWithUnionTypeMembers.symbols

package info (click to toggle)
node-typescript 2.1.5-1
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 203,952 kB
  • ctags: 52,987
  • sloc: sh: 11; makefile: 5
file content (394 lines) | stat: -rw-r--r-- 21,845 bytes parent folder | download | duplicates (2)
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
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
=== tests/cases/conformance/types/union/contextualTypeWithUnionTypeMembers.ts ===
//When used as a contextual type, a union type U has those members that are present in any of 
// its constituent types, with types that are unions of the respective members in the constituent types. 
interface I1<T> {
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 2, 13))

    commonMethodType(a: string): string;
>commonMethodType : Symbol(I1.commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 2, 17))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 3, 21))

    commonPropertyType: string;
>commonPropertyType : Symbol(I1.commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 3, 40))

    commonMethodWithTypeParameter(a: T): T;
>commonMethodWithTypeParameter : Symbol(I1.commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 4, 31))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 5, 34))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 2, 13))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 2, 13))

    methodOnlyInI1(a: string): string;
>methodOnlyInI1 : Symbol(I1.methodOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 5, 43))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 7, 19))

    propertyOnlyInI1: string;
>propertyOnlyInI1 : Symbol(I1.propertyOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 7, 38))
}
interface I2<T> {
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 10, 13))

    commonMethodType(a: string): string;
>commonMethodType : Symbol(I2.commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 10, 17))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 11, 21))

    commonPropertyType: string;
>commonPropertyType : Symbol(I2.commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 11, 40))

    commonMethodWithTypeParameter(a: T): T;
>commonMethodWithTypeParameter : Symbol(I2.commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 12, 31))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 13, 34))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 10, 13))
>T : Symbol(T, Decl(contextualTypeWithUnionTypeMembers.ts, 10, 13))

    methodOnlyInI2(a: string): string;
>methodOnlyInI2 : Symbol(I2.methodOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 13, 43))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 15, 19))

    propertyOnlyInI2: string;
>propertyOnlyInI2 : Symbol(I2.propertyOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 15, 38))
}

// Let S be the set of types in U that has a property P.
// If S is not empty, U has a property P of a union type of the types of P from each type in S.
var i1: I1<number>;
>i1 : Symbol(i1, Decl(contextualTypeWithUnionTypeMembers.ts, 21, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))

var i2: I2<number>;
>i2 : Symbol(i2, Decl(contextualTypeWithUnionTypeMembers.ts, 22, 3))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))

var i1Ori2: I1<number> | I2<number> = i1;
>i1Ori2 : Symbol(i1Ori2, Decl(contextualTypeWithUnionTypeMembers.ts, 23, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 24, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 25, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 33, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 41, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))
>i1 : Symbol(i1, Decl(contextualTypeWithUnionTypeMembers.ts, 21, 3))

var i1Ori2: I1<number> | I2<number> = i2;
>i1Ori2 : Symbol(i1Ori2, Decl(contextualTypeWithUnionTypeMembers.ts, 23, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 24, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 25, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 33, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 41, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))
>i2 : Symbol(i2, Decl(contextualTypeWithUnionTypeMembers.ts, 22, 3))

var i1Ori2: I1<number> | I2<number> = { // Like i1
>i1Ori2 : Symbol(i1Ori2, Decl(contextualTypeWithUnionTypeMembers.ts, 23, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 24, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 25, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 33, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 41, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))

    commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 25, 39))

    commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 26, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 27, 21))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 27, 21))

    commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 27, 28))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 28, 34))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 28, 34))

    methodOnlyInI1: a => a,
>methodOnlyInI1 : Symbol(methodOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 28, 42))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 30, 19))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 30, 19))

    propertyOnlyInI1: "Hello",
>propertyOnlyInI1 : Symbol(propertyOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 30, 27))

};
var i1Ori2: I1<number> | I2<number> = { // Like i2
>i1Ori2 : Symbol(i1Ori2, Decl(contextualTypeWithUnionTypeMembers.ts, 23, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 24, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 25, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 33, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 41, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))

    commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 33, 39))

    commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 34, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 35, 21))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 35, 21))

    commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 35, 28))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 36, 34))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 36, 34))

    methodOnlyInI2: a => a,
>methodOnlyInI2 : Symbol(methodOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 36, 42))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 38, 19))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 38, 19))

    propertyOnlyInI2: "Hello",
>propertyOnlyInI2 : Symbol(propertyOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 38, 27))

};
var i1Ori2: I1<number> | I2<number> = { // Like i1 and i2 both
>i1Ori2 : Symbol(i1Ori2, Decl(contextualTypeWithUnionTypeMembers.ts, 23, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 24, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 25, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 33, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 41, 3))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))

    commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 41, 39))

    commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 42, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 43, 21))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 43, 21))

    commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 43, 28))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 44, 34))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 44, 34))

    methodOnlyInI1: a => a,
>methodOnlyInI1 : Symbol(methodOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 44, 42))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 45, 19))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 45, 19))

    propertyOnlyInI1: "Hello",
>propertyOnlyInI1 : Symbol(propertyOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 45, 27))

    methodOnlyInI2: a => a,
>methodOnlyInI2 : Symbol(methodOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 46, 30))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 47, 19))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 47, 19))

    propertyOnlyInI2: "Hello",
>propertyOnlyInI2 : Symbol(propertyOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 47, 27))

};

var arrayI1OrI2: Array<I1<number> | I2<number>> = [i1, i2, { // Like i1
>arrayI1OrI2 : Symbol(arrayI1OrI2, Decl(contextualTypeWithUnionTypeMembers.ts, 51, 3))
>Array : Symbol(Array, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>I1 : Symbol(I1, Decl(contextualTypeWithUnionTypeMembers.ts, 0, 0))
>I2 : Symbol(I2, Decl(contextualTypeWithUnionTypeMembers.ts, 9, 1))
>i1 : Symbol(i1, Decl(contextualTypeWithUnionTypeMembers.ts, 21, 3))
>i2 : Symbol(i2, Decl(contextualTypeWithUnionTypeMembers.ts, 22, 3))

        commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 51, 60))

        commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 52, 36))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 53, 25))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 53, 25))

        commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 53, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 54, 38))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 54, 38))

        methodOnlyInI1: a => a,
>methodOnlyInI1 : Symbol(methodOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 54, 46))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 56, 23))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 56, 23))

        propertyOnlyInI1: "Hello",
>propertyOnlyInI1 : Symbol(propertyOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 56, 31))

    },
    { // Like i2
        commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 59, 5))

        commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 60, 36))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 61, 25))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 61, 25))

        commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 61, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 62, 38))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 62, 38))

        methodOnlyInI2: a => a,
>methodOnlyInI2 : Symbol(methodOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 62, 46))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 64, 23))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 64, 23))

        propertyOnlyInI2: "Hello",
>propertyOnlyInI2 : Symbol(propertyOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 64, 31))

    }, { // Like i1 and i2 both
        commonPropertyType: "hello",
>commonPropertyType : Symbol(commonPropertyType, Decl(contextualTypeWithUnionTypeMembers.ts, 66, 8))

        commonMethodType: a=> a,
>commonMethodType : Symbol(commonMethodType, Decl(contextualTypeWithUnionTypeMembers.ts, 67, 36))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 68, 25))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 68, 25))

        commonMethodWithTypeParameter: a => a,
>commonMethodWithTypeParameter : Symbol(commonMethodWithTypeParameter, Decl(contextualTypeWithUnionTypeMembers.ts, 68, 32))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 69, 38))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 69, 38))

        methodOnlyInI1: a => a,
>methodOnlyInI1 : Symbol(methodOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 69, 46))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 70, 23))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 70, 23))

        propertyOnlyInI1: "Hello",
>propertyOnlyInI1 : Symbol(propertyOnlyInI1, Decl(contextualTypeWithUnionTypeMembers.ts, 70, 31))

        methodOnlyInI2: a => a,
>methodOnlyInI2 : Symbol(methodOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 71, 34))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 72, 23))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 72, 23))

        propertyOnlyInI2: "Hello",
>propertyOnlyInI2 : Symbol(propertyOnlyInI2, Decl(contextualTypeWithUnionTypeMembers.ts, 72, 31))

    }];

interface I11 {
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))

    commonMethodDifferentReturnType(a: string, b: number): string;
>commonMethodDifferentReturnType : Symbol(I11.commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 76, 15))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 77, 36))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 77, 46))

    commonPropertyDifferentType: string;
>commonPropertyDifferentType : Symbol(I11.commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 77, 66))
}
interface I21 {
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))

    commonMethodDifferentReturnType(a: string, b: number): number;
>commonMethodDifferentReturnType : Symbol(I21.commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 80, 15))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 81, 36))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 81, 46))

    commonPropertyDifferentType: number;
>commonPropertyDifferentType : Symbol(I21.commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 81, 66))
}
var i11: I11;
>i11 : Symbol(i11, Decl(contextualTypeWithUnionTypeMembers.ts, 84, 3))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))

var i21: I21;
>i21 : Symbol(i21, Decl(contextualTypeWithUnionTypeMembers.ts, 85, 3))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))

var i11Ori21: I11 | I21 = i11;
>i11Ori21 : Symbol(i11Ori21, Decl(contextualTypeWithUnionTypeMembers.ts, 86, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 87, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 88, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 96, 3))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))
>i11 : Symbol(i11, Decl(contextualTypeWithUnionTypeMembers.ts, 84, 3))

var i11Ori21: I11 | I21 = i21;
>i11Ori21 : Symbol(i11Ori21, Decl(contextualTypeWithUnionTypeMembers.ts, 86, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 87, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 88, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 96, 3))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))
>i21 : Symbol(i21, Decl(contextualTypeWithUnionTypeMembers.ts, 85, 3))

var i11Ori21: I11 | I21 = { 
>i11Ori21 : Symbol(i11Ori21, Decl(contextualTypeWithUnionTypeMembers.ts, 86, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 87, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 88, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 96, 3))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))

    // Like i1
    commonMethodDifferentReturnType: (a, b) => {
>commonMethodDifferentReturnType : Symbol(commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 88, 27))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 90, 38))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 90, 40))

        var z = a.charAt(b);
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 91, 11))
>a.charAt : Symbol(String.charAt, Decl(lib.d.ts, --, --))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 90, 38))
>charAt : Symbol(String.charAt, Decl(lib.d.ts, --, --))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 90, 40))

        return z;  
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 91, 11))

    },
    commonPropertyDifferentType: "hello",  
>commonPropertyDifferentType : Symbol(commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 93, 6))

};
var i11Ori21: I11 | I21 = { 
>i11Ori21 : Symbol(i11Ori21, Decl(contextualTypeWithUnionTypeMembers.ts, 86, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 87, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 88, 3), Decl(contextualTypeWithUnionTypeMembers.ts, 96, 3))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))

    // Like i2
    commonMethodDifferentReturnType: (a, b) => {
>commonMethodDifferentReturnType : Symbol(commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 96, 27))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 98, 38))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 98, 40))

        var z = a.charCodeAt(b);
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 99, 11))
>a.charCodeAt : Symbol(String.charCodeAt, Decl(lib.d.ts, --, --))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 98, 38))
>charCodeAt : Symbol(String.charCodeAt, Decl(lib.d.ts, --, --))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 98, 40))

        return z;
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 99, 11))

    },
    commonPropertyDifferentType: 10,
>commonPropertyDifferentType : Symbol(commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 101, 6))

};
var arrayOrI11OrI21: Array<I11 | I21> = [i11, i21, i11 || i21, { 
>arrayOrI11OrI21 : Symbol(arrayOrI11OrI21, Decl(contextualTypeWithUnionTypeMembers.ts, 104, 3))
>Array : Symbol(Array, Decl(lib.d.ts, --, --), Decl(lib.d.ts, --, --))
>I11 : Symbol(I11, Decl(contextualTypeWithUnionTypeMembers.ts, 74, 7))
>I21 : Symbol(I21, Decl(contextualTypeWithUnionTypeMembers.ts, 79, 1))
>i11 : Symbol(i11, Decl(contextualTypeWithUnionTypeMembers.ts, 84, 3))
>i21 : Symbol(i21, Decl(contextualTypeWithUnionTypeMembers.ts, 85, 3))
>i11 : Symbol(i11, Decl(contextualTypeWithUnionTypeMembers.ts, 84, 3))
>i21 : Symbol(i21, Decl(contextualTypeWithUnionTypeMembers.ts, 85, 3))

        // Like i1
        commonMethodDifferentReturnType: (a, b) => {
>commonMethodDifferentReturnType : Symbol(commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 104, 64))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 106, 42))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 106, 44))

            var z = a.charAt(b);
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 107, 15))
>a.charAt : Symbol(String.charAt, Decl(lib.d.ts, --, --))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 106, 42))
>charAt : Symbol(String.charAt, Decl(lib.d.ts, --, --))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 106, 44))

            return z;
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 107, 15))

        },
        commonPropertyDifferentType: "hello",
>commonPropertyDifferentType : Symbol(commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 109, 10))

    }, { 
        // Like i2
        commonMethodDifferentReturnType: (a, b) => {
>commonMethodDifferentReturnType : Symbol(commonMethodDifferentReturnType, Decl(contextualTypeWithUnionTypeMembers.ts, 111, 8))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 113, 42))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 113, 44))

            var z = a.charCodeAt(b);
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 114, 15))
>a.charCodeAt : Symbol(String.charCodeAt, Decl(lib.d.ts, --, --))
>a : Symbol(a, Decl(contextualTypeWithUnionTypeMembers.ts, 113, 42))
>charCodeAt : Symbol(String.charCodeAt, Decl(lib.d.ts, --, --))
>b : Symbol(b, Decl(contextualTypeWithUnionTypeMembers.ts, 113, 44))

            return z;
>z : Symbol(z, Decl(contextualTypeWithUnionTypeMembers.ts, 114, 15))

        },
        commonPropertyDifferentType: 10,
>commonPropertyDifferentType : Symbol(commonPropertyDifferentType, Decl(contextualTypeWithUnionTypeMembers.ts, 116, 10))

    }];