2bi, l S SK r S SKrS SKJrJr SSKJrJr \R " S5 r " S S5 r
g) N)OptionalUnion )LanguageFilterProbingStates% [a-zA-Z]*[-]+[a-zA-Z]*[^a-zA-Z-]?c > \ rS rSrSr\R 4S\SS4S jjrSS jr\ S\
\ 4S j5 r\ S\
\ 4S j5 r
S
\\\4 S\4S jr\ S\4S j5 rS\4S
jr\S\\\4 S\4S j5 r\S\\\4 S\4S j5 r\S\\\4 S\4S j5 rSrg)
CharSetProber( gffffff?lang_filterreturnNc [ R U l SU l Xl [
R " [ 5 U l g )NT) r DETECTING_stateactiver logging getLogger__name__logger)selfr s ړ/builddir/build/BUILDROOT/alt-python313-pip-23.3.1-3.el8.x86_64/opt/alt/python313/lib/python3.13/site-packages/pip/_vendor/chardet/charsetprober.py__init__CharSetProber.__init__, s. ",,&''1 c . [ R U l g N)r r r r s r resetCharSetProber.reset2 s ",,r c g r r s r charset_nameCharSetProber.charset_name5 s r c [ er NotImplementedErrorr s r languageCharSetProber.language9 s !!r byte_strc [ er r$ )r r( s r feedCharSetProber.feed= s !!r c U R $ r )r r s r stateCharSetProber.state@ s {{r c g)Ng r r s r get_confidenceCharSetProber.get_confidenceD s r bufc 6 [ R " SSU 5 n U $ )Ns ([ -])+ )resub)r2 s r filter_high_byte_only#CharSetProber.filter_high_byte_onlyG s ff&c2
r c [ 5 n[ R U 5 nU HJ nUR USS 5 USS nUR 5 ( d US: a SnUR U5 ML U$ )u
We define three types of bytes:
alphabet: english alphabets [a-zA-Z]
international: international characters [-ÿ]
marker: everything else [^a-zA-Z-ÿ]
The input buffer can be thought to contain a series of words delimited
by markers. This function works to filter all words that contain at
least one international character. All contiguous sequences of markers
are replaced by a single space ascii character.
This filter applies to all scripts which do not use English characters.
N r4 ) bytearrayINTERNATIONAL_WORDS_PATTERNfindallextendisalpha)r2 filteredwordsword last_chars r filter_international_words(CharSetProber.filter_international_wordsL st ;
,33C8DOOD"I& RS I$$&&9w+> OOI& r c D [ 5 nSnSn[ U 5 R S5 n [ U 5 HN u pEUS:X a US- nSnM US:X d M XC: a+ U( d$ UR XU 5 UR S5 SnMP U( d UR XS 5 U$ )
a+
Returns a copy of ``buf`` that retains only the sequences of English
alphabet and high byte characters that are not between <> characters.
This filter can be applied to all scripts which contain both English
characters and extended ASCII characters, but is currently only used by
``Latin1Prober``.
Fr c >r