HEX
Server: Apache
System: Linux sg2plmcpnl492417.prod.sin2.secureserver.net 4.18.0-553.58.1.lve.el8.x86_64 #1 SMP Fri Jul 4 12:07:06 UTC 2025 x86_64
User: nyiet8349bzl (9207396)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/python38/lib/python3.8/site-packages/pip/_vendor/chardet/__pycache__/escprober.cpython-38.pyc
U

��e��@shddlmZmZddlmZddlmZddlmZm	Z	m
Z
ddlmZm
Z
mZmZGdd�de�Zd	S)
�)�Optional�Union�)�
CharSetProber)�CodingStateMachine)�LanguageFilter�MachineState�ProbingState)�HZ_SM_MODEL�ISO2022CN_SM_MODEL�ISO2022JP_SM_MODEL�ISO2022KR_SM_MODELcs�eZdZdZejfedd��fdd�
Zdd��fdd�Zee	e
d�d	d
��Zee	e
d�dd��Ze
d�d
d�Zeeefed�dd�Z�ZS)�EscCharSetProberz�
    This CharSetProber uses a "code scheme" approach for detecting encodings,
    whereby easily recognizable escape or shift sequences are relied on to
    identify these encodings.
    N)�lang_filter�returncs�t�j|d�g|_|jtj@r@|j�tt��|j�tt	��|jtj
@r\|j�tt��|jtj@rx|j�tt
��d|_d|_d|_tj|_|��dS)N)rr)�super�__init__�	coding_smrr�CHINESE_SIMPLIFIED�appendrr
r�JAPANESEr�KOREANr
�active_sm_count�_detected_charset�_detected_languager	�	DETECTING�_state�reset)�selfr��	__class__��A/tmp/pip-unpacked-wheel-uzdrexel/pip/_vendor/chardet/escprober.pyr0szEscCharSetProber.__init__)rcs@t���|jD]}d|_|��qt|j�|_d|_d|_dS)NT)rrr�active�lenrrr)rrrr!r"r@s


zEscCharSetProber.resetcCs|jS�N�r�rr!r!r"�charset_nameIszEscCharSetProber.charset_namecCs|jSr%)rr'r!r!r"�languageMszEscCharSetProber.languagecCs|jr
dSdS)Ng�G�z��?gr&r'r!r!r"�get_confidenceQszEscCharSetProber.get_confidence)�byte_strrcCs�|D]�}|jD]�}|jsq|�|�}|tjkrdd|_|jd8_|jdkr�tj|_|j	Sq|tj
krtj|_|��|_
|j|_|j	Sqq|j	S)NFrr)rr#�
next_stater�ERRORrr	�NOT_MEr�state�ITS_ME�FOUND_IT�get_coding_state_machinerr)r)rr+�cr�coding_stater!r!r"�feedTs"





zEscCharSetProber.feed)�__name__�
__module__�__qualname__�__doc__r�NONErr�propertyr�strr(r)�floatr*r�bytes�	bytearrayr	r5�
__classcell__r!r!rr"r)s	rN)�typingrr�
charsetproberr�codingstatemachiner�enumsrrr	�escsmr
rrr
rr!r!r!r"�<module>s