o
    {j6h7  ã                   @   s^   d Z ddlmZ ejdurejjZdS ddlmZ ddlmZ G dd„ dƒZG dd	„ d	ƒZdS )
a  Contains Unknown Fields APIs.

Simple usage example:
  unknown_field_set = UnknownFieldSet(message)
  for unknown_field in unknown_field_set:
    wire_type = unknown_field.wire_type
    field_number = unknown_field.field_number
    data = unknown_field.data
é    )Úapi_implementationN)Údecoder)Úwire_formatc                   @   sD   e Zd ZdZg d¢Zdd„ Zedd„ ƒZedd„ ƒZed	d
„ ƒZ	dS )ÚUnknownFieldzA parsed unknown field.©Ú_field_numberÚ
_wire_typeÚ_datac                 C   s   || _ || _|| _d S ©Nr   )ÚselfÚfield_numberÚ	wire_typeÚdata© r   úm/var/www/html/chefvision.cloud.itp360.com/venv/lib/python3.10/site-packages/google/protobuf/unknown_fields.pyÚ__init__!   s   zUnknownField.__init__c                 C   ó   | j S r
   )r   ©r   r   r   r   r   '   ó   zUnknownField.field_numberc                 C   r   r
   )r   r   r   r   r   r   +   r   zUnknownField.wire_typec                 C   r   r
   )r	   r   r   r   r   r   /   r   zUnknownField.dataN)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r   Úpropertyr   r   r   r   r   r   r   r      s    

r   c                   @   s6   e Zd ZdZdgZdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚUnknownFieldSetzUnknownField container.Ú_valuesc                    sÈ   ‡ fdd„}g ˆ _ |j}|j}|jr3| ¡ jr3t ¡ }|D ]\}}|t|ƒƒ\}}	||t	j
|	ƒ qd S |D ],\}
}t |
d¡\}}t	 |¡\}}|dkrPtdƒ‚t t|ƒd|¡\}	}||||	ƒ q5d S )Nc                    s   t | ||ƒ}ˆ j |¡ d S r
   )r   r   Úappend)r   r   r   Úunknown_fieldr   r   r   ÚInternalAdd;   s   z-UnknownFieldSet.__init__.<locals>.InternalAddr   zField number 0 is illegal.)r   Ú
DESCRIPTORÚ_unknown_fieldsÚhas_optionsÚ
GetOptionsÚmessage_set_wire_formatr   ÚUnknownMessageSetItemDecoderÚ
memoryviewr   ÚWIRETYPE_LENGTH_DELIMITEDÚ_DecodeVarintÚ	UnpackTagÚRuntimeErrorÚ_DecodeUnknownField)r   Úmsgr   Úmsg_desÚunknown_fieldsÚlocal_decoderÚ_Úbufferr   r   Ú	tag_bytesÚtagr   r   r   r   r   9   s,   ÿþ
ÿøzUnknownFieldSet.__init__c                 C   s>   t | jƒ}|dk r||7 }|dk s||krtdjƒ‚| j| S )Nr   zindex %d out of range)Úlenr   Ú
IndexErrorÚindex)r   r6   Úsizer   r   r   Ú__getitem__T   s   


zUnknownFieldSet.__getitem__c                 C   ó
   t | jƒS r
   )r4   r   r   r   r   r   Ú__len__]   ó   
zUnknownFieldSet.__len__c                 C   r9   r
   )Úiterr   r   r   r   r   Ú__iter__`   r;   zUnknownFieldSet.__iter__N)	r   r   r   r   r   r   r8   r:   r=   r   r   r   r   r   3   s    	r   )r   Úgoogle.protobuf.internalr   Ú	_c_moduler   r   r   r   r   r   r   r   Ú<module>   s   
