summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorIan Cordasco <graffatcolmingov@gmail.com>2016-07-24 20:04:59 -0500
committerIan Cordasco <graffatcolmingov@gmail.com>2016-07-24 20:04:59 -0500
commit455066cd52ee82957cc656d3d797a126d5a6aa02 (patch)
tree7a009dd3432b3dbb4f0eeb2077c52a736cb987e5 /src
parent698079f87a017dc7170d9c5f14627d71a47b5aba (diff)
parent5f9c0bde23c296f2151afa62dc17b6939bfc74ca (diff)
downloadflake8-455066cd52ee82957cc656d3d797a126d5a6aa02.tar.gz
Merge branch 'run-functions'
Diffstat (limited to 'src')
-rw-r--r--src/flake8/checker.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/flake8/checker.py b/src/flake8/checker.py
index ba412e3..99bacb5 100644
--- a/src/flake8/checker.py
+++ b/src/flake8/checker.py
@@ -466,11 +466,13 @@ class FileChecker(object):
for plugin in self.checks.ast_plugins:
checker = self.run_check(plugin, tree=ast)
- # NOTE(sigmavirus24): If we want to allow for AST plugins that are
- # not classes exclusively, we can do the following:
- # retrieve_results = getattr(checker, 'run', lambda: checker)
- # Otherwise, we just call run on the checker
- for (line_number, offset, text, check) in checker.run():
+ # If the plugin uses a class, call the run method of it, otherwise
+ # the call should return something iterable itself
+ try:
+ runner = checker.run()
+ except AttributeError:
+ runner = checker
+ for (line_number, offset, text, check) in runner:
self.report(
error_code=None,
line_number=line_number,