
    Ej?                         d Z dZddlmZ ddlmZ ddlmZ ddlmZ	 ddlm
Z  ej                    Zd Zd	 Zd
 Zd Zd Zd ZdS )zBuilds descriptors, message classes and services for generated _pb2.py.

This file is only called in python generated _pb2.py files. It builds
descriptors, message classes and services that users can directly use
in generated code.
zjieluo@google.com (Jie Luo)    )enum_type_wrapper)python_message)message)
reflection)symbol_databasec                     |j                                         D ]5\  }}||                                z   }|| |<   t          | ||dz              6|j        D ]!}|| ||j                                        z   <   "d S )N_)nested_types_by_nameitemsupper_BuildNestedDescriptors
enum_typesname)modulemsg_desprefixr   
nested_msgmodule_nameenum_dess          \/var/www/html/bolsaweb/venv/lib/python3.11/site-packages/google/protobuf/internal/builder.pyr   r      s    !6<<>> C CdJ4::<<'K$F;FJc0ABBBB$ 6 6h-5F6HM'')))**6 6    c                     | j                                         D ]5\  }}d|                                z   }|||<   t          |||dz              6dS )zBuilds message and enum descriptors.

  Args:
    file_des: FileDescriptor of the .proto file
    module: Generated _pb2 module
  r	   N)message_types_by_namer   r   r   )file_desr   r   r   r   s        r   BuildMessageAndEnumDescriptorsr   #   sj     "7==?? @ @otW

$K!F;FG[3->????@ @r   c                 4   i }|j                                         D ]$\  }}t          | |||j        z   dz             ||<   %||d<   | |d<   ||j        z   |d<   t	          j        |j        t          j        f|          }t          	                    |           |S )N.
DESCRIPTOR
__module____qualname__)
r
   r   _BuildMessager   _reflectionGeneratedProtocolMessageType_messageMessage_sym_dbRegisterMessage)r   r   r   create_dictr   r   message_classs          r   r!   r!   0   s    +!6<<>>  dJ%Z',!6!< K &+l)+l & 5+n:lX%' - 
-(((	r   c                 6   | j                                         D ]O\  }}||d|                                z   <   t          j        |          ||<   |j        D ]}|j        ||j        <   P| j                                        D ])\  }}|j        ||                                dz   <   |||<   *| j	                                        D ]\  }}||d|                                z   <    | j
                                        D ]\  }}t          ||d          ||<   dS )zBuilds top level descriptors and message classes.

  Args:
    file_des: FileDescriptor of the .proto file
    module_name: str, the name of generated _pb2 module
    module: Generated _pb2 module
  r	   _FIELD_NUMBER N)enum_types_by_namer   r   r   EnumTypeWrappervaluesnumberr   extensions_by_nameservices_by_namer   r!   )	r   r   r   r   r   
enum_valueextension_desservicer   s	            r   BuildTopDescriptorsAndMessagesr6   @   sG    #5;;== 2 2tX!)F3$4X>>F4Lo 2 2
 * 1fZ_2  (:@@BB ! !t]-:-AF4::<</)* F4LL "288:: ) )otW!(F3 "7==?? ; ;otW gr::F4LL; ;r   c                     dS )zsno-op to keep old generated code work with new runtime.

  Args:
    file_des: FileDescriptor of the .proto file
  N )r   s    r   AddHelpersToExtensionsr9   ^   s	     	&r   c           	         ddl m} | j                                        D ]c\  }}|                    |dt          ||                    ||<   |dz   }|                    |||         ft          ||                    ||<   ddS )zBuilds services classes and services stub class.

  Args:
    file_des: FileDescriptor of the .proto file
    module_name: str, the name of generated _pb2 module
    module: Generated _pb2 module
  r   )service_reflectionr8   )r   r   _StubN)google.protobufr;   r2   r   GeneratedServiceTypedictGeneratedServiceStubType)r   r   r   r;   r   r5   	stub_names          r   BuildServicesrB   h   s     100000!288:: : :otW%::bK888: :F4L wI*CCF4L?K888: :F9: :r   N)__doc__
__author__google.protobuf.internalr   r   r=   r   r$   r   r"   r   _symbol_databaseDefaultr&   r   r   r!   r6   r9   rB   r8   r   r   <module>rH      s     +
 6 6 6 6 6 6 3 3 3 3 3 3 / / / / / / 5 5 5 5 5 5 ? ? ? ? ? ?
"

"
$
$6 6 6
@ 
@ 
@   ; ; ;<	 	 	: : : : :r   