!A?h R d Z ddlmZ ddlmZ dddZ G d dej Zd S )
zFixer for unicode.
* Changes unicode to str and unichr to chr.
* If "...\u..." is not unicode literal change it into "...\\u...".
* Change u"..." into "...".
)token)
fixer_basechrstr)unichrunicodec , e Zd ZdZdZ fdZd Z xZS )
FixUnicodeTzSTRING | 'unicode' | 'unichr'c v t t | || d|j v | _ d S )Nunicode_literals)superr
start_treefuture_featuresr )selftreefilename __class__s F/opt/alt/python-internal/lib64/python3.11/lib2to3/fixes/fix_unicode.pyr zFixUnicode.start_tree s9
j$**4::: 2d6J J c |j t j k r-| }t |j |_ |S |j t j k r|j }| j s@|d dv r6d|v r2d d | d D }|d dv r
|dd }||j k r|S | }||_ |S d S )N z'"\z\\c b g | ],}| d d dd -S )z\uz\\uz\Uz\\U)replace).0vs r
<listcomp>z(FixUnicode.transform.<locals>.<listcomp> sF " " " IIeV,,44UFCC" " "r uU )
typer NAMEclone_mappingvalueSTRINGr joinsplit)r noderesultsnewvals r transformzFixUnicode.transform s 9
""**,,C ,CIJ
Y%,
&
&*C(
SVu__jj " " YYu--" " " 1v~~!""gdj **,,CCIJ '
&r )__name__
__module____qualname__
BM_compatiblePATTERNr r,
__classcell__)r s @r r
r
sV M-GK K K K K r r
N)__doc__pgen2r r r# BaseFixr
r r <module>r8 sy %00 # r