|
1 | 1 | //// [tests/cases/compiler/uniqueSymbolReassignment.ts] //// |
2 | 2 |
|
3 | | -=== uniqueSymbolFullTest.ts === |
| 3 | +=== uniqueSymbolReassignment.ts === |
4 | 4 | // ------------------------- |
5 | 5 | // Explicit unique symbols (should emit `const` / `typeof` when exported) |
6 | 6 | // ------------------------- |
7 | 7 | const mySymbol = Symbol('Symbols.mySymbol'); |
8 | | ->mySymbol : Symbol(mySymbol, Decl(uniqueSymbolFullTest.ts, 3, 5)) |
| 8 | +>mySymbol : Symbol(mySymbol, Decl(uniqueSymbolReassignment.ts, 3, 5)) |
9 | 9 | >Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2019.symbol.d.ts, --, --)) |
10 | 10 |
|
11 | 11 | const anotherUnique = Symbol('symbols.anotherUnique'); |
12 | | ->anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolFullTest.ts, 4, 5)) |
| 12 | +>anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolReassignment.ts, 4, 5)) |
13 | 13 | >Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2019.symbol.d.ts, --, --)) |
14 | 14 |
|
15 | 15 | function myFunction() {} |
16 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
| 16 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
17 | 17 |
|
18 | 18 | // Attach the unique ones |
19 | 19 | myFunction.mySymbol = mySymbol; |
20 | | ->myFunction.mySymbol : Symbol(myFunction.mySymbol, Decl(uniqueSymbolFullTest.ts, 6, 24)) |
21 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
22 | | ->mySymbol : Symbol(myFunction.mySymbol, Decl(uniqueSymbolFullTest.ts, 6, 24)) |
23 | | ->mySymbol : Symbol(mySymbol, Decl(uniqueSymbolFullTest.ts, 3, 5)) |
| 20 | +>myFunction.mySymbol : Symbol(myFunction.mySymbol, Decl(uniqueSymbolReassignment.ts, 6, 24)) |
| 21 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 22 | +>mySymbol : Symbol(myFunction.mySymbol, Decl(uniqueSymbolReassignment.ts, 6, 24)) |
| 23 | +>mySymbol : Symbol(mySymbol, Decl(uniqueSymbolReassignment.ts, 3, 5)) |
24 | 24 |
|
25 | 25 | myFunction.anotherUnique = anotherUnique; |
26 | | ->myFunction.anotherUnique : Symbol(myFunction.anotherUnique, Decl(uniqueSymbolFullTest.ts, 9, 31)) |
27 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
28 | | ->anotherUnique : Symbol(myFunction.anotherUnique, Decl(uniqueSymbolFullTest.ts, 9, 31)) |
29 | | ->anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolFullTest.ts, 4, 5)) |
| 26 | +>myFunction.anotherUnique : Symbol(myFunction.anotherUnique, Decl(uniqueSymbolReassignment.ts, 9, 31)) |
| 27 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 28 | +>anotherUnique : Symbol(myFunction.anotherUnique, Decl(uniqueSymbolReassignment.ts, 9, 31)) |
| 29 | +>anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolReassignment.ts, 4, 5)) |
30 | 30 |
|
31 | 31 | // ------------------------- |
32 | 32 | // Non-unique symbols (should stay `var`) |
33 | 33 | // ------------------------- |
34 | 34 | let nonUnique1 = Symbol('nonUnique1'); |
35 | | ->nonUnique1 : Symbol(nonUnique1, Decl(uniqueSymbolFullTest.ts, 15, 3)) |
| 35 | +>nonUnique1 : Symbol(nonUnique1, Decl(uniqueSymbolReassignment.ts, 15, 3)) |
36 | 36 | >Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2019.symbol.d.ts, --, --)) |
37 | 37 |
|
38 | 38 | let nonUnique2 = Symbol('nonUnique2'); |
39 | | ->nonUnique2 : Symbol(nonUnique2, Decl(uniqueSymbolFullTest.ts, 16, 3)) |
| 39 | +>nonUnique2 : Symbol(nonUnique2, Decl(uniqueSymbolReassignment.ts, 16, 3)) |
40 | 40 | >Symbol : Symbol(Symbol, Decl(lib.es5.d.ts, --, --), Decl(lib.es2015.symbol.d.ts, --, --), Decl(lib.es2015.symbol.wellknown.d.ts, --, --), Decl(lib.es2019.symbol.d.ts, --, --)) |
41 | 41 |
|
42 | 42 | myFunction.nonUnique1 = nonUnique1; |
43 | | ->myFunction.nonUnique1 : Symbol(myFunction.nonUnique1, Decl(uniqueSymbolFullTest.ts, 16, 38)) |
44 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
45 | | ->nonUnique1 : Symbol(myFunction.nonUnique1, Decl(uniqueSymbolFullTest.ts, 16, 38)) |
46 | | ->nonUnique1 : Symbol(nonUnique1, Decl(uniqueSymbolFullTest.ts, 15, 3)) |
| 43 | +>myFunction.nonUnique1 : Symbol(myFunction.nonUnique1, Decl(uniqueSymbolReassignment.ts, 16, 38)) |
| 44 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 45 | +>nonUnique1 : Symbol(myFunction.nonUnique1, Decl(uniqueSymbolReassignment.ts, 16, 38)) |
| 46 | +>nonUnique1 : Symbol(nonUnique1, Decl(uniqueSymbolReassignment.ts, 15, 3)) |
47 | 47 |
|
48 | 48 | myFunction.nonUnique2 = nonUnique2; |
49 | | ->myFunction.nonUnique2 : Symbol(myFunction.nonUnique2, Decl(uniqueSymbolFullTest.ts, 18, 35)) |
50 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
51 | | ->nonUnique2 : Symbol(myFunction.nonUnique2, Decl(uniqueSymbolFullTest.ts, 18, 35)) |
52 | | ->nonUnique2 : Symbol(nonUnique2, Decl(uniqueSymbolFullTest.ts, 16, 3)) |
| 49 | +>myFunction.nonUnique2 : Symbol(myFunction.nonUnique2, Decl(uniqueSymbolReassignment.ts, 18, 35)) |
| 50 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 51 | +>nonUnique2 : Symbol(myFunction.nonUnique2, Decl(uniqueSymbolReassignment.ts, 18, 35)) |
| 52 | +>nonUnique2 : Symbol(nonUnique2, Decl(uniqueSymbolReassignment.ts, 16, 3)) |
53 | 53 |
|
54 | 54 | // ------------------------- |
55 | 55 | // Normal variables (should stay `var`/string) |
56 | 56 | // ------------------------- |
57 | 57 | const normalVar = "just a string"; |
58 | | ->normalVar : Symbol(normalVar, Decl(uniqueSymbolFullTest.ts, 24, 5)) |
| 58 | +>normalVar : Symbol(normalVar, Decl(uniqueSymbolReassignment.ts, 24, 5)) |
59 | 59 |
|
60 | 60 | const symbolName = "this contains symbol but is not one"; |
61 | | ->symbolName : Symbol(symbolName, Decl(uniqueSymbolFullTest.ts, 25, 5)) |
| 61 | +>symbolName : Symbol(symbolName, Decl(uniqueSymbolReassignment.ts, 25, 5)) |
62 | 62 |
|
63 | 63 | myFunction.normalVar = normalVar; |
64 | | ->myFunction.normalVar : Symbol(myFunction.normalVar, Decl(uniqueSymbolFullTest.ts, 25, 57)) |
65 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
66 | | ->normalVar : Symbol(myFunction.normalVar, Decl(uniqueSymbolFullTest.ts, 25, 57)) |
67 | | ->normalVar : Symbol(normalVar, Decl(uniqueSymbolFullTest.ts, 24, 5)) |
| 64 | +>myFunction.normalVar : Symbol(myFunction.normalVar, Decl(uniqueSymbolReassignment.ts, 25, 57)) |
| 65 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 66 | +>normalVar : Symbol(myFunction.normalVar, Decl(uniqueSymbolReassignment.ts, 25, 57)) |
| 67 | +>normalVar : Symbol(normalVar, Decl(uniqueSymbolReassignment.ts, 24, 5)) |
68 | 68 |
|
69 | 69 | myFunction.symbolName = symbolName; |
70 | | ->myFunction.symbolName : Symbol(myFunction.symbolName, Decl(uniqueSymbolFullTest.ts, 27, 33)) |
71 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 4, 54), Decl(uniqueSymbolFullTest.ts, 6, 24), Decl(uniqueSymbolFullTest.ts, 9, 31), Decl(uniqueSymbolFullTest.ts, 16, 38), Decl(uniqueSymbolFullTest.ts, 18, 35) ... and 2 more) |
72 | | ->symbolName : Symbol(myFunction.symbolName, Decl(uniqueSymbolFullTest.ts, 27, 33)) |
73 | | ->symbolName : Symbol(symbolName, Decl(uniqueSymbolFullTest.ts, 25, 5)) |
| 70 | +>myFunction.symbolName : Symbol(myFunction.symbolName, Decl(uniqueSymbolReassignment.ts, 27, 33)) |
| 71 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 4, 54), Decl(uniqueSymbolReassignment.ts, 6, 24), Decl(uniqueSymbolReassignment.ts, 9, 31), Decl(uniqueSymbolReassignment.ts, 16, 38), Decl(uniqueSymbolReassignment.ts, 18, 35) ... and 2 more) |
| 72 | +>symbolName : Symbol(myFunction.symbolName, Decl(uniqueSymbolReassignment.ts, 27, 33)) |
| 73 | +>symbolName : Symbol(symbolName, Decl(uniqueSymbolReassignment.ts, 25, 5)) |
74 | 74 |
|
75 | 75 | // ------------------------- |
76 | 76 | // Export symbols along with function to test `typeof` behavior |
77 | 77 | // ------------------------- |
78 | 78 | export { myFunction, anotherUnique }; |
79 | | ->myFunction : Symbol(myFunction, Decl(uniqueSymbolFullTest.ts, 33, 8)) |
80 | | ->anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolFullTest.ts, 33, 20)) |
| 79 | +>myFunction : Symbol(myFunction, Decl(uniqueSymbolReassignment.ts, 33, 8)) |
| 80 | +>anotherUnique : Symbol(anotherUnique, Decl(uniqueSymbolReassignment.ts, 33, 20)) |
81 | 81 |
|
0 commit comments