a
    äIþfŽ  ã                   @   s®  d 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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 d-d.„ d.eƒZG d/d0„ d0eƒZG d1d2„ d2eƒZG d3d4„ d4eƒZd5S )6z email package exception classes.c                   @   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   úlib/python3.9/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S )ÚHeaderWriteErrorzError while writing headers.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 urt ƒ  |¡ || _d S ©N)ÚsuperÚ__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dS )ÚInvalidBase64LengthDefectz4base64 encoded sequence had invalid length (1 mod 4)Nr   r   r   r   r   r$   P   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|i |¤Ž d S r   )r   r   )r   ÚargsÚkwr   r   r   r   X   s    zHeaderDefect.__init__r   r   r   r   r   r%   U   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(   [   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   d   s    zNonPrintableDefect.__init__c                 C   s   d  | j¡S )Nz6the following ASCII non-printables found in header: {})Úformatr+   )r   r   r   r   Ú__str__h   s    ÿzNonPrintableDefect.__str__)r   r   r   r   r   r-   r   r   r   r   r   r*   a   s   r*   c                   @   s   e Zd ZdZdS )ÚObsoleteHeaderDefectz0Header uses syntax declared obsolete by RFC 5322Nr   r   r   r   r   r.   l   s   r.   c                   @   s   e Zd ZdZdS )ÚNonASCIILocalPartDefectz(local_part contains non-ASCII charactersNr   r   r   r   r   r/   o   s   r/   N)r   Ú	Exceptionr   r	   r
   r   Ú	TypeErrorr   r   r   Ú
ValueErrorr   r   r   r   r   r   r   ZMalformedHeaderDefectr   r    r!   r"   r#   r$   r%   r(   r)   r*   r.   r/   r   r   r   r   Ú<module>   s6   