Skip to content

Commit

Permalink
Use _typeshed.Self in protobuf/google/protobuf/message.pyi (#6955)
Browse files Browse the repository at this point in the history
  • Loading branch information
AlexWaygood committed Jan 18, 2022
1 parent cd93461 commit 90d92aa
Showing 1 changed file with 6 additions and 3 deletions.
9 changes: 6 additions & 3 deletions stubs/protobuf/google/protobuf/message.pyi
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from _typeshed import Self
from typing import Any, Sequence, TypeVar

from .descriptor import Descriptor, FieldDescriptor
Expand All @@ -14,8 +15,8 @@ class Message:
def __deepcopy__(self, memo=...): ...
def __eq__(self, other_msg): ...
def __ne__(self, other_msg): ...
def MergeFrom(self: _M, other_msg: _M) -> None: ...
def CopyFrom(self: _M, other_msg: _M) -> None: ...
def MergeFrom(self: Self, other_msg: Self) -> None: ...
def CopyFrom(self: Self, other_msg: Self) -> None: ...
def Clear(self) -> None: ...
def SetInParent(self) -> None: ...
def IsInitialized(self) -> bool: ...
Expand All @@ -24,11 +25,13 @@ class Message:
def SerializeToString(self, deterministic: bool = ...) -> bytes: ...
def SerializePartialToString(self, deterministic: bool = ...) -> bytes: ...
def ListFields(self) -> Sequence[tuple[FieldDescriptor, Any]]: ...
# The TypeVar must be bound to `Message` or we get mypy errors, so we cannot use `Self` for `HasExtension` & `ClearExtension`
def HasExtension(self: _M, extension_handle: _ExtensionFieldDescriptor[_M, Any]) -> bool: ...
def ClearExtension(self: _M, extension_handle: _ExtensionFieldDescriptor[_M, Any]) -> None: ...
def ByteSize(self) -> int: ...
@classmethod
def FromString(cls: type[_M], s: bytes) -> _M: ...
def FromString(cls: type[Self], s: bytes) -> Self: ...
# The TypeVar must be bound to `Message` or we get mypy errors, so we cannot use `Self` for `Extensions`
@property
def Extensions(self: _M) -> _ExtensionDict[_M]: ...
# Intentionally left out typing on these three methods, because they are
Expand Down

0 comments on commit 90d92aa

Please sign in to comment.