o
    uJAfÌ  ã                   @  s^   d dl mZ d dlZddlmZ ejrddlmZmZ G dd„ deƒZ	ddd„Z
ddd„ZdS )é    )ÚannotationsNé   )ÚMesonInterpreterObject)ÚTYPE_varÚTYPE_kwargsc                   @  s   e Zd Zdd	d
„ZdS )ÚDisablerÚmethod_nameÚstrÚargsúT.List[TYPE_var]Úkwargsr   Úreturnr   c                 C  s   |dkrdS t ƒ S )NÚfoundF)r   )Úselfr   r
   r   © r   úH/usr/lib/python3.10/site-packages/mesonbuild/interpreterbase/disabler.pyÚmethod_call   s   zDisabler.method_callN)r   r	   r
   r   r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r      s    r   ÚargúT.Anyr   Úboolc                 C  s4   t | tƒrdS t | tƒr| D ]	}t|ƒr dS qdS ©NTF)Ú
isinstancer   ÚlistÚ_is_arg_disabled)r   Úir   r   r   r      s   

ÿr   r
   úT.Sequence[T.Any]r   úT.Dict[str, T.Any]c                 C  s8   | D ]	}t |ƒr dS q| ¡ D ]	}t |ƒr dS qdS r   )r   Úvalues)r
   r   r   r   r   r   Úis_disabled&   s   ÿÿr!   )r   r   r   r   )r
   r   r   r   r   r   )Ú
__future__r   ÚtypingÚTÚbaseobjectsr   ÚTYPE_CHECKINGr   r   r   r   r!   r   r   r   r   Ú<module>   s   
	