Ë
    ˜Í%i7	  ã                  óL   — d dl mZ d dlmZ d dlmZmZmZmZm	Z	  G d„ d«      Z
y)é    )Úannotations)Úwarn)ÚdistanceÚeditopsÚmatching_blocksÚopcodesÚratioc                  óZ   — e Zd ZdZd„ Zdd„Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ Zy)ÚStringMatcherz<A SequenceMatcher-like class built on the top of Levenshteinc                óJ   — d x| _         | _        d x| _        x| _        | _        y ©N)Ú_ratioÚ	_distanceÚ_opcodesÚ_editopsÚ_matching_blocks©Úselfs    úQ/usr/local/footviz/venv/lib/python3.12/site-packages/Levenshtein/StringMatcher.pyÚ_reset_cachezStringMatcher._reset_cache   s&   € Ø'+Ð+ˆŒd”nØ@DÐDˆŒÐD˜œ¨Õ(=ó    Nc                ó~   — |rt        dd¬«       |rt        dd¬«       ||c| _        | _        | j                  «        y )Nz*isjunk NOT implemented, it will be ignoredé   )Ú
stacklevelz,autojunk NOT implemented, it will be ignored)r   Ú_str1Ú_str2r   )r   ÚisjunkÚseq1Úseq2Úautojunks        r   Ú__init__zStringMatcher.__init__   s:   € ÙÜÐ=È!ÕLÙÜÐ?ÈAÕNØ!% tÐˆŒ
D”JØ×ÑÕr   c                óB   — ||c| _         | _        | j                  «        y r   )r   r   r   )r   r   r   s      r   Úset_seqszStringMatcher.set_seqs   s   € Ø!% tÐˆŒ
D”JØ×ÑÕr   c                ó2   — || _         | j                  «        y r   )r   r   )r   r   s     r   Úset_seq1zStringMatcher.set_seq1   ó   € ØˆŒ
Ø×ÑÕr   c                ó2   — || _         | j                  «        y r   )r   r   )r   r   s     r   Úset_seq2zStringMatcher.set_seq2   r&   r   c                ó  — | j                   sm| j                  r<t        | j                  | j                  | j                  «      | _         | j                   S t        | j                  | j                  «      | _         | j                   S r   )r   r   r   r   r   r   s    r   Úget_opcodeszStringMatcher.get_opcodes#   óZ   € Ø}Š}Ø}Š}Ü '¨¯©°t·z±zÀ4Ç:Á:Ó N”ð }‰}Ðô !(¨¯
©
°D·J±JÓ ?”Ø}‰}Ðr   c                ó  — | j                   sm| j                  r<t        | j                  | j                  | j                  «      | _         | j                   S t        | j                  | j                  «      | _         | j                   S r   )r   r   r   r   r   r   s    r   Úget_editopszStringMatcher.get_editops+   r+   r   c                óš   — | j                   s4t        | j                  «       | j                  | j                  «      | _         | j                   S r   )r   r   r*   r   r   r   s    r   Úget_matching_blocksz!StringMatcher.get_matching_blocks3   s<   € Ø×$Ò$Ü$3°D×4DÑ4DÓ4FÈÏ
É
ÐTX×T^ÑT^Ó$_ˆDÔ!Ø×$Ñ$Ð$r   c                ó|   — | j                   s%t        | j                  | j                  «      | _         | j                   S r   ©r   r	   r   r   r   s    r   r	   zStringMatcher.ratio8   s)   € Ø{Š{Ü §
¡
¨D¯J©JÓ7ˆDŒKØ{‰{Ðr   c                ó|   — | j                   s%t        | j                  | j                  «      | _         | j                   S r   r1   r   s    r   Úquick_ratiozStringMatcher.quick_ratio=   s)   € à{Š{Ü §
¡
¨D¯J©JÓ7ˆDŒKØ{‰{Ðr   c                ó€   — t        | j                  «      t        | j                  «      }}dt        ||«      z  ||z   z  S )Ng       @)Úlenr   r   Úmin)r   Úlen1Úlen2s      r   Úreal_quick_ratiozStringMatcher.real_quick_ratioC   s5   € Ü˜Ÿ™“_¤c¨$¯*©*£oˆdˆØ”S˜˜t“_Ñ$¨¨t©Ñ4Ð4r   c                ó|   — | j                   s%t        | j                  | j                  «      | _         | j                   S r   )r   r   r   r   r   s    r   r   zStringMatcher.distanceG   s)   € Ø~Š~Ü% d§j¡j°$·*±*Ó=ˆDŒNØ~‰~Ðr   )NÚ r;   F)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r!   r#   r%   r(   r*   r-   r/   r	   r3   r9   r   © r   r   r   r      sB   „ ÙFòEóòòòòòò%ò
ò
ò5ór   r   N)Ú
__future__r   Úwarningsr   ÚLevenshteinr   r   r   r   r	   r   r@   r   r   ú<module>rD      s   ðÝ "å ç JÕ J÷Bò Br   