From 5d3028bd1f7e87792b1e26c4f9d76e7778dd77e2 Mon Sep 17 00:00:00 2001 From: Dave Halter Date: Thu, 6 Jun 2019 20:34:50 +0200 Subject: [PATCH] Fix completions for collections.deque --- jedi/evaluate/compiled/mixed.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/jedi/evaluate/compiled/mixed.py b/jedi/evaluate/compiled/mixed.py index d289ed50..f1c8a42f 100644 --- a/jedi/evaluate/compiled/mixed.py +++ b/jedi/evaluate/compiled/mixed.py @@ -164,7 +164,13 @@ def _find_syntax_node_name(evaluator, access_handle): # Doesn't always work (e.g. os.stat_result) names = module_node.get_used_names().get(name_str, []) - names = [n for n in names if n.is_definition()] + # Only functions and classes are relevant. If a name e.g. points to an + # import, it's probably a builtin (like collections.deque) and needs to be + # ignored. + names = [ + n for n in names + if n.parent.type in ('funcdef', 'classdef') and n.parent.name == n + ] if not names: return None