HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/site-packages/google/protobuf/internal/__pycache__/extension_dict.cpython-311.pyc
�

�nc� ��D�dZddlmZddlmZd�ZGd�de��ZdS)z7Contains _ExtensionDict class to represent extensions.
�)�
type_checkers)�FieldDescriptorc	�L�t|t��std|z���|jstd|jz���|jstd|jz���|j|jur2td|j�d|jj�d|jj�d����dS)	z0Verify that the given extension handle is valid.z3HasExtension() expects an extension handle, got: %sz"%s" is not an extension.z""%s" is missing a containing_type.zExtension "z" extends message type "z ", but this message is of type "z".N)�
isinstancer�KeyError�is_extension�	full_name�containing_type�
DESCRIPTOR)�message�extension_handles  �ID:\Python311\Lib\site-packages\google/protobuf/internal/extension_dict.py�_VerifyExtensionHandler&s���
�$�o�	6�	6�%�
�H�#�$�%�%�%�
�	&�M�
�.�1A�1K�K�
L�
L�L�	�	)�1�
�7�%�/�0�1�1�1��%�W�-?�?�3�
�(�$�.�.�.�$�4�>�>�>��&�0�0�0�	2�3�3�3�3�3�c�Z�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�ZdS)�_ExtensionDictz�Dict-like container for Extension fields on proto instances.

  Note that in all cases we expect extension handles to be
  FieldDescriptors.
  c��||_dS)z^
    Args:
      extended_message: Message instance for which we are the Extensions dict.
    N)�_extended_message)�self�extended_messages  r�__init__z_ExtensionDict.__init__Gs��
.�D���rc��t|j|��|jj�|��}|�|S|jt
jkr|�|j��}n�|jt
j	kr�|j
}t|d��s|jj�
|��t|j
dd��s Jd|j�d|j
j�d����|j
���}	|�|jj��n#t&$rYnwxYw|jS|jj�||��}|S)z8Returns the current value of the given extension handle.N�_concrete_classz-Uninitialized concrete class found for field z (message type �))rr�_fields�get�labelr�LABEL_REPEATED�_default_constructor�cpp_type�CPPTYPE_MESSAGE�message_type�hasattr�_FACTORY�GetPrototype�getattrr	r�_SetListener�_listener_for_children�ReferenceError�
default_value�
setdefault)rr
�resultr"s    r�__getitem__z_ExtensionDict.__getitem__Ns����4�1�3C�D�D�D�
�
#�
+�
/�
/�0@�
A�
A�F�
��
�m����!?�?�,��4�4�T�5K�L�L�f�f�	�	"�o�&E�	E�,�%�2�l�
�\�#4�
5�
5�C���'�4�4�\�B�B�B�
�%�2�4E�t�
L�
L�7�7�7�
�
'�
'�
'�
�
*�
4�
4�
4�6�7�7�7� �,�<�<�>�>�f�
����D�2�I�J�J�J�J��
�
�
�
���
����
�
+�+��
#�
+�
6�
6��&�"�"�F��Ms�D$�$
D1�0D1c���t||j��sdS|j���}|j���}d�|D��}d�|D��}||kS)NFc� �g|]}|j�	|��S��r��.0�fields  r�
<listcomp>z)_ExtensionDict.__eq__.<locals>.<listcomp>s ��D�D�D�5��1C�D��D�D�Drc� �g|]}|j�	|��Sr0r1r2s  rr5z)_ExtensionDict.__eq__.<locals>.<listcomp>�s ��J�J�J�e�u�7I�J�E�J�J�Jr)r�	__class__r�
ListFields)r�other�	my_fields�other_fieldss    r�__eq__z_ExtensionDict.__eq__wsw���e�T�^�,�,��
�U��&�1�1�3�3�I��*�5�5�7�7�L�E�D�I�D�D�D�I�J�J�|�J�J�J�L���$�$rc��||kS�Nr0)rr9s  r�__ne__z_ExtensionDict.__ne__�s���u�}��rc�j�|j���}d�|D��}t|��S)Nc�,�g|]}|dj�|��S)rr1r2s  rr5z*_ExtensionDict.__len__.<locals>.<listcomp>�s$��K�K�K�%�U�1�X�5J�K��K�K�Kr)rr8�len)r�fields�extension_fieldss   r�__len__z_ExtensionDict.__len__�s9��
�
#�
.�
.�
0�
0�F�K�K�6�K�K�K���� � � rc� �td���)Nzunhashable object)�	TypeError�rs r�__hash__z_ExtensionDict.__hash__�s��
�'�
(�
(�(rc�P�t|j|��|jtjks|jtjkrtd|jz���tj
|��}|�|��|jj|<|j�
��dS)zlIf extension_handle specifies a non-repeated, scalar extension
    field, sets the value of that field.
    zKCannot assign to extension "%s" because it is a repeated or composite type.N)rrrrrr r!rGr	r�GetTypeChecker�
CheckValuer�	_Modified)rr
�value�type_checkers    r�__setitem__z_ExtensionDict.__setitem__�s���
�4�1�3C�D�D�D���/�"@�@�:��!�_�%D�D�:���.�8�9�
:�
:�:�!�/�0@�A�A�L�	����&�&�	��"�#3�4���$�$�&�&�&�&�&rc�:�|j�|��dSr>)r�ClearExtension)rr
s  r�__delitem__z_ExtensionDict.__delitem__�s ����)�)�*:�;�;�;�;�;rc�B�|jj�|d��S)z�Tries to find a known extension with the specified name.

    Args:
      name: Extension full name.

    Returns:
      Extension field descriptor.
    N)r�_extensions_by_namer)r�names  r�_FindExtensionByNamez#_ExtensionDict._FindExtensionByName�s ���!�5�9�9�$��E�E�Erc�B�|jj�|d��S)z�Tries to find a known extension with the field number.

    Args:
      number: Extension field number.

    Returns:
      Extension field descriptor.
    N)r�_extensions_by_numberr)r�numbers  r�_FindExtensionByNumberz%_ExtensionDict._FindExtensionByNumber�s ���!�7�;�;�F�D�I�I�Irc�H�d�|j���D��S)Nc3�@K�|]}|dj�|dV��dS)rNr1)r3�fs  r�	<genexpr>z*_ExtensionDict.__iter__.<locals>.<genexpr>�sE����"�"�Q���t� �"�A�a�D�"�"�"�"�"�"r)rr8rHs r�__iter__z_ExtensionDict.__iter__�s1��"�"�$�0�;�;�=�=�"�"�"�"rc�P�t|j|��||jjvrdS|jtjkr,t
|jj�|����S|jtj	kr*|jj�|��}|duo|j
SdS)NFT)rrrrrr�boolrr r!�_is_present_in_parent)rr
rNs   r�__contains__z_ExtensionDict.__contains__�s����4�1�3C�D�D�D��t�5�=�=��
�U����!?�?�H�
�$�(�0�4�4�5E�F�F�
G�
G�G�� �O�$C�C�?��$�,�0�0�1A�B�B�e�
�$�
�
>�5�#>�>��4rN)�__name__�
__module__�__qualname__�__doc__rr-r<r?rErIrPrSrWr[r`rdr0rrrr?s���������.�.�.�'�'�'�R%�%�%����!�!�!�)�)�)�'�'�'�*<�<�<�	F�	F�	F�	J�	J�	J�"�"�"�
����rrN)rh�google.protobuf.internalr�google.protobuf.descriptorrr�objectrr0rr�<module>rls���>��3�2�2�2�2�2�6�6�6�6�6�6�3�3�3�2V�V�V�V�V�V�V�V�V�V�Vr