b374k
m1n1 1.01
Apache/2.2.15 (CentOS)
Linux obd60-6c49958d75-2q7cw 5.4.0-174-generic #193-Ubuntu SMP Thu Mar 7 14:29:28 UTC 2024 x86_64
uid=48(apache) gid=48(apache) groups=48(apache)
server ip : 104.21.65.202 | your ip : 10.244.126.0
safemode OFF
 >  / usr / lib64 / python2.6 / compiler /
Filename/usr/lib64/python2.6/compiler/transformer.pyc
Size46.23 kb
Permissionrw-r--r--
Ownerapache
Create time23-Dec-2025 17:41
Last modified20-Jun-2019 19:45
Last accessed20-Jun-2019 19:45
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
Ñò
§ÚêLc/@sjdZddkTddkZddkZddkZdefd��YZddklZl Z ddkl
Z
l Z l 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*Nt WalkerErrorcBseZRS((t__name__t
__module__(((s,/usr/lib64/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/lib64/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'(t Transformert
parsesuitet parseexprt
ValueError(tbuftmode((s,/usr/lib64/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/lib64/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/lib64/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/lib64/python2.6/compiler/transformer.pytNodeRs

 RcBs}eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Z d
�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|i ti 6|i
ti6|iti6|iti6|iti6|iti6|_d|_dS(N(t _dispatchtsymboltsym_nametitemsRtgetattrt com_NEWLINEttokentNEWLINEt atom_lpartLPARt atom_lsqbtLSQBt atom_lbracetLBRACEtatom_backquotet BACKQUOTEt atom_numbertNUMBERt atom_stringtSTRINGt atom_nametNAMEt_atom_dispatchRtencoding(tselftvaluetname((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyt transformxs cCs|iti|��S(s6Return a modified parse tree for the given suite text.(RQRMtsuite(RGttext((s,/usr/lib64/python2.6/compiler/transformer.pyR~scCs|iti|��S(s;Return a modified parse tree for the given expression text.(RQRMtexpr(RGRS((s,/usr/lib64/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/lib64/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/lib64/python2.6/compiler/transformer.pyRO�s$


cCs7|dd}|tijo|i|d�St�S(Ni(R5R6tcom_stmttPass(RGR_R`((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyRZ³s

 (cCst|i|d��S(Ni(t
Expressiontcom_node(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR[¿scCsÆt|�}|djo|ddjpt�|i|�}d}xy||jok||dtijpt�||ddtijpt�t|||dd�}|d7}qIW|S(Niii(R*tAssertionErrorRCR5tDOTRDtGetattr(RGRhtlistlenR#Rj((s,/usr/lib64/python2.6/compiler/transformer.pytdecorator_nameÄs %
#cCsät|�djpt�|ddtijpt�|ddtijpt�|ddtijpt�|i|dd�}t|�djo9|ddtijpt�|i ||d�}n|}|S( Niiiiiÿÿÿÿii(iii(
R*RnR5tATR6R0t dotted_nameRrR8tcom_call_function(RGRhtfuncnameRT((s,/usr/lib64/python2.6/compiler/transformer.pyt decoratorÒscCsVg}xC|D];}|dtijpt�|i|i|d��q
Wt|�S(Nii(R0RwRnRt
Decorators(RGRhR2t dec_nodelist((s,/usr/lib64/python2.6/compiler/transformer.pyt
decoratorsãs cCsÅ|ddtijpt�|ddtijo-|dgt|dd�}|i|�S|ddtijo<|i|dd�}|i|dd�}||_|St��dS(Nii(R0RzRnR]RLR^R(RGRhR`Rztcls((s,/usr/lib64/python2.6/compiler/transformer.pyt decoratedës c Csst|�djo:|ddtijpt�|i|dd�}n!t|�djpt�d}|dd}|dd}|dd}|dtijo |i|d�\}}}nd
}}d}|i|d�} |i|d�}
| dj oCt |
t
�pt�t |
i dt �pt�|
i d=nt
|||||| |
d |�S( NiiiiiüÿÿÿiiýÿÿÿiÿÿÿÿR(((R*R0RzRnRt varargslistt com_arglistRcRmR$RgR!tDiscardtFunction( RGRhRzR(RIR,tnamestdefaultstflagsRitcode((s,/usr/lib64/python2.6/compiler/transformer.pyR]÷s( 

c Cs�|ddtijo$|i|dd�\}}}nd}}d}|i|d�}t||||d|dd�S(NiiiiÿÿÿÿR(((R0R}R~RmtLambda(RGRhR�R�R�R�((s,/usr/lib64/python2.6/compiler/transformer.pyR\s $
cCsü|dd}|i|d�}|ddtijo
g}n6|ddtijo
g}n|i|d�}|i|d�}|dj oCt|t�pt �t|i
dt �pt �|i
d=nt ||||d|dd�S(NiiÿÿÿÿiiiR((
RcR5tCOLONtRPARt com_basesRmRR$RgRnR!RtClass(RGRhRIRitbasesR�((s,/usr/lib64/python2.6/compiler/transformer.pyR^&s


cCs|i|d�S(Ni(Ra(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytstmt<scCsGg}x4tdt|�d�D]}|i|||�qWt|�S(Nii(trangeR*ReRg(RGRhRkRj((s,/usr/lib64/python2.6/compiler/transformer.pyt simple_stmtCs
cCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt
parametersJscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR}MscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytfpdefPscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytfplistSscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyRtVscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytcomp_opYscCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyttrailer\scCs
t�dS(N(R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytsliceop_scCs
t�dS(N(R(RGRh((s,/usr/lib64/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(t lookup_nodeR*RR(R5tEQUALR�Rt
com_assignRtAssignt
com_augassigntcom_augassign_opt AugAssignR(RGRhtentexprNodetnodeslRjtlvaltop((s,/usr/lib64/python2.6/compiler/transformer.pyt expr_stmtjs
!cCs(g}t|�djod}d}nt|ddtijoOt|�djp|ddtijpt�|i|d�}d}n
d}d}x:t|t|�d�D] }|i|i||��qµW|ddtijot ||d|dd�St
||d|dd�S(NiiiiiiÿÿÿÿR(( R*RR5t
RIGHTSHIFTtCOMMARnRmR�RtPrinttPrintnl(RGRhR2tstarttdestRj((s,/usr/lib64/python2.6/compiler/transformer.pyt
print_stmt{s"

cCs|i|dt�S(Ni(R�R(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytdel_stmt�scCstd|dd�S(NR(ii(Rb(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt pass_stmt�scCstd|dd�S(NR(ii(tBreak(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt
break_stmt�scCstd|dd�S(NR(ii(tContinue(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt
continue_stmt�scCsWt|�djottd�d|dd�St|i|d�d|dd�S(NiR(ii(R*tReturntConstRRm(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt return_stmt�scCs&|i|d�}t|d|i�S(NiR((RmRR((RGRhRT((s,/usr/lib64/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/lib64/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/lib64/python2.6/compiler/transformer.pyt
raise_stmt¬scCs+t|�djpt�|i|d�S(Nii(R*RnRm(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt import_stmt¼scCs%t|i|d�d|dd�S(NiR(ii(tImporttcom_dotted_as_names(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt import_nameÁscCs>|dddjpt�d}x$||ddjo|d7}q%W|d}||dtijo!|i||�}|d7}nd}||ddjpt�||ddtijo"t|d
g|d|dd �S||d||ddtij}t||i |�|d|dd �SdS( Niitfromt.RUtimportRR(i(RN(
RnR0Rttcom_dotted_nameR5tSTARtFromRR8tcom_import_as_names(RGRhtidxtleveltfromnameR_((s,/usr/lib64/python2.6/compiler/transformer.pyt import_fromÆs"
'cCsVg}x5tdt|�d�D]}|i||d�qWt|d|dd�S(NiiR(i(R�R*RtGlobal(RGRhR�Rj((s,/usr/lib64/python2.6/compiler/transformer.pyt global_stmtÜs
cCs�|i|d�}t|�djoG|i|d�}t|�djo|i|d�}qwd}n d}}t|||d|dd�S( NiiiiiR(ii(RmR*RtExec(RGRhR¸R·R¶((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyt assert_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/lib64/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/lib64/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/lib64/python2.6/compiler/transformer.pytfor_stmtscCs
|i|�S(N(tcom_try_except_finally(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyttry_stmt%scCs
|i|�S(N(tcom_with(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyt with_stmt(scCs
|i|�S(N(t com_with_var(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytwith_var+scCsnt|�djo|i|d�Sg}x6|D].}|dtijo|i||�q2q2Wt|�S(Nii(R*RaR0R�ReRg(RGRhRkR_((s,/usr/lib64/python2.6/compiler/transformer.pyRR.scCs|it|�S(N(t
com_binarytTuple(RGRh((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyt
testlist_gexpHs+cCsþt|�djo*|ddtijo|i|d�S|i|d�}t|�djo�t|�djpt�|dddjpt�|dddjpt�|i|d�}|i|d�}t|||d |dd�S|S(
NiiitifitelseiiR((R*R0R\RmRntIfExp(RGRhtthenRçtelse_((s,/usr/lib64/python2.6/compiler/transformer.pyRçNs+cCsMt|�djo*|ddtijo|i|d�S|it|�S(Nii(R*R0R\RâtOr(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytor_test\s+cCs|it|�S(N(RâtAnd(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytand_testcscCsC|i|d�}t|�djot|d|dd�S|S(NiÿÿÿÿiR(i(RmR*tNot(RGRhtresult((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyt
comparisonns$



$cCs|it|�S(N(RâtBitor(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyRT�scCs|it|�S(N(RâtBitxor(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytxor_expr�scCs|it|�S(N(RâtBitand(RGRh((s,/usr/lib64/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/lib64/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/lib64/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ÂtMultSLASHtDivtPERCENTtModt DOUBLESLASHtFloorDivRR((RGRhR_RjRtt((s,/usr/lib64/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�R5RtUnaryAddRtUnarySubtTILDEtInvert(RGRhteltRR_((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pytpowerÓs
  cCs|i|dd|�S(Ni(RE(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pytatomàscCsB|ddtijotdd|dd�S|i|d�S(NiiR(i((R5R�RãRm(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR7ãscCsB|ddtijotdd|dd�S|i|d�S(NiiR(i((R5tRSQBtListtcom_list_constructor(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR9èscCsB|ddtijotdd|dd�S|i|d�S(NiiR(i((R5tRBRACEtDictt
com_dictmaker(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR;íscCst|i|d��S(Ni(t BackquoteRm(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyR=òscCs,t|dd�}t|d|dd�S(NiiR(i(RR°(RGRhtk((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pytdecode_literalús

cCsFd}x%|D]}||i|d�7}q
Wt|d|dd�S(NRUiR(ii(R)R°(RGRhR%R_((s,/usr/lib64/python2.6/compiler/transformer.pyRAs
cCs t|ddd|dd�S(NiiR(i(tName(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyRC scCs|i|dS(Ni(R/(RGR_((s,/usr/lib64/python2.6/compiler/transformer.pyR�scCs|i|d|d�S(Nii(R/(RGR_((s,/usr/lib64/python2.6/compiler/transformer.pyRmscGsttd��S(N(RR°R(RGR,((s,/usr/lib64/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�Rmt SyntaxError(RGRhR�R�R�RjR_R((s,/usr/lib64/python2.6/compiler/transformer.pyR~+s>
(


+

cCs6|ddtijo|i|d�S|ddS(Niii(R5R8t
com_fplist(RGR_((s,/usr/lib64/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/lib64/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/lib64/python2.6/compiler/transformer.pyRÁls *cCs§|dtijpt�|d}|i|dd�}t|�djo |dfS|dddjpt�|ddtijpt�||ddfS(Niitasi(R0tdotted_as_nameRnRÁR*RR5RD(RGR_tdot((s,/usr/lib64/python2.6/compiler/transformer.pytcom_dotted_as_namets
 cCs||dtijpt�|d}|i|d�g}x:tdt|�d�D] }|i|i||��qTW|S(Niii(R0tdotted_as_namesRnR1R�R*R(RGR_R�Rj((s,/usr/lib64/python2.6/compiler/transformer.pyR¼~s
cCsÂ|dtijpt�|d}|ddtijpt�t|�djo|dddfS|dddjp
t|�|ddtijpt�|dd|ddfS(NiiR.i(R0timport_as_nameRnR5RDR*R(RGR_((s,/usr/lib64/python2.6/compiler/transformer.pytcom_import_as_name�s
cCs||dtijpt�|d}|i|d�g}x:tdt|�d�D] }|i|i||��qTW|S(Niii(R0timport_as_namesRnR4R�R*R(RGR_R�Rj((s,/usr/lib64/python2.6/compiler/transformer.pyR�s
cCsGg}x:tdt|�d�D] }|i|i||��qW|S(Nii(R�R*RRm(RGR_R�Rj((s,/usr/lib64/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}n d}}|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(iiRêtfinally(
R5RDt
TryFinallyRmRR�R*R0t
except_clauseR�RRt TryExcept(
RGRhtclausesRÓt finallyNodeRjR_R¸R·t
try_except((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyRÞÇs 
cCs|i|d�S(Ni(Rm(RGRh((s,/usr/lib64/python2.6/compiler/transformer.pyRàÑscCs#|dtijpt�|dS(Nii(R0t augassignRn(RGR_((s,/usr/lib64/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 SubscriptRpR,R(RGR_R"((s,/usr/lib64/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 assigningRtprimaryRjtch((s,/usr/lib64/python2.6/compiler/transformer.pyR�ãsN
%








cCs\g}x=tdt|�d�D]#}|i|i|||��qWt|dt|��S(NiiR((R�R*RR�tAssTupleR%(RGR_RKtassignsRj((s,/usr/lib64/python2.6/compiler/transformer.pyRFs
!cCsÎg}x¯tdt|�d�D]�}|dt|�jo[||ddtijo
td�n||ddtijpt||d�n|i|i |||��qWt
|dt |��S(Niiis"can't assign to list comprehensionR(( R�R*R0tlist_forR,R5R£RnRR�tAssListR%(RGR_RKRORj((s,/usr/lib64/python2.6/compiler/transformer.pyRIs
2!cCst|d|d|d�S(NiR(i(tAssName(RGR_RK((s,/usr/lib64/python2.6/compiler/transformer.pyRJscCs�|dd}|tijo|i||d|�S|tijo|i||d|�S|tijo
td�ntd|�dS(Niiiscan't assign to function callsunknown trailer type: %s(R5Rotcom_assign_attrR:tcom_subscriptlistR8R,(RGRLR_RKR((s,/usr/lib64/python2.6/compiler/transformer.pyRH"s
cCst||d|d|d�S(NiR(iÿÿÿÿ(tAssAttr(RGRLR_RK((s,/usr/lib64/python2.6/compiler/transformer.pyRS,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%(RGt constructorRhR"R`R2Rj((s,/usr/lib64/python2.6/compiler/transformer.pyRâ/s 


$cCsO|i|�|d�}|dj pt�t|t�o|St|g�S(Ni(R�RRnR$Rg(RGR_Ró((s,/usr/lib64/python2.6/compiler/transformer.pyRa;s
cCsb|i|�|d�}|dj pt�t|t�o|i|i�n|i|�dS(Ni(R�RRnR$RgtextendR!R(RGRkR_Ró((s,/usr/lib64/python2.6/compiler/transformer.pyReBs
RPcCsÅg}x¥tdt|��D]�}||dtijo7t||�djpt�|i|d||�S||dtijoqn|i|i ||��qWt
|d|di �S(NiiR(( R�R*R0RPRntcom_list_comprehensionR5R£RRmRR((RGRhtvaluesRj((s,/usr/lib64/python2.6/compiler/transformer.pyR Ks
 c Cso|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�}qt d ||f�qWt ||d|�S(
NiitforiiRéR(is,unexpected list comprehension element: %s %d(
R�RRmt ListCompForR(RR*Rt
com_list_itert
ListCompIftifsR,tListComp( RGRTR_R(tforsRRÙRÚtnewforRçtnewif((s,/usr/lib64/python2.6/compiler/transformer.pyRXXs2




cCs#|dtijpt�|dS(Nii(R0t list_iterRn(RGR_((s,/usr/lib64/python2.6/compiler/transformer.pyR\{scCsZg}x:tdt|�d�D] }|i|i||��qWt|d|di�S(NiiR(i(R�R*RRmRR((RGRhRYRj((s,/usr/lib64/python2.6/compiler/transformer.pyR s
Råc Cs|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( NiiRZiR(iRéis.unexpected generator expression element: %s %di(R�RRmt
GenExprForRR*Rt com_gen_itert GenExprIfR^R,tTruet
is_outmosttGenExprt GenExprInner( RGRTR_R(R`RRÙtgenNodeRaRçRb((s,/usr/lib64/python2.6/compiler/transformer.pyRæ�s4





cCs#|dtijpt�|dS(Nii(R0tgen_iterRn(RGR_((s,/usr/lib64/python2.6/compiler/transformer.pyRe¨scCsug}xQtdt|�d�D]7}|i|i||�|i||d�f�qWt|d|ddi�S(NiiiR(i(R�R*RRmR"R((RGRhR2Rj((s,/usr/lib64/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( R5R8RuRotcom_select_memberR:RTRR,(RGt primaryNodeRhR((s,/usr/lib64/python2.6/compiler/transformer.pyR´scCs<|dtijo
td�nt||dd|d�S(Nismember must be a nameiR(i(R5RDR,Rp(RGRnRh((s,/usr/lib64/python2.6/compiler/transformer.pyRm¿s
c CsÇ|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$RiR0RåR( RGRnRhR,tkwt star_nodet
dstar_nodet len_nodelistRjR_Ró((s,/usr/lib64/python2.6/compiler/transformer.pyRuÄ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(RGRhRqRrRçRóR`R_((s,/usr/lib64/python2.6/compiler/transformer.pyRpë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_subscriptRCR%(RGRLRhRKtsubt
subscriptsRj((s,/usr/lib64/python2.6/compiler/transformer.pyRTþs
+cCs�|d}|d}|tijo |ddtijot�S|tijpt|�djo|i|�S|i|�S(Niii(R5RotEllipsisR�R*t com_sliceobjRm(RGR_RMR((s,/usr/lib64/python2.6/compiler/transformer.pyRws

(#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_R2RjtjRM((s,/usr/lib64/python2.6/compiler/transformer.pyR{s"

+
cCs¿d}}t|�djoF|ddtijo|i|d�}q |i|d�}n>t|�djo*|i|d�}|i|d�}nt||||dt|��S(NiiiiiR((RR*R5R�RmRBR%(RGRLR_RKtlowertupper((s,/usr/lib64/python2.6/compiler/transformer.pyRv@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 |ti jp|ti jo|i|d�S|t
jo%t|�djo|i|d�SdS(NiiRU(RR0RRR*RcR�RZRR5RBRR�t
small_stmtt
_doc_nodes(RGR_R`RxtsR((s,/usr/lib64/python2.6/compiler/transformer.pyRcNs>

  N(�RRt__doc__RJRQRRRWRORYRZR[RrRwRzR|R]R\t old_lambdefR^R�R�t flow_stmtt
compound_stmtR�R�R}R�R�RtR�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äREt testlist1RDRèRçRïtold_testRñRôRúRTRýRÿRR RRRRR7R9R;R=R?R)RARCR�RmR4R~R+R-RÁR1R¼R4RÄR�RÜRÞRàR�R�R�RFRIRJRHRSRâRaReRR0R RXR\RæReR#RRmRuRpRTRwR{RvRRc(((s,/usr/lib64/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/lib64/python2.6/compiler/transformer.pyR�Òs(SR�t compiler.astRMR0R5t
StandardErrorRtcompiler.constsRRRRRRR
RR%R.RR¡RäRERçRïRñRôRúRTRýRÿRR RRRR�tLESStGREATERtEQEQUALR�t LESSEQUALt GREATEREQUALtNOTEQUALRöR]R^R�R�R�R�R�R¨R©RªR¬R®R±R¹RºRÊRÌRÎRÔR×RÛRÝRßRRRDRt_legal_node_typesRRR²R´RGR�R1R2R%tvttok_nameR�(((s,/usr/lib64/python2.6/compiler/transformer.pyt<module> sÖ
   

ÿÿÿÿÿ