From 41f2c92dfe88a9758968814a06cf851c70ae917a Mon Sep 17 00:00:00 2001 From: Kaushal Rohit Date: Sat, 24 Oct 2020 02:21:42 +0530 Subject: [PATCH] Fixed stubs for protobuf symbol_database and message (#4673) --- .../2and3/google/protobuf/message_factory.pyi | 11 +++++----- .../2and3/google/protobuf/symbol_database.pyi | 20 ++++++++++--------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/third_party/2and3/google/protobuf/message_factory.pyi b/third_party/2and3/google/protobuf/message_factory.pyi index e2a549339..d8a42d30b 100644 --- a/third_party/2and3/google/protobuf/message_factory.pyi +++ b/third_party/2and3/google/protobuf/message_factory.pyi @@ -1,13 +1,14 @@ from typing import Any, Dict, Iterable, Optional, Type -from .descriptor import Descriptor -from .descriptor_pool import DescriptorPool -from .message import Message +from google.protobuf.descriptor import Descriptor +from google.protobuf.descriptor_pb2 import FileDescriptorProto +from google.protobuf.descriptor_pool import DescriptorPool +from google.protobuf.message import Message class MessageFactory: pool: Any def __init__(self, pool: Optional[DescriptorPool] = ...) -> None: ... def GetPrototype(self, descriptor: Descriptor) -> Type[Message]: ... - def GetMessages(self, files: Iterable[bytes]) -> Dict[bytes, Type[Message]]: ... + def GetMessages(self, files: Iterable[str]) -> Dict[str, Type[Message]]: ... -def GetMessages(file_protos: Iterable[bytes]) -> Dict[bytes, Type[Message]]: ... +def GetMessages(file_protos: Iterable[FileDescriptorProto]) -> Dict[str, Type[Message]]: ... diff --git a/third_party/2and3/google/protobuf/symbol_database.pyi b/third_party/2and3/google/protobuf/symbol_database.pyi index 477d80e9f..09e32e9de 100644 --- a/third_party/2and3/google/protobuf/symbol_database.pyi +++ b/third_party/2and3/google/protobuf/symbol_database.pyi @@ -1,14 +1,16 @@ -from typing import Dict, Iterable, Type +from typing import Dict, Iterable, Type, Union -from .descriptor import EnumDescriptor, FileDescriptor -from .message import Message -from .message_factory import MessageFactory +from google.protobuf.descriptor import Descriptor, EnumDescriptor, FileDescriptor, ServiceDescriptor +from google.protobuf.message import Message +from google.protobuf.message_factory import MessageFactory class SymbolDatabase(MessageFactory): - def RegisterMessage(self, message: Type[Message]) -> Type[Message]: ... - def RegisterEnumDescriptor(self, enum_descriptor: Type[EnumDescriptor]) -> EnumDescriptor: ... - def RegisterFileDescriptor(self, file_descriptor: Type[FileDescriptor]) -> FileDescriptor: ... - def GetSymbol(self, symbol: bytes) -> Type[Message]: ... - def GetMessages(self, files: Iterable[bytes]) -> Dict[bytes, Type[Message]]: ... + def RegisterMessage(self, message: Union[Type[Message], Message]) -> Union[Type[Message], Message]: ... + def RegisterMessageDescriptor(self, message_descriptor: Descriptor) -> None: ... + def RegisterEnumDescriptor(self, enum_descriptor: EnumDescriptor) -> EnumDescriptor: ... + def RegisterServiceDescriptor(self, service_descriptor: ServiceDescriptor) -> None: ... + def RegisterFileDescriptor(self, file_descriptor: FileDescriptor) -> None: ... + def GetSymbol(self, symbol: str) -> Type[Message]: ... + def GetMessages(self, files: Iterable[str]) -> Dict[str, Type[Message]]: ... def Default(): ...