mirror of
https://github.com/davidhalter/jedi.git
synced 2025-12-06 14:04:26 +08:00
Fix a recursion error issue
This commit is contained in:
@@ -192,13 +192,17 @@ class Sequence(LazyAttributeOverwrite, IterableMixin):
|
||||
def _get_generics(self):
|
||||
return (self.merge_types_of_iterate().py__class__(),)
|
||||
|
||||
@inference_state_method_cache(default=())
|
||||
def _cached_generics(self):
|
||||
return self._get_generics()
|
||||
|
||||
def _get_wrapped_value(self):
|
||||
from jedi.inference.gradual.base import GenericClass
|
||||
from jedi.inference.gradual.generics import TupleGenericManager
|
||||
klass = compiled.builtin_from_name(self.inference_state, self.array_type)
|
||||
c, = GenericClass(
|
||||
klass,
|
||||
TupleGenericManager(self._get_generics())
|
||||
TupleGenericManager(self._cached_generics())
|
||||
).execute_annotation()
|
||||
return c
|
||||
|
||||
|
||||
@@ -103,3 +103,15 @@ while True:
|
||||
bar = bar # type: bar
|
||||
#? int()
|
||||
bar
|
||||
|
||||
|
||||
class Comprehension:
|
||||
def __init__(self, foo):
|
||||
self.foo = foo
|
||||
|
||||
def update(self):
|
||||
self.foo = (self.foo,)
|
||||
|
||||
|
||||
#? int() tuple()
|
||||
Comprehension(1).foo[0]
|
||||
|
||||
Reference in New Issue
Block a user