/usr/local/lib/python3.9/site-packages/pip/_internal/metadata/importlib/__pycache__
a ���h� � @ s� d dl mZ d dlZd dlZd dlmZmZmZ d dl m Z mZ G dd� de�Z G dd� de�Zd d d�dd �Zd dd�dd�Zd dd�dd�ZdS )� )�annotationsN)�Any�Protocol�cast)�NormalizedName�canonicalize_namec @ s, e Zd Zdddd�dd�Zdd�dd �Zd S )�BadMetadata�importlib.metadata.Distribution�str�None)�dist�reason�returnc C s || _ || _d S �N�r r )�selfr r � r �R/usr/local/lib/python3.9/site-packages/pip/_internal/metadata/importlib/_compat.py�__init__ s zBadMetadata.__init__�r c C s d| j � d| j� d�S )NzBad metadata in z (�)r �r r r r �__str__ s zBadMetadata.__str__N)�__name__� __module__�__qualname__r r r r r r r s r c @ s4 e Zd ZdZedd�dd��Zed d�dd��ZdS ) �BasePatha� A protocol that various path objects conform. This exists because importlib.metadata uses both ``pathlib.Path`` and ``zipfile.Path``, and we need a common base for type hints (Union does not work well since ``zipfile.Path`` is too new for our linter setup). This does not mean to be exhaustive, but only contains things that present in both classes *that we need*. r r c C s t � �d S r ��NotImplementedErrorr r r r �name s z BasePath.namec C s t � �d S r r r r r r �parent"