Add google.protobuf.internal.containers.pyi to typeshed (#1718)

This commit is contained in:
Nipunn Koorapati
2018-03-17 22:05:43 -07:00
committed by Jelle Zijlstra
parent c2c48424da
commit cac7264d3a
2 changed files with 51 additions and 0 deletions

View File

@@ -0,0 +1,46 @@
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
_T = TypeVar('_T')
class BaseContainer(Generic[_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: ...
def __repr__(self) -> str: ...
def sort(self, *, key: Optional[Callable[[_T], Any]] = ..., reverse: bool = ...) -> None: ...
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):
pass
class MutableMapping(Mapping):
pass
class ScalarMap(MutableMapping):
pass
class MessageMap(MutableMapping):
pass

View File

@@ -0,0 +1,5 @@
class MessageListener(object):
def Modified(self) -> None: ...
class NullMessageListener(MessageListener):
def Modified(self) -> None: ...