File tree Expand file tree Collapse file tree 1 file changed +16
-0
lines changed
Expand file tree Collapse file tree 1 file changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -1506,6 +1506,22 @@ class Outer(Generic[T]):
15061506 def g(self) -> None:
15071507 y: T # E: Invalid type "__main__.T"
15081508
1509+ [case testGenericClassInsideOtherGenericClass]
1510+ from typing import TypeVar, Generic
1511+ T = TypeVar("T")
1512+ K = TypeVar("K")
1513+
1514+ class C(Generic[T]):
1515+ def __init__(self, t: T) -> None: ...
1516+ class F(Generic[K]):
1517+ def __init__(self, k: K) -> None: ...
1518+ def foo(self) -> K: ...
1519+
1520+ reveal_type(C.F(17).foo()) # N: Revealed type is "builtins.int"
1521+ reveal_type(C("").F(17).foo()) # N: Revealed type is "builtins.int"
1522+ reveal_type(C.F) # N: Revealed type is "def [K] (k: K`1) -> __main__.C.F[K`1]"
1523+ reveal_type(C("").F) # N: Revealed type is "def [K] (k: K`1) -> __main__.C.F[K`1]"
1524+
15091525
15101526-- Callable subtyping with generic functions
15111527-- -----------------------------------------
You can’t perform that action at this time.
0 commit comments