a
    còfM  ã                   @   sF   d Z dZddlZddlmZ ddlmZ ejZi Zdd„ Z	dd	„ 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)é    N)Úmessage_factory)Úsymbol_databasec                 C   s*   t jddd� t| ƒ}|ƒ }| |¡ |S )al  Generate a new Message instance from this Descriptor and a byte string.

  DEPRECATED: ParseMessage is deprecated because it is using MakeClass().
  Please use MessageFactory.GetMessageClass() instead.

  Args:
    descriptor: Protobuf Descriptor object
    byte_str: Serialized protocol buffer byte string

  Returns:
    Newly created protobuf Message object.
  z²reflection.ParseMessage() is deprecated. Please use MessageFactory.GetMessageClass() and message.ParseFromString() instead. reflection.ParseMessage() will be removed in Jan 2025.é   ©Ú
stacklevel)ÚwarningsÚwarnÚ	MakeClassZParseFromString)Ú
descriptorÚbyte_strZresult_classZnew_msg© r   úW/home/httpd/docs/test/DocsMgr/lib/python3.9/site-packages/google/protobuf/reflection.pyÚParseMessage(   s    ü
r   c                 C   s   t jddd� t | ¡S )a  Construct a class object for a protobuf described by descriptor.

  DEPRECATED: use MessageFactory.GetMessageClass() instead.

  Args:
    descriptor: A descriptor.Descriptor object describing the protobuf.
  Returns:
    The Message class object described by the descriptor.
  zŽreflection.MakeClass() is deprecated. Please use MessageFactory.GetMessageClass() instead. reflection.MakeClass() will be removed in Jan 2025.r   r   )r   r   r   ZGetMessageClass)r
   r   r   r   r	   B   s
    
ü	r	   )Ú__doc__Ú
__author__r   Zgoogle.protobufr   r   Z _GENERATED_PROTOCOL_MESSAGE_TYPEZGeneratedProtocolMessageTypeZMESSAGE_CLASS_CACHEr   r	   r   r   r   r   Ú<module>
   s   