File: //usr/lib/python3/dist-packages/setuptools/command/__pycache__/egg_info.cpython-310.pyc
o
[�cf � @ s� d Z ddlmZ ddlmZ ddlmZ ddlm Z ddlZddlZddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlmZ ddlmZ dd lmZ dd
lmZ ddlmZ ddlmZmZmZmZm Z m!Z!m"Z"m#Z# ddl$m%Z% dd
l&m'Z' ddl(m)Z) ddlm*Z* dd� Z+G dd� d�Z,G dd� de,e�Z-G dd� de�ZG dd� de�Z.dd� Z/dd� Z0dd� Z1d d!� Z2d"d#� Z3d$d%� Z4d&d'� Z5d(d)� Z6d3d+d,�Z7d-d.� Z8d/d0� Z9G d1d2� d2e*�Z:dS )4zUsetuptools.command.egg_info
Create a distribution's .egg-info directory and contents� )�FileList)�DistutilsInternalError)�convert_path)�logN)�Command)�sdist)�walk_revctrl)�edit_config)� bdist_egg)�parse_requirements� safe_name�
parse_version�safe_version�yield_lines�
EntryPoint�iter_entry_points�to_filename)�glob)� packaging)�SetuptoolsDeprecationWarningc C s� d}| � tjj�}t�tj�}d|f }t|�D ]�\}}|t|�d k}|dkr8|r/|d7 }n|d||f 7 }qd}t|�} || k r�|| }
|
dkrQ||d 7 }n�|
d krZ||7 }nx|
d
kr�|d }|| k rp|| dkrp|d }|| k r~|| dkr~|d }|| k r�|| dkr�|d }|| k r�|| dks�|| kr�|t�|
�7 }n0||d |� }d}
|d dkr�d
}
|dd� }|
t�|�7 }
|d|
f 7 }|}n|t�|
�7 }|d7 }|| k sB|s�||7 }q|d7 }tj|tj tj
B d�S )z�
Translate a file path glob like '*.txt' in to a regular expression.
This differs from fnmatch.translate which allows wildcards to match
directory separators. It also knows about '**/' which matches any number of
directories.
� z[^%s]� �**z.*z
(?:%s+%s)*r �*�?�[�!�]�^Nz[%s]z\Z)�flags)�split�os�path�sep�re�escape� enumerate�len�compile� MULTILINE�DOTALL)r �pat�chunksr# �
valid_char�c�chunk�
last_chunk�i� chunk_len�char�inner_i�inner�
char_class� r7 �=/usr/lib/python3/dist-packages/setuptools/command/egg_info.py�translate_pattern# s\
��-�r9 c @ s@ e Zd ZdZdZedd� �Zdd� Zdd� Zdd � Z ee �Z
dS )
�
InfoCommonNc C s t | j�� �S �N)r �distribution�get_name��selfr7 r7 r8 �namez s zInfoCommon.namec C s t | �| j�� ��S r; )r �
_maybe_tagr<