-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit e4d781a
committed
Macro annotations class modifications (part 2)
Enable modification of classes with `MacroAnnotation`:
* Can annotate `class` to transform it
* Can annotate `object` to transform the companion class
Supported class modifications:
* Modify the implementations of `def`, `val`, `var`, `lazy val`, `class`, `object` in the class
* Add new `def`, `val`, `var`, `lazy val`, `class`, `object` members to the class
* Add a new override for a `def`, `val`, `var`, `lazy val` members in the class
Restrictions:
* An annotation on a top-level class cannot return a top-level `def`, `val`, `var`, `lazy val`1 parent 5aa558c commit e4d781a
File tree
42 files changed
+994
-137
lines changed- compiler/src/dotty/tools/dotc/transform
- library/src/scala/annotation
- tests
- neg-macros
- annot-error-annot
- annot-mod-class-add-top-method
- annot-mod-class-add-top-val
- annot-on-class
- annot-on-object
- run-macros
- annot-mod-class-add-def
- annot-mod-class-add-inner-class
- annot-mod-class-add-lazy-val
- annot-mod-class-add-local-class
- annot-mod-class-add-val
- annot-mod-class-add-var
- annot-mod-class-data
- annot-mod-class-equals
- annot-mod-class-mod-def
- annot-mod-class-mod-val
- annot-mod-class-override-def
- annot-mod-class-override-val
- annot-mod-class-unused-new-sym
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
42 files changed
+994
-137
lines changedLines changed: 8 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
9 | 9 |
| |
10 | 10 |
| |
11 | 11 |
| |
12 | + | ||
12 | 13 |
| |
13 | 14 |
| |
14 | 15 |
| |
| |||
29 | 30 |
| |
30 | 31 |
| |
31 | 32 |
| |
32 | - | ||
33 | - | ||
34 | - | ||
35 | - | ||
36 | - | ||
37 | - | ||
33 | + | ||
34 | + | ||
38 | 35 |
| |
39 | - | ||
36 | + | ||
40 | 37 |
| |
41 | 38 |
| |
42 | 39 |
| |
| |||
98 | 95 |
| |
99 | 96 |
| |
100 | 97 |
| |
101 | - | ||
98 | + | ||
102 | 99 |
| |
103 | - | ||
100 | + | ||
104 | 101 |
| |
105 | 102 |
| |
103 | + | ||
104 | + | ||
106 | 105 |
| |
107 | 106 |
| |
108 | 107 |
| |
|
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
18 | 18 |
| |
19 | 19 |
| |
20 | 20 |
| |
21 | - | ||
21 | + | ||
22 | 22 |
| |
23 | - | ||
23 | + | ||
24 | 24 |
| |
25 | - | ||
25 | + | ||
26 | + | ||
26 | 27 |
| |
27 | 28 |
| |
28 | 29 |
| |
| |||
73 | 74 |
| |
74 | 75 |
| |
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 | + | ||
76 | 185 |
| |
77 | 186 |
| |
78 | 187 |
| |
|
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 | 1 |
| |
2 | - | ||
3 | - | ||
4 | - | ||
2 | + | ||
3 | + | ||
4 | + | ||
5 | + | ||
6 | + | ||
7 | + | ||
8 | + | ||
9 | + | ||
10 | + | ||
11 | + | ||
12 | + | ||
13 | + | ||
14 | + | ||
5 | 15 |
| |
6 | 16 |
| |
7 | - | ||
8 | - | ||
9 | - | ||
17 | + | ||
18 | + | ||
19 | + | ||
10 | 20 |
| |
11 | 21 |
| |
12 | - | ||
13 | - | ||
14 | - | ||
22 | + | ||
23 | + | ||
24 | + | ||
15 | 25 |
| |
16 | 26 |
| |
17 | - | ||
18 | - | ||
19 | - | ||
27 | + | ||
28 | + | ||
29 | + | ||
20 | 30 |
| |
21 | 31 |
| |
22 | - | ||
23 | - | ||
24 | - | ||
32 | + | ||
33 | + | ||
34 | + | ||
35 | + | ||
36 | + | ||
37 | + | ||
38 | + | ||
39 | + | ||
40 | + | ||
41 | + | ||
42 | + | ||
43 | + | ||
44 | + | ||
45 | + | ||
46 | + | ||
25 | 47 |
| |
26 | - | ||
27 | - | ||
28 | - | ||
29 | - | ||
30 | - | ||
48 | + | ||
49 | + | ||
50 | + | ||
51 | + | ||
31 | 52 |
| |
32 | - | ||
33 | - | ||
34 | - | ||
35 | - | ||
36 | - | ||
53 | + | ||
54 | + | ||
55 | + | ||
56 | + | ||
37 | 57 |
| |
38 | 58 |
| |
39 | - | ||
40 | - | ||
41 | - | ||
59 | + | ||
60 | + | ||
61 | + | ||
42 | 62 |
| |
43 | 63 |
| |
44 | - | ||
45 | - | ||
46 | - | ||
64 | + | ||
65 | + | ||
66 | + | ||
47 | 67 |
| |
48 | 68 |
| |
49 | - | ||
50 | - | ||
51 | - | ||
69 | + | ||
70 | + | ||
71 | + | ||
52 | 72 |
| |
53 | 73 |
| |
54 | - | ||
55 | - | ||
56 | - | ||
74 | + | ||
75 | + | ||
76 | + | ||
57 | 77 |
| |
58 | - | ||
59 | - | ||
60 | - | ||
61 | - | ||
62 | - | ||
78 | + | ||
79 | + | ||
80 | + | ||
81 | + | ||
82 | + | ||
63 | 83 |
| |
64 | - | ||
65 | - | ||
84 | + | ||
85 | + | ||
86 | + | ||
87 | + | ||
88 | + | ||
89 | + | ||
90 | + | ||
91 | + | ||
92 | + | ||
93 | + | ||
94 | + | ||
95 | + | ||
66 | 96 |
| |
67 | 97 |
| |
68 | 98 |
| |
| |||
85 | 115 |
| |
86 | 116 |
| |
87 | 117 |
| |
88 | - | ||
118 | + | ||
89 | 119 |
| |
90 | - | ||
120 | + | ||
91 | 121 |
| |
92 | 122 |
| |
93 | 123 |
| |
94 | - | ||
124 | + | ||
95 | 125 |
| |
96 | - | ||
126 | + | ||
97 | 127 |
|
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 | - | ||
10 | + | ||
11 | 11 |
| |
12 | 12 |
| |
13 | - | ||
13 | + | ||
14 | 14 |
| |
15 | 15 |
| |
16 | + | ||
17 | + | ||
18 | + | ||
19 | + | ||
20 | + | ||
21 | + | ||
16 | 22 |
| |
17 | 23 |
| |
18 | 24 |
| |
| |||
23 | 29 |
| |
24 | 30 |
| |
25 | 31 |
| |
26 | - | ||
32 | + | ||
27 | 33 |
| |
28 | 34 |
| |
29 | - | ||
35 | + | ||
30 | 36 |
| |
31 | 37 |
| |
38 | + | ||
39 | + | ||
40 | + | ||
41 | + | ||
42 | + | ||
43 | + | ||
32 | 44 |
| |
33 | 45 |
| |
34 | 46 |
| |
| |||
39 | 51 |
| |
40 | 52 |
| |
41 | 53 |
| |
42 | - | ||
54 | + | ||
43 | 55 |
| |
44 | 56 |
| |
45 | - | ||
57 | + | ||
46 | 58 |
| |
59 | + | ||
60 | + | ||
61 | + | ||
62 | + | ||
63 | + | ||
47 | 64 |
| |
48 | 65 |
| |
49 | 66 |
| |
|
0 commit comments