ruạṛ
a K��f� � @ sz d Z dZddlZddlZddlmZ dZe�� dkrTddlZddl Z ddl mZ dZG d d � d e�Z G dd� de �Zer�G d d� de�ZneZG dd� de�Ze�� ZG dd� de�e��ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd� de�ZG dd � d e�ZG d!d"� d"e�ZG d#d$� d$e�Zd%d&� Z d'd(� Z!d)d*� Z"d+d,� Z#d0d.d/�Z$dS )1z�Descriptors essentially contain exactly the information found in a .proto file, in types that make this information accessible in Python. z#robinson@google.com (Will Robinson)� N)�api_implementationF�cpp)�_messageTc @ s e Zd ZdZdS )�ErrorzBase error for this module.N��__name__� __module__�__qualname__�__doc__� r r �~/sparta/input/_build_configuration/image_build+validate/lib/bmcenv/lib64/python3.9/site-packages/google/protobuf/descriptor.pyr 3 s r c @ s e Zd ZdZdS )�TypeTransformationErrorzHError transforming between python proto type and corresponding C++ type.Nr r r r r r 7 s r c s e Zd Z� fdd�Z� ZS )�DescriptorMetaclassc s( t t| ��|�rdS t|| j�r$dS dS )NTF)�superr �__instancecheck__� isinstance�_C_DESCRIPTOR_CLASS)�cls�obj�� __class__r r r A s z%DescriptorMetaclass.__instancecheck__)r r r r � __classcell__r r r r r @ s r c @ s( e Zd ZdZdd� Zdd� Zdd� ZdS ) �_Lockz>Wrapper class of threading.Lock(), which is allowed by 'with'.c C s t �| �}t�� |_|S �N)�object�__new__� threading�Lock�_lock)r �selfr r r r O s z _Lock.__new__c C s | j �� d S r )r �acquire�r r r r � __enter__T s z_Lock.__enter__c C s | j �� d S r )r �release)r �exc_type� exc_value�exc_tbr r r �__exit__W s z_Lock.__exit__N)r r r r r r"