diff --git a/jedi/evaluate/compiled/__init__.py b/jedi/evaluate/compiled/__init__.py index f767d459..69229ed5 100644 --- a/jedi/evaluate/compiled/__init__.py +++ b/jedi/evaluate/compiled/__init__.py @@ -23,6 +23,11 @@ class CompiledObject(Base): asserts = [] path = None # modules have this attribute - set it to None. + def __init__(self, obj, parent=None): + self.obj = obj + self.parent = parent + self.doc = inspect.getdoc(obj) + @property def params(self): params_str, ret = self._parse_function_doc() @@ -37,18 +42,9 @@ class CompiledObject(Base): end_pos)) return params - def __init__(self, obj, parent=None): - self.obj = obj - self.parent = parent - self.doc = inspect.getdoc(obj) - def __repr__(self): return '<%s: %s>' % (type(self).__name__, repr(self.obj)) - def get_parent_until(self, *args, **kwargs): - # compiled modules only use functions and classes/methods (2 levels) - return getattr(self.parent, 'parent', self.parent) or self.parent or self - @underscore_memoization def _parse_function_doc(self): if self.doc is None: diff --git a/jedi/parser/__init__.py b/jedi/parser/__init__.py index bc87890f..b6fe3039 100644 --- a/jedi/parser/__init__.py +++ b/jedi/parser/__init__.py @@ -108,15 +108,9 @@ class Parser(object): self.module.temp_used_names.append(el[0]) names = [] - if pre_used_token is None: - tok = next(self._gen) - if tok.type != tokenize.NAME and tok.string != '*': - return [], tok # TODO the fuck, why []? - else: - tok = pre_used_token + tok = next(self._gen) if pre_used_token is None else pre_used_token if tok.type != tokenize.NAME and tok.string != '*': - # token maybe a name or star return None, tok first_pos = tok.start_pos diff --git a/jedi/parser/representation.py b/jedi/parser/representation.py index a95e502f..a6cb4eec 100644 --- a/jedi/parser/representation.py +++ b/jedi/parser/representation.py @@ -1473,6 +1473,7 @@ class Operator(Base): __slots__ = ('string', '_line', '_column') def __init__(self, string, start_pos): + # TODO needs module param self.string = string self._line = start_pos[0] self._column = start_pos[1]