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
| | // Test assignment left-hand side fontification
const assignment = (): number => {
// ^ font-lock-function-name-face
// ^ font-lock-type-face
let foo = 0;
// ^ font-lock-variable-name-face
foo += 1;
//^ font-lock-variable-name-face
let obj: {[key: string]: any} = {};
// ^ font-lock-variable-name-face
// ^ font-lock-property-name-face
// ^ font-lock-type-face
// ^ font-lock-type-face
obj.x.y = 0;
//^ font-lock-variable-name-face
// ^ font-lock-property-name-face
// ^ font-lock-property-name-face
++obj.x++;
// ^ font-lock-variable-name-face
// ^ font-lock-property-name-face
arr[obj.x * obj.x] = 1;
//^ font-lock-variable-name-face
// ^ font-lock-variable-use-face
// ^ font-lock-property-use-face
let x = 0, y = 0, arr = [0,0], mat = [[0],[0]];
[ x, y] = [y, x];
//^ font-lock-variable-name-face
// ^ font-lock-variable-name-face
if ((x = 1)) x++;
// ^ font-lock-variable-name-face
// ^ font-lock-variable-name-face
arr[arr[0]] = 2;
//^ font-lock-variable-name-face
// ^ font-lock-variable-use-face
// ^ font-lock-number-face
++mat[x][arr[0]];
// ^ font-lock-variable-name-face
// ^ font-lock-variable-use-face
mat[mat[arr[arr[obj.x]]][x]][arr[0]] = 2;
//^ font-lock-variable-name-face
// ^ font-lock-variable-use-face
// ^ font-lock-variable-use-face
// ^ font-lock-variable-use-face
// ^ font-lock-variable-use-face
// ^ font-lock-property-use-face
// ^ font-lock-variable-use-face
// ^ font-lock-variable-use-face
// ^ font-lock-number-face
return 0;
};
|