Your IP : 3.15.10.104


Current Path : /opt/alt/python310/lib/python3.10/site-packages/setuptools/__pycache__/
Upload File :
Current File : //opt/alt/python310/lib/python3.10/site-packages/setuptools/__pycache__/glob.cpython-310.pyc

o

~�Re	�@s�dZddlZddlZddlZgd�Zddd�Zddd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Ze�d�Z
e�d�Zdd�Zdd�Zdd�ZdS)z�
Filename globbing utility. Mostly a copy of `glob` from Python 3.5.

Changes include:
 * `yield from` and PEP3102 `*` removed.
 * Hidden files are not ignored.
�N)�glob�iglob�escapeFcCstt||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.
    )�	recursive)�listr)�pathnamer�r��/builddir/build/BUILDROOT/alt-python310-setuptools-58.3.0-2.el8.x86_64/opt/alt/python310/lib/python3.10/site-packages/setuptools/glob.pyrsrcCs*t||�}|rt|�rt|�}|rJ�|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.
    )�_iglob�_isrecursive�next)rr�it�srrr	rs

rccs��tj�|�\}}|rt|�rtnt}t|�s/|r$tj�|�r"|VdStj�|�r-|VdS|s;|||�EdHdS||krIt|�rIt	||�}n|g}t|�sRt
}|D]}|||�D]
}tj�||�Vq[qTdS�N)�os�path�splitr�glob2�glob1�	has_magic�lexists�isdirr
�glob0�join)rr�dirname�basename�glob_in_dir�dirs�namerrr	r
0s0����r
cCsT|st|t�rtj�d�}ntj}zt�|�}Wnty#gYSwt�||�S�N�ASCII)	�
isinstance�bytesr�curdir�encode�listdir�OSError�fnmatch�filter)r�pattern�namesrrr	rTs
�rcCs:|s
tj�|�r|gSgStj�tj�||��r|gSgSr)rrrrr)rrrrr	ras�rccs4�t|�sJ�|dd�Vt|�D]}|VqdS)Nr)r�	_rlistdir)rr)�xrrr	rqs��rccs��|st|t�rtj�d�}ntj}zt�|�}Wntjy$YdSw|D]}|V|r5tj�||�n|}t	|�D]
}tj�||�Vq;q'dSr)
r!r"rr#r$r%�errorrrr+)rr*r,r�yrrr	r+ys"�
���r+z([*?[])s([*?[])cCs.t|t�rt�|�}|duSt�|�}|duSr)r!r"�magic_check_bytes�search�magic_check)r�matchrrr	r�s



�rcCst|t�r	|dkS|dkS)Ns**z**)r!r")r)rrr	r�s
rcCsBtj�|�\}}t|t�rt�d|�}||St�d|�}||S)z#Escape all special characters.
    s[\1]z[\1])rr�
splitdriver!r"r/�subr1)r�driverrr	r�s
�r)F)�__doc__r�rer'�__all__rrr
rrrr+�compiler1r/rrrrrrr	�<module>s"

$




?>