@@ -5,6 +5,7 @@ from typing_extensions import SupportsIndex
55from google .protobuf .descriptor import Descriptor
66from google .protobuf .internal .message_listener import MessageListener
77from google .protobuf .internal .python_message import GeneratedProtocolMessageType
8+ from google .protobuf .internal .type_checkers import TypeChecker
89from google .protobuf .message import Message
910
1011_T = TypeVar ("_T" )
@@ -25,7 +26,7 @@ class BaseContainer(Sequence[_T]):
2526 def __getitem__ (self , key : slice ) -> list [_T ]: ...
2627
2728class RepeatedScalarFieldContainer (BaseContainer [_ScalarV ]):
28- def __init__ (self , message_listener : MessageListener , message_descriptor : Descriptor ) -> None : ...
29+ def __init__ (self , message_listener : MessageListener , type_checker : TypeChecker ) -> None : ...
2930 def append (self , value : _ScalarV ) -> None : ...
3031 def insert (self , key : int , value : _ScalarV ) -> None : ...
3132 def extend (self , elem_seq : Optional [Iterable [_ScalarV ]]) -> None : ...
@@ -43,7 +44,7 @@ class RepeatedScalarFieldContainer(BaseContainer[_ScalarV]):
4344 def __eq__ (self , other : object ) -> bool : ...
4445
4546class RepeatedCompositeFieldContainer (BaseContainer [_MessageV ]):
46- def __init__ (self , message_listener : MessageListener , type_checker : Any ) -> None : ...
47+ def __init__ (self , message_listener : MessageListener , message_descriptor : Descriptor ) -> None : ...
4748 def add (self , ** kwargs : Any ) -> _MessageV : ...
4849 def append (self , value : _MessageV ) -> None : ...
4950 def insert (self , key : int , value : _MessageV ) -> None : ...
@@ -57,23 +58,45 @@ class RepeatedCompositeFieldContainer(BaseContainer[_MessageV]):
5758 def __eq__ (self , other : object ) -> bool : ...
5859
5960class ScalarMap (MutableMapping [_K , _ScalarV ]):
61+ def __init__ (
62+ self ,
63+ message_listener : MessageListener ,
64+ key_checker : TypeChecker ,
65+ value_checker : TypeChecker ,
66+ entry_descriptor : Descriptor ,
67+ ) -> None : ...
6068 def __setitem__ (self , k : _K , v : _ScalarV ) -> None : ...
6169 def __delitem__ (self , v : _K ) -> None : ...
6270 def __getitem__ (self , k : _K ) -> _ScalarV : ...
6371 def __len__ (self ) -> int : ...
6472 def __iter__ (self ) -> Iterator [_K ]: ...
6573 def __eq__ (self , other : object ) -> bool : ...
74+ @overload
75+ def get (self , key : _K , default : None = ...) -> _ScalarV : ...
76+ @overload
77+ def get (self , key : _K , default : Union [_ScalarV , _T ]) -> Union [_ScalarV , _T ]: ...
6678 def MergeFrom (self : _M , other : _M ): ...
6779 def InvalidateIterators (self ) -> None : ...
6880 def GetEntryClass (self ) -> GeneratedProtocolMessageType : ...
6981
7082class MessageMap (MutableMapping [_K , _MessageV ]):
83+ def __init__ (
84+ self ,
85+ message_listener : MessageListener ,
86+ message_descriptor : Descriptor ,
87+ key_checker : TypeChecker ,
88+ entry_descriptor : Descriptor ,
89+ ) -> None : ...
7190 def __setitem__ (self , k : _K , v : _MessageV ) -> None : ...
7291 def __delitem__ (self , v : _K ) -> None : ...
7392 def __getitem__ (self , k : _K ) -> _MessageV : ...
7493 def __len__ (self ) -> int : ...
7594 def __iter__ (self ) -> Iterator [_K ]: ...
7695 def __eq__ (self , other : object ) -> bool : ...
96+ @overload
97+ def get (self , key : _K , default : None = ...) -> _MessageV : ...
98+ @overload
99+ def get (self , key : _K , default : Union [_MessageV , _T ]) -> Union [_MessageV , _T ]: ...
77100 def get_or_create (self , key : _K ) -> _MessageV : ...
78101 def MergeFrom (self : _M , other : _M ): ...
79102 def InvalidateIterators (self ) -> None : ...
0 commit comments