Skip to content

[stubgen] Nested classes in NamedTuples are not produced #15752

Open
@sobolevn

Description

@sobolevn

Consider this code:

from typing import NamedTuple

class A(NamedTuple):
    class B: ...

In runtime you can freely access it:

>>> from typing import NamedTuple
>>> 
>>> class A(NamedTuple):
...     class B: ...
... 
>>> A.B
<class '__main__.A.B'>

But, stubgen does ignore it:

» stubgen ex.py && bat out/ex.pyi
Processed 1 modules
Generated out/ex.pyi
───────┬───────────────────────────────────────────────────────────────────────────────────
       │ File: out/ex.pyi
───────┼───────────────────────────────────────────────────────────────────────────────────
   1from typing import NamedTuple
   23class A(NamedTuple): ...
───────┴───────────────────────────────────────────────────────────────────────────────────

This needs to be fixed.

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions