ó SÉLjc@s'dZdZddlZddlmZddlmZdZde>dZdZdZ d Z dZ d Z d Z d Zed3ƒZed5ƒZd7Zd9Zd;Zd=ZdZdZdZdZejeƒd krâedƒ‚nejeƒdkredƒ‚nd„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.„Z3d/„Z4d0„Z5ej6j7ej6j8ej6j9ej6j:fZ;d1„Z<dS(>sFConstants and static functions to support protocol buffer wire format.s#robinson@google.com (Will Robinson)iÿÿÿÿN(t descriptor(tmessageiiiiiiii i?i@sd|kotkns2tjd|ƒ‚n|t>|BS(sReturns 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. isUnknown wire type: %d(t _WIRETYPE_MAXRt EncodeErrort TAG_TYPE_BITS(t field_numbert wire_type((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytPackTagPscCs|t?|t@fS(skThe inverse of PackTag(). Given an unsigned 32-bit number, returns a (field_number, wire_type) tuple. (Rt TAG_TYPE_MASK(ttag((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt UnpackTag]scCs |dkr|d>S|d>dAS(s‘ZigZag Transform: Encodes signed integers so that they can be effectively used with varint encoding. See wire_format.h for more details. iiiÿÿÿÿ((tvalue((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt ZigZagEncodeds cCs|d@s|d?S|d?dAS(sInverse of ZigZagEncode().iiiÿÿÿÿ((R ((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt ZigZagDecodens cCs t||ƒS(N(t Int64ByteSize(Rtint32((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt Int32ByteSizezscCstd|@ƒS(Nlÿÿÿÿ(t_VarUInt64ByteSizeNoTag(R((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytInt32ByteSizeNoTag~scCst|d|@ƒS(Nlÿÿÿÿ(tUInt64ByteSize(Rtint64((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyR‚scCs t||ƒS(N(R(Rtuint32((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytUInt32ByteSize‡scCst|ƒt|ƒS(N(t TagByteSizeR(Rtuint64((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyR‹scCst|t|ƒƒS(N(RR (RR((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytSInt32ByteSize�scCst|t|ƒƒS(N(RR (RR((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytSInt64ByteSize“scCst|ƒdS(Ni(R(Rtfixed32((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytFixed32ByteSize—scCst|ƒdS(Ni(R(Rtfixed64((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytFixed64ByteSize›scCst|ƒdS(Ni(R(Rtsfixed32((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytSFixed32ByteSizeŸscCst|ƒdS(Ni(R(Rtsfixed64((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytSFixed64ByteSize£scCst|ƒdS(Ni(R(Rtflt((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt FloatByteSize§scCst|ƒdS(Ni(R(Rtdouble((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytDoubleByteSize«scCst|ƒdS(Ni(R(Rtb((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt BoolByteSize¯scCs t||ƒS(N(R(Rtenum((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt EnumByteSize³scCst||jdƒƒS(Nsutf-8(t BytesByteSizetencode(Rtstring((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytStringByteSize·scCs$t|ƒtt|ƒƒt|ƒS(N(RRtlen(RR'((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyR+»scCsdt|ƒ|jƒS(Ni(RtByteSize(RR((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyt GroupByteSizeÁs cCs$t|ƒt|jƒƒ|jƒS(N(RRR0(RR((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytMessageByteSizeÆscCs^dtdƒtdƒtdƒ}|t|ƒ7}|jƒ}|t|ƒ7}||7}|S(Niii(RRR0(Rtmsgt total_sizet message_size((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytMessageSetItemByteSizeÌs $  cCstt|dƒƒS(sEReturns the bytes required to serialize a tag with this field number.i(RR(R((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyRàscCs¶|dkrdS|dkr dS|dkr0dS|dkr@dS|d krPd S|d kr`d S|d krpdS|dkr€dS|dkr�dS|tkr²tjd|ƒ‚ndS(s©Returns the number of bytes required to serialize a single varint using boundary value comparisons. (unrolled loop optimization -WPierce) uint64 must be unsigned. iiiÿ?iiÿÿiiÿÿÿilÿÿilÿÿÿilÿÿÿilÿÿÿÿilÿÿÿÿi sValue out of range: %di (t UINT64_MAXRR(R((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pyRès*          cCs |tkS(s·Return true iff packable = true is valid for fields of this type. Args: field_type: a FieldDescriptor::Type value. Returns: True iff fields of this type are packable. (tNON_PACKABLE_TYPES(t field_type((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytIsTypePackables llÿÿllýÿÿÿllÿÿllÿÿÿÿllûÿÿÿllÿÿÿÿ(=t__doc__t __author__tstructtgoogle.protobufRRRRtWIRETYPE_VARINTtWIRETYPE_FIXED64tWIRETYPE_LENGTH_DELIMITEDtWIRETYPE_START_GROUPtWIRETYPE_END_GROUPtWIRETYPE_FIXED32Rtintt INT32_MAXt INT32_MINt UINT32_MAXt INT64_MAXt INT64_MINR7tFORMAT_UINT32_LITTLE_ENDIANtFORMAT_UINT64_LITTLE_ENDIANtFORMAT_FLOAT_LITTLE_ENDIANtFORMAT_DOUBLE_LITTLE_ENDIANtcalcsizetAssertionErrorRR R R RRRRRRRRRR R"R$R&R(R*R.R+R1R2R6RRtFieldDescriptort TYPE_STRINGt TYPE_GROUPt TYPE_MESSAGEt TYPE_BYTESR8R:(((sH/usr/lib/python2.7/site-packages/google/protobuf/internal/wire_format.pytst