+
    ,j                        ^ RI Ht ^ RIt^ RIHt ^ RIHtHt ^ RIH	t	H
t
 ^ RIHt ^ RIHt ^ RIHt  ! R	 R
]4      t ! R R4      t ! R R]4      tR# )    )annotationsN)Enum)ListOptional)PyRecordPyLink)PrefixPaths)RepoDataRecord)Pathc                  &    ] tR t^tRtRtRtRtRtR# )LinkType N)hardlink)copy)softlink)	directory)	__name__
__module____qualname____firstlineno__HARDLINKCOPYSOFTLINK	DIRECTORY__static_attributes__r       <lib/python3.14/site-packages/rattler/prefix/prefix_record.pyr   r      s    HDHIr   r   c                  .    ] tR t^t$ R]R&   R R ltRtR# )Linkr   _innerc               $    V ^8  d   QhRRRRRR/# )   pathos.PathLike[str]typezOptional[LinkType]returnNoner   )formats   "r   __annotate__Link.__annotate__   s(     A A- A5G AD Ar   c                	N    \        Y'       d   VP                  MR 4      V n        R # N)r   valuer    )selfr#   r%   s   &&&r   __init__Link.__init__   s    T4::4@r   )r    N)r   r   r   r   __annotations__r/   r   r   r   r   r   r      s    NA Ar   r   c                     ] tR t^t]R R l4       tR%R R llt]R R l4       tR R	 lt	]
R
 R l4       t]P                  R R l4       t]
R R l4       t]P                  R R l4       t]
R R l4       t]P                  R R l4       t]
R R l4       t]P                  R R l4       t]
R R l4       t]P                  R R l4       t]
R R l4       t]P                  R  R! l4       tR" R# ltR$tR# )&PrefixRecordc                    V ^8  d   QhRRRR/# )r"   	py_recordr   r&   r3   r   )r(   s   "r   r)   PrefixRecord.__annotate__   s       \ r   c                \    VP                   '       g   Q hV P                  V 4      pWn        V# )z8Construct Rattler PrefixRecord from FFI PyRecord object.)is_prefix_record__new___record)clsr5   records   && r   _from_py_recordPrefixRecord._from_py_record   s.    
 )))))S!"r   Nc               <    V ^8  d   QhRRRRRRRRR	RR
RRRRRRR/	# )r"   repodata_recordr
   
paths_datar	   linkzOptional[Link]package_tarball_full_pathOptional[os.PathLike[str]]extracted_package_dirrequested_specOptional[str]requested_specszOptional[List[str]]filesz Optional[List[os.PathLike[str]]]r&   r'   r   )r(   s   "r   r)   r6   %   sd      '   	
 $>  : & - 0 
