Ñò §ÚêLc@sšdZddklZddklZddklZddklZddklZl Z l Z l Z l Z ei dƒZdeifd „ƒYZd S( s Fixer for print. Change: 'print' into 'print()' 'print ...' into 'print(...)' 'print ... ,' into 'print(..., end=" ")' 'print >>x, ...' into 'print(..., file=x)' No changes are applied if print_function is imported from __future__ i(tpatcomp(tpytree(ttoken(t fixer_base(tNametCalltCommatStringtis_tuples"atom< '(' [atom|STRING|NAME] ')' >tFixPrintcBs eZdZd„Zd„ZRS(sP simple_stmt< any* bare='print' any* > | print_stmt c CsW|pt‚|idƒ}|o*|ittdƒgd|iƒƒdS|idtdƒjpt‚|id}t|ƒdjoti |dƒodSd}}}|o(|dt ƒjo|d }d}n|oX|dt i tidƒjo8t|ƒd jpt‚|diƒ}|d }ng}|D]} || iƒqO~} | od | d_n|dj p|dj p |dj oˆ|dj o#|i| d tt|ƒƒƒn|dj o#|i| d tt|ƒƒƒn|dj o|i| d|ƒq2nttdƒ| ƒ} |i| _| S(Ntbareuprinttprefixiiiÿÿÿÿt u>>iiuusepuendufile(tAssertionErrortgettreplaceRRR tchildrentlent parend_exprtmatchtNoneRRtLeafRt RIGHTSHIFTtclonet add_kwargRtrepr( tselftnodetresultst bare_printtargstseptendtfilet_[1]targtl_argstn_stmt((s//usr/lib64/python2.6/lib2to3/fixes/fix_print.pyt transform#s> ! '  ''' # #  cCstd|_ti|iit|ƒtitidƒ|fƒ}|o|i t ƒƒd|_n|i |ƒdS(Nuu=u ( R RtNodetsymstargumentRRRtEQUALtappendR(Rtl_nodests_kwdtn_exprt n_argument((s//usr/lib64/python2.6/lib2to3/fixes/fix_print.pyRKs    (t__name__t __module__tPATTERNR&R(((s//usr/lib64/python2.6/lib2to3/fixes/fix_print.pyR s (N(t__doc__tRRtpgen2RRt fixer_utilRRRRRtcompile_patternRtBaseFixR (((s//usr/lib64/python2.6/lib2to3/fixes/fix_print.pyts(