diff --git a/jedi/evaluate/__init__.py b/jedi/evaluate/__init__.py index 4e8e2503..f9b7a6ab 100644 --- a/jedi/evaluate/__init__.py +++ b/jedi/evaluate/__init__.py @@ -126,9 +126,8 @@ class Evaluator(object): :param stmt: A `pr.ExprStmt`. """ debug.dbg('eval_statement %s (%s)', stmt, seek_name) - expression_list = stmt.expression_list() if isinstance(stmt, FakeStatement): - return expression_list # Already contains the results. + return stmt.children # Already contains the results. result = self.eval_element(stmt.children[0]) diff --git a/jedi/evaluate/helpers.py b/jedi/evaluate/helpers.py index f8f6b148..0d4b375e 100644 --- a/jedi/evaluate/helpers.py +++ b/jedi/evaluate/helpers.py @@ -310,7 +310,8 @@ class FakeImport(pr.Import): class FakeName(pr.Name): def __init__(self, name_str, parent=None, start_pos=(0, 0)): - super(FakeName, self).__init__(FakeSubModule, name_str, parent, start_pos) + super(FakeName, self).__init__(name_str, start_pos) + self.parent = parent def get_definition(self): return self.parent diff --git a/jedi/parser/representation.py b/jedi/parser/representation.py index 34ad14d8..ed54a5b7 100644 --- a/jedi/parser/representation.py +++ b/jedi/parser/representation.py @@ -171,7 +171,7 @@ class Base(object): class _Leaf(Base): __slots__ = ('value', 'parent', 'start_pos', 'prefix') - def __init__(self, value, start_pos, prefix): + def __init__(self, value, start_pos, prefix=''): self.value = value self.start_pos = start_pos self.prefix = prefix @@ -1003,14 +1003,7 @@ class Statement(Simple, DocstringMixin): would result in ``[(Name(x), '='), (Array([Name(y), Name(z)]), '=')]``. """ - return self._assignment_details - - @cache.underscore_memoization - def expression_list(self): - """ - Parse a statement. - """ - return self.children + return [] def set_expression_list(self, lst): """It's necessary for some "hacks" to change the expression_list."""