r   c	                	    \         P                  ! VP                  VP                  V'       d   VP                  MR VVVVVR7      p	Wn        R # )N)r@   rA   rB   rC   rE   rI   rF   rH   )r   create_prefix_recordr:   _pathsr    )
r.   r@   rA   rB   rC   rE   rF   rH   rI   r<   s
   &&&&&&&&& r   r/   PrefixRecord.__init__%   sG     ..+33!(( $$&?"7)+	
 r   c                    V ^8  d   QhRRRR/# )r"   r#   r$   r&   r3   r   )r(   s   "r   r)   r6   =   s     F F( F\ Fr   c                T    \         P                  \        P                  ! V 4      4      # )z
Parses a PrefixRecord from a file.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> assert isinstance(r, PrefixRecord)
>>>
```
)r3   r=   r   	from_path)r#   s   &r   rP   PrefixRecord.from_path<   s      ++H,>,>t,DEEr   c               $    V ^8  d   QhRRRRRR/# )r"   r#   r$   prettyboolr&   r'   r   )r(   s   "r   r)   r6   M   s"     1 1"2 1D 1T 1r   c                <    V P                   P                  W4       R# )zM
Writes the contents of this instance to the file at the specified location.
N)r:   write_to_path)r.   r#   rS   s   &&&r   rV   PrefixRecord.write_to_pathM   s     	""40r   c                   V ^8  d   QhRR/# r"   r&   zOptional[Path]r   )r(   s   "r   r)   r6   T   s     6 6> 6r   c                .    V P                   P                  # )a?  
The path to where the archive of the package was stored on disk.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> str(r.package_tarball_full_path)
'C:\\Users\\bas\\micromamba\\pkgs\\requests-2.28.2-pyhd8ed1ab_0.tar.bz2'
>>>
```
r:   rC   r.   s   &r   rC   &PrefixRecord.package_tarball_full_pathS   s      ||555r   c                    V ^8  d   QhRRRR/# r"   r-   rD   r&   r'   r   )r(   s   "r   r)   r6   f   s     7 7/I 7d 7r   c                	&    WP                   n        R # r,   r[   r.   r-   s   &&r   rC   r]   e   s    16.r   c                   V ^8  d   QhRR/# rY   r   )r(   s   "r   r)   r6   j   s     2 2~ 2r   c                .    V P                   P                  # )a(  
The path that contains the extracted package content.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> str(r.extracted_package_dir)
'C:\\Users\\bas\\micromamba\\pkgs\\requests-2.28.2-pyhd8ed1ab_0'
>>>
```
r:   rE   r\   s   &r   rE   "PrefixRecord.extracted_package_diri   s      ||111r   c                    V ^8  d   QhRRRR/# r_   r   )r(   s   "r   r)   r6   |   s     3 3+E 3$ 3r   c                	&    WP                   n        R # r,   rd   ra   s   &&r   rE   re   {   s    -2*r   c                   V ^8  d   QhRR/# )r"   r&   z
List[Path]r   )r(   s   "r   r)   r6      s     " "z "r   c                .    V P                   P                  # )z
A sorted list of all files included in this package

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> r.files # doctest:+ELLIPSIS
[...]
>>>
```
r:   rI   r\   s   &r   rI   PrefixRecord.files   s      ||!!!r   c                    V ^8  d   QhRRRR/# )r"   r-   zList[os.PathLike[str]]r&   r'   r   )r(   s   "r   r)   r6      s     # #1 #d #r   c                	&    WP                   n        R # r,   rj   ra   s   &&r   rI   rk      s    "r   c                   V ^8  d   QhRR/# )r"   r&   r	   r   )r(   s   "r   r)   r6      s     J JK Jr   c                V    \         P                  ! V P                  P                  4      # )a  
Information about how files have been linked when installing the package.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> r.paths_data # doctest:+ELLIPSIS
PrefixPaths(paths=[...])
>>>
```
)r	   _from_py_prefix_pathsr:   rA   r\   s   &r   rA   PrefixRecord.paths_data   s      001H1HIIr   c                    V ^8  d   QhRRRR/# )r"   r-   r	   r&   r'   r   )r(   s   "r   r)   r6      s     / / / /r   c                	<    VP                   V P                  n        R # r,   )rL   r:   rA   ra   s   &&r   rA   rq      s    "',,r   c                   V ^8  d   QhRR/# )r"   r&   rG   r   )r(   s   "r   r)   r6      s     + + +r   c                .    V P                   P                  # )a  
The spec that was used when this package was installed (deprecated).
Use requested_specs instead.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> r.requested_spec is None
True
>>>
```
r:   rF   r\   s   &r   rF   PrefixRecord.requested_spec   s    " ||***r   c                    V ^8  d   QhRRRR/# )r"   r-   rG   r&   r'   r   )r(   s   "r   r)   r6      s     , ,M ,d ,r   c                	&    WP                   n        R # r,   rv   ra   s   &&r   rF   rw      s    &+#r   c                   V ^8  d   QhRR/# )r"   r&   	List[str]r   )r(   s   "r   r)   r6      s     , , ,r   c                .    V P                   P                  # )aw  
The specs that were used when this package was installed.
If this package was not directly requested by the user but was instead
installed as a dependency of another package an empty list will be
returned.

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> r.requested_specs
[]
>>>
```
r:   rH   r\   s   &r   rH   PrefixRecord.requested_specs   s    & ||+++r   c                    V ^8  d   QhRRRR/# )r"   r-   r{   r&   r'   r   )r(   s   "r   r)   r6      s     - -Y -4 -r   c                	&    WP                   n        R # r,   r}   ra   s   &&r   rH   r~      s    ',$r   c                   V ^8  d   QhRR/# )r"   r&   strr   )r(   s   "r   r)   r6      s     X X# Xr   c                P    RV P                   P                   RV P                   R2# )z
Returns a representation of the version

Examples
--------
```python
>>> r = PrefixRecord.from_path(
...     "../test-data/conda-meta/requests-2.28.2-pyhd8ed1ab_0.json"
... )
>>> r
PrefixRecord(name="requests", version="2.28.2")
>>>
```
zPrefixRecord(name="z", version="z"))name
normalizedversionr\   s   &r   __repr__PrefixRecord.__repr__   s)     %TYY%9%9$:,t||nTVWWr   )r:   )NNNNNN)r   r   r   r   classmethodr=   r/   staticmethodrP   rV   propertyrC   setterrE   rI   rA   rF   rH   r   r   r   r   r   r3   r3      sT    . F F 1 6 6" %%7 &7 2 2" !!3 "3 " "" \\# # J J" / / + +$ , , , ,( - -X Xr   r3   )
__future__r   osenumr   typingr   r   rattler.rattlerr   r   rattler.prefix.prefix_pathsr	   rattler.repo_data.recordr
   pathlibr   r   r   r3   r   r   r   <module>r      sE    " 	  ! , 3 3 t A APX> PXr   