o
    i	                     @   sp   d dl Zd dlZd dlZd dlZd dlZddlmZ ddlm	Z	 ej
ejdeeddZG dd	 d	ejjZdS )
    N   )pypy_partial)
FoldedCasezFImplicit None on return values is deprecated and will raise KeyErrors.   )
stacklevelc                       sn   e Zd Zeeeg dZ	 dejj	f fddZ
dd Z fddZ fd	d
Zdd Zedd Z  ZS )Message)

ClassifierzObsoletes-DistPlatformzProject-URLzProvides-DistzProvides-ExtrazRequires-DistzRequires-ExternalzSupported-PlatformDynamicorigc                    s"   t  | }t|t| |S N)super__new__varsupdate)clsr   res	__class__ k/var/www/edux/Edux_v2/venv/lib/python3.10/site-packages/mysql/opentelemetry/importlib_metadata/_adapters.pyr   )   s   zMessage.__new__c                 O   s   |   | _d S r   )_repair_headers_headers)selfargskwargsr   r   r   __init__.   s   zMessage.__init__c                    s
   t   S r   )r   __iter__r   r   r   r   r   2   s   
zMessage.__iter__c                    s   t  |}|du rt  |S )z
        Warn users that a ``KeyError`` can be expected when a
        mising key is supplied. Ref python/importlib_metadata#371.
        N)r   __getitem___warn)r   itemr   r   r   r   r   5   s   zMessage.__getitem__c                    s>   dd   fddt | d D }| jr|d|  f |S )Nc                 S   s   | rd| vr| S t d|  S )zCorrect for RFC822 indentation
z        )textwrapdedent)valuer   r   r   redent@   s   z'Message._repair_headers.<locals>.redentc                    s   g | ]
\}}| |fqS r   r   ).0keyr%   r&   r   r   
<listcomp>F   s    z+Message._repair_headers.<locals>.<listcomp>r   Description)r   _payloadappendget_payload)r   headersr   r)   r   r   ?   s
   zMessage._repair_headersc                    s     fdd}t t|tt S )z[
        Convert PackageMetadata to a JSON-compatible format
        per PEP 0566.
        c                    sH   |  j v r
 | n |  }| dkrtd|}|  dd}||fS )NKeywordsz\s+-_)multiple_use_keysget_allresplitlowerreplace)r(   r%   tkr   r   r   	transformR   s
   zMessage.json.<locals>.transform)dictmapr   )r   r:   r   r   r   jsonK   s   zMessage.json)__name__
__module____qualname__setr<   r   r3   emailmessager   r   r   r   r   r   propertyr=   __classcell__r   r   r   r   r      s    
r   )email.messagerB   	functoolsr5   r#   warnings_compatr   _textr   partialwarnDeprecationWarningr    rC   r   r   r   r   r   <module>   s    