MINI MINI MANI MO

Path : /usr/lib64/python3.6/email/__pycache__/
File Upload :
Current File : //usr/lib64/python3.6/email/__pycache__/feedparser.cpython-36.opt-2.pyc

3


 \X@sddgZddlZddlmZddlmZddlmZddlm	Z	ej
dZej
d	Zej
d
Z
ej
d	Zej
dZdZd
ZeZGdddeZGdddZGdddeZdS)
FeedParserBytesFeedParserN)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@s\eZdZddZddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZdS)BufferedSubFilecCs$tdd|_t|_g|_d|_dS)Nr)newlineF)r_partialr_lines	_eofstack_closed)selfr(/usr/lib64/python3.6/email/feedparser.py__init__5szBufferedSubFile.__init__cCs|jj|dS)N)rappend)rZpredrrrpush_eof_matcher@sz BufferedSubFile.push_eof_matchercCs
|jjS)N)rpop)rrrrpop_eof_matcherCszBufferedSubFile.pop_eof_matchercCs<|jjd|j|jj|jjd|jjd|_dS)NrT)rseek	pushlines	readlinestruncater)rrrrcloseFs

zBufferedSubFile.closecCsN|js|jrdStS|jj}x*t|jD]}||r*|jj|dSq*W|S)Nr)r
rNeedMoreDatapopleftreversedr
appendleft)rlineZateofrrrreadlineNs
zBufferedSubFile.readlinecCs|jj|dS)N)r
r )rr!rrr
unreadline`szBufferedSubFile.unreadlinecCsx|jj|d|kr d|kr dS|jjd|jj}|jjd|jj|djdsj|jj|j|j|dS)Nr	
r)rwriterrrendswithrr)rdatapartsrrrpushes

zBufferedSubFile.pushcCs|jj|dS)N)r
extend)rlinesrrrrzszBufferedSubFile.pushlinescCs|S)Nr)rrrr__iter__}szBufferedSubFile.__iter__cCs|j}|dkrt|S)Nr)r"
StopIteration)rr!rrr__next__szBufferedSubFile.__next__N)
__name__
__module____qualname__rrrrr"r#r+rr.r0rrrrr
-sr
c@s\eZdZdedddZddZddZd	d
ZddZd
dZ	ddZ
ddZddZdS)rN)policycCs||_d|_|dkr<|jdkr2ddlm}||_qn|j|_n2||_y||jdWntk
rld|_YnXt|_g|_	|j
j|_d|_
d|_d|_dS)NFr)Message)r4T)r4_old_style_factoryZmessage_factoryZ
email.messager5_factory	TypeErrorr
_input	_msgstack	_parsegenr0_parse_cur_last_headersonly)rr7r4r5rrrrs$

zFeedParser.__init__cCs
d|_dS)NT)r?)rrrr_set_headersonlyszFeedParser._set_headersonlycCs|jj||jdS)N)r9r+_call_parse)rr)rrrfeedszFeedParser.feedcCs&y|jWntk
r YnXdS)N)r<r/)rrrrrAszFeedParser._call_parsecCsJ|jj|j|j}|jdkrF|jrFtj}|jj	|||S)N	multipart)
r9rrA_pop_messageget_content_maintypeZis_multipartrZ!MultipartInvariantViolationDefectr4
handle_defect)rrootdefectrrrrs

zFeedParser.closecCsn|jr|j}n|j|jd}|jr<|jjdkr<|jd|jrR|jdj||jj|||_||_	dS)N)r4zmultipart/digestzmessage/rfc822r%r&)
r6r7r4r=get_content_typeZset_default_typer:Zattachrr>)rmsgrrr_new_messages

zFeedParser._new_messagecCs(|jj}|jr|jd|_nd|_|S)Nr%r&)r:rr=)rretvalrrrrDs

zFeedParser._pop_messageccs6|jg}xb|jD]X}|tkr(tVqtj|sbtj|s`tj}|jj	|j
||jj|P|j|qW|j
||jrg}x2|jj}|tkrtVq|dkrP|j|qW|j
jtj|dS|j
jdkrx|jjtjx$|jD]}|tkrtVqPqW|j}|jjx&|jj}|tkrFtVq(Pq(Wx&|jj}|tkrntVqPPqPW|dkrP|jj|qWdS|j
jdkrx(|jD]}|tkrtVqPqW|jdS|j
jdkr|j
j}|dkrbtj}|jj	|j
|g}x.|jD]$}|tkr<tVq$|j|q$W|j
jtj|dS|j
jddjdkrtj}|jj	|j
|d	|}tjd
tj |d}	d}
g}d
}d
}
x|jj}|tkrtVq|dkrP|	j|}|r|j!drd}
|j!d}P|
r~|rj|d}t"j#|}|r\|dt$|j!d|d<tj||j
_%d
}
|jj|qxB|jj}|tkrtVq|	j|}|s|jj|PqW|jj|	jx(|jD]}|tkrtVqPqW|j&jdkrb|j&j'}|dkr&d|j&_'n:|dk	rt"j#|}|rt$|j!d}|d||j&_'nD|j&j(}t)|t*rt"j#|}|r|dt$|j!d}||j&_(|jj|j|j
|_&n
|j|qW|
r>tj+}|jj	|j
||j
jtj|g}x$|jD]}|tkrtVqqWtj||j
_'dS|
s`tj,}|jj	|j
|dS|rndg}ng}x.|jD]$}|tkrtVqz|j|qzW|r|d}t-j|}|r|t$|j!dd|d<tj||j
_'dSg}x.|jD]$}|tkrtVq|j|qW|j
jtj|dS)Nrzmessage/delivery-statusmessagerCzcontent-transfer-encoding8bit7bitbinaryz--z(?P<sep>z4)(?P<end>--)?(?P<ws>[ \t]*)(?P<linesep>\r\n|\r|\n)?$TFendlinesepr%r)rOrNrPr&r&).rKr9rheaderREmatchNLCRErZ MissingHeaderBodySeparatorDefectr4rFr=r#r_parse_headersr?r"Zset_payloadEMPTYSTRINGjoinrIrr;rDrrEZget_boundaryZNoBoundaryInMultipartDefectgetlowerZ-InvalidMultipartContentTransferEncodingDefectrecompileescapegroup	NLCRE_eolsearchlenpreambler>epilogueZ_payload
isinstancestrZStartBoundaryNotFoundDefectZCloseBoundaryNotFoundDefect	NLCRE_bol)rZheadersr!rHr-rLrJboundaryZ	separatorZ
boundaryreZcapturing_preamblerbrRZclose_boundary_seenmoZlastlineZeolmorcrQZpayload	firstlineZbolmorrrr;sf




































zFeedParser._parsegenc	Cs^d}g}x4t|D]&\}}|ddkrV|sJtj|}|jj|j|q|j|q|rx|jj|jj|dg}}|j	dr|dkrt
j|}|r|dt|j
d}|jj|qn:|t|dkr|jj|dStj|}|jjj|q|jd}|dkr*tjd}|jjj|q|d|}|g}qW|rZ|jj|jj|dS)Nrrz 	zFrom r%:zMissing header name.)	enumeraterZ#FirstHeaderLineIsContinuationDefectr4rFr=rZset_rawZheader_source_parse
startswithr_r`rar^Zset_unixfromr9r#ZMisplacedEnvelopeHeaderDefectZdefectsfindZInvalidHeaderDefect)	rr-Z
lastheaderZ	lastvaluelinenor!rHrhirrrrVsF








zFeedParser._parse_headers)N)
r1r2r3rrr@rBrArrKrDr;rVrrrrrs

~cseZdZfddZZS)rcstj|jdddS)Nasciisurrogateescape)superrBdecode)rr))	__class__rrrBszBytesFeedParser.feed)r1r2r3rB
__classcell__rr)rtrrs)__all__r[ZemailrZemail._policybasercollectionsriorr\rUrfr_ZNLCRE_crackrSrWNLobjectrr
rrrrrr<module>s&




[

OHA YOOOO