a XC?h��@stgd�ZddlmZmZddlmZmZddlmZGdd�d�Z Gdd�de �Z Gd d �d �Z Gd d �d e �Z d S))�Parser� HeaderParser� BytesParser�BytesHeaderParser� FeedParser�BytesFeedParser�)�StringIO� TextIOWrapper)rr)�compat32c@s0eZdZd ed�dd�Zd dd�Zd dd �ZdS) rN��policycCs||_||_dS�N)�_classr )�selfrr �r�1/opt/alt/python39/lib64/python3.9/email/parser.py�__init__szParser.__init__FcCs@t|j|jd�}|r|��|�d�}|s,q8|�|�q|��S)Nr i )rrr Z_set_headersonly�readZfeed�close)r�fp� headersonlyZ feedparser�datarrr�parse)s  z Parser.parsecCs|jt|�|d�S)N�r)rr�r�textrrrr�parsestr;szParser.parsestr)N)F)F)�__name__� __module__� __qualname__r rrrrrrrrs rc@s eZdZddd�Zddd�ZdS) rTcCst�||d�S�NT)rr�rrrrrrrHszHeaderParser.parsecCst�||d�Sr )rrrrrrrKszHeaderParser.parsestrN)T)T)rrrrrrrrrrGs rc@s(eZdZdd�Zd dd�Zd dd�ZdS) rcOst|i|��|_dSr )r�parser)r�args�kwrrrrQszBytesParser.__init__FcCs6t|ddd�}z|j�||�W|��S|��0dS)N�ascii�surrogateescape)�encoding�errors)r r"r�detachr!rrrrcs �zBytesParser.parsecCs|jddd�}|j�||�S)N�ASCIIr&)r()�decoder"rrrrr� parsebytesrszBytesParser.parsebytesN)F)F)rrrrrr,rrrrrOs rc@s eZdZddd�Zddd�ZdS) rTcCstj||dd�S�NTr)rrr!rrrrszBytesHeaderParser.parsecCstj||dd�Sr-)rr,rrrrr,�szBytesHeaderParser.parsebytesN)T)T)rrrrr,rrrrr~s rN) �__all__�iorr Zemail.feedparserrrZemail._policybaser rrrrrrrr�s 7/