509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3
ct„j®<  ã               @   sˆ   d dl Z d dlmZ d dlmZ d dlmZ dddgZG dd	„ d	ƒZd
d„ Z	dd„ Z
G dd„ dee jd�Ze
G dd„ deƒƒZeƒ ZdS )é    N)Úheader)Úcharset)Ú_has_surrogatesÚPolicyÚCompat32Úcompat32c                   s<   e Zd Z‡ fdd„Zdd„ Zdd„ Zdd„ Zd	d
„ Z‡  ZS )Ú_PolicyBasec                sL   xF|j ƒ D ]:\}}t| |ƒr0tt| ƒj||ƒ q
tdj|| jjƒƒ‚q
W d S )Nz*{!r} is an invalid keyword argument for {})	ÚitemsÚhasattrÚsuperr   Ú__setattr__Ú	TypeErrorÚformatÚ	__class__Ú__name__)ÚselfÚkwÚnameÚvalue)r   © ú)/usr/lib64/python3.6/email/_policybase.pyÚ__init__)   s    
z_PolicyBase.__init__c             C   s*   dd„ | j jƒ D ƒ}dj| jjdj|ƒƒS )Nc             S   s   g | ]\}}d j ||ƒ‘qS )z{}={!r})r   )Ú.0r   r   r   r   r   ú
<listcomp>8   s   z(_PolicyBase.__repr__.<locals>.<listcomp>z{}({})z, )Ú__dict__r	   r   r   r   Újoin)r   Úargsr   r   r   Ú__repr__7   s    z_PolicyBase.__repr__c             K   sz   | j j| j ƒ}x$| jjƒ D ]\}}tj|||ƒ qW x@|jƒ D ]4\}}t| |ƒsdtdj|| j j	ƒƒ‚tj|||ƒ q>W |S )Nz*{!r} is an invalid keyword argument for {})
r   Ú__new__r   r	   Úobjectr   r
   r   r   r   )r   r   Z	newpolicyÚattrr   r   r   r   Úclone<   s    
z_PolicyBase.clonec             C   s,   t | |ƒrd}nd}t|j| jj|ƒƒ‚d S )Nz'{!r} object attribute {!r} is read-onlyz!{!r} object has no attribute {!r})r
   ÚAttributeErrorr   r   r   )r   r   r   Úmsgr   r   r   r   N   s    
z_PolicyBase.__setattr__c             C   s   | j f |jŽS )N)r!   r   )r   Úotherr   r   r   Ú__add__U   s    z_PolicyBase.__add__)	r   Ú
__module__Ú__qualname__r   r   r!   r   r%   Ú__classcell__r   r   )r   r   r      s
   r   c             C   s,   | j ddƒd } |jddƒd }| d | S )NÚ
é   r   )ÚrsplitÚsplit)ÚdocZ	added_docr   r   r   Ú_append_doc^   s    r.   c             C   s”   | j r(| j jdƒr(t| jd j | j ƒ| _ xf| jjƒ D ]X\}}|j r4|j jdƒr4x<dd„ | jD ƒD ](}tt||ƒdƒ}|r`t||j ƒ|_ P q`W q4W | S )Nú+r   c             s   s    | ]}|j ƒ D ]
}|V  qqd S )N)Úmro)r   ÚbaseÚcr   r   r   ú	<genexpr>h   s    z%_extend_docstrings.<locals>.<genexpr>Ú__doc__)r4   Ú
startswithr.   Ú	__bases__r   r	   Úgetattr)Úclsr   r    r2   r-   r   r   r   Ú_extend_docstringsc   s    
r9   c               @   s†   e Zd ZdZdZdZdZdZdZdZ	dd„ Z
d	d
„ Zdd„ Zejdd„ ƒZejdd„ ƒZejdd„ ƒZejdd„ ƒZejdd„ ƒZdS )r   Fr)   Z8bitéN   NTc             C   s   | j r
|‚| j||ƒ d S )N)Úraise_on_defectÚregister_defect)r   ÚobjÚdefectr   r   r   Úhandle_defect±   s    zPolicy.handle_defectc             C   s   |j j|ƒ d S )N)ZdefectsÚappend)r   r=   r>   r   r   r   r<   Ä   s    zPolicy.register_defectc             C   s   d S )Nr   )r   r   r   r   r   Úheader_max_countÑ   s    zPolicy.header_max_countc             C   s   t ‚d S )N)ÚNotImplementedError)r   Úsourcelinesr   r   r   Úheader_source_parseä   s    zPolicy.header_source_parsec             C   s   t ‚d S )N)rB   )r   r   r   r   r   r   Úheader_store_parseî   s    zPolicy.header_store_parsec             C   s   t ‚d S )N)rB   )r   r   r   r   r   r   Úheader_fetch_parseõ   s    	zPolicy.header_fetch_parsec             C   s   t ‚d S )N)rB   )r   r   r   r   r   r   Úfold   s    
zPolicy.foldc             C   s   t ‚d S )N)rB   )r   r   r   r   r   r   Úfold_binary  s    zPolicy.fold_binary)r   r&   r'   r;   ÚlinesepÚcte_typeÚmax_line_lengthÚmangle_from_Zmessage_factoryZverify_generated_headersr?   r<   rA   ÚabcÚabstractmethodrD   rE   rF   rG   rH   r   r   r   r   r   p   s   9
)Ú	metaclassc               @   sH   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Z	dd„ Z
dS )r   Tc             C   s0   t |tƒs|S t|ƒr(tj|tj|d�S |S d S )N)r   Úheader_name)Ú
isinstanceÚstrr   r   ÚHeaderÚ_charsetÚUNKNOWN8BIT)r   r   r   r   r   r   Ú_sanitize_header!  s    

zCompat32._sanitize_headerc             C   s>   |d j ddƒ\}}|jdƒdj|dd … ƒ }||jdƒfS )Nr   ú:r*   z 	Ú z
)r,   Úlstripr   Úrstrip)r   rC   r   r   r   r   r   rD   -  s    zCompat32.header_source_parsec             C   s   ||fS )Nr   )r   r   r   r   r   r   rE   9  s    zCompat32.header_store_parsec             C   s   | j ||ƒS )N)rV   )r   r   r   r   r   r   rF   ?  s    zCompat32.header_fetch_parsec             C   s   | j ||dd�S )NT)Úsanitize)Ú_fold)r   r   r   r   r   r   rG   F  s    zCompat32.foldc             C   s"   | j ||| jdkd�}|jddƒS )NZ7bit)r[   ÚasciiÚsurrogateescape)r\   rJ   Úencode)r   r   r   Zfoldedr   r   r   rH   P  s    	zCompat32.fold_binaryc             C   s¨   g }|j d| ƒ t|tƒr\t|ƒrL|r<tj|tj|d�}qZ|j |ƒ d }q`tj||d�}n|}|d k	r’d}| jd k	r|| j}|j |j	| j
|d�ƒ |j | j
ƒ dj|ƒS )Nz%s: )r   rP   )rP   r   )rI   Ú
maxlinelenrX   )r@   rQ   rR   r   r   rS   rT   rU   rK   r_   rI   r   )r   r   r   r[   ÚpartsÚhr`   r   r   r   r\   \  s&    



zCompat32._foldN)r   r&   r'   rL   rV   rD   rE   rF   rG   rH   r\   r   r   r   r   r     s   
)rM   Zemailr   r   rT   Zemail.utilsr   Ú__all__r   r.   r9   ÚABCMetar   r   r   r   r   r   r   Ú<module>   s   L (f