;ò ÉQ‡>c@sldZdklZdklZlZdZdZd„Zd„Z d„Z ed„Z d e d „Z d S( s:Module containing compatibility functions for Python 2.1. (sStringIO(s StringTypes UnicodeTypeiicCsVg}|i|ƒ|iƒo.x+|iƒD]}|i|iƒƒq-Wn|SdS(s‰Walk over the message tree, yielding each subpart. The walk is performed in depth-first order. This method is a generator. N(spartssappendsselfs is_multiparts get_payloadssubpartsextendswalk(sselfspartsssubpart((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pyswalks   cCs ||SdS(sDo a floor division, i/j.N(sisj(sisj((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pys _floordivscCs!t|tƒp t|tƒSdS(N(s isinstancesobjs StringTypes UnicodeType(sobj((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pys _isstring$scCsrg}xa|iƒD]S}|id|ƒ}t|ƒo.x+t|ƒi ƒD]}|i |ƒqKWqqW|SdS(sŽIterate over the parts, returning string payloads line-by-line. Optional decode (default False) is passed through to .get_payload(). sdecodeN( slinessmsgswalkssubparts get_payloadsdecodespayloads _isstringsStringIOs readlinesslinesappend(smsgsdecodessubpartslinesslinespayload((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pysbody_line_iterator+s  stextcCsmg}x\|iƒD]N}|iƒ|jo5|tjp|iƒ|jo|i |ƒqaqqW|SdS(sø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( spartssmsgswalkssubpartsget_content_maintypesmaintypessubtypesNonesget_content_subtypesappend(smsgsmaintypessubtypessubpartsparts((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pystyped_subpart_iterator9s  N(s__doc__s cStringIOsStringIOstypess StringTypes UnicodeTypesFalsesTrueswalks _floordivs _isstringsbody_line_iteratorsNonestyped_subpart_iterator( s StringTypestyped_subpart_iteratorsFalsesStringIOsbody_line_iterators _isstringswalks _floordivs UnicodeTypesTrue((s1/usr/pkg/lib/mailman/pythonlib/email/_compat21.pys?s