Mini Shell

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

a

�DOg��@s�dZddlZddlZddlZddlZddlZgd�Zdd�dd�Zdd�dd	�Zd
d�Z	dd
�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Ze�d�Ze�d�Zdd�Zd d!�Zd"d#�Zd$d%�ZdS)&zFilename globbing utility.�N)�glob�iglob�escapeF��	recursivecCstt||d��S)ayReturn a list of paths matching a pathname pattern.

    The pattern may contain simple shell-style wildcards a la
    fnmatch. However, unlike fnmatch, filenames starting with a
    dot are special cases that are not matched by '*' and '?'
    patterns.

    If recursive is true, the pattern '**' will match any files and
    zero or more directories and subdirectories.
    r)�listr)�pathnamer�r	�/usr/lib64/python3.9/glob.pyrsrcCs:t�d||�t||d�}|r6t|�r6t|�}|r6J�|S)a�Return an iterator which yields the paths matching a pathname pattern.

    The pattern may contain simple shell-style wildcards a la
    fnmatch. However, unlike fnmatch, filenames starting with a
    dot are special cases that are not matched by '*' and '?'
    patterns.

    If recursive is true, the pattern '**' will match any files and
    zero or more directories and subdirectories.
    z	glob.globF)�sys�audit�_iglob�_isrecursive�next)rr�it�sr	r	r
rsrccstj�|�\}}t|�sN|r J�|r8tj�|�rJ|Vntj�|�rJ|VdS|s�|rrt|�rrt|||�EdHnt|||�EdHdS||kr�t|�r�t	||d�}n|g}t|�r�|r�t|�r�t}q�t}nt
}|D]&}||||�D]}tj�||�Vq�q�dS)NT)�os�path�split�	has_magic�lexists�isdirr�_glob2�_glob1r
�_glob0�join)rr�dironly�dirname�basename�dirsZglob_in_dir�namer	r	r
r
*s2r
cCs,t||�}t|�s dd�|D�}t�||�S)Ncss|]}t|�s|VqdS�N)�	_ishidden)�.0�xr	r	r
�	<genexpr>U�z_glob1.<locals>.<genexpr>)�_listdirr"�fnmatch�filter)r�patternr�namesr	r	r
rRs
rcCs8|stj�|�r4|gSntj�tj�||��r4|gSgSr!)rrrrr)rrrr	r	r
rXsrcCst||d�S�NF)r�rr*r	r	r
�glob0esr.cCst||d�Sr,)rr-r	r	r
�glob1hsr/ccs.t|�sJ�|dd�Vt||�EdHdS)Nr)r�	_rlistdir)rr*rr	r	r
rnsrc
cs�|s"t|t�rttjd�}ntj}zdt�|��F}|D]0}z|rF|��rN|jVWq4tybYq40q4Wd�n1sz0YWnty�YdS0dS)N�ASCII)�
isinstance�bytesr�curdir�scandir�is_dirr �OSError)rrr�entryr	r	r
�_iterdirus
*r9cCs<t�t||���}t|�Wd�S1s.0YdSr!)�
contextlib�closingr9r)rrrr	r	r
r'�sr'ccs\t||�}|D]H}t|�s|V|r2tj�||�n|}t||�D]}tj�||�Vq@qdSr!)r'r"rrrr0)rrr+r$r�yr	r	r
r0�s
r0z([*?[])s([*?[])cCs(t|t�rt�|�}n
t�|�}|duSr!)r2r3�magic_check_bytes�search�magic_check)r�matchr	r	r
r�s

rcCs|ddvS)Nr)�.�.r	)rr	r	r
r"�sr"cCst|t�r|dkS|dkSdS)Ns**z**)r2r3)r*r	r	r
r�s
rcCs<tj�|�\}}t|t�r(t�d|�}nt�d|�}||S)z#Escape all special characters.
    s[\1]z[\1])rr�
splitdriver2r3r=�subr?)r�driver	r	r
r�s

r)�__doc__r:r�rer(r�__all__rrr
rrr.r/rr9r'r0�compiler?r=rr"rrr	r	r	r
�<module>s.
(





Zerion Mini Shell 1.0