/usr/local/lib/python3.9/site-packages/pip/_internal/__pycache__
a ���h�+ � @ s d Z ddlmZ ddlZddlZddlZddlZddlm Z ddl mZmZ ddl mZmZ ddlmZ ddlmZmZ dd lmZmZ dd lmZ ddlmZ ddlmZ dd lmZ ddl m!Z! ddl"m#Z# ddl$m%Z% ddl&m'Z'm(Z( ddl)m*Z* ddl+m,Z, ddl-m.Z. ddl/m0Z0 ddl1m2Z2 e�3e4�Z5e�6dej7�Z8e9e:e# e:e# f Z;ddd�dd�Z<ddd�dd �Z=ddd�d!d"�Z>dd#d�d$d%�Z?dd&dd'�d(d)�Z@ddd*d+�d,d-�ZAdddd.d.dd/d0�d1d2�ZBddd.d.dd/d3�d4d5�ZCdd.dd6�d7d8�ZDd9d&dd.d.d:d;�d<d=�ZEdS )>z:Orchestrator for building wheels from InstallRequirements.� )�annotationsN)�Iterable)�canonicalize_name�canonicalize_version)�InvalidVersion�Version)� WheelCache)�InvalidWheelFilename�UnsupportedWheel)�FilesystemWheel�get_wheel_distribution)�Link)�Wheel)�build_wheel_pep517)�build_wheel_editable)�build_wheel_legacy)�InstallRequirement)� indent_log)� ensure_dir� hash_file)�make_setuptools_clean_args)�call_subprocess)� TempDirectory)�path_to_url)�vcsz([a-z0-9_.]+)-([a-z0-9_.!+-]+)�str�bool)�s�returnc C s t t�| ��S )zjDetermine whether the string looks like an egg_info. :param s: The string to parse. E.g. foo-2.1 )r �_egg_info_re�search)r � r! �E/usr/local/lib/python3.9/site-packages/pip/_internal/wheel_builder.py�_contains_egg_info&