Your IP : 18.191.120.103
U
�Qab� � @ s� d Z ddlZddlZddlZdddgZddd�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�escapeFc C s t t| |d��S )ay Return 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 �3/usr/lib/python3.8/site-packages/setuptools/glob.pyr s c C s* t | |�}|r&t| �r&t|�}|r&t�|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�AssertionError)r r �it�sr r r r s
c c s� t j�| �\}}t| �sF|r0t j�| �rB| V nt j�|�rB| V d S |s�|rnt|�rnt||�D ]
}|V q`nt||�D ]
}|V qxd S || kr�t|�r�t ||�}n|g}t|�r�|r�t|�r�t}q�t}nt
}|D ]$}|||�D ]}t j�||�V q�q�d S �N)�os�path�split� has_magic�lexists�isdirr �glob2�glob1r
�glob0�join)r r �dirname�basename�x�dirsZglob_in_dir�namer r r r
0 s4
r
c C sV | s"t |t�rtj�d�} ntj} zt�| �}W n tk
rH g Y S X t�||�S �N�ASCII) �
isinstance�bytesr �curdir�encode�listdir�OSError�fnmatch�filter)r �pattern�namesr r r r [ s
r c C s8 |st j�| �r4|gS nt j�t j�| |��r4|gS g S r )r r r r r )r r r r r r h s r c c s2 t |�st�|d d� V t| �D ]
}|V q"d S )Nr )r r
� _rlistdir)r r* r r r r r x s r c c s� | s"t | t�rtj�d�} ntj} zt�| �}W n tjk
rH Y d S X |D ]>}|V | rjtj�| |�n|}t |�D ]}tj�||�V qvqNd S r )
r"