diff options
| author | Ian Cordasco <graffatcolmingov@gmail.com> | 2016-07-24 20:04:59 -0500 |
|---|---|---|
| committer | Ian Cordasco <graffatcolmingov@gmail.com> | 2016-07-24 20:04:59 -0500 |
| commit | 455066cd52ee82957cc656d3d797a126d5a6aa02 (patch) | |
| tree | 7a009dd3432b3dbb4f0eeb2077c52a736cb987e5 /src | |
| parent | 698079f87a017dc7170d9c5f14627d71a47b5aba (diff) | |
| parent | 5f9c0bde23c296f2151afa62dc17b6939bfc74ca (diff) | |
| download | flake8-455066cd52ee82957cc656d3d797a126d5a6aa02.tar.gz | |
Merge branch 'run-functions'
Diffstat (limited to 'src')
| -rw-r--r-- | src/flake8/checker.py | 12 |
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, |
