Your IP : 3.149.29.209
�
�Q�fQ � �B � d Z g d�ZddlZddlmZ d� Zd d�Zd
d�Zdd�Zy)z1Various types of useful iterators and generators.)�body_line_iterator�typed_subpart_iterator�walk� N)�StringIOc # � K � | �� | j � r.| j � D ] }|j � E d{ ��� � yy7 ��w)z�Walk over the message tree, yielding each subpart.
The walk is performed in depth-first order. This method is a
generator.
N)�is_multipart�get_payloadr )�self�subparts �6/opt/alt/python312/lib64/python3.12/email/iterators.pyr r sC � �� � �J������'�'�)�G��|�|�~�%�%� *� �%�s �;A�A� Ac # � K � | j � D ]8 }|j |�� }t |t � s�&t |� E d{ ��� �: y7 ��w)z�Iterate over the parts, returning string payloads line-by-line.
Optional decode (default False) is passed through to .get_payload().
)�decodeN)r r �
isinstance�strr )�msgr r �payloads r r r sH � �� �
�8�8�:���%�%�V�%�4���g�s�#���(�(�(� �
)�s �6A�A�A�Ac # � K � | j � D ]0 }|j � |k( s�|�|j � |k( s�-|�� �2 y�w)z�Iterate over the subparts with a given MIME type.
Use `maintype' as the main MIME type to match against; this defaults to
"text". Optional `subtype' is the MIME subtype to match against; if
omitted, only the main type is matched.
N)r �get_content_maintype�get_content_subtype)r �maintype�subtyper s r r r + sC � �� � �8�8�:���'�'�)�X�5���'�"=�"=�"?�7�"J��
� �s �'A�A� Ac �> � |�t j }d|dz z }t || j � z d|�� |rt d| j � z |�� nt |�� | j � r'| j
� D ] }t |||dz |� � yy) zA handy debugging aidN� � � )�end�filez [%s])r � )�sys�stdout�print�get_content_type�get_default_typer r �
_structure)r �fp�level�include_default�tabr s r r$ r$ 8 s� � � �z�
�Z�Z��
����
�C� �#��$�$�&�
&�B�R�8��
�g��,�,�.�.�R�8�
�2��
�������(�G��w��E�!�G�_�=� )� � )F)�textN)Nr F) �__doc__�__all__r �ior r r r r$ � r) r �<module>r/ s- ��
8��� � � &�)�
�>r)