Your IP : 3.145.97.126


Current Path : /lib64/python2.7/ctypes/
Upload File :
Current File : //lib64/python2.7/ctypes/_endian.pyc

�
�mec@s�ddlZddlTee�Zd�Zdee�fd��YZejdkr{dZ	eZ
defd	��YZn@ejd
kr�dZ	eZdefd
��YZ
ned��dS(i����N(t*cCsft|t�rt|t�St|t�r?t|j�|jSt|t	�rR|St
d|��dS(s�Return the type with the 'other' byte order.  Simple types like
    c_int and so on already have __ctype_be__ and __ctype_le__
    attributes which contain the types, for more complicated types
    arrays and structures are supported.
    s+This type does not support other endian: %sN(thasattrt
_OTHER_ENDIANtgetattrt
isinstancet_array_typet
_other_endiant_type_t_length_t
issubclasst	Structuret	TypeError(ttyp((s&/usr/lib64/python2.7/ctypes/_endian.pyR	s
t
_swapped_metacBseZd�ZRS(cCs�|dkrgg}xI|D]A}|d}|d}|d}|j|t|�f|�qW|}ntt|�j||�dS(Nt_fields_iii(tappendRtsuperR
t__setattr__(tselftattrnametvaluetfieldstdesctnameRtrest((s&/usr/lib64/python2.7/ctypes/_endian.pyRs



!	(t__name__t
__module__R(((s&/usr/lib64/python2.7/ctypes/_endian.pyR
stlittlet__ctype_be__tBigEndianStructurecBseZdZeZdZRS(s$Structure with big endian byte orderN(RRt__doc__R
t
__metaclass__tNonet_swappedbytes_(((s&/usr/lib64/python2.7/ctypes/_endian.pyR1stbigt__ctype_le__tLittleEndianStructurecBseZdZeZdZRS(s'Structure with little endian byte orderN(RRRR
RR R!(((s&/usr/lib64/python2.7/ctypes/_endian.pyR$:ssInvalid byteorder(
tsystctypesttypetArrayRRR
R
t	byteorderRR$RtRuntimeError(((s&/usr/lib64/python2.7/ctypes/_endian.pyt<module>s