ACC SHELL

Path : /usr/lib/python/compiler/
File Upload :
Current File : //usr/lib/python/compiler/transformer.pyo

Ńņ
rÄMc/@sjdZddkTddkZddkZddkZdefd„ƒYZddklZl	Z	ddkl
Z
lZlZd„Z
d	d
„Zd„Zd„Zd
„Zdfd„ƒYZeieieieieieieieieieieieieiei ei!ei"gZ#hdei$6dei%6dei&6dei'6dei(6dei)6dei*6Z+ei,ei-ei.ei/ei0ei1ei2eiei3ei4ei5ei6ei7ei8ei9ei:ei;ei<ei=ei>ei?ei@eiAeiBeiCeieieieieieieiDeieieieieiei ei!ei"eiEg)ZFeGedƒoeFiHeiIƒneGedƒoeFiHeiJƒneieieieieieieieieieiei ei!gZKhZLx'eiMiNƒD]\ZOZPePeLeO<qWx'eiQiNƒD]\ZOZPePeLeO<qCWd„ZRdS(sīParse tree transformation module.

Transforms Python source code into an abstract syntax tree (AST)
defined in the ast module.

The simplest ways to invoke this module are via parse and parseFile.
parse(buf) -> AST
parseFile(path) -> AST
i’’’’(t*NtWalkerErrorcBseZRS((t__name__t
__module__(((s*/usr/lib/python2.6/compiler/transformer.pyR!s(t
CO_VARARGStCO_VARKEYWORDS(t	OP_ASSIGNt	OP_DELETEtOP_APPLYcCs3t|dƒ}|iƒd}|iƒt|ƒS(NtUs
(topentreadtclosetparse(tpathtftsrc((s*/usr/lib/python2.6/compiler/transformer.pyt	parseFile's
texeccCsY|djp
|djotƒi|ƒS|djotƒi|ƒStdƒ‚dS(NRtsingletevals4compile() arg 3 must be 'exec' or 'eval' or 'single'(tTransformert
parsesuitet	parseexprt
ValueError(tbuftmode((s*/usr/lib/python2.6/compiler/transformer.pyR
1s

cCsµg}xØ|D] }t|dƒo|i|iƒƒq
t|ƒtdƒjo|itt|ƒƒƒq
t|ƒtgƒjo|it|ƒƒq
|i|ƒq
W|S(NtasList(NN(thasattrtappendRttypetNonettuple(tnodestltitem((s*/usr/lib/python2.6/compiler/transformer.pyR:scCsht|dtƒp	|dSxD|dD]8}t|tƒo"t|ƒ}|dj	o|Sq(q(WdS(Nii(t
isinstanceR t
extractLineNoR(tasttchildtlineno((s*/usr/lib/python2.6/compiler/transformer.pyR%Hs	
cGsx|d}|tjoJyt||dŒSWqttj
o!t|Gt|ƒG|GH‚qtXntdt|ƒ‚dS(Niis$Can't find appropriate Node type: %s(R!t	TypeErrortlenRtstr(targstkind((s*/usr/lib/python2.6/compiler/transformer.pytNodeRs

RcBs}eZdZd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d„Z
d	„Zd
„Zd„Z
d„Zd
„Zd„Zd„ZeZd„Zd„ZeZeZeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d„Z#d„Z$d„Z%d „Z&d!„Z'd"„Z(d#„Z)d$„Z*d%„Z+d&„Z,d'„Z-d(„Z.d)„Z/d*„Z0d+„Z1d,„Z2d-„Z3d.„Z4d/„Z5d0„Z6d1„Z7d2„Z8d3„Z9e9Z:e9Z;e9Z<d4„Z=d5„Z>d6„Z?e?Z@d7„ZAd8„ZBd9„ZCd:„ZDd;„ZEd<„ZFd=„ZGd>„ZHd?„ZId@„ZJdA„ZKdB„ZLdC„ZMdD„ZNdE„ZOdF„ZPdG„ZQdH„ZRdI„ZSdJ„ZTdK„ZUdL„ZVdM„ZWdN„ZXdO„ZYdP„ZZdQ„Z[dR„Z\dS„Z]dT„Z^dU„Z_dV„Z`dW„ZadX„ZbdY„ZcdZ„Zdd[„Zed\„Zfd]„Zgd^„Zhd_„Zid`„Zjda„Zkdb„Zldc„Zmdd„Zneoepdeƒodf„Zqdg„Zrdh„Zsn
di„Zqeoepdjƒodk„Ztdl„Zundm„Zvdn„Zwdo„Zxdp„Zydq„Zzdr„Z{ds„Z|dt„Z}du„Z~dwdv„Z€RS(xsźUtility object for transforming Python parse trees.

    Exposes the following methods:
        tree = transform(ast_tree)
        tree = parsesuite(text)
        tree = parseexpr(text)
        tree = parsefile(fileob | filename)
    cCs×h|_xGtiiƒD]6\}}t||ƒot||ƒ|i|<qqW|i|iti<h|i	ti
6|iti6|i
ti6|iti6|iti6|iti6|iti6|_d|_dS(N(t	_dispatchtsymboltsym_nametitemsRtgetattrtcom_NEWLINEttokentNEWLINEt	atom_lpartLPARt	atom_lsqbtLSQBtatom_lbracetLBRACEtatom_backquotet	BACKQUOTEtatom_numbertNUMBERtatom_stringtSTRINGt	atom_nametNAMEt_atom_dispatchRtencoding(tselftvaluetname((s*/usr/lib/python2.6/compiler/transformer.pyt__init__hs	




cCsFt|tƒp
t|tƒpti|ddƒ}n|i|ƒS(s,Transform an AST into a modified parse tree.t	line_infoi(R$R tlisttparsertst2tupletcompile_node(RGttree((s*/usr/lib/python2.6/compiler/transformer.pyt	transformxs cCs|iti|ƒƒS(s6Return a modified parse tree for the given suite text.(RQRMtsuite(RGttext((s*/usr/lib/python2.6/compiler/transformer.pyR~scCs|iti|ƒƒS(s;Return a modified parse tree for the given expression text.(RQRMtexpr(RGRS((s*/usr/lib/python2.6/compiler/transformer.pyR‚scCs<t|ƒtdƒjot|ƒ}n|i|iƒƒS(s@Return a modified parse tree for the contents of the given file.t(RR
RR(RGtfile((s*/usr/lib/python2.6/compiler/transformer.pyt	parsefile†sc	Cs|d}|tijo%|d|_|d}|d}n|tijo|i|dƒS|tijo|i|dƒS|tijo|i|dƒS|tijo|i|dƒS|tijo|i|dƒS|tijo|i|dƒSt	d|f‚dS(Niiisunexpected node type(
R0t
encoding_declRFtsingle_inputt
file_inputt
eval_inputtlambdeftfuncdeftclassdefR(RGtnodetn((s*/usr/lib/python2.6/compiler/transformer.pyRO‘s$


cCs7|dd}|tijo|i|dƒStƒS(Ni(R5R6tcom_stmttPass(RGR_R`((s*/usr/lib/python2.6/compiler/transformer.pyRY©scCsœ|i|tiƒ}|dj	o
d}nd}g}xN||D]B}|dtijo(|dtijo|i||ƒqCqCWt|t	|ƒƒS(Nii(
t
get_docstringR0RZRR5t	ENDMARKERR6tcom_append_stmttModuletStmt(RGtnodelisttdoctitstmtsR_((s*/usr/lib/python2.6/compiler/transformer.pyRZ³s

(cCst|i|dƒƒS(Ni(t
Expressiontcom_node(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyR[æscCs_t|ƒ}|i|ƒ}d}x7||jo)t|||ddƒ}|d7}q$W|S(Nii(R*RCtGetattr(RGRhtlistlenR#Rj((s*/usr/lib/python2.6/compiler/transformer.pytdecorator_nameÄs
cCsN|i|ddƒ}t|ƒdjo|i||dƒ}n|}|S(Nii(RpR*tcom_call_function(RGRhtfuncnameRT((s*/usr/lib/python2.6/compiler/transformer.pyt	decoratorŅs
cCs;g}x(|D] }|i|i|dƒƒq
Wt|ƒS(Ni(RRst
Decorators(RGRhR2tdec_nodelist((s*/usr/lib/python2.6/compiler/transformer.pyt
decoratorsćs
cCs¦|ddtijo-|dgt|ddƒ}|i|ƒS|ddtijo<|i|ddƒ}|i|ddƒ}||_|Stƒ‚dS(Nii(R0R]RLR^RvR(RGRhR`Rvtcls((s*/usr/lib/python2.6/compiler/transformer.pyt	decoratedės	cCst|ƒdjo|i|ddƒ}nd}|dd}|dd}|dd}|dtijo |i|dƒ\}}}nd	}}d}|i|dƒ}	|i|dƒ}
|	dj	o|
id=nt	||||||	|
d|ƒS(
Niiiiü’’’iiż’’’i’’’’R(((
R*RvRR0tvarargslisttcom_arglistRcRmR!tFunction(RGRhRvR(RIR,tnamestdefaultstflagsRitcode((s*/usr/lib/python2.6/compiler/transformer.pyR]÷s  

c	Cs€|ddtijo$|i|ddƒ\}}}nd}}d}|i|dƒ}t||||d|ddƒS(Niiii’’’’R(((R0RyRzRmtLambda(RGRhR|R}R~R((s*/usr/lib/python2.6/compiler/transformer.pyR\s$
cCsĒ|dd}|i|dƒ}|ddtijo
g}n6|ddtijo
g}n|i|dƒ}|i|dƒ}|dj	o|id=nt||||d|ddƒS(Nii’’’’iiiR((	RcR5tCOLONtRPARt	com_basesRmRR!tClass(RGRhRIRitbasesR((s*/usr/lib/python2.6/compiler/transformer.pyR^&s


cCs|i|dƒS(Ni(Ra(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytstmt<scCsGg}x4tdt|ƒdƒD]}|i|||ƒqWt|ƒS(Nii(trangeR*ReRg(RGRhRkRj((s*/usr/lib/python2.6/compiler/transformer.pytsimple_stmtCs
cCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyt
parametersJscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyRyMscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytfpdefPscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytfplistSscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytdotted_nameVscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytcomp_opYscCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyttrailer\scCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytsliceop_scCs
t‚dS(N(R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytargumentbsc	Cs|d}|i|ƒ|dƒ}t|ƒdjot|d|iƒS|ddtijofg}xAtdt|ƒddƒD]#}|i|i||t	ƒƒq…Wt
||d|ddƒS|i|dƒ}|i|dƒ}t
||d|d|dƒStd‚dS(Ni’’’’iR(iiscan't get here(tlookup_nodeR*tDiscardR(R5tEQUALR‡Rt
com_assignRtAssignt
com_augassigntcom_augassign_opt	AugAssignR(RGRhtentexprNodetnodeslRjtlvaltop((s*/usr/lib/python2.6/compiler/transformer.pyt	expr_stmtjs
!cCsög}t|ƒdjod}d}nB|ddtijo|i|dƒ}d}n
d}d}x:t|t|ƒdƒD] }|i|i||ƒƒqƒW|ddtijot||d|ddƒSt	||d|ddƒS(Niiiii’’’’R((
R*RR5t
RIGHTSHIFTRmR‡RtCOMMAtPrinttPrintnl(RGRhR2tstarttdestRj((s*/usr/lib/python2.6/compiler/transformer.pyt
print_stmt{s

cCs|i|dtƒS(Ni(R”R(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytdel_stmtscCstd|ddƒS(NR(ii(Rb(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyt	pass_stmt’scCstd|ddƒS(NR(ii(tBreak(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyt
break_stmt•scCstd|ddƒS(NR(ii(tContinue(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyt
continue_stmt˜scCsWt|ƒdjottdƒd|ddƒSt|i|dƒd|ddƒS(NiR(ii(R*tReturntConstRRm(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytreturn_stmt›scCs&|i|dƒ}t|d|iƒS(NiR((RmR’R((RGRhRT((s*/usr/lib/python2.6/compiler/transformer.pyt
yield_stmt”scCsNt|ƒdjo|i|dƒ}n
tdƒ}t|d|ddƒS(NiR(ii(R*RmR­RtYield(RGRhRH((s*/usr/lib/python2.6/compiler/transformer.pyt
yield_expr„scCs®t|ƒdjo|i|dƒ}nd}t|ƒdjo|i|dƒ}nd}t|ƒdjo|i|dƒ}nd}t|||d|ddƒS(NiiiR(ii(R*RmRtRaise(RGRhtexpr3texpr2texpr1((s*/usr/lib/python2.6/compiler/transformer.pyt
raise_stmt¬scCs|i|dƒS(Ni(Rm(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytimport_stmt¼scCs%t|i|dƒd|ddƒS(NiR(ii(tImporttcom_dotted_as_names(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytimport_nameĮscCsd}x$||ddjo|d7}q	W|d}||dtijo!|i||ƒ}|d7}nd}||ddtijo"t|dg|d|ddƒS||d||ddtij}t||i|ƒ|d|ddƒSdS(	Nit.iRURR(i(RN(	R0RŒtcom_dotted_nameR5tSTARtFromRR8tcom_import_as_names(RGRhtidxtleveltfromnameR_((s*/usr/lib/python2.6/compiler/transformer.pytimport_fromĘs
'cCsVg}x5tdt|ƒdƒD]}|i||dƒqWt|d|ddƒS(NiiR(i(R‡R*RtGlobal(RGRhR|Rj((s*/usr/lib/python2.6/compiler/transformer.pytglobal_stmtÜs
cCs•|i|dƒ}t|ƒdjoG|i|dƒ}t|ƒdjo|i|dƒ}qwd}nd}}t|||d|ddƒS(	NiiiiiR(ii(RmR*RtExec(RGRhRµR“R³((s*/usr/lib/python2.6/compiler/transformer.pyt	exec_stmtćs

cCs^|i|dƒ}t|ƒdjo|i|dƒ}nd}t||d|ddƒS(NiiiR(ii(RmR*RtAssert(RGRhRµR“((s*/usr/lib/python2.6/compiler/transformer.pytassert_stmtńs
cCs½g}xetdt|ƒddƒD]G}|i||dƒ}|i||dƒ}|i||fƒq#Wt|ƒddjo|i|dƒ}nd}t||d|ddƒS(Niiiii’’’’R(i(R‡R*RmRRtIf(RGRhttestsRjttestNodet	suiteNodetelseNode((s*/usr/lib/python2.6/compiler/transformer.pytif_stmtśscCst|i|dƒ}|i|dƒ}t|ƒdjo|i|dƒ}nd}t|||d|ddƒS(NiiiiR(ii(RmR*RtWhile(RGRhRĢtbodyNodeRĪ((s*/usr/lib/python2.6/compiler/transformer.pyt
while_stmt	scCs|i|dtƒ}|i|dƒ}|i|dƒ}t|ƒdjo|i|dƒ}nd}t||||d|ddƒS(NiiiiR(ii(R”RRmR*RtFor(RGRht
assignNodetlistNodeRŃRĪ((s*/usr/lib/python2.6/compiler/transformer.pytfor_stmtscCs
|i|ƒS(N(tcom_try_except_finally(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyttry_stmt%scCs
|i|ƒS(N(tcom_with(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyt	with_stmt(scCs
|i|ƒS(N(tcom_with_var(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytwith_var+scCsnt|ƒdjo|i|dƒSg}x6|D].}|dtijo|i||ƒq2q2Wt|ƒS(Nii(R*RaR0R†ReRg(RGRhRkR_((s*/usr/lib/python2.6/compiler/transformer.pyRR.scCs|it|ƒS(N(t
com_binarytTuple(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyttestlist>scCs`t|ƒdjo@|ddtijo(|i|dƒ}|i||dƒS|i|ƒS(Niii(R*R0tgen_forRmtcom_generator_expressionRß(RGRhttest((s*/usr/lib/python2.6/compiler/transformer.pyt
testlist_gexpHs+cCs¬t|ƒdjo*|ddtijo|i|dƒS|i|dƒ}t|ƒdjoE|i|dƒ}|i|dƒ}t|||d|ddƒS|S(NiiiiR((R*R0R\RmtIfExp(RGRhtthenRātelse_((s*/usr/lib/python2.6/compiler/transformer.pyRāNs+cCsMt|ƒdjo*|ddtijo|i|dƒS|it|ƒS(Nii(R*R0R\RŻtOr(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytor_test\s+cCs|it|ƒS(N(RŻtAnd(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytand_testcscCsC|i|dƒ}t|ƒdjot|d|ddƒS|S(Ni’’’’iR(i(RmR*tNot(RGRhtresult((s*/usr/lib/python2.6/compiler/transformer.pytnot_testgsc	Cs|i|dƒ}t|ƒdjo|Sg}xŹtdt|ƒdƒD]°}||d}|d}|dtijoB|d}t|ƒdjo!|djo
d}qŗd}qĢnt|d}|dd}|i||i||ƒfƒqJWt||d|ƒS(	Niiiitnotsnot insis notR((RmR*R‡R5RDt
_cmp_typesRtCompare(	RGRhR_tresultsRjtnlR`RR(((s*/usr/lib/python2.6/compiler/transformer.pyt
comparisonns$



$cCs|it|ƒS(N(RŻtBitor(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyRTscCs|it|ƒS(N(RŻtBitxor(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytxor_expr“scCs|it|ƒS(N(RŻtBitand(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytand_expr—scCsę|i|dƒ}xĢtdt|ƒdƒD]²}|i||ƒ}||ddtijo$t||gd|ddƒ}q,||ddtijo$t||gd|ddƒ}q,td||dd‚q,W|S(NiiiR(sunexpected token: %s(	RmR‡R*R5t	LEFTSHIFTt	LeftShiftRŸt
RightShiftR(RGRhR_Rjtright((s*/usr/lib/python2.6/compiler/transformer.pyt
shift_expr›s$$cCsę|i|dƒ}xĢtdt|ƒdƒD]²}|i||ƒ}||ddtijo$t||gd|ddƒ}q,||ddtijo$t||gd|ddƒ}q,td||dd‚q,W|S(NiiiR(sunexpected token: %s(	RmR‡R*R5tPLUStAddtMINUStSubR(RGRhR_RjRü((s*/usr/lib/python2.6/compiler/transformer.pyt
arith_exprØs$$cCs|i|dƒ}xūtdt|ƒdƒD]į}|i||ƒ}||dd}|tijot||gƒ}n€|tijot||gƒ}nZ|tijot	||gƒ}n4|ti
jot||gƒ}ntd|‚|dd|_
q,W|S(Niiisunexpected token: %s(RmR‡R*R5R½tMultSLASHtDivtPERCENTtModtDOUBLESLASHtFloorDivRR((RGRhR_RjRütt((s*/usr/lib/python2.6/compiler/transformer.pytterm“s 
cCs­|d}|d}|i|dƒ|ddƒ}|tijot|d|dƒS|tijot|d|dƒS|tijot|d|dƒ}n|S(Nii’’’’iR(i(R‘R5RžtUnaryAddRtUnarySubtTILDEtInvert(RGRhteltR
R_((s*/usr/lib/python2.6/compiler/transformer.pytfactorĘs

!cCs“|i|dƒ}xytdt|ƒƒD]b}||}|dtijo,t||i||dƒgd|dƒS|i||ƒ}q)W|S(NiiR(i(RmR‡R*R5t
DOUBLESTARtPowertcom_apply_trailer(RGRhR_RjR((s*/usr/lib/python2.6/compiler/transformer.pytpowerÓs
 cCs|i|dd|ƒS(Ni(RE(RGRh((s*/usr/lib/python2.6/compiler/transformer.pytatomąscCsB|ddtijotdd|ddƒS|i|dƒS(NiiR(i((R5R‚RŽRm(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyR7ćscCsB|ddtijotdd|ddƒS|i|dƒS(NiiR(i((R5tRSQBtListtcom_list_constructor(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyR9čscCsB|ddtijotdd|ddƒS|i|dƒS(NiiR(i((R5tRBRACEtDictt
com_dictmaker(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyR;ķscCst|i|dƒƒS(Ni(t	BackquoteRm(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyR=ņscCs,t|ddƒ}t|d|ddƒS(NiiR(i(RR­(RGRhtk((s*/usr/lib/python2.6/compiler/transformer.pyR?õscCs_|ioG|idjot|dƒi|iƒ}ntd|i|fƒSt|ƒSdS(Nsutf-8s
iso-8859-1s# coding: %s
%s(sutf-8s
iso-8859-1(RFtunicodetencodeR(RGtlit((s*/usr/lib/python2.6/compiler/transformer.pytdecode_literalśs

cCsFd}x%|D]}||i|dƒ7}q
Wt|d|ddƒS(NRUiR(ii(R"R­(RGRhRR_((s*/usr/lib/python2.6/compiler/transformer.pyRAs
cCs t|ddd|ddƒS(NiiR(i(tName(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyRCscCs|i|dS(Ni(R/(RGR_((s*/usr/lib/python2.6/compiler/transformer.pyR‘scCs|i|d|dƒS(Nii(R/(RGR_((s*/usr/lib/python2.6/compiler/transformer.pyRmscGsttdƒƒS(N(R’R­R(RGR,((s*/usr/lib/python2.6/compiler/transformer.pyR4%scCsäg}g}d}d}x¼|t|ƒjoØ||}|dtijp|dtijo×|dtijoO||d}|dtijo)|i|dƒ|tB}|d}qĆn|t|ƒjo\||d}|tijo||d}ntd|‚|i|dƒ|tB}nPn|i|i	|ƒƒ|d}|t|ƒjoD||dti
jo,|i|i||dƒƒ|d}nt|ƒo
td‚n|d}qW|||fS(Niiisunexpected token: %sis-non-default argument follows default argument(
R*R5R½RRDRRRRt	com_fpdefR“RmtSyntaxError(RGRhR|R}R~RjR_R
((s*/usr/lib/python2.6/compiler/transformer.pyRz+s>
(


+

cCs6|ddtijo|i|dƒS|ddS(Niii(R5R8t
com_fplist(RGR_((s*/usr/lib/python2.6/compiler/transformer.pyR$]scCsrt|ƒdjo|i|dƒSg}x:tdt|ƒdƒD] }|i|i||ƒƒqDWt|ƒS(Nii(R*R$R‡RR (RGR_RLRj((s*/usr/lib/python2.6/compiler/transformer.pyR&cscCs_d}xN|D]F}t|ƒtdƒjo'|ddjo||dd}q
q
W|d S(NRUiiR»i’’’’((R(RGR_RIR`((s*/usr/lib/python2.6/compiler/transformer.pyR¼ls*cCsQ|d}|i|ddƒ}t|ƒdjo|dfS||ddfS(Niii(R¼R*R(RGR_tdot((s*/usr/lib/python2.6/compiler/transformer.pytcom_dotted_as_namets

cCsa|d}|i|dƒg}x:tdt|ƒdƒD] }|i|i||ƒƒq9W|S(Niii(R(R‡R*R(RGR_R|Rj((s*/usr/lib/python2.6/compiler/transformer.pyR¹~s
cCsJ|d}t|ƒdjo|dddfS|dd|ddfS(Niii(R*R(RGR_((s*/usr/lib/python2.6/compiler/transformer.pytcom_import_as_name†s
cCsa|d}|i|dƒg}x:tdt|ƒdƒD] }|i|i||ƒƒq9W|S(Niii(R)R‡R*R(RGR_R|Rj((s*/usr/lib/python2.6/compiler/transformer.pyRæs
cCsGg}x:tdt|ƒdƒD] }|i|i||ƒƒqW|S(Nii(R‡R*RRm(RGR_R…Rj((s*/usr/lib/python2.6/compiler/transformer.pyRƒ˜s
c
	Csū|ddtijo6t|i|dƒ|i|dƒd|ddƒSg}d}d}x@tdt|ƒdƒD]&}||}|dtijo’t|ƒdjoJ|i|dƒ}t|ƒdjo|i	|dt
ƒ}qd}nd}}|i|||i||dƒfƒn|dtijo\|ddjo|i||dƒ}qŸ|dd	jo|i||dƒ}qŸqyqyWt|i|dƒ||d|ddƒ}	|ot|	|d|ddƒS|	SdS(
NiiiiR(iitelsetfinally(
R5RDt
TryFinallyRmRR‡R*R0t
except_clauseR”RRt	TryExcept(
RGRhtclausesRĪtfinallyNodeRjR_RµR“t
try_except((s*/usr/lib/python2.6/compiler/transformer.pyRמs8


+#cCs€|i|dƒ}|i|dƒ}|ddtijo
d}n|i|ddtƒ}t|||d|ddƒS(Nii’’’’iiR((RmR5RRR”RtWith(RGRhRTtbodytvar((s*/usr/lib/python2.6/compiler/transformer.pyRŁĒs
cCs|i|dƒS(Ni(Rm(RGRh((s*/usr/lib/python2.6/compiler/transformer.pyRŪŃscCs|dS(Ni((RGR_((s*/usr/lib/python2.6/compiler/transformer.pyR—ÕscCsG|i|ƒ}|ittttfjo|Std|ii‚dS(s…Return node suitable for lvalue of augmented assignment

        Names, slices, and attributes are the only allowable nodes.
        scan't assign to %sN(Rmt	__class__R#tSlicet	SubscriptRnR%R(RGR_R"((s*/usr/lib/python2.6/compiler/transformer.pyR–ŁscCspxi|d}|titititifjo2t|ƒdjo|i||ƒS|d}q|tjo.t|ƒdjo
td‚n|d}q|ti	joŅ|ddti
jo
td‚nt|ƒdjoŒ|i|dƒ}x^tdt|ƒdƒD]C}||}|dt
ijo
td‚n|i||ƒ}qW|i||d|ƒS|d}q|ti
joĖ|dd}|t
ijo/|d}|dt
ijo
td‚qXqi|t
ijo<|d}|dt
ijo
td‚n|i||ƒS|t
ijo|i|d|ƒStd‚qtd	|‚qdS(
Niiiscan't assign to operatori’’’’scan't assign to ()scan't assign to []scan't assign to literalsbad assignment (%s)(R0texprlistRßt
testlist_safeRćR*tcom_assign_tuplet
_assign_typesR%RRRmR‡R5RRtcom_assign_trailerR8R‚R:Rtcom_assign_listRDtcom_assign_name(RGR_t	assigningR
tprimaryRjtch((s*/usr/lib/python2.6/compiler/transformer.pyR”ćsN
%








cCs\g}x=tdt|ƒdƒD]#}|i|i|||ƒƒqWt|dt|ƒƒS(NiiR((R‡R*RR”tAssTupleR%(RGR_R?tassignsRj((s*/usr/lib/python2.6/compiler/transformer.pyR:s
!cCs g}xtdt|ƒdƒD]g}|dt|ƒjo-||ddtijo
td‚qin|i|i|||ƒƒqWt|dt|ƒƒS(Niiis"can't assign to list comprehensionR((	R‡R*R0tlist_forR%RR”tAssListR%(RGR_R?RCRj((s*/usr/lib/python2.6/compiler/transformer.pyR=s
!cCst|d|d|dƒS(NiR(i(tAssName(RGR_R?((s*/usr/lib/python2.6/compiler/transformer.pyR>scCsŒ|dd}|tijo|i||d|ƒS|tijo|i||d|ƒS|tijo
td‚ntd|‚dS(Niiiscan't assign to function callsunknown trailer type: %s(R5tDOTtcom_assign_attrR:tcom_subscriptlistR8R%(RGR@R_R?R
((s*/usr/lib/python2.6/compiler/transformer.pyR<"s
cCst||d|d|dƒS(NiR(i’’’’(tAssAttr(RGR@R_R?((s*/usr/lib/python2.6/compiler/transformer.pyRH,scCsžt|ƒ}|djo"|d}|i|ƒ|dƒSg}xDtd|dƒD]0}||}|i|i|ƒ|dƒƒqTW||dt|ƒƒS(s=Compile 'NODE (OP NODE)*' into (type, [ node1, ..., nodeN ]).iiiR((R*R‘R‡RR%(RGtconstructorRhR"R`R2Rj((s*/usr/lib/python2.6/compiler/transformer.pyRŻ/s


$cCs;|i|ƒ|dƒ}t|tƒo|St|gƒS(Ni(R‘R$Rg(RGR_Rģ((s*/usr/lib/python2.6/compiler/transformer.pyRa;scCsN|i|ƒ|dƒ}t|tƒo|i|iƒn|i|ƒdS(Ni(R‘R$RgtextendR!R(RGRkR_Rģ((s*/usr/lib/python2.6/compiler/transformer.pyReBsRDcCs§g}x‡tdt|ƒƒD]p}||dtijo|i|d||ƒS||dtijoqn|i|i||ƒƒqWt	|d|di
ƒS(NiiR((R‡R*R0RDtcom_list_comprehensionR5R RRmRR((RGRhtvaluesRj((s*/usr/lib/python2.6/compiler/transformer.pyRKs
cCso|dd}g}xE|o=|dd}|djo|i|dtƒ}|i|dƒ}t||gƒ}|dd|_|i|ƒt|ƒdjo
d}qW|i|dƒ}q|djoq|i|dƒ}	t	|	d|ddƒ}
|i
i|
ƒt|ƒdjo
d}qW|i|dƒ}qtd	||f‚qWt||d|ƒS(
NiitforiitifR(is,unexpected list comprehension element: %s %d(
R”RRmtListCompForR(RR*Rt
com_list_itert
ListCompIftifsR%tListComp(RGRTR_R(tforsR
RŌRÕtnewforRātnewif((s*/usr/lib/python2.6/compiler/transformer.pyRMXs2




cCs|dS(Ni((RGR_((s*/usr/lib/python2.6/compiler/transformer.pyRR{scCsZg}x:tdt|ƒdƒD] }|i|i||ƒƒqWt|d|diƒS(NiiR(i(R‡R*RRmRR((RGRhRNRj((s*/usr/lib/python2.6/compiler/transformer.pyRs
RącCs|dd}g}xB|o:|dd}|djoŠ|i|dtƒ}|i|dƒ}t||gd|ddƒ}|i|ƒt|ƒdjo
d}qT|i|dƒ}q|djoq|i|dƒ}	t|	d|ddƒ}
|i	i|
ƒt|ƒdjo
d}qT|i|dƒ}qt
d	||f‚qWt|d
_t
t||ƒd|ƒS(NiiROiR(iRPis.unexpected generator expression element: %s %di(R”RRmt
GenExprForRR*Rtcom_gen_itert	GenExprIfRTR%tTruet
is_outmosttGenExprtGenExprInner(RGRTR_R(RVR
RŌtgenNodeRWRāRX((s*/usr/lib/python2.6/compiler/transformer.pyRį†s4





cCs|dS(Ni((RGR_((s*/usr/lib/python2.6/compiler/transformer.pyRZØscCsug}xQtdt|ƒdƒD]7}|i|i||ƒ|i||dƒfƒqWt|d|ddiƒS(NiiiR(i(R‡R*RRmRR((RGRhR2Rj((s*/usr/lib/python2.6/compiler/transformer.pyR¬scCs‘|dd}|tijo|i||dƒS|tijo|i||dƒS|tijo|i||dtƒStd|‚dS(Niiisunknown node type: %s(	R5R8RqRGtcom_select_memberR:RIRR%(RGtprimaryNodeRhR
((s*/usr/lib/python2.6/compiler/transformer.pyR“scCs<|dtijo
td‚nt||dd|dƒS(Nismember must be a nameiR(i(R5RDR%Rn(RGRbRh((s*/usr/lib/python2.6/compiler/transformer.pyRaæs
cCsĒ|dtijot|gdt|ƒƒSg}d}d}}t|ƒ}d}xO||joA||}	|	dtijoB|dj	o
td‚n|i||dƒ}|d}qYnW|	dti	joB|dj	o
td‚n|i||dƒ}|d}qYn|i
|	||ƒ\}}
|djoHt|
tƒo8t|	ƒdjo%|	ddt
ijo
td‚n|i|
ƒ|d}qYWt||||dt|ƒƒS(	NiR(is$already have the varargs indentifieris#already have the kwargs indentifieris&generator expression needs parenthesis(R5R‚tCallFuncR%RR*R½R%RmRtcom_argumentR$R^R0RąR(RGRbRhR,tkwt	star_nodet
dstar_nodetlen_nodelistRjR_Rģ((s*/usr/lib/python2.6/compiler/transformer.pyRqÄs<








+

cCsRt|ƒdjoF|ddtijo.|i|dƒ}d|i||dƒfSt|ƒdjo@|o
td‚n|o
td‚nd|i|dƒfS|i|dƒ}|d}x6t|ƒdjo"|dtijo|d}qĢW|dtijotd|d‚nt|d|d|dƒ}d|fS(	Niiiis!non-keyword arg after keyword args+only named arguments may follow *expressions#keyword can't be an expression (%s)R((	R*R0RąRmRįR%R5RDtKeyword(RGRhReRfRāRģR`R_((s*/usr/lib/python2.6/compiler/transformer.pyRdės$+


'c	Csļt|ƒdjo}|d}|ddtijp+t|ƒdjo-|ddtijo,|ddtijo|i|||ƒSng}x:tdt|ƒdƒD] }|i|i||ƒƒqÆWt	|||dt
|ƒƒS(Niiii’’’’R((R*R5RR0Rt	com_sliceR‡Rt
com_subscriptR7R%(RGR@RhR?tsubt
subscriptsRj((s*/usr/lib/python2.6/compiler/transformer.pyRIžs
+cCs‚|d}|d}|tijo |ddtijotƒS|tijpt|ƒdjo|i|ƒS|i|ƒS(Niii(R5RGtEllipsisRR*tcom_sliceobjRm(RGR_RAR
((s*/usr/lib/python2.6/compiler/transformer.pyRks

(#cCsEg}|ddtijo|itdƒƒd}n!|i|i|dƒƒd}|t|ƒjo@||dtijo(|i|i||ƒƒ|d}n|itdƒƒxkt	|t|ƒƒD]T}||}t|ƒdjo|itdƒƒq×|i|i|dƒƒq×Wt
|dt|ƒƒS(NiiiiR((R5RRR­RRmR*R0RāR‡tSliceobjR%(RGR_R2RjtjRA((s*/usr/lib/python2.6/compiler/transformer.pyRos"

+
cCsæd}}t|ƒdjoF|ddtijo|i|dƒ}q |i|dƒ}n>t|ƒdjo*|i|dƒ}|i|dƒ}nt||||dt|ƒƒS(NiiiiiR((RR*R5RRmR6R%(RGR@R_R?tlowertupper((s*/usr/lib/python2.6/compiler/transformer.pyRj@s
c
CsÆ|djo|d}|d}n|tijo]t|ƒdjo|i|dƒSx0|D](}|dtijo|i|ƒSqaWdS|tijo8x0|D](}|dtijo|i|ƒSq©WdS|tijoM|ddti	jo0d}x"|D]}|t
|dƒ}qW|SdS|tijp |tijp|tijo|i|dƒS|t
jo%t|ƒdjo|i|dƒSdS(NiiRU(RR0RRR*RcR†RZRR5RBRRˆt
small_stmtt
_doc_nodes(RGR_R`RltsR
((s*/usr/lib/python2.6/compiler/transformer.pyRcNs>

  N(RRt__doc__RJRQRRRWRORYRZR[RpRsRvRxR]R\told_lambdefR^R†Rtt	flow_stmtt
compound_stmtRˆR‰RyRŠR‹RŒRRŽRRRžR„R¦R§R©R«R®RÆR±R¶R·RŗRĆRÅRĒRÉRĻRŅRÖRŲRŚRÜRRRßR9t	testlist1R8RćRāRčtold_testRźRķRóRTRöRųRżRRRRRR7R9R;R=R?R"RARCR‘RmR4RzR$R&R¼R(R¹R)RæRƒR×RŁRŪR—R–R”R:R=R>R<RHRŻRaReRR0RRMRRRįRZRRRaRqRdRIRkRoRjRRc(((s*/usr/lib/python2.6/compiler/transformer.pyR^sž							
							!																																
												!				
			
	
													2					
		
			)	
			
	,		
		
					
	#
		"
				'			
	$	t<t>s==s<=s>=s!=RÆR±cCs|g}xo|D]g}t|tƒo|iti||ƒƒq
t|tƒo|i|ƒq
|it|ƒƒq
W|S(N(R$tintRt_namestgetR+t
debug_tree(RPR"R((s*/usr/lib/python2.6/compiler/transformer.pyR‚Ņs(SRwtcompiler.astRMR0R5t
StandardErrorRtcompiler.constsRRRRRRR
RR%R.RRžRßR9RāRčRźRķRóRTRöRųRżRRRRRutLESStGREATERtEQEQUALR“t	LESSEQUALtGREATEREQUALtNOTEQUALRļR]R^R†RtRyRˆRzR„R¦R§R©R«R®R¶R·RÅRĒRÉRĻRŅRÖRŲRŚRRR8Rt_legal_node_typesRRRÆR±R;R€R1R2Rtvttok_nameR‚(((s*/usr/lib/python2.6/compiler/transformer.pyt<module>	sÖ
	
			
	’’’’’








ACC SHELL 2018