forked from VimPlug/jedi
Dicts should be iterated by its keys (__iter__).
This commit is contained in:
@@ -307,8 +307,13 @@ class Array(IterableWrapper, ArrayMixin):
|
||||
While values returns the possible values for any array field, this
|
||||
function returns the value for a certain index.
|
||||
"""
|
||||
values = self._values()
|
||||
for value in values:
|
||||
if self.type == 'dict':
|
||||
# Get keys.
|
||||
iterate = set(k for k, v in self._items())
|
||||
else:
|
||||
iterate = self._items()
|
||||
|
||||
for value in iterate:
|
||||
yield self._evaluator.eval_element(value)
|
||||
|
||||
def _values(self):
|
||||
@@ -480,10 +485,6 @@ def py__iter__(evaluator, types):
|
||||
yield result
|
||||
|
||||
|
||||
def py__iter__types(evaluator, types):
|
||||
return unite(py__iter__(evaluator, types))
|
||||
|
||||
|
||||
def get_iterator_types(evaluator, element):
|
||||
"""Returns the types of any iterator (arrays, yields, __iter__, etc)."""
|
||||
iterators = []
|
||||
|
||||
@@ -234,6 +234,11 @@ dic = {str(key): ''}
|
||||
#? str()
|
||||
dic['']
|
||||
|
||||
|
||||
for x in {1: 3.0, '': 1j}:
|
||||
#? int() str()
|
||||
x
|
||||
|
||||
# -----------------
|
||||
# with variable as index
|
||||
# -----------------
|
||||
|
||||
Reference in New Issue
Block a user