Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleChecker.py

branch
BgService
changeset 3413
5e63f809732a
parent 3228
f489068e51e8
child 3456
96232974dcdb
equal deleted inserted replaced
3412:9364dab2d472 3413:5e63f809732a
54 @return error code (string) 54 @return error code (string)
55 """ 55 """
56 code = super(CodeStyleCheckerReport, self).error_args( 56 code = super(CodeStyleCheckerReport, self).error_args(
57 line_number, offset, code, check, *args) 57 line_number, offset, code, check, *args)
58 if code and (self.counters[code] == 1 or self.__repeat): 58 if code and (self.counters[code] == 1 or self.__repeat):
59 if code in NamingStyleChecker.Codes:
60 text = NamingStyleChecker.getMessage(code, *args)
61 else:
62 text = pep8.getMessage(code, *args)
63 self.errors.append( 59 self.errors.append(
64 (self.filename, line_number, offset, text) 60 (self.filename, line_number, offset, (code, args))
65 ) 61 )
66 return code 62 return code
67 63
68 64
69 def extractLineFlags(line, startComment="#", endComment=""): 65 def extractLineFlags(line, startComment="#", endComment=""):
157 153
158 errors = report.errors + docStyleChecker.errors 154 errors = report.errors + docStyleChecker.errors
159 155
160 deferredFixes = {} 156 deferredFixes = {}
161 results = [] 157 results = []
162 for error in errors: 158 for fname, lineno, position, text in errors:
163 fname, lineno, position, text = error
164 if lineno > len(source): 159 if lineno > len(source):
165 lineno = len(source) 160 lineno = len(source)
166 if "__IGNORE_WARNING__" not in \ 161 if "__IGNORE_WARNING__" not in \
167 extractLineFlags(source[lineno - 1].strip()): 162 extractLineFlags(source[lineno - 1].strip()):
168 if fixer: 163 if fixer:
180 deferredResults = fixer.finalize() 175 deferredResults = fixer.finalize()
181 for id_ in deferredResults: 176 for id_ in deferredResults:
182 fixed, msg = deferredResults[id_] 177 fixed, msg = deferredResults[id_]
183 itm = deferredFixes[id_] 178 itm = deferredFixes[id_]
184 itm.extend([fixed == 1, fixed == 1, msg]) 179 itm.extend([fixed == 1, fixed == 1, msg])
185 fixer.saveFile(encoding) 180 results.append(itm)
181
182 errMsg = fixer.saveFile(encoding)
183 if errMsg:
184 for result in results:
185 result[-1] = errMsg
186 186
187 return stats, results 187 return stats, results

eric ide

mercurial