File: //usr/lib/python3/dist-packages/chardet/__pycache__/__init__.cpython-38.pyc
U
�n�_� � @ sJ d dl mZ d dlmZ d dlmZmZ dddddgZd d� Zd
d� Z dS )� )�UniversalDetector)�
InputState)�__version__�VERSIONr �detect�
detect_allr r c C sH t | t�s0t | t�s(td�t| ����nt| �} t� }|�| � |�� S )z�
Detect the encoding of the given byte string.
:param byte_str: The byte sequence to examine.
:type byte_str: ``bytes`` or ``bytearray``
�3Expected object of type bytes or bytearray, got: {}) �
isinstance� bytearray�bytes� TypeError�format�typer �feed�close)�byte_str�detector� r �2/usr/lib/python3/dist-packages/chardet/__init__.pyr s
�
c C s� t | t�s0t | t�s(td�t| ����nt| �} t� }|�| � |�� |j t
jkr�g }|jD ]X}|�
� |jkr^|j}|j�� }|�d�r�|jr�|j�||�}|�||�
� |jd�� q^t|�dkr�t|dd� d�S |jgS )z�
Detect all the possible encodings of the given byte string.
:param byte_str: The byte sequence to examine.
:type byte_str: ``bytes`` or ``bytearray``
r ziso-8859)�encoding�
confidence�language� c S s
| d S )Nr r )�resultr r r �<lambda>Q � zdetect_all.<locals>.<lambda>)�key)r r
r r r
r r r r Z_input_stater Z HIGH_BYTEZ_charset_probersZget_confidenceZMINIMUM_THRESHOLD�charset_name�lower�
startswithZ_has_win_bytesZISO_WIN_MAP�get�appendr �len�sortedr )r r ZresultsZproberr Zlower_charset_namer r r r - s8
�
��
N)
Zuniversaldetectorr Zenumsr �versionr r �__all__r r r r r r �<module> s