Ë
    tPêjÔ  ã                  ó¤   — d Z ddlmZ ddlmZmZ ddlmZ ddlm	Z	 ddl
mZ dZ G d„ d	e«      Z G d
„ de«      Z G d„ de«      Z G d„ de«      Zy)zo
Interfaces for interacting with "dependency sources", i.e. sources
of fully resolved Python dependency trees.
é    )Úannotations)ÚABCÚabstractmethod)ÚIterator)ÚResolvedFixVersion)Ú
Dependencyzhttps://pypi.org/simple/c                  ó4   — e Zd ZdZedd„«       Zedd„«       Zy)ÚDependencySourcezÝ
    Represents an abstract source of fully-resolved Python dependencies.

    Individual concrete dependency sources (e.g. `pip list`) are expected
    to subclass `DependencySource` and implement it in their terms.
    c                ó   — t         ‚)z8
        Yield the dependencies in this source.
        ©ÚNotImplementedError)Úselfs    úk/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/pip_audit/_dependency_source/interface.pyÚcollectzDependencySource.collect   ó
   € ô
 "Ð!ó    c                ó   — t         ‚)z@
        Upgrade a dependency to the given fix version.
        r   )r   Úfix_versions     r   ÚfixzDependencySource.fix    r   r   N)ÚreturnzIterator[Dependency])r   r   r   ÚNone)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   © r   r   r
   r
      s/   „ ñð ò"ó ð"ð ò"ó ñ"r   r
   c                  ó   — e Zd ZdZy)ÚDependencySourceErrorz°
    Raised when a `DependencySource` fails to provide its dependencies.

    Concrete implementations are expected to subclass this exception to
    provide more context.
    N©r   r   r   r   r   r   r   r   r   (   s   „ ñð 	r   r   c                  ó   — e Zd ZdZy)ÚDependencyFixErrorzí
    Raised when a `DependencySource` fails to perform a "fix" operation, i.e.
    fails to upgrade a package to a different version.

    Concrete implementations are expected to subclass this exception to provide
    more context.
    Nr   r   r   r   r!   r!   3   s   „ ñð 	r   r!   c                  ó   — e Zd ZdZy)ÚInvalidRequirementSpecifierzi
    A `DependencySourceError` specialized for the case of a non-PEP 440 requirements
    specifier.
    Nr   r   r   r   r#   r#   ?   s   „ ñð
 	r   r#   N)r   Ú
__future__r   Úabcr   r   Úcollections.abcr   Úpip_audit._fixr   Úpip_audit._servicer   ÚPYPI_URLr
   Ú	Exceptionr   r!   r#   r   r   r   ú<module>r+      sQ   ðñõ
 #ç #Ý $å -Ý )à%€ô"�sô "ô.	˜Iô 	ô		˜ô 		ô	Ð"7õ 	r   