File: D:/Python311/Lib/site-packages/google/protobuf/internal/__pycache__/wire_format.cpython-311.pyc
�
�nc� � �$ � d Z dZddlZddlmZ ddlmZ dZdez dz
ZdZdZ dZ
dZd Zd
Z
d
Z ed� � Z ed� � Zd
ZdZdZdZdZdZdZdZ ej e� � d k r ed� � � ej e� � dk r ed� � �d� Zd� Zd� Zd� Zd� Z d� Z!d� Z"d� Z#d � Z$d!� Z%d"� Z&d#� Z'd$� Z(d%� Z)d&� Z*d'� Z+d(� Z,d)� Z-d*� Z.d+� Z/d,� Z0d-� Z1d.� Z2d/� Z3d0� Z4d1� Z5ej6 j7 ej6 j8 ej6 j9 ej6 j: fZ;d2� Z<dS )3zFConstants and static functions to support protocol buffer wire format.z#robinson@google.com (Will Robinson)� N)�
descriptor)�message� � � � � i���i �l �� � ���� l���� � ���� z<Iz<Qz<fz<dz"Format "I" is not a 32-bit number.� z"Format "Q" is not a 64-bit number.c �r � d|cxk rt k sn t j d|z � � �| t z |z S )a Returns an unsigned 32-bit integer that encodes the field number and
wire type information in standard protocol message wire format.
Args:
field_number: Expected to be an integer in the range [1, 1 << 29)
wire_type: One of the WIRETYPE_* constants.
r zUnknown wire type: %d)�
_WIRETYPE_MAXr �EncodeError�
TAG_TYPE_BITS)�field_number� wire_types �FD:\Python311\Lib\site-packages\google/protobuf/internal/wire_format.py�PackTagr P sb � �
�i� C� C� C� C�=� C� C� C� C�
�
�5� �A�
B�
B�B�
�-�
'�9� 4�4� c �* � | t z | t z fS )zkThe inverse of PackTag(). Given an unsigned 32-bit number,
returns a (field_number, wire_type) tuple.
)r �
TAG_TYPE_MASK)�tags r � UnpackTagr ] s � � ��
�#�
�"5� 6�6r c �( � | dk r| dz S | dz dz S )z�ZigZag Transform: Encodes signed integers so that they can be
effectively used with varint encoding. See wire_format.h for
more details.
r r ���� ��values r �ZigZagEncoder d s) � �
�a�Z� ��A�:��
�1�*�� �r c �&