Mini Shell

Direktori : /usr/lib64/python3.9/xml/etree/__pycache__/
Upload File :
Current File : //usr/lib64/python3.9/xml/etree/__pycache__/ElementPath.cpython-39.pyc

a

�DOg3�@s�ddlZe�d�Zd"dd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Zdd�Z	dd�Z
dd�Zdd�Zeee	ee
ed�Z
iZGdd�d�Zd#dd�Zd$dd�Zd%dd�Zd&d d!�ZdS)'�Nz\('[^']*'|\"[^\"]*\"|::|//?|\.\.|\(\)|[/.*:\[\]\(\)@=])|((?:\{[^}]+\})?[^/\[\]\(\)@=\s]+)|\s+c		cs�|r|�d�nd}d}t�|�D]�}|\}}|r�|ddkr�d|vr�|�dd�\}}z"|s^t�|d|||ffVWq�ty�td|�d�Yq�0n"|r�|s�|d||ffVn|Vd}q |V|d	k}q dS)
N�Fr�{�:�z{%s}%sz!prefix %r not found in prefix map�@)�get�xpath_tokenizer_re�findall�split�KeyError�SyntaxError)	�pattern�
namespacesZdefault_namespaceZparsing_attribute�tokenZttype�tag�prefixZuri�r�-/usr/lib64/python3.9/xml/etree/ElementPath.py�xpath_tokenizerIs&rcCs>|j}|dur:i|_}|j��D]}|D]}|||<q*q"|S�N)�
parent_map�root�iter)�contextr�p�errr�get_parent_mapas
rcCs |dd�dkp|dd�dkS)N��{*}����}*r�rrrr�_is_wildcard_tagksr"cs�tt���dkr"��fdd�}n��dkr:��fdd�}n��dd�dkr��dd��tt��d���dd�������fd	d�}nL�d
d�dkrƈdd��tdt��������fd
d�}ntd�����|S)Nz{*}*c3s |D]}�|j��r|VqdSrr!�r�result�elem��_isinstance�_strrr�selectusz_prepare_tag.<locals>.selectz{}*c3s0|D]&}|j}�|��r|ddkr|VqdS)Nrrr!�rr$r%Zel_tagr&rrr){srr�c3s8|D].}|j}|�ks,�|��r|��kr|VqdSrr!r*)r'r(�no_ns�suffixrrrr)�srr ���c3s0|D]&}|j}�|��r|��kr|VqdSrr!r*)r'r(�ns�ns_onlyrrr)�szinternal parser error, got )�
isinstance�str�slice�len�RuntimeError)rr)r)r'r(r,r/r0r-rr�_prepare_tagos 
r6csR|d�t��r&t����fdd�}n(�dd�dkrB�dd���fdd�}|S)Nrcsdd�}�|||��S)Ncss|D]}|EdHqdSrr)r$r%rrr�select_child�sz3prepare_child.<locals>.select.<locals>.select_childr�rr$r7��
select_tagrrr)�szprepare_child.<locals>.selectr+�{}c3s(|D]}|D]}|j�kr|VqqdSrr!�rr$r%rr!rrr)�s
)r"r6��nextrr)r�r:rr�
prepare_child�sr@cCsdd�}|S)Ncss|D]}|EdHqdSrrr#rrrr)�szprepare_star.<locals>.selectrr=rrr�prepare_star�srAcCsdd�}|S)Ncss|EdHdSrr)rr$rrrr)�szprepare_self.<locals>.selectrr=rrr�prepare_self�srBcs�z
|�}WntyYdS0|ddkr2d�n|dsD|d�ntd��t��rjt����fdd�}n(�dd�dkr��dd���fd	d�}|S)
Nr�*rzinvalid descendantcsdd�}�|||��S)Ncss*|D] }|��D]}||ur|VqqdSr�r)r$r%rrrrr7�sz8prepare_descendant.<locals>.select.<locals>.select_childrr8r9rrr)�sz"prepare_descendant.<locals>.selectr+r;c3s,|D]"}|���D]}||ur|VqqdSrrDr<r!rrr)�s)�
StopIterationrr"r6r=rr?r�prepare_descendant�s 

rFcCsdd�}|S)Ncss@t|�}i}|D]*}||vr||}||vrd||<|VqdSr)r)rr$rZ
result_mapr%�parentrrrr)�szprepare_parent.<locals>.selectrr=rrr�prepare_parent�s
rHcsHg}g}z
|�}Wnty&YdS0|ddkr6q�|dkr@q|drp|ddd�dvrpd|ddd�f}|�|dp~d�|�|d�qd	�|�}|d
kr�|d��fdd�}|S|d
kr�|d�|d���fdd�}|S|dk�rt�d|d��s|d��fdd�}|S|dk�s@|dk�rvt�d|d��sv|d�|d���rf��fdd�}n�fdd�}|S|dk�s�|dk�s�|dk�r<|dk�r�t|d�d��dk�r,td��nj|ddk�r�td��|dk�r(zt|d�d�Wnt�ytd��Yn0�dk�r,td��nd��fdd�}|Std��dS) Nr�])rrrz'"�'r.�-rz@-c3s"|D]}|���dur|VqdSr�rr#)�keyrrr)�sz!prepare_predicate.<locals>.selectz@-='c3s"|D]}|����kr|VqdSrrLr#)rM�valuerrr)sz\-?\d+$c3s"|D]}|���dur|VqdSr)�findr#r!rrr)sz.='z-='c3s:|D]0}|���D] }d�|����kr|VqqqdS�Nr)r	�join�itertextr<)rrNrrr)s
c3s&|D]}d�|����kr|VqdSrP)rQrRr#)rNrrr)sz-()z-()-zXPath position >= 1 expected�lastzunsupported functionr+zunsupported expressionrz)XPath offset from last() must be negativec
3s\t|�}|D]J}z.||}t|�|j��}|�|ur<|VWqttfyTYq0qdSr)r�listr	r�
IndexErrorr)rr$rr%rGZelems)�indexrrr)4s
zinvalid predicate)rE�appendrQ�re�match�intr�
ValueError)r>rZ	signature�	predicater)r)rVrMrrNr�prepare_predicate�sj

&





r])rrC�.z..z//�[c@seZdZdZdd�ZdS)�_SelectorContextNcCs
||_dSr)r)�selfrrrr�__init__Osz_SelectorContext.__init__)�__name__�
__module__�__qualname__rrbrrrrr`Msr`c
Cs`|dd�dkr|d}|f}|r6|tt|����7}zt|}Wn�t�y6tt�dkrft��|dd�dkr~td��tt	||��j
}z
|�}Wnty�YYdS0g}z|�t
|d||��Wnty�td�d�Yn0z|�}|ddk�r
|�}Wq�t�y&Y�q*Yq�0q�|t|<Yn0|g}t|�}|D]}	|	||�}�qJ|S)	Nr.�/rC�drz#cannot use absolute path on elementrzinvalid path)�tuple�sorted�items�_cacherr4�clearrrr�__next__rErW�opsr`)
r%�pathrZ	cache_key�selectorr>rr$rr)rrr�iterfindWsD


rqcCstt|||�d�Sr)r>rq�r%rorrrrrO�srOcCstt|||��Sr)rTrqrrrrrr	�sr	cCs8ztt|||��}|jpdWSty2|YS0dSrP)r>rq�textrE)r%ro�defaultrrrr�findtext�s
ru)N)N)N)N)NN)rX�compilerrrr"r6r@rArBrFrHr]rnrkr`rqrOr	rurrrr�<module>;s4�

)
a�	

,



Zerion Mini Shell 1.0