diff --git a/jedi/api/helpers.py b/jedi/api/helpers.py index 423f2f7e..5f51d098 100644 --- a/jedi/api/helpers.py +++ b/jedi/api/helpers.py @@ -20,8 +20,8 @@ def sorted_definitions(defs): return sorted(defs, key=lambda x: (x.module_path or '', x.line or 0, x.column or 0)) -def get_on_completion_name(module, lines, position): - leaf = module.get_leaf_for_position(position) +def get_on_completion_name(module_node, lines, position): + leaf = module_node.get_leaf_for_position(position) if leaf is None or leaf.type in ('string', 'error_leaf'): # Completions inside strings are a bit special, we need to parse the # string. The same is true for comments and error_leafs. diff --git a/jedi/evaluate/compiled/fake.py b/jedi/evaluate/compiled/fake.py index 37c9ced1..db74dca0 100644 --- a/jedi/evaluate/compiled/fake.py +++ b/jedi/evaluate/compiled/fake.py @@ -170,7 +170,6 @@ def memoize_faked(obj): @memoize_faked def _get_faked(module, obj, name=None): - obj = type(obj) if is_class_instance(obj) else obj result, fake_module = _faked(module, obj, name) if result is None: # We're not interested in classes. What we want is functions. diff --git a/jedi/utils.py b/jedi/utils.py index 44f7c0d2..a890dae0 100644 --- a/jedi/utils.py +++ b/jedi/utils.py @@ -87,7 +87,11 @@ def setup_readline(namespace_module=__main__): lines = common.splitlines(text) position = (len(lines), len(lines[-1])) - name = get_on_completion_name(interpreter._get_module(), lines, position) + name = get_on_completion_name( + interpreter._get_module_node(), + lines, + position + ) before = text[:len(text) - len(name)] completions = interpreter.completions() except: