^]L_ V d dgZ ddlZddlmZ ddlmZ ddlmZ ddlm Z ej d Z ej d Z ej d Z ej d Z ej d ZdZd Z e Z G d de Z G d d Z G d de ZdS ) FeedParserBytesFeedParser N)errors)compat32)deque)StringIOz \r\n|\r|\nz(\r\n|\r|\n)z(\r\n|\r|\n)\Zz%^(From |[\041-\071\073-\176]*:|[\t ]) c L e Zd Z d Zd Zd Zd Zd Zd Zd Z d Z d Zd ZdS )BufferedSubFilec r t d | _ t | _ g | _ d| _ d S )Nr )newlineF)r _partialr _lines _eofstack_closedselfs 7/opt/alt/python311/lib64/python3.11/email/feedparser.py__init__zBufferedSubFile.__init__4 s3 !,,, gg c : | j | d S N)r append)r preds r push_eof_matcherz BufferedSubFile.push_eof_matcher? s d#####r c 4 | j S r )r popr s r pop_eof_matcherzBufferedSubFile.pop_eof_matcherB s ~!!###r c | j d | | j | j d | j d| _ d S )Nr T)r seek pushlines readlinestruncater r s r closezBufferedSubFile.closeE sm 1t}..00111 1 r c | j s| j rdS t S | j }t | j D ]*} || r| j | dS +|S Nr )r r NeedMoreDatapopleftreversedr appendleft)r lineateofs r readlinezBufferedSubFile.readlineM s { | r {""$$ dn-- EuT{{ &&t,,,rr r c : | j | d S r )r r+ r r, s r unreadlinezBufferedSubFile.unreadline_ s t$$$$$r c | j | d|vrd|vrd S | j d | j }| j d | j |d d s,| j | | | d S )Nr r )r writer! r# r$ endswithr r" )r datapartss r pushzBufferedSubFile.pushd s 2 D!!!tD 0 0F 1 '')) 1 Ry!!$'' -M ,,,ur c : | j | d S r )r extend)r liness r r" zBufferedSubFile.pushlinesy s 5!!!!!r c | S r r s r __iter__zBufferedSubFile.__iter__| s r c H | }|dk rt |S r' )r. StopIterationr0 s r __next__zBufferedSubFile.__next__ s# }}2::r N) __name__ __module____qualname__r r r r% r. r1 r9 r" r? rB r> r r r r , s $ $ $$ $ $ $% % % *" " " r r c N e Zd Z deddZd Zd Zd Zd Zd Z d Z d Zd ZdS ) r Npolicyc h || _ d| _ |"|j ddlm} || _ n>|j | _ n1|| _ || j n# t $ r d| _ Y nw xY wt | _ g | _ | j | _ d | _ d | _ d| _ d S )NFr )MessagerG T)rH _old_style_factorymessage_factory email.messagerJ _factory TypeErrorr _input _msgstack _parsegenrB _parse_cur_last_headersonly)r rN rH rJ s r r zFeedParser.__init__ s "'%-111111 ' & 6 $DM /,,,,, / / /*.''' / &''nn&&/ !s A A"!A"c d| _ d S )NT)rV r s r _set_headersonlyzFeedParser._set_headersonly s r c d | j | | d S r )rP r9 _call_parse)r r7 s r feedzFeedParser.feed s3 -r c R | d S # t $ r Y d S w xY wr )rS rA r s r rZ zFeedParser._call_parse s: KKMMMMM DD s &&c L | j | | }| dk rI| s5| j s.t j }| j || |S )N multipart)rP r% rZ _pop_messageget_content_maintypeis_multipartrV r !MultipartInvariantViolationDefectrH handle_defect)r rootdefects r r% zFeedParser.close s J "" $$&&+55((** 6373D 6=??FK%%dF333r c | j r| }n| | j }| j r2| j dk r| d | j r | j d | | j | || _ || _ d S )NrG zmultipart/digestzmessage/rfc822r4 ) rK rN rH rT get_content_typeset_default_typerQ attachr rU )r msgs r _new_messagezFeedParser._new_message s " 4--//CC--t{-33C9 333559KKK !1222> +N2%%c***c""" r c z | j }| j r| j d | _ nd | _ |S )Nr4 )rQ r rT )r retvals r r_ zFeedParser._pop_message s; ##%%> r*DIIDI r c # K | g }| j D ]}|t u r t V t | sit | sMt j }| j | j | | j | n| | | | | j rg } | j }|t u r t V -|dk rn| | I| j t" | d S | j dk r | j t j | D ]}|t u r t V | }| j | j }|t u r t V - | j }|t u r t V - |dk rn| j | d S | j dk r@| D ]}|t u r t V | d S | j dk r| j }|t j }| j | j | g }| j D ]*}|t u r t V | | +| j t" | d S t7 | j dd dvr3t j }| j | j | d |z }t? j d t? j! | z dz } d} g }d}d} | j }|t u r t V -|dk rn| | }|r|" d rd} |" d }n| r|rv|d }tF $ | }|r.|d tK |" d |d<