관리-도구
편집 파일: manifest.cpython-34.pyc
� �Re�4 � @ s� d Z d d l Z d d l Z d d l Z d d l Z d d l m Z d d l m Z d d l m Z d g Z e j e � Z e j d e j � Z e j d e j e j B� Z Gd d � d e � Z d S)zu Class representing the list of files in a distribution. Equivalent to distutils.filelist, but fixes some problems. � N� )�DistlibException)�fsdecode)�convert_path�Manifestz\\w* z#.*?(?= )| (?=$)c @ s� e Z d Z d Z d d d � Z d d � Z d d � Z d d � Z d d d � Z d d � Z d d � Z d d � Z d d d d d � Z d d d d d � Z d d d d d � Z d d � Z d S)r z~A list of files built by on exploring the filesystem and filtered by applying various patterns to what we find there. Nc C sY t j j t j j | p! t j � � � | _ | j t j | _ d | _ t � | _ d S)zd Initialise an instance. :param base: The base directory to explore under. N)�os�path�abspath�normpath�getcwd�base�sep�prefix�allfiles�set�files)�selfr � r �7/tmp/pip-ztkk0jow-build/pip/_vendor/distlib/manifest.py�__init__# s - zManifest.__init__c C s� d d l m } m } m } g | _ } | j } | g } | j } | j } x� | r� | � } t j | � } x� | D]{ } t j j | | � } t j | � } | j } | | � r� | j t | � � qu | | � ru | | � ru | | � qu qu WqP Wd S)zmFind all files under the base and set ``allfiles`` to the absolute pathnames of files found. r )�S_ISREG�S_ISDIR�S_ISLNKN)�statr r r r r �pop�appendr �listdirr �join�st_moder )r r r r r �root�stackr �push�names�name�fullnamer �moder r r �findall2 s"