
    z%io                         	 g d Z ddlmZmZ ddlmZmZ ddlmZ  G d d      Z	 G d de	      Z
 G d	 d
      Z G d de      Zy))ParserHeaderParserBytesParserBytesHeaderParser
FeedParserBytesFeedParser    )StringIOTextIOWrapper)r   r   )compat32c                   *    e Zd ZdeddZddZddZy)r   Npolicyc                "    	 || _         || _        y N)_classr   )selfr   r   s      @/home/uftp/.pyenv/versions/3.12.0/lib/python3.12/email/parser.py__init__zParser.__init__   s    	(     c                     	 t        | j                  | j                        }|r|j                          |j	                  d      x}r%|j                  |       |j	                  d      x}r%|j                         S )Nr   i    )r   r   r   _set_headersonlyreadfeedclose)r   fpheadersonly
feedparserdatas        r   parsezParser.parse)   so    	  DKK@
'')ggdm#d#OOD! ggdm#d#!!r   c                 <    	 | j                  t        |      |      S )Nr   )r   r	   r   textr   s      r   parsestrzParser.parsestr8   s     	 zz(4.kzBBr   r   F)__name__
__module____qualname__r   r   r   r$    r   r   r   r      s    h 0"Cr   r   c                       e Zd ZddZddZy)r   c                 0    t         j                  | |d      S NT)r   r   r   r   r   s      r   r   zHeaderParser.parseD   s    ||D"d++r   c                 0    t         j                  | |d      S r,   )r   r$   r"   s      r   r$   zHeaderParser.parsestrG   s    tT400r   NT)r&   r'   r(   r   r$   r)   r   r   r   r   C   s    ,1r   r   c                   "    e Zd Zd ZddZddZy)r   c                 &    	 t        |i || _        y r   )r   parser)r   argskws      r   r   zBytesParser.__init__M   s    	 d)b)r   c                     	 t        |dd      }	 | j                  j                  ||      |j                          S # |j                          w xY w)Nasciisurrogateescape)encodingerrors)r
   r2   r   detachr-   s      r   r   zBytesParser.parse_   sD    	 28IJ	;;$$R5IIKBIIKs	   = Ac                 b    	 |j                  dd      }| j                  j                  ||      S )NASCIIr7   )r9   )decoder2   r$   r"   s      r   
parsebyteszBytesParser.parsebytesn   s3    	 {{7+<{={{##D+66r   Nr%   )r&   r'   r(   r   r   r>   r)   r   r   r   r   K   s    *$	7r   r   c                       e Zd ZddZddZy)r   c                 2    t         j                  | |d      S NTr!   )r   r   r-   s      r   r   zBytesHeaderParser.parse{   s      rt <<r   c                 2    t         j                  | |d      S rA   )r   r>   r"   s      r   r>   zBytesHeaderParser.parsebytes~   s    %%dDd%CCr   Nr/   )r&   r'   r(   r   r>   r)   r   r   r   r   z   s    =Dr   r   N)__all__ior	   r
   email.feedparserr   r   email._policybaser   r   r   r   r   r)   r   r   <module>rG      sN   
 4, ' 8 &0C 0Cf16 1,7 ,7^D Dr   