§
    ƒnóc2
  ã                  ó˜   — d dl mZ d dlZd dlZddlmZmZ ddlmZ ddl	m
Z
mZ ej        rddlmZ dd	lmZ  G d
„ de¦  «        Zdd„ZdS )é    )ÚannotationsNé   )ÚExtensionModuleÚ
ModuleInfoé   )Úmesonlib)ÚnoKwargsÚtyped_pos_args)ÚInterpreter)ÚModuleStatec                  óž   ‡ — e Zd Z eddd¬¦  «        Zdˆ fd„Zedd„¦   «         Ze e	de
ej        f¦  «        dd„¦   «         ¦   «         Zˆ xZS )ÚKeyvalModuleÚkeyvalz0.55.0z0.56.0)Ú
stabilizedÚinterpú'Interpreter'c                óŒ   •— t          ¦   «                              |¦  «         | j                             d| j        i¦  «         d S )NÚload)ÚsuperÚ__init__ÚmethodsÚupdater   )Úselfr   Ú	__class__s     €ú;/usr/lib/python3/dist-packages/mesonbuild/modules/keyval.pyr   zKeyvalModule.__init__   sK   ø€ Ý‰Œ×Ò˜Ñ Ô Ð ØŒ×ÒØ�D”Ið
ñ 	ô 	ð 	ð 	ð 	ó    Úpath_to_configÚstrÚreturnúT.Dict[str, str]c                óÚ  — i }	 t          | d¬¦  «        5 }|D ]�}d|v r|                     d¦  «        }|d |…         }|                     ¦   «         }	 |                     dd¦  «        \  }}n# t          $ r Y Œ`w xY w|                     ¦   «         ||                     ¦   «         <   ŒŽ	 d d d ¦  «         n# 1 swxY w Y   n,# t
          $ r}t          j        d| › d|› �¦  «        ‚d }~ww xY w|S )Nzutf-8)Úencodingú#ú=r   zFailed to load z: )ÚopenÚindexÚstripÚsplitÚ
ValueErrorÚOSErrorr   ÚMesonException)r   ÚresultÚfÚlineÚcomment_idxÚnameÚvalÚes           r   Ú
_load_filezKeyvalModule._load_file%   sc  € à#%ˆð	SÝ�n¨wÐ7Ñ7Ô7ð 
7¸1Øð 	7ð 	7�DØ˜d�{�{Ø&*§j¢j°¡o¤o˜Ø# L [ LÔ1˜ØŸ:š:™<œ<�Dð!Ø$(§J¢J¨s°AÑ$6Ô$6™	˜˜c˜cøÝ%ð !ð !ð !Ø ˜ð!øøøà+.¯9ª9©;¬;�F˜4Ÿ:š:™<œ<Ñ(Ð(ð	7ð
7ð 
7ð 
7ñ 
7ô 
7ð 
7ð 
7ð 
7ð 
7ð 
7ð 
7øøøð 
7ð 
7ð 
7ð 
7øøõ ð 	Sð 	Sð 	SÝÔ)Ð*Q¸NÐ*QÐ*QÈaÐ*QÐ*QÑRÔRÐRøøøøð	Søøøð ˆs^   „B? •<B3ÁA,Á+B3Á,
A9Á6B3Á8A9Á9-B3Â'B? Â3B7Â7B? Â:B7Â;B? Â?
C(Ã	C#Ã#C(zkeyval.laodÚstateú'ModuleState'Úargsú T.Tuple['mesonlib.FileOrString']ÚkwargsúT.Dict[str, T.Any]c                ó�  — |d         }d}t          |t          j        ¦  «        r>|p|j        }|                     | j        j        j        | j        j        j        ¦  «        }n/t          j
                             | j        j        j        |¦  «        }|s| j        j                             |¦  «         |                      |¦  «        S )Nr   F)Ú
isinstancer   ÚFileÚis_builtÚabsolute_pathÚinterpreterÚenvironmentÚ
source_dirÚ	build_dirÚosÚpathÚjoinÚbuild_def_filesÚaddr3   )r   r4   r6   r8   Úsr=   s         r   r   zKeyvalModule.load9   s¬   € ð �ŒGˆØˆÝ�a�œÑ'Ô'ð 	IØÐ- 1¤:ˆHØ—’ Ô 0Ô <Ô GÈÔIYÔIeÔIoÑpÔpˆAˆAå”—’˜TÔ-Ô9ÔDÀaÑHÔHˆAàð 	4ØÔÔ,×0Ò0°Ñ3Ô3Ð3à�Š˜qÑ!Ô!Ð!r   )r   r   )r   r   r   r    )r4   r5   r6   r7   r8   r9   r   r    )Ú__name__Ú
__module__Ú__qualname__r   ÚINFOr   Ústaticmethodr3   r	   r
   r   r   r<   r   Ú__classcell__)r   s   @r   r   r      s±   ø€ € € € € àˆ:�h °XÐ>Ñ>Ô>€Dðð ð ð ð ð ð ðð ð ñ „\ðð& Ø€^�M C¨¬Ð#7Ñ8Ô8ð"ð "ð "ñ 9Ô8ñ „Xð"ð "ð "ð "ð "r   r   r   r   r   c                ó    — t          | ¦  «        S )N)r   )r   s    r   Ú
initializerP   J   s   € Ý˜ÑÔÐr   )r   r   r   r   )Ú
__future__r   rC   ÚtypingÚTÚ r   r   r   Úinterpreterbaser	   r
   ÚTYPE_CHECKINGr?   r   r   r   rP   © r   r   ú<module>rX      sç   ðð #Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø Ð Ð Ð à )Ð )Ð )Ð )Ð )Ð )Ð )Ð )Ø Ð Ð Ð Ð Ð Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6à„?ð Ø)Ð)Ð)Ð)Ð)Ð)ØÐÐÐÐÐð,"ð ,"ð ,"ð ,"ð ,"�?ñ ,"ô ,"ð ,"ð^ ð  ð  ð  ð  ð  r   