
    wBf                         d Z ddlmZ ddlmZmZmZmZmZm	Z	m
Z
 ddlmZ ddlmZ ddlmZmZ  ee      Z G d	 d
e      Z G d de      Z G d de      Z G d de      Z G d de      Zy)z5(Legacy) Low-level implementation of a PackageRecord.    )	getLogger   )ComposableFieldEntity	EnumFieldImmutableEntityIntegerField	ListFieldStringField   )Channel)
NoarchType)PackageRecord	PathsDatac                        e Zd Z fdZ xZS )NoarchFieldc                 L    t         |   ||t        j                  |            S N)superboxr   coerce)selfinstanceinstance_typeval	__class__s       9lib/python3.12/site-packages/conda/models/package_info.pyr   zNoarchField.box   s!    w{8]J4E4Ec4JKK    )__name__
__module____qualname__r   __classcell__)r   s   @r   r   r      s    L Lr   r   c                   6    e Zd Z ee      Z eedddd      Zy)NoarchFTNrequirednullabledefaultdefault_in_dump)	r   r    r!   r   r   typer
   strentry_points r   r   r$   r$      s!    z"DedD%Lr   r$   c                   F    e Zd Z e       Z eedd      Z eedd      Zy)PreferredEnvFTr&   r'   N)	r   r    r!   r   namer
   r+   executable_pathssoftlink_pathsr-   r   r   r/   r/   #   s&    =D utDsUTBNr   r/   c                   J    e Zd Z e       Z eedd      Z eedddd      Z	y)PackageMetadataFTr0   Nr%   )
r   r    r!   r	   package_metadata_versionr   r$   noarchr/   preferred_envr-   r   r   r5   r5   )   s.    +~VedCF#utTSXMr   r5   c                       e Zd Z e       Z e       Z ee      Z ee	      Z
 e       Z edd      Z eedd      Z ee      Zd Zed        Zed        Zed        Zed        Zy	)
PackageInfoFTr0   c                     | j                   j                   d| j                   d| j                   d| j                   S )Nz::-)channelcanonical_namer1   versionbuildr   s    r   dist_strzPackageInfo.dist_str?   s6    ,,--.b1T\\N!DJJ<XXr   c                 .    | j                   j                  S r   )repodata_recordr1   rA   s    r   r1   zPackageInfo.nameB   s    ##(((r   c                 .    | j                   j                  S r   )rD   r?   rA   s    r   r?   zPackageInfo.versionF   s    ##+++r   c                 .    | j                   j                  S r   )rD   r@   rA   s    r   r@   zPackageInfo.buildJ   s    ##)))r   c                 .    | j                   j                  S r   )rD   build_numberrA   s    r   rH   zPackageInfo.build_numberN   s    ##000r   N)r   r    r!   r   extracted_package_dirpackage_tarball_full_pathr   r   r=   r   rD   urlicondatar5   package_metadatar   
paths_datarB   propertyr1   r?   r@   rH   r-   r   r   r:   r:   2   s    'M +g&G%m4O
-C ED9H&QUV +JY ) ) , , * * 1 1r   r:   N)__doc__loggingr   auxlib.entityr   r   r   r   r	   r
   r   r=   r   enumsr   recordsr   r   r   logr   r$   r/   r5   r:   r-   r   r   <module>rV      sq    <      -L) L
V C6 Cf 1/ 1r   