mirror of
https://github.com/davidhalter/typeshed.git
synced 2025-12-23 20:31:32 +08:00
Make protobuf's BaseContainer a MutableSequence (#1981)
This commit is contained in:
committed by
Jelle Zijlstra
parent
097e9f5e71
commit
eb571e9cbb
@@ -1,12 +1,14 @@
|
||||
from google.protobuf.descriptor import Descriptor
|
||||
from google.protobuf.internal.message_listener import MessageListener
|
||||
from google.protobuf.message import Message
|
||||
from typing import Sequence, TypeVar, Generic, Any, Iterator, Iterable, Union, Optional, Callable
|
||||
from typing import (
|
||||
MutableSequence, Sequence, TypeVar, Generic, Any, Iterator, Iterable,
|
||||
Union, Optional, Callable
|
||||
)
|
||||
|
||||
_T = TypeVar('_T')
|
||||
class BaseContainer(Generic[_T]):
|
||||
class BaseContainer(Generic[_T], MutableSequence[_T]):
|
||||
def __init__(self, message_listener: MessageListener) -> None: ...
|
||||
def __getitem__(self, key: int) -> _T: ...
|
||||
def __len__(self) -> int: ...
|
||||
def __ne__(self, other: object) -> bool: ...
|
||||
def __hash__(self) -> int: ...
|
||||
@@ -15,25 +17,12 @@ class BaseContainer(Generic[_T]):
|
||||
|
||||
class RepeatedScalarFieldContainer(Generic[_T], BaseContainer[_T]):
|
||||
def __init__(self, message_listener: MessageListener, message_descriptor: Descriptor) -> None: ...
|
||||
def append(self, value: _T) -> None: ...
|
||||
def insert(self, key: int, value: _T) -> None: ...
|
||||
def extend(self, elem_seq: Sequence[_T]) -> None: ...
|
||||
def MergeFrom(self, other: RepeatedScalarFieldContainer[_T]) -> None: ...
|
||||
def remove(self, elem: _T) -> None: ...
|
||||
def pop(self, key: int = ...) -> _T: ...
|
||||
def __iter__(self) -> Iterator[_T]: ...
|
||||
def __delitem__(self, key: Union[int, slice]) -> None: ...
|
||||
def __setitem__(self, key: int, value: _T) -> None: ...
|
||||
|
||||
class RepeatedCompositeFieldContainer(Generic[_T], BaseContainer[_T]):
|
||||
def __init__(self, message_listener: MessageListener, type_checker: Any) -> None: ...
|
||||
def add(self, **kwargs: Any) -> _T: ...
|
||||
def extend(self, elem_seq: Sequence[_T]) -> None: ...
|
||||
def MergeFrom(self, other: RepeatedCompositeFieldContainer[_T]) -> None: ...
|
||||
def remove(self, elem: _T) -> None: ...
|
||||
def pop(self, key: int = ...) -> _T: ...
|
||||
def __iter__(self) -> Iterator[_T]: ...
|
||||
def __delitem__(self, key: Union[int, slice]) -> None: ...
|
||||
|
||||
# Classes not yet typed
|
||||
class Mapping(Any):
|
||||
|
||||
Reference in New Issue
Block a user