Your IP : 3.149.254.35


Current Path : /usr/lib/python2.7/site-packages/setuptools/
Upload File :
Current File : //usr/lib/python2.7/site-packages/setuptools/glob.pyc

�
�fc@s�dZddlZddlZddlZddlmZdddgZed�Zed�Z	d	�Z
d
�Zd�Zd�Z
d
�Zejd�Zejd�Zd�Zd�Zd�ZdS(s�
Filename globbing utility. Mostly a copy of `glob` from Python 3.5.

Changes include:
 * `yield from` and PEP3102 `*` removed.
 * `bytes` changed to `six.binary_type`.
 * Hidden files are not ignored.
i����N(tbinary_typetglobtiglobtescapecCstt|d|��S(syReturn 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.
    t	recursive(tlistR(tpathnameR((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyRscCsAt||�}|r=t|�r=t|�}|s=t�n|S(s�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.
    (t_iglobt_isrecursivetnexttAssertionError(RRtitts((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR s
ccsntjj|�\}}t|�se|rGtjj|�ra|Vqantjj|�ra|VndS|s�|r�t|�r�x>t||�D]}|Vq�Wnxt||�D]}|Vq�WdS||kr�t|�r�t	||�}n	|g}t|�r%|rt|�rt}q+t}nt
}x<|D]4}x+|||�D]}tjj||�VqHWq2WdS(N(tostpathtsplitt	has_magictlexiststisdirRtglob2tglob1Rtglob0tjoin(RRtdirnametbasenametxtdirstglob_in_dirtname((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR2s4				
cCsn|s6t|t�r*tjjd�}q6tj}nytj|�}Wntk
r]gSXtj||�S(NtASCII(	t
isinstanceRR
tcurdirtencodetlistdirtOSErrortfnmatchtfilter(Rtpatterntnames((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR]s
cCsN|s"tjj|�rJ|gSn(tjjtjj||��rJ|gSgS(N(R
RRRR(RR((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyRjs
!ccs;t|�st�|d Vxt|�D]}|Vq(WdS(Ni(RR
t	_rlistdir(RR%R((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyRzs	ccs�|s6t|t�r*ttjd�}q6tj}nytj|�}Wntjk
r`dSXx_|D]W}|V|r�tjj||�n|}x(t|�D]}tjj||�Vq�WqhWdS(NR(	RRR
RR!terrorRRR'(RR&RRty((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR'�s
!s([*?[])cCs:t|t�r!tj|�}ntj|�}|dk	S(N(RRtmagic_check_bytestsearchtmagic_checktNone(Rtmatch((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR�scCs't|t�r|dkS|dkSdS(Ns**(RR(R%((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR�s
cCsVtjj|�\}}t|t�r<tjd|�}ntjd|�}||S(s#Escape all special characters.
    s[\1](R
Rt
splitdriveRRR*tsubR,(Rtdrive((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyR�s
(t__doc__R
treR#tsetuptools.extern.sixRt__all__tFalseRRRRRRR'tcompileR,R*RRR(((s3/usr/lib/python2.7/site-packages/setuptools/glob.pyt<module>s"	+	
					

?>