9 |
9 |
10 """ |
10 """ |
11 Module implementing the messages for py3flakes. |
11 Module implementing the messages for py3flakes. |
12 """ |
12 """ |
13 |
13 |
14 from PyQt4.QtCore import QCoreApplication |
|
15 |
|
16 |
14 |
17 class Message(object): |
15 class Message(object): |
18 """ |
16 """ |
19 Class defining the base for all specific message classes. |
17 Class defining the base for all specific message classes. |
20 """ |
18 """ |
|
19 message_id = 'F00' |
21 message = '' |
20 message = '' |
22 message_args = () |
21 message_args = () |
23 |
22 |
24 def __init__(self, filename, lineno): |
23 def __init__(self, filename, lineno): |
25 """ |
24 """ |
35 """ |
34 """ |
36 Special method return a string representation of the instance object. |
35 Special method return a string representation of the instance object. |
37 |
36 |
38 @return string representation of the object (string) |
37 @return string representation of the object (string) |
39 """ |
38 """ |
40 return '{0}:{1} {2}'.format( |
39 return '%s:%s: %s' % ( |
41 self.filename, self.lineno, |
40 self.filename, self.lineno, self.message % self.message_args) |
42 self.message.format(*self.message_args)) |
|
43 |
41 |
44 def getMessageData(self): |
42 def getMessageData(self): |
45 """ |
43 """ |
46 Public method to get the individual message data elements. |
44 Public method to get the individual message data elements. |
47 |
45 |
48 @return tuple containing file name, line number and message |
46 @return tuple containing file name, line number, message ID and |
49 (string, integer, string) |
47 message arguments (string, integer, string, list) |
50 """ |
48 """ |
51 return (self.filename, self.lineno, |
49 return (self.filename, self.lineno, self.message_id, self.message_args) |
52 self.message.format(*self.message_args)) |
|
53 |
50 |
54 |
51 |
55 class UnusedImport(Message): |
52 class UnusedImport(Message): |
56 """ |
53 """ |
57 Class defining the "Unused Import" message. |
54 Class defining the "Unused Import" message. |
58 """ |
55 """ |
59 message = QCoreApplication.translate( |
56 message_id = 'F01' |
60 'py3Flakes', |
57 message = '%r imported but unused' |
61 '{0!r} imported but unused.') |
|
62 |
58 |
63 def __init__(self, filename, lineno, name): |
59 def __init__(self, filename, lineno, name): |
64 """ |
60 """ |
65 Constructor |
61 Constructor |
66 |
62 |
74 |
70 |
75 class RedefinedWhileUnused(Message): |
71 class RedefinedWhileUnused(Message): |
76 """ |
72 """ |
77 Class defining the "Redefined While Unused" message. |
73 Class defining the "Redefined While Unused" message. |
78 """ |
74 """ |
79 message = QCoreApplication.translate( |
75 message_id = 'F02' |
80 'py3Flakes', |
76 message = 'redefinition of unused %r from line %r' |
81 'Redefinition of unused {0!r} from line {1!r}.') |
|
82 |
77 |
83 def __init__(self, filename, lineno, name, orig_lineno): |
78 def __init__(self, filename, lineno, name, orig_lineno): |
84 """ |
79 """ |
85 Constructor |
80 Constructor |
86 |
81 |
95 |
90 |
96 class ImportShadowedByLoopVar(Message): |
91 class ImportShadowedByLoopVar(Message): |
97 """ |
92 """ |
98 Class defining the "Import Shadowed By Loop Var" message. |
93 Class defining the "Import Shadowed By Loop Var" message. |
99 """ |
94 """ |
100 message = QCoreApplication.translate( |
95 message_id = 'F03' |
101 'py3Flakes', |
96 message = 'import %r from line %r shadowed by loop variable' |
102 'Import {0!r} from line {1!r} shadowed by loop variable.') |
|
103 |
97 |
104 def __init__(self, filename, lineno, name, orig_lineno): |
98 def __init__(self, filename, lineno, name, orig_lineno): |
105 """ |
99 """ |
106 Constructor |
100 Constructor |
107 |
101 |
116 |
110 |
117 class ImportStarUsed(Message): |
111 class ImportStarUsed(Message): |
118 """ |
112 """ |
119 Class defining the "Import Star Used" message. |
113 Class defining the "Import Star Used" message. |
120 """ |
114 """ |
121 message = QCoreApplication.translate( |
115 message_id = 'F04' |
122 'py3Flakes', |
116 message = "'from %s import *' used; unable to detect undefined names" |
123 "'from {0} import *' used; unable to detect undefined names.") |
|
124 |
117 |
125 def __init__(self, filename, lineno, modname): |
118 def __init__(self, filename, lineno, modname): |
126 """ |
119 """ |
127 Constructor |
120 Constructor |
128 |
121 |
136 |
129 |
137 class UndefinedName(Message): |
130 class UndefinedName(Message): |
138 """ |
131 """ |
139 Class defining the "Undefined Name" message. |
132 Class defining the "Undefined Name" message. |
140 """ |
133 """ |
141 message = QCoreApplication.translate('py3Flakes', 'Undefined name {0!r}.') |
134 message_id = 'F05' |
|
135 message = 'undefined name %r' |
142 |
136 |
143 def __init__(self, filename, lineno, name): |
137 def __init__(self, filename, lineno, name): |
144 """ |
138 """ |
145 Constructor |
139 Constructor |
146 |
140 |
154 |
148 |
155 class UndefinedExport(Message): |
149 class UndefinedExport(Message): |
156 """ |
150 """ |
157 Class defining the "Undefined Export" message. |
151 Class defining the "Undefined Export" message. |
158 """ |
152 """ |
159 message = QCoreApplication.translate( |
153 message_id = 'F06' |
160 'py3Flakes', 'Undefined name {0!r} in __all__.') |
154 message = 'undefined name %r in __all__' |
161 |
155 |
162 def __init__(self, filename, lineno, name): |
156 def __init__(self, filename, lineno, name): |
163 """ |
157 """ |
164 Constructor |
158 Constructor |
165 |
159 |
173 |
167 |
174 class UndefinedLocal(Message): |
168 class UndefinedLocal(Message): |
175 """ |
169 """ |
176 Class defining the "Undefined Local Variable" message. |
170 Class defining the "Undefined Local Variable" message. |
177 """ |
171 """ |
178 message = QCoreApplication.translate( |
172 message_id = 'F07' |
179 'py3Flakes', |
173 message = "local variable %r (defined in enclosing scope on line %r)" \ |
180 "Local variable {0!r} (defined in enclosing scope on line {1!r})" |
174 " referenced before assignment" |
181 " referenced before assignment.") |
|
182 |
175 |
183 def __init__(self, filename, lineno, name, orig_lineno): |
176 def __init__(self, filename, lineno, name, orig_lineno): |
184 """ |
177 """ |
185 Constructor |
178 Constructor |
186 |
179 |
195 |
188 |
196 class DuplicateArgument(Message): |
189 class DuplicateArgument(Message): |
197 """ |
190 """ |
198 Class defining the "Duplicate Argument" message. |
191 Class defining the "Duplicate Argument" message. |
199 """ |
192 """ |
200 message = QCoreApplication.translate( |
193 message_id = 'F08' |
201 'py3Flakes', |
194 message = 'duplicate argument %r in function definition' |
202 'Duplicate argument {0!r} in function definition.') |
|
203 |
195 |
204 def __init__(self, filename, lineno, name): |
196 def __init__(self, filename, lineno, name): |
205 """ |
197 """ |
206 Constructor |
198 Constructor |
207 |
199 |
215 |
207 |
216 class RedefinedFunction(Message): |
208 class RedefinedFunction(Message): |
217 """ |
209 """ |
218 Class defining the "Redefined Function" message. |
210 Class defining the "Redefined Function" message. |
219 """ |
211 """ |
220 message = QCoreApplication.translate( |
212 message_id = 'F09' |
221 'py3Flakes', |
213 message = 'redefinition of function %r from line %r' |
222 'Redefinition of function {0!r} from line {1!r}.') |
|
223 |
214 |
224 def __init__(self, filename, lineno, name, orig_lineno): |
215 def __init__(self, filename, lineno, name, orig_lineno): |
225 """ |
216 """ |
226 Constructor |
217 Constructor |
227 |
218 |
236 |
227 |
237 class LateFutureImport(Message): |
228 class LateFutureImport(Message): |
238 """ |
229 """ |
239 Class defining the "Late Future Import" message. |
230 Class defining the "Late Future Import" message. |
240 """ |
231 """ |
241 message = QCoreApplication.translate( |
232 message_id = 'F10' |
242 'py3Flakes', |
233 message = 'future import(s) %r after other statements' |
243 'Future import(s) {0!r} after other statements.') |
|
244 |
234 |
245 def __init__(self, filename, lineno, names): |
235 def __init__(self, filename, lineno, names): |
246 """ |
236 """ |
247 Constructor |
237 Constructor |
248 |
238 |
259 Class defining the "Unused Variable" message. |
249 Class defining the "Unused Variable" message. |
260 |
250 |
261 Indicates that a variable has been explicitly assigned to but not actually |
251 Indicates that a variable has been explicitly assigned to but not actually |
262 used. |
252 used. |
263 """ |
253 """ |
264 message = QCoreApplication.translate( |
254 message_id = 'F11' |
265 'py3Flakes', |
255 message = 'local variable %r is assigned to but never used' |
266 'Local variable {0!r} is assigned to but never used.') |
|
267 |
256 |
268 def __init__(self, filename, lineno, name): |
257 def __init__(self, filename, lineno, name): |
269 """ |
258 """ |
270 Constructor |
259 Constructor |
271 |
260 |