HEX
Server: LiteSpeed
System: Linux s787.bom1.mysecurecloudhost.com 4.18.0-477.13.1.lve.el8.x86_64 #1 SMP Thu Jun 1 16:40:47 EDT 2023 x86_64
User: mobilech (5348)
PHP: 8.1.34
Disabled: NONE
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/setuptools/__pycache__/glob.cpython-310.pyc
o

;j��@s<dZddlmZddlZddlZddlZddlmZmZddl	m
Z
mZmZe
r2ddl
mZmZmZgd�Zd;d<dd�Zd;d=dd�Zd=dd�Zed>dd��Zed?d d��Zd@d$d�Zd%d&�ZedAd(d)��ZedBd+d)��ZdCd-d)�ZedDd.d/��ZedEd0d/��ZdFd1d/�Ze�d2�Ze�d3�ZdGd5d6�ZdHd7d8�Zd9d:�ZdS)Iz�
Filename globbing utility. Mostly a copy of `glob` from Python 3.5.

Changes include:
 * `yield from` and PEP3102 `*` removed.
 * Hidden files are not ignored.
�)�annotationsN)�Iterable�Iterator)�
TYPE_CHECKING�AnyStr�overload)�	BytesPath�StrOrBytesPath�StrPath)�glob�iglob�escapeF�pathnamer�	recursive�bool�return�list[AnyStr]cCstt||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)rr�r�C/opt/saltstack/salt/lib/python3.10/site-packages/setuptools/glob.pyrsr�Iterator[AnyStr]cCs*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�srrrr%s

rccs��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�basenameZglob_in_dir�dirs�namerrrr7s0����rr'r
�pattern�str�	list[str]cC�dSrr�r'r+rrrr![�r!r�bytes�list[bytes]cCr.rrr/rrrr!]r0r	�str | bytes�list[str] | list[bytes]cCsT|st|t�rtj�d�}ntj}zt�|�}Wnty#gYSwt�||�S�N�ASCII)	�
isinstancer1r�curdir�encode�listdir�OSError�fnmatch�filter)r'r+�namesrrrr!_s
�cCs:|s
tj�|�r|gSgStj�tj�||��r|gSgSr)rrr$r#r&)r'r(rrrr%ms�r%�
Iterator[str]cCr.rrr/rrrr }r0r �Iterator[bytes]cCr.rrr/rrrr r0�Iterator[str | bytes]ccs.�t|�sJ�|dd�Vt|�EdHdS)Nr)r�	_rlistdirr/rrrr �s�cCr.rr�r'rrrrB�r0rBcCr.rrrCrrrrB�r0ccs��|st|t�rtj�d�}ntj}zt�|�}Wn
ty#YdSw|D]}|V|r4tj�||�n|}t	|�D]
}tj�||�Vq:q&dSr5)
r7r1rr8r9r:r;rr&rB)r'r>�xr�yrrrrB�s"�
���z([*?[])s([*?[])rcCs&t|t�rt�|�duSt�|�duSr)r7r1�magic_check_bytes�search�magic_check)rrrrr"�s
r"cCst|t�r	|dkS|dkS)Ns**z**)r7r1)r+rrrr�s
rcCsBtj�|�\}}t|t�rt�d|�}||St�d|�}||S)zEscape all special characters.s[\1]z[\1])rr�
splitdriver7r1rF�subrH)r�driverrrr
�s
�r
)F)rrrrrr)rrrrrr)r'r
r+r,rr-)r'rr+r1rr2)r'r	r+r3rr4)r'r
r+r,rr?)r'rr+r1rr@)r'r	r+r3rrA)r'r
rr?)r'rrr@)r'r	rrA)rr3rr)r+r3rr)�__doc__�
__future__rr<r�re�collections.abcrr�typingrrrZ	_typeshedrr	r
�__all__rrrr!r%r rB�compilerHrFr"rr
rrrr�<module>sD
$