/opt/alt/python312/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__
� �o�a�>�� � � d dl Z d dlZd dlmZmZmZmZmZmZm Z m Z d dlmZ ddl mZmZmZ ddlmZ ddlmZ erd dlmZ d d lmZ eeef Zeeeef ZneZ e d � Z e d� Zdeeef d edede eef fd�Z G d� de� Zy)� N)� TYPE_CHECKING�Dict�Iterable�Iterator�Mapping�Sequence�TypeVar�Union)�AbstractProvider� )� Candidate� Constraint�Requirement)�REQUIRES_PYTHON_IDENTIFIER)�Factory)� Preference)�RequirementInformation�D�V�mapping� identifier�default�returnc �X � || v r| | S |j d� \ }}}|r || v r| | S |S )ai Get item from a package name lookup mapping with a resolver identifier. This extra logic is needed when the target mapping is keyed by package name, which cannot be directly looked up with an identifier (which may contain requested extras). Additional logic is added to also look up a value by "cleaning up" the extras from the identifier. �[)� partition)r r r �name�open_bracket�_s ��/builddir/build/BUILDROOT/alt-python312-pip-23.3.1-1.el9.x86_64/opt/alt/python312/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/provider.py�_get_with_identifierr! 5 sH � � �W���z�"�"� '�0�0��5��D�,�������t�}���N� c �: � e Zd ZdZdedeeef dededeee f ddfd �Z d eee f defd�Zded eee f deeee f deeed f ded ddfd�Zdedeeee f deeee f dee fd�Zdede defd�Zde dee fd�Zededed defd�� Zy)�PipProvidera� Pip's provider implementation for resolvelib. :params constraints: A mapping of constraints specified by the user. Keys are canonicalized project names. :params ignore_dependencies: Whether the user specified ``--no-deps``. :params upgrade_strategy: The user-specified upgrade strategy. :params user_requested: A set of canonicalized package names that the user supplied for pip to install/upgrade. �factory�constraints�ignore_dependencies�upgrade_strategy�user_requestedr Nc � � || _ || _ || _ || _ || _ t j d� � | _ y )Nc �"