U
    M}ægN  ã                   @   s^   d Z ddlmZmZmZ er.ddlmZmZ ne ZZeee dœdd„Z	ee
dœd	d
„ZdS )z)
Compatibility layer with Python 3.8/3.9
é    )ÚTYPE_CHECKINGÚAnyÚOptionalé   )ÚDistributionÚ
EntryPoint)ÚdistÚreturnc              	   C   sJ   z| j W S  tk
rD   ddlm} | t| ddƒp<| jd ¡ Y S X dS )z]
    Honor name normalization for distributions that don't provide ``_normalized_name``.
    r   )ÚPreparedÚnameNÚName)Z_normalized_nameÚAttributeErrorÚ r
   Ú	normalizeÚgetattrÚmetadata)r   r
   © r   úB/tmp/pip-unpacked-wheel-kez9zh7z/importlib_metadata/compat/py39.pyÚnormalized_name   s
    r   )Úepr	   c                 K   sN   z| j f |ŽW S  tk
rH   ddlm} || j| j| jƒj f |Ž Y S X dS )zO
    Workaround for ``EntryPoint`` objects without the ``matches`` method.
    r   )r   N)Úmatchesr   r   r   r   ÚvalueÚgroup)r   Úparamsr   r   r   r   Ú
ep_matches   s
    r   N)Ú__doc__Útypingr   r   r   r   r   r   Ústrr   Úboolr   r   r   r   r   Ú<module>   s   