
    tKg                     r    d Z ddlZg dZej                  dk(  Zexr dxs dZexr dxs dZddd	d
dZd Zy)z Byteorder utilities for system - numpy byteorder encoding

Converts a variety of string codes for little endian, big endian,
native byte order and swapped byte order to explicit NumPy endian
codes - one of '<' (little endian) or '>' (big endian)

    N)aliasesnative_codeswapped_code	sys_is_leto_numpy_codelittle<>)r   r	   lle)bigr
   bbe)native=)swappedS)r   r   r   r   c                     | j                         } | t        S | t        d   v ry| t        d   v ry| t        d   v rt        S | t        d   v rt        S t	        d| z        )a  
    Convert various order codings to NumPy format.

    Parameters
    ----------
    code : str
        The code to convert. It is converted to lower case before parsing.
        Legal values are:
        'little', 'big', 'l', 'b', 'le', 'be', '<', '>', 'native', '=',
        'swapped', 's'.

    Returns
    -------
    out_code : {'<', '>'}
        Here '<' is the numpy dtype code for little endian,
        and '>' is the code for big endian.

    Examples
    --------
    >>> import sys
    >>> from scipy.io.matlab._byteordercodes import to_numpy_code
    >>> sys_is_le = (sys.byteorder == 'little')
    >>> sys_is_le
    True
    >>> to_numpy_code('big')
    '>'
    >>> to_numpy_code('little')
    '<'
    >>> nc = to_numpy_code('native')
    >>> nc == '<' if sys_is_le else nc == '>'
    True
    >>> sc = to_numpy_code('swapped')
    >>> sc == '>' if sys_is_le else sc == '<'
    True

    r   r	   r   r
   r   r   zWe cannot handle byte order %s)lowerr   r   r   
ValueError)codes    c/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/io/matlab/_byteordercodes.pyr   r      su    J ::<D|wx  			"	"	#	#,t35 	5    )	__doc__sys__all__	byteorderr   r   r   r   r    r   r   <module>r      s\    
 MMX%	C&3 S'C/)$&(25r   