U Xzf_Ãã@s>dZdZddlmZddlmZejZiZdd„Zdd„Z d S) a Contains a metaclass and helper functions used to create protocol message classes from Descriptor objects at runtime. Recall that a metaclass is the "type" of a class. (A class is to a metaclass what an instance is to a class.) In this case, we use the GeneratedProtocolMessageType metaclass to inject all the useful functionality into the classes output by the protocol compiler at compile-time. The upshot of all this is that the real implementation details for ALL pure-Python protocol buffers are *here in this file*. z#robinson@google.com (Will Robinson)é)Úmessage_factory)Úsymbol_databasecCst|ƒ}|ƒ}| |¡|S)aiGenerate a new Message instance from this Descriptor and a byte string. DEPRECATED: ParseMessage is deprecated because it is using MakeClass(). Please use MessageFactory.GetPrototype() instead. Args: descriptor: Protobuf Descriptor object byte_str: Serialized protocol buffer byte string Returns: Newly created protobuf Message object. )Ú MakeClassZParseFromString)Ú descriptorÚbyte_strZ result_classZnew_msg©rúr/private/var/folders/n9/53xbvtmd7sjg1q1l55xmpg58n4mgng/T/pip-unpacked-wheel-3cr5c46n/google/protobuf/reflection.pyÚ ParseMessage>s  r cCst ¡ |¡S)aConstruct a class object for a protobuf described by descriptor. DEPRECATED: use MessageFactory.GetPrototype() instead. Args: descriptor: A descriptor.Descriptor object describing the protobuf. Returns: The Message class object described by the descriptor. )rZDefaultZ GetPrototype)rrrrrRs rN) Ú__doc__Ú __author__Zgoogle.protobufrrZ _GENERATED_PROTOCOL_MESSAGE_TYPEZGeneratedProtocolMessageTypeZMESSAGE_CLASS_CACHEr rrrrrÚ!s