mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-06 05:54:25 +08:00
Fix some minor errors
This commit is contained in:
@@ -276,6 +276,8 @@ class DictComprehension(ComprehensionMixin, Sequence):
|
||||
for keys, values in self._iterate():
|
||||
for k in keys:
|
||||
if isinstance(k, compiled.CompiledObject):
|
||||
# Be careful in the future if refactoring, index could be a
|
||||
# slice.
|
||||
if k.get_safe_value(default=object()) == index:
|
||||
return values
|
||||
raise SimpleGetItemNotFound()
|
||||
@@ -501,6 +503,9 @@ class FakeSequence(_FakeArray):
|
||||
self._lazy_context_list = lazy_context_list
|
||||
|
||||
def py__simple_getitem__(self, index):
|
||||
if isinstance(index, slice):
|
||||
return ContextSet([self])
|
||||
|
||||
with reraise_getitem_errors(IndexError, TypeError):
|
||||
lazy_context = self._lazy_context_list[index]
|
||||
return lazy_context.infer()
|
||||
@@ -540,7 +545,7 @@ class FakeDict(_DictMixin, _FakeArray):
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
with reraise_getitem_errors(KeyError):
|
||||
with reraise_getitem_errors(KeyError, TypeError):
|
||||
lazy_context = self._dct[index]
|
||||
return lazy_context.infer()
|
||||
|
||||
|
||||
@@ -12,3 +12,26 @@ def asdfy():
|
||||
xorz = getattr(asdfy()(), 'asdf')
|
||||
#? time
|
||||
xorz
|
||||
|
||||
|
||||
|
||||
def args_returner(*args):
|
||||
return args
|
||||
|
||||
|
||||
#? tuple()
|
||||
args_returner(1)[:]
|
||||
#? int()
|
||||
args_returner(1)[:][0]
|
||||
|
||||
|
||||
def kwargs_returner(**kwargs):
|
||||
return kwargs
|
||||
|
||||
|
||||
# TODO This is not really correct, needs correction probably at some point, but
|
||||
# at least it doesn't raise an error.
|
||||
#? int()
|
||||
kwargs_returner(a=1)[:]
|
||||
#?
|
||||
kwargs_returner(b=1)[:][0]
|
||||
|
||||
Reference in New Issue
Block a user