Commit c22deda
Gilad Chase
fix(parser): better handling for multi-reference objects (&&T, &&&T, etc)
- Formatter no longer inserts breakline before & in an unary & (or &&), meaning &&T isn't coerced
into & &T. This also had the effect of removing excess whitespace in some other cases (see tests).
- Implementation: parser consumes && and pushes two & into the token queue, which is then
parsed similarly to &(&T).
- consolidated tests and added triple &&&T test1 parent 87152ac commit c22deda
File tree
6 files changed
+381
-216
lines changed- crates
- cairo-lang-formatter/src
- cairo-lang-parser/src
- parser_test_data/partial_trees
- cairo-lang-semantic/src
- expr/semantic_test_data
- items/tests
6 files changed
+381
-216
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
758 | 758 | | |
759 | 759 | | |
760 | 760 | | |
761 | | - | |
| 761 | + | |
| 762 | + | |
| 763 | + | |
762 | 764 | | |
763 | 765 | | |
764 | 766 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| 7 | + | |
7 | 8 | | |
8 | 9 | | |
9 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1503 | 1503 | | |
1504 | 1504 | | |
1505 | 1505 | | |
1506 | | - | |
| 1506 | + | |
| 1507 | + | |
| 1508 | + | |
| 1509 | + | |
1507 | 1510 | | |
1508 | 1511 | | |
1509 | 1512 | | |
| |||
1707 | 1710 | | |
1708 | 1711 | | |
1709 | 1712 | | |
1710 | | - | |
| 1713 | + | |
| 1714 | + | |
1711 | 1715 | | |
1712 | 1716 | | |
1713 | 1717 | | |
| |||
3547 | 3551 | | |
3548 | 3552 | | |
3549 | 3553 | | |
| 3554 | + | |
| 3555 | + | |
| 3556 | + | |
| 3557 | + | |
| 3558 | + | |
| 3559 | + | |
| 3560 | + | |
| 3561 | + | |
| 3562 | + | |
| 3563 | + | |
| 3564 | + | |
| 3565 | + | |
| 3566 | + | |
| 3567 | + | |
| 3568 | + | |
| 3569 | + | |
| 3570 | + | |
| 3571 | + | |
| 3572 | + | |
| 3573 | + | |
3550 | 3574 | | |
3551 | 3575 | | |
3552 | 3576 | | |
| |||
Lines changed: 38 additions & 32 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
24 | 44 | | |
25 | 45 | | |
26 | 46 | | |
| |||
30 | 50 | | |
31 | 51 | | |
32 | 52 | | |
33 | | - | |
| 53 | + | |
34 | 54 | | |
35 | 55 | | |
36 | 56 | | |
| |||
79 | 99 | | |
80 | 100 | | |
81 | 101 | | |
82 | | - | |
| 102 | + | |
83 | 103 | | |
84 | 104 | | |
85 | 105 | | |
| |||
99 | 119 | | |
100 | 120 | | |
101 | 121 | | |
102 | | - | |
| 122 | + | |
103 | 123 | | |
104 | 124 | | |
105 | 125 | | |
106 | 126 | | |
107 | 127 | | |
108 | | - | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
109 | 133 | | |
110 | 134 | | |
111 | 135 | | |
| |||
115 | 139 | | |
116 | 140 | | |
117 | 141 | | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
118 | 145 | | |
119 | 146 | | |
120 | 147 | | |
121 | 148 | | |
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 | | - | |
| 149 | + | |
148 | 150 | | |
149 | 151 | | |
150 | | - | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
0 commit comments