File: //opt/osm/venv/lib/python3.10/site-packages/setuptools/command/__pycache__/egg_info.cpython-310.pyc
o
0i�h � @ s� d Z ddlmZ ddlmZ ddlmZ ddlm Z ddlZddlZddl
Z
ddlZddlZddl
Z
ddlZddlZddlZddlZddlmZ dd lmZ dd
lmZ ddlmZ ddlmZ dd
lmZ ddlmZ ddlm Z m!Z!m"Z"m#Z#m$Z$ ddl%m&Z& ddl'm(Z( ddl)m*Z* ddl+m,Z, ddlm-Z- dd� Z.G dd� d�Z/G dd� de/e�Z0G dd� de�ZG dd� de�Z1dd� Z2d d!� Z3d"d#� Z4d$d%� Z5d&d'� Z6d(d)� Z7d*d+� Z8d,d-� Z9d7d/d0�Z:d1d2� Z;d3d4� Z<G d5d6� d6e-�Z=dS )8zUsetuptools.command.egg_info
Create a distribution's .egg-info directory and contents� )�FileList)�DistutilsInternalError)�convert_path)�logN� )�metadata)�
_entry_points)�Command)�sdist)�walk_revctrl)�edit_config)� bdist_egg)�Requirement� safe_name�
parse_version�safe_version�to_filename)�glob)� packaging)�yield_lines)�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$ Z
valid_char�c�chunk�
last_chunk�iZ chunk_len�charZinner_i�inner�
char_class� r5 �I/opt/osm/venv/lib/python3.10/site-packages/setuptools/command/egg_info.py�translate_pattern'