UtilitiesPython2/py2flakes/messages.py

changeset 802
e8882d16384c
child 945
8cd4d08fa9f6
child 1510
e75ecf2bd9dd
equal deleted inserted replaced
801:16f9875e278b 802:e8882d16384c
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2010 - 2011 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5 # Original (c) 2005 Divmod, Inc. See LICENSE file for details
6 #
7 # This module is based on pyflakes for Python2 but was heavily hacked to
8 # work within eric5
9
10 class Message(object):
11 """
12 Class defining the base for all specific message classes.
13 """
14 message = ''
15 message_args = ()
16
17 def __init__(self, filename, lineno):
18 """
19 Constructor
20
21 @param filename name of the file (string)
22 @param lineno line number (integer)
23 """
24 self.filename = filename
25 self.lineno = lineno
26
27 def __str__(self):
28 """
29 Special method return a string representation of the instance object.
30
31 @return string representation of the object (string)
32 """
33 return '%s:%s: %s' % (
34 self.filename, self.lineno, self.message % self.message_args)
35
36 def getMessageData(self):
37 """
38 Public method to get the individual message data elements.
39
40 @return tuple containing file name, line number and message
41 (string, integer, string)
42 """
43 return (self.filename, self.lineno, self.message % self.message_args)
44
45 class UnusedImport(Message):
46 """
47 Class defining the "Unused Import" message.
48 """
49 message = '%r imported but unused'
50
51 def __init__(self, filename, lineno, name):
52 """
53 Constructor
54
55 @param filename name of the file (string)
56 @param lineno line number (integer)
57 @param name name of the unused import (string)
58 """
59 Message.__init__(self, filename, lineno)
60 self.message_args = (name,)
61
62 class RedefinedWhileUnused(Message):
63 """
64 Class defining the "Redefined While Unused" message.
65 """
66 message = 'redefinition of unused %r from line %r'
67
68 def __init__(self, filename, lineno, name, orig_lineno):
69 """
70 Constructor
71
72 @param filename name of the file (string)
73 @param lineno line number (integer)
74 @param name name of the redefined object (string)
75 @param orig_lineno line number of the original definition (integer)
76 """
77 Message.__init__(self, filename, lineno)
78 self.message_args = (name, orig_lineno)
79
80 class ImportShadowedByLoopVar(Message):
81 """
82 Class defining the "Import Shadowed By Loop Var" message.
83 """
84 message = 'import %r from line %r shadowed by loop variable'
85
86 def __init__(self, filename, lineno, name, orig_lineno):
87 """
88 Constructor
89
90 @param filename name of the file (string)
91 @param lineno line number (integer)
92 @param name name of the shadowed import (string)
93 @param orig_lineno line number of the import (integer)
94 """
95 Message.__init__(self, filename, lineno)
96 self.message_args = (name, orig_lineno)
97
98 class ImportStarUsed(Message):
99 """
100 Class defining the "Import Star Used" message.
101 """
102 message = "'from %s import *' used; unable to detect undefined names"
103
104 def __init__(self, filename, lineno, modname):
105 """
106 Constructor
107
108 @param filename name of the file (string)
109 @param lineno line number (integer)
110 @param modname name of the module imported using star import (string)
111 """
112 Message.__init__(self, filename, lineno)
113 self.message_args = (modname,)
114
115 class UndefinedName(Message):
116 """
117 Class defining the "Undefined Name" message.
118 """
119 message = 'undefined name %r'
120
121 def __init__(self, filename, lineno, name):
122 """
123 Constructor
124
125 @param filename name of the file (string)
126 @param lineno line number (integer)
127 @param name undefined name (string)
128 """
129 Message.__init__(self, filename, lineno)
130 self.message_args = (name,)
131
132 class UndefinedExport(Message):
133 """
134 Class defining the "Undefined Export" message.
135 """
136 message = 'undefined name %r in __all__'
137
138 def __init__(self, filename, lineno, name):
139 """
140 Constructor
141
142 @param filename name of the file (string)
143 @param lineno line number (integer)
144 @param name undefined exported name (string)
145 """
146 Message.__init__(self, filename, lineno)
147 self.message_args = (name,)
148
149 class UndefinedLocal(Message):
150 """
151 Class defining the "Undefined Local Variable" message.
152 """
153 message = "local variable %r (defined in enclosing scope on line %r)" \
154 " referenced before assignment"
155
156 def __init__(self, filename, lineno, name, orig_lineno):
157 """
158 Constructor
159
160 @param filename name of the file (string)
161 @param lineno line number (integer)
162 @param name name of the prematurely referenced variable (string)
163 @param orig_lineno line number of the variable definition (integer)
164 """
165 Message.__init__(self, filename, lineno)
166 self.message_args = (name, orig_lineno)
167
168 class DuplicateArgument(Message):
169 """
170 Class defining the "Duplicate Argument" message.
171 """
172 message = 'duplicate argument %r in function definition'
173
174 def __init__(self, filename, lineno, name):
175 """
176 Constructor
177
178 @param filename name of the file (string)
179 @param lineno line number (integer)
180 @param name name of the duplicate argument (string)
181 """
182 Message.__init__(self, filename, lineno)
183 self.message_args = (name,)
184
185 class RedefinedFunction(Message):
186 """
187 Class defining the "Redefined Function" message.
188 """
189 message = 'redefinition of function %r from line %r'
190
191 def __init__(self, filename, lineno, name, orig_lineno):
192 """
193 Constructor
194
195 @param filename name of the file (string)
196 @param lineno line number (integer)
197 @param name name of the redefined function (string)
198 @param orig_lineno line number of the original definition (integer)
199 """
200 Message.__init__(self, filename, lineno)
201 self.message_args = (name, orig_lineno)
202
203 class LateFutureImport(Message):
204 """
205 Class defining the "Late Future Import" message.
206 """
207 message = 'future import(s) %r after other statements'
208
209 def __init__(self, filename, lineno, names):
210 """
211 Constructor
212
213 @param filename name of the file (string)
214 @param lineno line number (integer)
215 @param names names of the imported futures (string)
216 """
217 Message.__init__(self, filename, lineno)
218 self.message_args = (names,)
219
220 class UnusedVariable(Message):
221 """
222 Class defining the "Unused Variable" message.
223
224 Indicates that a variable has been explicitly assigned to but not actually
225 used.
226 """
227 message = 'local variable %r is assigned to but never used'
228
229 def __init__(self, filename, lineno, names):
230 """
231 Constructor
232
233 @param filename name of the file (string)
234 @param lineno line number (integer)
235 @param name name of the unused variable (string)
236 """
237 Message.__init__(self, filename, lineno)
238 self.message_args = (names,)
239
240 #
241 # eflag: FileType = Python2

eric ide

mercurial