U
    āh`  ć                   @   s¾  d Z ddlmZ ddlmZ ddlmZ ddlmZ G dd deZG dd	 d	eZ	G d
d de	Z
G dd de	ZG dd deeZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZeZG d d! d!eZG d"d# d#eZG d$d% d%eZG d&d' d'eZG d(d) d)eZG d*d+ d+eZG d,d- d-eZG d.d/ d/eZG d0d1 d1eZ G d2d3 d3eZ!G d4d5 d5eZ"d6S )7z email package exception classes.é    )Śunicode_literals)Śdivision)Śabsolute_import)Śsuperc                   @   s   e Zd ZdZdS )ŚMessageErrorz+Base class for errors in the email package.N©Ś__name__Ś
__module__Ś__qualname__Ś__doc__© r   r   śO/var/www/html/venv/lib/python3.8/site-packages/future/backports/email/errors.pyr      s   r   c                   @   s   e Zd ZdZdS )ŚMessageParseErrorz&Base class for message parsing errors.Nr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ŚHeaderParseErrorzError while parsing headers.Nr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ŚBoundaryErrorz#Couldn't find terminating boundary.Nr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ŚMultipartConversionErrorz(Conversion to a multipart is prohibited.Nr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdZdS )ŚCharsetErrorzAn illegal charset was given.Nr   r   r   r   r   r       s   r   c                       s"   e Zd ZdZd fdd	Z  ZS )ŚMessageDefectz Base class for a message defect.Nc                    s   |d k	rt   |” || _d S ©N)r   Ś__init__Śline)Śselfr   ©Ś	__class__r   r   r   (   s    zMessageDefect.__init__)N©r   r	   r
   r   r   Ś__classcell__r   r   r   r   r   %   s   r   c                   @   s   e Zd ZdZdS )ŚNoBoundaryInMultipartDefectzBA message claimed to be a multipart but had no boundary parameter.Nr   r   r   r   r   r   -   s   r   c                   @   s   e Zd ZdZdS )ŚStartBoundaryNotFoundDefectz+The claimed start boundary was never found.Nr   r   r   r   r   r   0   s   r   c                   @   s   e Zd ZdZdS )ŚCloseBoundaryNotFoundDefectzEA start boundary was found, but not the corresponding close boundary.Nr   r   r   r   r   r   3   s   r   c                   @   s   e Zd ZdZdS )Ś#FirstHeaderLineIsContinuationDefectz;A message had a continuation line as its first header line.Nr   r   r   r   r   r   6   s   r   c                   @   s   e Zd ZdZdS )ŚMisplacedEnvelopeHeaderDefectz?A 'Unix-from' header was found in the middle of a header block.Nr   r   r   r   r   r    9   s   r    c                   @   s   e Zd ZdZdS )Ś MissingHeaderBodySeparatorDefectzEFound line with no leading whitespace and no colon before blank line.Nr   r   r   r   r   r!   <   s   r!   c                   @   s   e Zd ZdZdS )Ś!MultipartInvariantViolationDefectz?A message claimed to be a multipart but no subparts were found.Nr   r   r   r   r   r"   A   s   r"   c                   @   s   e Zd ZdZdS )Ś-InvalidMultipartContentTransferEncodingDefectzEAn invalid content transfer encoding was set on the multipart itself.Nr   r   r   r   r   r#   D   s   r#   c                   @   s   e Zd ZdZdS )ŚUndecodableBytesDefectz0Header contained bytes that could not be decodedNr   r   r   r   r   r$   G   s   r$   c                   @   s   e Zd ZdZdS )ŚInvalidBase64PaddingDefectz/base64 encoded sequence had an incorrect lengthNr   r   r   r   r   r%   J   s   r%   c                   @   s   e Zd ZdZdS )ŚInvalidBase64CharactersDefectz=base64 encoded sequence had characters not in base64 alphabetNr   r   r   r   r   r&   M   s   r&   c                       s    e Zd ZdZ fddZ  ZS )ŚHeaderDefectzBase class for a header defect.c                    s   t  j|| d S r   )r   r   )r   ŚargsŚkwr   r   r   r   U   s    zHeaderDefect.__init__r   r   r   r   r   r'   R   s   r'   c                   @   s   e Zd ZdZdS )ŚInvalidHeaderDefectz+Header is not valid, message gives details.Nr   r   r   r   r   r*   X   s   r*   c                   @   s   e Zd ZdZdS )ŚHeaderMissingRequiredValuez(A header that must have a value had noneNr   r   r   r   r   r+   [   s   r+   c                       s(   e Zd ZdZ fddZdd Z  ZS )ŚNonPrintableDefectz8ASCII characters outside the ascii-printable range foundc                    s   t   |” || _d S r   )r   r   Śnon_printables)r   r-   r   r   r   r   a   s    zNonPrintableDefect.__init__c                 C   s   d  | j”S )Nz6the following ASCII non-printables found in header: {})Śformatr-   )r   r   r   r   Ś__str__e   s    ’zNonPrintableDefect.__str__)r   r	   r
   r   r   r/   r   r   r   r   r   r,   ^   s   r,   c                   @   s   e Zd ZdZdS )ŚObsoleteHeaderDefectz0Header uses syntax declared obsolete by RFC 5322Nr   r   r   r   r   r0   i   s   r0   c                   @   s   e Zd ZdZdS )ŚNonASCIILocalPartDefectz(local_part contains non-ASCII charactersNr   r   r   r   r   r1   l   s   r1   N)#r   Ś
__future__r   r   r   Zfuture.builtinsr   Ś	Exceptionr   r   r   r   Ś	TypeErrorr   r   Ś
ValueErrorr   r   r   r   r   r    r!   ŚMalformedHeaderDefectr"   r#   r$   r%   r&   r'   r*   r+   r,   r0   r1   r   r   r   r   Ś<module>   s:   