<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
vhW                 @   s   d Z ddlZddlZddlZddlmZ dddgZdddZdd	dZd
d Z	dd Z
dd Zdd Zdd ZejdZejdZdd Zdd Zdd ZdS )z
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.
    N)binary_type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	   /usr/lib/python3.6/glob.pyr      s    c             C   s"   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)r   r   itsr	   r	   r
   r       s    
c             c   s  t jj| \}}t| sF|r0t jj| rB| V  nt jj|rB| V  d S |s|rrt|rrx4t||D ]
}|V  qbW nxt||D ]
}|V  q~W d S || krt|rt	||}n|g}t|r|rt|rt}qt}nt
}x0|D ](}x"|||D ]}t jj||V  qW qW d S )N)ospathsplit	has_magiclexistsisdirr   glob2glob1r   glob0join)r   r   dirnamebasenamexdirsZglob_in_dirnamer	   r	   r
   r   2   s4    

r   c             C   sR   | s"t |trtjjd} ntj} ytj| }W n tk
rD   g S X tj||S )NASCII)	
isinstancer   r   curdirencodelistdirOSErrorfnmatchfilter)r   patternnamesr	   r	   r
   r   ]   s    
r   c             C   s8   |st jj| r4|gS nt jjt jj| |r4|gS g S )N)r   r   r   r   r   )r   r   r	   r	   r
   r   j   s    r   c             c   s*   |d d V  xt | D ]
}|V  qW d S )Nr   )	_rlistdir)r   r'   r   r	   r	   r
   r   z   s    r   c             c   s   | s"t | trttjd} ntj} ytj| }W n tjk
rF   d S X xJ|D ]B}|V  | rjtjj| |n|}x t|D ]}tjj||V  qxW qNW d S )Nr   )	r    r   r   r!   r#   errorr   r   r)   )r   r(   r   r   yr	   r	   r
   r)      s    

r)   z([*?[])s   ([*?[])c             C   s(   t | trtj| }n
tj| }|d k	S )N)r    r   magic_check_bytessearchmagic_check)r   matchr	   r	   r
   r      s    

r   c             C   s   t | tr| dkS | dkS d S )Ns   **z**)r    r   )r'   r	   r	   r
   r      s    
r   c             C   s<   t jj| \}} t| tr(tjd| } ntjd| } ||  S )z#Escape all special characters.
    s   [\1]z[\1])r   r   
splitdriver    r   r,   subr.   )r   Zdriver	   r	   r
   r      s
    
)F)F)__doc__r   rer%   Zsetuptools.extern.sixr   __all__r   r   r   r   r   r   r)   compiler.   r,   r   r   r   r	   r	   r	   r
   <module>   s"   


+

