
    -Ph                    f    d dl mZ d dlZd dlmZmZ d dlZej	        rddl
mZ  G d d          ZdS )    )annotationsN)PurePosixPathPath   )Environmentc                  &    e Zd ZddZddZdd
ZdS )DataFilepathstrreturnNonec                .    t          |          | _        d S )N)r   r
   )selfr
   s     T/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/mesonbuild/mesondata.py__init__zDataFile.__init__   s    !$''			    r   c                   |                                 sxt          j                            d| j        j        z                                                      dd          | j        j        d          }|	                    |d           d S d S )N
mesonbuild/.zutf-8)encoding)
exists	importlib	resources	read_textr
   parentas_posixreplacename
write_text)r   r
   datas      r   
write_oncezDataFile.write_once   s    {{}} 	4&00!DI$44>>@@HHcRRIN$ 1 & &D OOD7O33333	4 	4r   env'Environment'c                N   	 t           j                            d          | j        z  }t	          |t
                    r|S n# t          $ r Y nw xY wt          |j                  dz  | j        j        z  }|j	        
                    d           |                     |           |S )Nr   r!   T)exist_ok)r   r   filesr
   
isinstancer   AttributeErrorscratch_dirr   r   mkdirr"   )r   r#   resourceout_files       r   write_to_privatezDataFile.write_to_private   s    	 *00>>JH(D))    	 	 	D	 ((61DINBt,,,!!!s   =A 
AAN)r
   r   r   r   )r
   r   r   r   )r#   r$   r   r   )__name__
__module____qualname__r   r"   r.    r   r   r	   r	      sP        ( ( ( (4 4 4 4     r   r	   )
__future__r   importlib.resourcesr   pathlibr   r   typingTTYPE_CHECKINGenvironmentr   r	   r2   r   r   <module>r:      s    # " " " " "     ' ' ' ' ' ' ' '    ? )((((((         r   