Plugins/CheckerPlugins/CodeStyleChecker/CodeStyleChecker.py

changeset 3821
8731f4bf0704
parent 3745
4c6f1782f530
child 4021
195a471c327b
equal deleted inserted replaced
3816:7216192a9de5 3821:8731f4bf0704
102 excludeMessages, includeMessages, \ 102 excludeMessages, includeMessages, \
103 repeatMessages, fixCodes, noFixCodes, fixIssues, maxLineLength, \ 103 repeatMessages, fixCodes, noFixCodes, fixIssues, maxLineLength, \
104 hangClosing, docType, errors, eol, encoding, backup = args 104 hangClosing, docType, errors, eol, encoding, backup = args
105 105
106 stats = {} 106 stats = {}
107 # Don't check an empty file
108 if source == []:
109 return stats, []
110 107
111 if fixIssues: 108 if fixIssues:
112 from CodeStyleFixer import CodeStyleFixer 109 from CodeStyleFixer import CodeStyleFixer
113 fixer = CodeStyleFixer( 110 fixer = CodeStyleFixer(
114 filename, source, fixCodes, noFixCodes, 111 filename, source, fixCodes, noFixCodes,
160 deferredFixes = {} 157 deferredFixes = {}
161 results = [] 158 results = []
162 for fname, lineno, position, text in errors: 159 for fname, lineno, position, text in errors:
163 if lineno > len(source): 160 if lineno > len(source):
164 lineno = len(source) 161 lineno = len(source)
165 if "__IGNORE_WARNING__" not in \ 162 if source:
166 extractLineFlags(source[lineno - 1].strip()): 163 if "__IGNORE_WARNING__" not in \
167 if fixer: 164 extractLineFlags(source[lineno - 1].strip()):
168 res, msg, id_ = fixer.fixIssue(lineno, position, text) 165 if fixer:
169 if res == -1: 166 res, msg, id_ = fixer.fixIssue(lineno, position, text)
170 itm = [lineno, position, text] 167 if res == -1:
171 deferredFixes[id_] = itm 168 itm = [lineno, position, text]
169 deferredFixes[id_] = itm
170 else:
171 itm = [lineno, position, text, False,
172 res == 1, True, msg]
172 else: 173 else:
173 itm = [lineno, position, text, False, res == 1, True, msg] 174 itm = [lineno, position, text, False,
175 False, False, '']
176 results.append(itm)
174 else: 177 else:
175 itm = [lineno, position, text, False, False, False, ''] 178 results.append([lineno, position, text, True,
176 results.append(itm) 179 False, False, ''])
177 else: 180 else:
178 results.append([lineno, position, text, True, False, False, '']) 181 results.append([lineno, position, text, False,
182 False, False, ''])
179 183
180 if fixer: 184 if fixer:
181 deferredResults = fixer.finalize() 185 deferredResults = fixer.finalize()
182 for id_ in deferredResults: 186 for id_ in deferredResults:
183 fixed, msg = deferredResults[id_] 187 fixed, msg = deferredResults[id_]

eric ide

mercurial