Viewing File: /opt/alt/python38/lib/python3.8/site-packages/chardet/__pycache__/escprober.cpython-38.pyc
U
<_9Yn @ sX d dl mZ d dlmZ d dlmZmZmZ d dlm Z m
Z
mZmZ G dd deZ
dS ) )
CharSetProber)CodingStateMachine)LanguageFilterProbingStateMachineState)HZ_SM_MODELISO2022CN_SM_MODELISO2022JP_SM_MODELISO2022KR_SM_MODELc sV e Zd ZdZd fdd Z fddZedd Zed d
Zdd Z d
d 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.
Nc s t t| j|d g | _| jtj@ rD| jtt | jtt
| jtj@ r`| jtt | jtj
@ r|| jtt d | _d | _d | _d | _| d S )N)lang_filter)superr __init__ coding_smr r ZCHINESE_SIMPLIFIEDappendr r r ZJAPANESEr ZKOREANr
active_sm_count_detected_charset_detected_language_statereset)selfr __class__ B/opt/alt/python38/lib/python3.8/site-packages/chardet/escprober.pyr * s zEscCharSetProber.__init__c sJ t t| | jD ]}|sqd|_| qt| j| _d | _d | _d S )NT) r
r r r activelenr r r )r r r r r r : s
zEscCharSetProber.resetc C s | j S Nr r r r r charset_nameE s zEscCharSetProber.charset_namec C s | j S r )r r r r r languageI s zEscCharSetProber.languagec C s | j r
dS dS d S )NgGz?g r r r r r get_confidenceM s zEscCharSetProber.get_confidencec C s |D ]}| j D ]}|r|jsq||}|tjkrhd|_| jd8 _| jdkrtj| _| j S q|tj
krtj| _| | _
|j| _| j S qq| j S )NFr )r r Z
next_stater ZERRORr r ZNOT_MEr stateZITS_MEZFOUND_ITZget_coding_state_machiner r! r )r Zbyte_strcr Zcoding_stater r r feedS s"