Skip to content

Commit

Permalink
Improve builtins.vars() (#9146)
Browse files Browse the repository at this point in the history
  • Loading branch information
AlexWaygood authored Nov 10, 2022
1 parent 796bdc2 commit 068b0b4
Showing 1 changed file with 5 additions and 1 deletion.
6 changes: 5 additions & 1 deletion stdlib/builtins.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -1666,8 +1666,12 @@ else:
@overload
def sum(__iterable: Iterable[_AddableT1], __start: _AddableT2) -> _AddableT1 | _AddableT2: ...

# The argument to `vars()` has to have a `__dict__` attribute, so can't be annotated with `object`
# The argument to `vars()` has to have a `__dict__` attribute, so the second overload can't be annotated with `object`
# (A "SupportsDunderDict" protocol doesn't work)
# Use a type: ignore to make complaints about overlapping overloads go away
@overload
def vars(__object: type) -> types.MappingProxyType[str, Any]: ... # type: ignore[misc]
@overload
def vars(__object: Any = ...) -> dict[str, Any]: ...

class zip(Iterator[_T_co], Generic[_T_co]):
Expand Down

0 comments on commit 068b0b4

Please sign in to comment.