File: //proc/self/root/opt/alt/python37/lib64/python3.7/__pycache__/glob.cpython-37.pyc
B
    � f  �               @   s�   d Z ddlZddlZddlZdddgZdd�dd�Zdd�d	d�Zd
d� Zdd
� Zdd� Z	dd� Z
dd� Zdd� Zdd� Z
dd� Ze�d�Ze�d�Zdd� Zdd� Zd d!� Zd"d� ZdS )#zFilename globbing utility.�    N�glob�iglob�escapeF)�	recursivec            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.
    )r   )�listr   )�pathnamer   � r   �)/opt/alt/python37/lib64/python3.7/glob.pyr   	   s    c            C   s,   t | |d�}|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.
    F)�_iglob�_isrecursive�next�AssertionError)r   r   �it�sr   r   r	   r      s
    c             c   s  t j�| �\}}t| �sN|r t�|r8t j�| �rJ| V  nt j�|�rJ| V  d S |s�|rrt|�rrt|||�E d H  nt	|||�E d H  d S || kr�t|�r�t
||d�}n|g}t|�r�|r�t|�r�t}q�t	}nt}x2|D ]*}x$||||�D ]}t j�||�V  q�W q�W d S )NT)
�os�path�split�	has_magicr
   �lexists�isdirr   �_glob2�_glob1r
   �_glob0�join)r   r   �dironly�dirname�basename�dirsZglob_in_dir�namer   r   r	   r
   '