zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
U
L±dƒã@s\ddlmZmZddlmZddlmZddlmZddl    m
Z
m Z m Z Gdd„deƒZ d    S)
é)ÚOptionalÚUnioné)ÚCharDistributionAnalysis)Ú CharSetProber)ÚCodingStateMachine)ÚLanguageFilterÚ MachineStateÚ ProbingStatecsfeZdZdZejfeddœ‡fdd„ Zddœ‡fdd„ Zee    e
fe d    œd
d „Z e dœd d „Z‡ZS)ÚMultiByteCharSetProberz 
    MultiByteCharSetProber
    N)Ú lang_filterÚreturncs(tƒj|dd|_d|_tdƒ|_dS)N)r ó)ÚsuperÚ__init__Údistribution_analyzerÚ    coding_smÚ    bytearrayÚ
_last_char)Úselfr ©Ú    __class__©úNd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\chardet/mbcharsetprober.pyr+szMultiByteCharSetProber.__init__)r cs8tƒ ¡|jr|j ¡|jr*|j ¡tdƒ|_dS)Nr)rÚresetrrrr©rrrrr1s 
 
 
zMultiByteCharSetProber.reset)Úbyte_strr cCs|jdk    st‚|jdk    st‚t|ƒD]¬\}}|j |¡}|tjkrd|j d|j    |j
|¡t j |_ qÒ|tjkrzt j|_ qÒ|tjkr$|j ¡}|dkr²||jd<|j |j|¡q$|j ||d|d…|¡q$|d|jd<|jt jkr|j ¡r| ¡|jkrt j|_ |jS)Nz!%s %s prober hit error at byte %srréÿÿÿÿ)rÚAssertionErrorrÚ    enumerateÚ
next_stater    ÚERRORÚloggerÚdebugÚ charset_nameÚlanguager
ÚNOT_MEÚ_stateÚITS_MEÚFOUND_ITÚSTARTÚget_current_charlenrÚfeedÚstateÚ    DETECTINGÚgot_enough_dataÚget_confidenceÚSHORTCUT_THRESHOLD)rrÚiÚbyteÚ coding_stateÚchar_lenrrrr,9s: 
ü
 
 
 
   ÿzMultiByteCharSetProber.feedcCs|jdk    st‚|j ¡S)N)rrr0rrrrr0]sz%MultiByteCharSetProber.get_confidence)Ú__name__Ú
__module__Ú __qualname__Ú__doc__rÚNONErrrÚbytesrr
r,Úfloatr0Ú __classcell__rrrrr &s
$r N)ÚtypingrrÚchardistributionrÚ charsetproberrÚcodingstatemachinerÚenumsrr    r
r rrrrÚ<module>s