1
0
forked from VimPlug/jedi
Files
jedi-fork/jedi/api/dicts.py
2019-09-23 09:18:26 +02:00

20 lines
629 B
Python

from jedi.inference.names import AbstractArbitraryName
_sentinel = object()
class F(AbstractArbitraryName):
api_type = u'path'
is_value_name = False
def completions_for_dicts(dicts, literal_string):
for dct in dicts:
if dct.array_type == 'dict':
for key in dct.get_key_values():
dict_key = key.get_safe_value(default=_sentinel)
if dict_key is not _sentinel:
dict_key_str = str(dict_key)
if dict_key_str.startswith(literal_string):
yield F(dct.inference_state, dict_key_str[len(literal_string):])