File: //lib64/python3.6/__pycache__/glob.cpython-36.pyc
3
  \  �               @   s�   d Z ddlZddlZddlZdddgZdd�dd�Zdd�d	d�Zd
d� Zdd
� Zdd� Z	dd� Z
dd� Zdd� Zdd� Z
dd� Zejd�Zejd�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   �/usr/lib64/python3.6/glob.pyr   	   s    c            C   s.   t | |d�}|r*t| �r*t|�}| s*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 jj| �\}}t| �sP| s"t�|r:t jj| �rL| V  nt jj|�rL| V  d S |s�|rtt|�rtt|||�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 jj||�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
   '