diff --git a/jedi/_compatibility.py b/jedi/_compatibility.py index d7015268..7e3fa566 100644 --- a/jedi/_compatibility.py +++ b/jedi/_compatibility.py @@ -167,3 +167,8 @@ if is_py25: yield element itertools.chain = chain del chain + +try: + from functools import reduce +except ImportError: + reduce = reduce diff --git a/jedi/fast_parser.py b/jedi/fast_parser.py index af416dee..678a817a 100644 --- a/jedi/fast_parser.py +++ b/jedi/fast_parser.py @@ -1,9 +1,8 @@ import re import operator -from functools import reduce import parsing -from _compatibility import use_metaclass +from _compatibility import use_metaclass, reduce, property parser_cache = {} @@ -57,7 +56,7 @@ class Module(parsing.Simple, parsing.Module): key = 'get_statement_for_position', pos if key not in self.cache: for p in self.parsers: - s = p.module.get_statement_for_position(self) + s = p.module.get_statement_for_position(pos) if s: self.cache[key] = s break