@@ -31,6 +31,68 @@ mdtest path: crates/ty_python_semantic/resources/mdtest/attributes.md
31
31
17 | def method(self):
32
32
18 | # error: [unresolved-reference] "Name ` x ` used when not defined"
33
33
19 | y = x
34
+ 20 | class Foo:
35
+ 21 | def __init__(self):
36
+ 22 | self.x = 42
37
+ 23 |
38
+ 24 | @staticmethod
39
+ 25 | def static_method():
40
+ 26 | # error: [unresolved-reference] "Name ` x ` used when not defined"
41
+ 27 | y = x
42
+ 28 | from typing import ClassVar
43
+ 29 |
44
+ 30 | class Foo:
45
+ 31 | x: ClassVar[int] = 42
46
+ 32 |
47
+ 33 | @classmethod
48
+ 34 | def class_method(cls):
49
+ 35 | # error: [unresolved-reference] "Name ` x ` used when not defined"
50
+ 36 | y = x
51
+ 37 | class Foo:
52
+ 38 | def __init__(self):
53
+ 39 | self.x = 42
54
+ 40 |
55
+ 41 | @classmethod
56
+ 42 | def class_method(cls):
57
+ 43 | # error: [unresolved-reference] "Name ` x ` used when not defined"
58
+ 44 | y = x
59
+ 45 | class Foo:
60
+ 46 | x: ClassVar[int]
61
+ 47 |
62
+ 48 | @classmethod
63
+ 49 | @staticmethod
64
+ 50 | def class_method(cls):
65
+ 51 | # error: [unresolved-reference] "Name ` x ` used when not defined"
66
+ 52 | y = x
67
+ 53 | class Foo:
68
+ 54 | def __init__(self):
69
+ 55 | self.x = 42
70
+ 56 |
71
+ 57 | def method(other):
72
+ 58 | # error: [unresolved-reference] "Name ` x ` used when not defined"
73
+ 59 | y = x
74
+ 60 | from typing import ClassVar
75
+ 61 |
76
+ 62 | class Foo:
77
+ 63 | x: ClassVar[int] = 42
78
+ 64 |
79
+ 65 | @classmethod
80
+ 66 | def class_method(c_other):
81
+ 67 | # error: [unresolved-reference] "Name ` x ` used when not defined"
82
+ 68 | y = x
83
+ 69 | from typing import ClassVar
84
+ 70 |
85
+ 71 | class Foo:
86
+ 72 | x: ClassVar[int] = 42
87
+ 73 |
88
+ 74 | def instance_method(*args, **kwargs):
89
+ 75 | # error: [unresolved-reference] "Name ` x ` used when not defined"
90
+ 76 | print(x)
91
+ 77 |
92
+ 78 | @classmethod
93
+ 79 | def class_method(*, cls):
94
+ 80 | # error: [unresolved-reference] "Name ` x ` used when not defined"
95
+ 81 | y = x
34
96
` ` `
35
97
36
98
# Diagnostics
@@ -75,8 +137,128 @@ error[unresolved-reference]: Name `x` used when not defined
75
137
18 | # error: [unresolved-reference] "Name ` x ` used when not defined"
76
138
19 | y = x
77
139
| ^
140
+ 20 | class Foo:
141
+ 21 | def __init__(self):
78
142
|
79
143
info: An attribute ` x ` is available: consider using ` self .x `
80
144
info: rule ` unresolved - reference ` is enabled by default
81
145
82
146
` ` `
147
+
148
+ ` ` `
149
+ error[unresolved-reference]: Name ` x ` used when not defined
150
+ --> src/mdtest_snippet.py:27:13
151
+ |
152
+ 25 | def static_method():
153
+ 26 | # error: [unresolved-reference] "Name ` x ` used when not defined"
154
+ 27 | y = x
155
+ | ^
156
+ 28 | from typing import ClassVar
157
+ |
158
+ info: rule ` unresolved - reference ` is enabled by default
159
+
160
+ ` ` `
161
+
162
+ ` ` `
163
+ error[unresolved-reference]: Name ` x ` used when not defined
164
+ --> src/mdtest_snippet.py:36:13
165
+ |
166
+ 34 | def class_method(cls):
167
+ 35 | # error: [unresolved-reference] "Name ` x ` used when not defined"
168
+ 36 | y = x
169
+ | ^
170
+ 37 | class Foo:
171
+ 38 | def __init__(self):
172
+ |
173
+ info: An attribute ` x ` is available: consider using ` cls .x `
174
+ info: rule ` unresolved - reference ` is enabled by default
175
+
176
+ ` ` `
177
+
178
+ ` ` `
179
+ error[unresolved-reference]: Name ` x ` used when not defined
180
+ --> src/mdtest_snippet.py:44:13
181
+ |
182
+ 42 | def class_method(cls):
183
+ 43 | # error: [unresolved-reference] "Name ` x ` used when not defined"
184
+ 44 | y = x
185
+ | ^
186
+ 45 | class Foo:
187
+ 46 | x: ClassVar[int]
188
+ |
189
+ info: rule ` unresolved - reference ` is enabled by default
190
+
191
+ ` ` `
192
+
193
+ ` ` `
194
+ error[unresolved-reference]: Name ` x ` used when not defined
195
+ --> src/mdtest_snippet.py:52:13
196
+ |
197
+ 50 | def class_method(cls):
198
+ 51 | # error: [unresolved-reference] "Name ` x ` used when not defined"
199
+ 52 | y = x
200
+ | ^
201
+ 53 | class Foo:
202
+ 54 | def __init__(self):
203
+ |
204
+ info: rule ` unresolved - reference ` is enabled by default
205
+
206
+ ` ` `
207
+
208
+ ` ` `
209
+ error[unresolved-reference]: Name ` x ` used when not defined
210
+ --> src/mdtest_snippet.py:59:13
211
+ |
212
+ 57 | def method(other):
213
+ 58 | # error: [unresolved-reference] "Name ` x ` used when not defined"
214
+ 59 | y = x
215
+ | ^
216
+ 60 | from typing import ClassVar
217
+ |
218
+ info: An attribute ` x ` is available: consider using ` other .x `
219
+ info: rule ` unresolved - reference ` is enabled by default
220
+
221
+ ` ` `
222
+
223
+ ` ` `
224
+ error[unresolved-reference]: Name ` x ` used when not defined
225
+ --> src/mdtest_snippet.py:68:13
226
+ |
227
+ 66 | def class_method(c_other):
228
+ 67 | # error: [unresolved-reference] "Name ` x ` used when not defined"
229
+ 68 | y = x
230
+ | ^
231
+ 69 | from typing import ClassVar
232
+ |
233
+ info: An attribute ` x ` is available: consider using ` c_other .x `
234
+ info: rule ` unresolved - reference ` is enabled by default
235
+
236
+ ` ` `
237
+
238
+ ` ` `
239
+ error[unresolved-reference]: Name ` x ` used when not defined
240
+ --> src/mdtest_snippet.py:76:15
241
+ |
242
+ 74 | def instance_method(*args, **kwargs):
243
+ 75 | # error: [unresolved-reference] "Name ` x ` used when not defined"
244
+ 76 | print(x)
245
+ | ^
246
+ 77 |
247
+ 78 | @classmethod
248
+ |
249
+ info: rule ` unresolved - reference ` is enabled by default
250
+
251
+ ` ` `
252
+
253
+ ` ` `
254
+ error[unresolved-reference]: Name ` x ` used when not defined
255
+ --> src/mdtest_snippet.py:81:13
256
+ |
257
+ 79 | def class_method(*, cls):
258
+ 80 | # error: [unresolved-reference] "Name ` x ` used when not defined"
259
+ 81 | y = x
260
+ | ^
261
+ |
262
+ info: rule ` unresolved - reference ` is enabled by default
263
+
264
+ ` ` `
0 commit comments