Ńň
ŕ"Ic        /   @   sj  d  Z  d d k Td d k Z d d k Z d d k Z d e f d     YZ d d k l Z l	 Z	 d d k l
 Z
 l Z l Z d   Z d	 d
  Z d   Z d   Z d   Z d f  d     YZ e i e i e i e i e i e i e i e i e i e i e i e i e i e i  e i! e i" g Z# h d e i$ 6d e i% 6d e i& 6d e i' 6d e i( 6d e i) 6d e i* 6Z+ e i, e i- e i. e i/ e i0 e i1 e i2 e i e i3 e i4 e i5 e i6 e i7 e i8 e i9 e i: e i; e i< e i= e i> e i? e i@ e iA e iB e iC e i e i e i e i e i e i e iD e i e i e i e i e i e i  e i! e i" e iE g) ZF eG e d  o eF iH e iI  n eG e d  o eF iH e iJ  n e i e i e i e i e i e i e i e i e i e i e i  e i! g ZK h  ZL x' e iM iN   D] \ ZO ZP eP eL eO <qWx' e iQ iN   D] \ ZO ZP eP eL eO <qCWd   ZR d S(   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   WalkerErrorc           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   !   s   (   t
   CO_VARARGSt   CO_VARKEYWORDS(   t	   OP_ASSIGNt	   OP_DELETEt   OP_APPLYc         C   s3   t  |  d  } | i   d } | i   t |  S(   Nt   Us   
(   t   opent   readt   closet   parse(   t   patht   ft   src(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   parseFile'   s    
t   execc         C   sY   | d j p | d j o t    i |   S| d j o t    i |   St d   d  S(   NR   t   singlet   evals4   compile() arg 3 must be 'exec' or 'eval' or 'single'(   t   Transformert
   parsesuitet	   parseexprt
   ValueError(   t   buft   mode(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   1   s
    c         C   sľ   g  } x¨ |  D]  } t  | d  o | i | i    q t |  t d  j o | i t t |    q t |  t g   j o | i t |   q | i |  q W| S(   Nt   asList(   NN(   t   hasattrt   appendR   t   typet   Nonet   tuple(   t   nodest   lt   item(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   :   s     c         C   sh   t  |  d t  p	 |  d SxD |  d D]8 } t  | t  o" t |  } | d  j	 o | Sq( q( Wd  S(   Ni   i   (   t
   isinstanceR    t   extractLineNoR   (   t   astt   childt   lineno(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR%   H   s    	 c          G   s{   |  d } t  i |  oJ y t  | |  d   SWqw t j
 o! t  | Gt |   G|  GH  qw Xn t d t |    d  S(   Ni    i   s$   Can't find appropriate Node type: %s(   R!   t   has_keyt	   TypeErrort   lenR   t   str(   t   argst   kind(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   NodeR   s    
R   c           B   s}  e  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   Z e Z d   Z d   Z e Z e Z e 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!   Z' d"   Z( d#   Z) d$   Z* d%   Z+ d&   Z, d'   Z- d(   Z. d)   Z/ d*   Z0 d+   Z1 d,   Z2 d-   Z3 d.   Z4 d/   Z5 d0   Z6 d1   Z7 d2   Z8 d3   Z9 e9 Z: e9 Z; e9 Z< d4   Z= d5   Z> d6   Z? e? Z@ d7   ZA d8   ZB d9   ZC d:   ZD d;   ZE d<   ZF d=   ZG d>   ZH d?   ZI d@   ZJ dA   ZK dB   ZL dC   ZM dD   ZN dE   ZO dF   ZP dG   ZQ dH   ZR dI   ZS dJ   ZT dK   ZU dL   ZV dM   ZW dN   ZX dO   ZY dP   ZZ dQ   Z[ dR   Z\ dS   Z] dT   Z^ dU   Z_ dV   Z` dW   Za dX   Zb dY   Zc dZ   Zd d[   Ze d\   Zf d]   Zg d^   Zh d_   Zi d`   Zj da   Zk db   Zl dc   Zm dd   Zn eo ep de  o df   Zq dg   Zr dh   Zs n
 di   Zq eo ep dj  o dk   Zt dl   Zu n dm   Zv dn   Zw do   Zx dp   Zy dq   Zz dr   Z{ ds   Z| dt   Z} du   Z~ dw dv  Z RS(x   sę   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)
    c         C   s×   h  |  _  xG t i i   D]6 \ } } t |  |  o t |  |  |  i  | <q q W|  i |  i  t i <h |  i	 t i
 6|  i t i 6|  i t i 6|  i t i 6|  i t i 6|  i t i 6|  i t i 6|  _ d  |  _ d  S(   N(   t	   _dispatcht   symbolt   sym_namet   itemsR   t   getattrt   com_NEWLINEt   tokent   NEWLINEt	   atom_lpart   LPARt	   atom_lsqbt   LSQBt   atom_lbracet   LBRACEt   atom_backquotet	   BACKQUOTEt   atom_numbert   NUMBERt   atom_stringt   STRINGt	   atom_namet   NAMEt   _atom_dispatchR   t   encoding(   t   selft   valuet   name(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   __init__h   s    	 c         C   sF   t  | t  p t  | t  p t i | d d } n |  i |  S(   s,   Transform an AST into a modified parse tree.t	   line_infoi   (   R$   R    t   listt   parsert	   ast2tuplet   compile_node(   RH   t   tree(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   transformx   s     c         C   s   |  i  t i |   S(   s6   Return a modified parse tree for the given suite text.(   RR   RN   t   suite(   RH   t   text(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   ~   s    c         C   s   |  i  t i |   S(   s;   Return a modified parse tree for the given expression text.(   RR   RN   t   expr(   RH   RT   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR      s    c         C   s<   t  |  t  d  j o t |  } n |  i | i    S(   s@   Return a modified parse tree for the contents of the given file.t    (   R   R
   R   R   (   RH   t   file(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   parsefile   s    c      	   C   s  | d } | t  i j o% | d |  _ | d } | d } n | t  i j o |  i | d  S| t  i j o |  i | d  S| t  i j o |  i | d  S| t  i j o |  i | d  S| t  i j o |  i | d  S| t  i j o |  i | d  St	 d | f  d  S(   Ni    i   i   s   unexpected node type(
   R1   t   encoding_declRG   t   single_inputt
   file_inputt
   eval_inputt   lambdeft   funcdeft   classdefR   (   RH   t   nodet   n(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRP      s$    

c         C   s7   | d d } | t  i j o |  i | d  St   S(   Ni    (   R6   R7   t   com_stmtt   Pass(   RH   R`   Ra   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRZ   Š   s    c         C   s   |  i  | t i  } | d  j	 o
 d } n d } g  } xN | | D]B } | d t i j o( | d t i j o |  i | |  qC qC Wt | t	 |   S(   Ni   i    (
   t   get_docstringR1   R[   R   R6   t	   ENDMARKERR7   t   com_append_stmtt   Modulet   Stmt(   RH   t   nodelistt   doct   it   stmtsR`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR[   ł   s    
 (c         C   s   t  |  i | d   S(   Ni    (   t
   Expressiont   com_node(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR\   ż   s    c         C   sĆ   t  |  } | d j o | d d j p t  |  i |  } d } xy | | j  ok | | d t i j p t  | | d d t i j p t  t | | | d d  } | d 7} qI W| S(   Ni   i   i    (   R+   t   AssertionErrorRD   R6   t   DOTRE   t   Getattr(   RH   Ri   t   listlenR#   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   decorator_nameÄ   s    % #c         C   sä   t  |  d j p t  | d d t i j p t  | d d t i j p t  | d d t i j p t  |  i | d d  } t  |  d j o9 | d d t i j p t  |  i	 | | d  } n | } | S(	   Ni   i   i   i    i˙˙˙˙i   i   (   i   i   i   (
   R+   Ro   R6   t   ATR7   R1   t   dotted_nameRs   R9   t   com_call_function(   RH   Ri   t   funcnameRU   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   decoratorŇ   s    c         C   sV   g  } xC | D]; } | d t  i j p t  | i |  i | d   q Wt |  S(   Ni    i   (   R1   Rx   Ro   R   t
   Decorators(   RH   Ri   R3   t   dec_nodelist(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   decoratorsă   s     c         C   sĹ   | d d t  i j p t  | d d t  i j o- | d g t | d d  } |  i |  S| d d t  i j o< |  i | d d  } |  i | d d  } | | _ | St    d  S(   Ni    i   (   R1   R{   Ro   R^   RM   R_   R   (   RH   Ri   Ra   R{   t   cls(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   decoratedë   s    	c         C   ss  t  |  d j o: | d d t i j p t  |  i | d d  } n! t  |  d j p t  d  } | d d } | d d } | d d } | d t i j o  |  i | d  \ } } } n d
 } } d } |  i | d  }	 |  i | d  }
 |	 d  j	 oC t	 |
 t
  p t  t	 |
 i d t  p t  |
 i d =n t | | | | | |	 |
 d	 | S(   Ni   i    i   i   iü˙˙˙i   iý˙˙˙i˙˙˙˙R(   (    (   R+   R1   R{   Ro   R   t   varargslistt   com_arglistRd   Rn   R$   Rh   R!   t   Discardt   Function(   RH   Ri   R{   R(   RJ   R-   t   namest   defaultst   flagsRj   t   code(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR^   ÷   s(     
c      	   C   s   | d d t  i j o$ |  i | d d  \ } } } n d } } d } |  i | d  } t | | | | d | d d S(   Ni   i    i   i˙˙˙˙R(   (    (   R1   R~   R   Rn   t   Lambda(   RH   Ri   R   R   R   R   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR]     s    $
c         C   sü   | d d } |  i  | d  } | d d t i j o
 g  } n6 | d d t i j o
 g  } n |  i | d  } |  i | d  } | d  j	 oC t | t  p t	  t | i
 d t  p t	  | i
 d =n t | | | | d | d d S(   Ni   i˙˙˙˙i   i    i   R(   (   Rd   R6   t   COLONt   RPARt	   com_basesRn   R   R$   Rh   Ro   R!   R   t   Class(   RH   Ri   RJ   Rj   t   basesR   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR_   &  s    

c         C   s   |  i  | d  S(   Ni    (   Rb   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   stmt<  s    c         C   sG   g  } x4 t  d t |  d  D] } |  i | | |  q Wt |  S(   Ni    i   (   t   rangeR+   Rf   Rh   (   RH   Ri   Rl   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   simple_stmtC  s
     c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   parametersJ  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR~   M  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   fpdefP  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   fplistS  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRu   V  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   comp_opY  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   trailer\  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   sliceop_  s    c         C   s
   t   d  S(   N(   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   argumentb  s    c      	   C   s  | d } |  i  |  | d  } t |  d j o t | d | i S| d d t i j of g  } xA t d t |  d d  D]# } | i |  i | | t	   q Wt
 | | d | d d S|  i | d  } |  i | d  } t | | d | d | d St d  d  S(   Ni˙˙˙˙i   R(   i    i   s   can't get here(   t   lookup_nodeR+   R   R(   R6   t   EQUALR   R   t
   com_assignR   t   Assignt   com_augassignt   com_augassign_opt	   AugAssignR   (   RH   Ri   t   ent   exprNodet   nodeslRk   t   lvalt   op(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   expr_stmtj  s    
 !c         C   s(  g  } t  |  d j o d } d  } nt | d d t i j oO t  |  d j p | d d t i j p t  |  i | d  } d } n d  } d } x: t | t  |  d  D]  } | i |  i | |   qľ W| d d t i j o t	 | | d | d d St
 | | d | d d S(   Ni   i    i   i   i   i˙˙˙˙R(   (   R+   R   R6   t
   RIGHTSHIFTt   COMMARo   Rn   R   R   t   Printt   Printnl(   RH   Ri   R3   t   startt   destRk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   print_stmt{  s"    

 c         C   s   |  i  | d t  S(   Ni   (   R   R   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   del_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   Rc   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   pass_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   t   Break(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   break_stmt  s    c         C   s   t  d | d d  S(   NR(   i    i   (   t   Continue(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   continue_stmt  s    c         C   sW   t  |  d j  o t t d   d | d d St |  i | d  d | d d S(   Ni   R(   i    i   (   R+   t   Returnt   ConstR   Rn   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   return_stmt  s    c         C   s&   |  i  | d  } t | d | i S(   Ni    R(   (   Rn   R   R(   (   RH   Ri   RU   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   yield_stmtĄ  s    c         C   sN   t  |  d j o |  i | d  } n t d   } t | d | d d S(   Ni   R(   i    i   (   R+   Rn   Rą   R   t   Yield(   RH   Ri   RI   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   yield_exprĽ  s    c         C   sŽ   t  |  d j o |  i | d  } n d  } t  |  d j o |  i | d  } n d  } t  |  d j o |  i | d  } n d  } t | | | d | d d S(   Ni   i   i   R(   i    i   (   R+   Rn   R   t   Raise(   RH   Ri   t   expr3t   expr2t   expr1(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   raise_stmtŹ  s    c         C   s+   t  |  d j p t  |  i | d  S(   Ni   i    (   R+   Ro   Rn   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   import_stmtź  s    c         C   s%   t  |  i | d  d | d d S(   Ni   R(   i    i   (   t   Importt   com_dotted_as_names(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   import_nameÁ  s    c         C   s>  | d d d j p t   d } x$ | | d d j o | d 7} q% W| d } | | d t i j o! |  i | |  } | d 7} n d } | | d d j p t   | | d d t i j o" t | d
 g | d | d d	 S| | d | | d d t i j } t | |  i	 |  | d | d d	 Sd  S(   Ni    i   t   fromt   .RV   t   importR    R(   i   (   R    N(
   Ro   R1   Ru   t   com_dotted_nameR6   t   STARt   FromR   R9   t   com_import_as_names(   RH   Ri   t   idxt   levelt   fromnameR`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   import_fromĆ  s"     
'c         C   sV   g  } x5 t  d t |  d  D] } | i | | d  q Wt | d | d d S(   Ni   i   R(   i    (   R   R+   R   t   Global(   RH   Ri   R   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   global_stmtÜ  s
     c         C   s   |  i  | d  } t |  d j oG |  i  | d  } t |  d j o |  i  | d  } qw d  } n d  } } t | | | d | d d S(	   Ni   i   i   i   i   R(   i    i   (   Rn   R+   R   t   Exec(   RH   Ri   Rš   R¸   Rˇ   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   exec_stmtă  s    

c         C   s^   |  i  | d  } t |  d j o |  i  | d  } n d  } t | | d | d d S(   Ni   i   i   R(   i    i   (   Rn   R+   R   t   Assert(   RH   Ri   Rš   R¸   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   assert_stmtń  s
    c         C   s˝   g  } xe t  d t |  d d  D]G } |  i | | d  } |  i | | d  } | i | | f  q# Wt |  d d j o |  i | d  } n d  } t | | d | d d S(   Ni    i   i   i   i˙˙˙˙R(   i   (   R   R+   Rn   R   R   t   If(   RH   Ri   t   testsRk   t   testNodet	   suiteNodet   elseNode(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   if_stmtú  s     c         C   st   |  i  | d  } |  i  | d  } t |  d j o |  i  | d  } n d  } t | | | d | d d S(   Ni   i   i   i   R(   i    i   (   Rn   R+   R   t   While(   RH   Ri   RŇ   t   bodyNodeRÔ   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   while_stmt	  s    c         C   s   |  i  | d t  } |  i | d  } |  i | d  } t |  d j o |  i | d  } n d  } t | | | | d | d d S(   Ni   i   i   i   R(   i    i   (   R   R   Rn   R+   R   t   For(   RH   Ri   t
   assignNodet   listNodeR×   RÔ   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   for_stmt  s    c         C   s   |  i  |  S(   N(   t   com_try_except_finally(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   try_stmt%  s    c         C   s   |  i  |  S(   N(   t   com_with(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt	   with_stmt(  s    c         C   s   |  i  |  S(   N(   t   com_with_var(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   with_var+  s    c         C   sn   t  |  d j o |  i | d  Sg  } x6 | D]. } | d t i j o |  i | |  q2 q2 Wt |  S(   Ni   i    (   R+   Rb   R1   R   Rf   Rh   (   RH   Ri   Rl   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRS   .  s     c         C   s   |  i  t |  S(   N(   t
   com_binaryt   Tuple(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   testlist>  s    c         C   s`   t  |  d j o@ | d d t i j o( |  i | d  } |  i | | d  S|  i |  S(   Ni   i   i    (   R+   R1   t   gen_forRn   t   com_generator_expressionRĺ   (   RH   Ri   t   test(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   testlist_gexpH  s    +c         C   sţ   t  |  d j o* | d d t i j o |  i | d  S|  i | d  } t  |  d j o t  |  d j p t  | d d d j p t  | d d d j p t  |  i | d  } |  i | d  } t | | | d	 | d d S| S(
   Ni   i    i   t   ifi   t   elsei   i   R(   (   R+   R1   R]   Rn   Ro   t   IfExp(   RH   Ri   t   thenRč   t   else_(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRč   N  s    +c         C   sM   t  |  d j o* | d d t i j o |  i | d  S|  i t |  S(   Ni   i    (   R+   R1   R]   Ră   t   Or(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   or_test\  s    +c         C   s   |  i  t |  S(   N(   Ră   t   And(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   and_testc  s    c         C   sC   |  i  | d  } t |  d j o t | d | d d S| S(   Ni˙˙˙˙i   R(   i    (   Rn   R+   t   Not(   RH   Ri   t   result(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   not_testg  s    c   	      C   s  |  i  | d  } t |  d j o | Sg  } xĘ t d t |  d  D]° } | | d } | d } | d t i j oB | d } t |  d j o! | d j o
 d } qş d } qĚ n t | d } | d d } | i | |  i  | |  f  qJ Wt | | d | S(	   Ni    i   i   i   t   nots   not ins   is notR(   (   Rn   R+   R   R6   RE   t
   _cmp_typesR   t   Compare(	   RH   Ri   R`   t   resultsRk   t   nlRa   R   R(   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   comparisonn  s$     


$c         C   s   |  i  t |  S(   N(   Ră   t   Bitor(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRU     s    c         C   s   |  i  t |  S(   N(   Ră   t   Bitxor(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   xor_expr  s    c         C   s   |  i  t |  S(   N(   Ră   t   Bitand(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   and_expr  s    c         C   sć   |  i  | d  } xĚ t d t |  d  D]˛ } |  i  | |  } | | d d t i j o$ t | | g d | d d } q, | | d d t i j o$ t | | g d | d d } q, t d | | d d  q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rn   R   R+   R6   t	   LEFTSHIFTt	   LeftShiftRŁ   t
   RightShiftR   (   RH   Ri   R`   Rk   t   right(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   shift_expr  s     $$c         C   sć   |  i  | d  } xĚ t d t |  d  D]˛ } |  i  | |  } | | d d t i j o$ t | | g d | d d } q, | | d d t i j o$ t | | g d | d d } q, t d | | d d  q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rn   R   R+   R6   t   PLUSt   Addt   MINUSt   SubR   (   RH   Ri   R`   Rk   R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt
   arith_expr¨  s     $$c         C   s  |  i  | d  } xű t d t |  d  D]á } |  i  | |  } | | d d } | t i j o t | | g  } n | t i j o t | | g  } nZ | t i j o t	 | | g  } n4 | t i
 j o t | | g  } n t d |  | d d | _ q, W| S(   Ni    i   i   s   unexpected token: %s(   Rn   R   R+   R6   RĂ   t   Mult   SLASHt   Divt   PERCENTt   Modt   DOUBLESLASHt   FloorDivR   R(   (   RH   Ri   R`   Rk   R  t   t(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   term´  s      c         C   s­   | d } | d } |  i  | d  | d d  } | t i j o t | d | d S| t i j o t | d | d S| t i j o t | d | d } n | S(   Ni    i˙˙˙˙i   R(   i   (   R   R6   R  t   UnaryAddR  t   UnarySubt   TILDEt   Invert(   RH   Ri   t   eltR  R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   factorĆ  s    

!c         C   s   |  i  | d  } xy t d t |   D]b } | | } | d t i j o, t | |  i  | | d  g d | d S|  i | |  } q) W| S(   Ni    i   R(   i   (   Rn   R   R+   R6   t
   DOUBLESTARt   Powert   com_apply_trailer(   RH   Ri   R`   Rk   R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   powerÓ  s     
 c         C   s   |  i  | d d |  S(   Ni    (   RF   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   atomŕ  s    c         C   sB   | d d t  i j o t d d | d d S|  i | d  S(   Ni   i    R(   i   (    (   R6   R   Rä   Rn   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR8   ă  s    c         C   sB   | d d t  i j o t d d | d d S|  i | d  S(   Ni   i    R(   i   (    (   R6   t   RSQBt   Listt   com_list_constructor(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR:   č  s    c         C   sB   | d d t  i j o t d d | d d S|  i | d  S(   Ni   i    R(   i   (    (   R6   t   RBRACEt   Dictt   com_dictmaker(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR<   í  s    c         C   s   t  |  i | d   S(   Ni   (   t	   BackquoteRn   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR>   ň  s    c         C   s,   t  | d d  } t | d | d d S(   Ni    i   R(   i   (   R   Rą   (   RH   Ri   t   k(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR@   ő  s    c         C   s_   |  i  oG |  i  d j o t | d  i |  i   } n t d |  i  | f  St |  Sd  S(   Ns   utf-8s
   iso-8859-1s   # coding: %s
%s(   s   utf-8s
   iso-8859-1(   RG   t   unicodet   encodeR   (   RH   t   lit(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   decode_literalú  s
    
c         C   sF   d } x% | D] } | |  i  | d  7} q Wt | d | d d S(   NRV   i   R(   i    i   (   R*  Rą   (   RH   Ri   R&  R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRB     s
     c         C   s    t  | d d d | d d S(   Ni    i   R(   i   (   t   Name(   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRD     s    c         C   s   |  i  | d S(   Ni    (   R0   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR     s    c         C   s   |  i  | d | d  S(   Ni    i   (   R0   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRn     s    c         G   s   t  t d    S(   N(   R   Rą   R   (   RH   R-   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR5   %  s    c         C   sä  g  } g  } d } d } xź| t  |  j  o¨| | } | d t i j p | d t i j o× | d t i j oO | | d } | d t i j o) | i | d  | t B} | d } qĂ n | t  |  j  o\ | | d } | t i j o | | d } n t d |  | i | d  | t B} n Pn | i |  i	 |   | d } | t  |  j  oD | | d t i
 j o, | i |  i | | d   | d } n t  |  o t d  n | d } q W| | | f S(   Ni    i   i   s   unexpected token: %si   s-   non-default argument follows default argument(   R+   R6   RĂ   R  RE   R   R   R   R   t	   com_fpdefR   Rn   t   SyntaxError(   RH   Ri   R   R   R   Rk   R`   R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   +  s>     
(

+c         C   s6   | d d t  i j o |  i | d  S| d d S(   Ni   i    i   (   R6   R9   t
   com_fplist(   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR,  ]  s    c         C   sr   t  |  d j o |  i | d  Sg  } x: t d t  |  d  D]  } | i |  i | |   qD Wt |  S(   Ni   i   (   R+   R,  R   R   R    (   RH   R`   RM   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR.  c  s     c         C   s_   d } xN | D]F } t  |  t  d  j o' | d d j o | | d d } q q W| d  S(   NRV   i    i   RŔ   i˙˙˙˙(    (   R   (   RH   R`   RJ   Ra   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRÂ   l  s     *c         C   s§   | d t  i j p t  | d } |  i | d d  } t |  d j o | d  f S| d d d j p t  | d d t i j p t  | | d d f S(   Ni    i   t   asi   (   R1   t   dotted_as_nameRo   RÂ   R+   R   R6   RE   (   RH   R`   t   dot(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   com_dotted_as_namet  s    
c         C   s|   | d t  i j p t  | d } |  i | d  g } x: t d t |  d  D]  } | i |  i | |   qT W| S(   Ni    i   i   (   R1   t   dotted_as_namesRo   R2  R   R+   R   (   RH   R`   R   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR˝   ~  s    
 c         C   sÂ   | d t  i j p t  | d } | d d t i j p t  t |  d j o | d d d  f S| d d d j p
 t |  | d d t i j p t  | d d | d d f S(   Ni    i   R/  i   (   R1   t   import_as_nameRo   R6   RE   R+   R   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   com_import_as_name  s    
c         C   s|   | d t  i j p t  | d } |  i | d  g } x: t d t |  d  D]  } | i |  i | |   qT W| S(   Ni    i   i   (   R1   t   import_as_namesRo   R5  R   R+   R   (   RH   R`   R   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRĹ     s    
 c         C   sG   g  } x: t  d t |  d  D]  } | i |  i | |   q W| S(   Ni   i   (   R   R+   R   Rn   (   RH   R`   R   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR     s
     c   
   	   C   sű  | d d t  i j o6 t |  i | d  |  i | d  d | d d Sg  } d  } d  } x@t d t |  d  D]&} | | } | d t i j o t |  d j oJ |  i | d  } t |  d j o |  i	 | d t
  } qd  } n d  } } | i | | |  i | | d  f  n | d t  i j o\ | d d j o |  i | | d  } q| d d	 j o |  i | | d  } qqy qy Wt |  i | d  | | d | d d }	 | o t |	 | d | d d S|	 Sd  S(
   Ni   i    i   i   R(   i   i   Rë   t   finally(   R6   RE   t
   TryFinallyRn   R   R   R+   R1   t   except_clauseR   R   R   t	   TryExcept(
   RH   Ri   t   clausesRÔ   t   finallyNodeRk   R`   Rš   R¸   t
   try_except(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRÝ     s8     


+#c         C   s   |  i  | d  } |  i  | d  } | d d t i j o
 d  } n |  i | d d t  } t | | | d | d d S(   Ni   i˙˙˙˙i   i    R(   (   Rn   R6   R   R   R   R   t   With(   RH   Ri   RU   t   bodyt   var(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRß   Ç  s    
c         C   s   |  i  | d  S(   Ni   (   Rn   (   RH   Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRá   Ń  s    c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t	   augassignRo   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   Ő  s    c         C   sG   |  i  |  } | i t t t t f j o | St d | i i  d S(   s   Return node suitable for lvalue of augmented assignment

        Names, slices, and attributes are the only allowable nodes.
        s   can't assign to %sN(   Rn   t	   __class__R+  t   Slicet	   SubscriptRq   R-  R   (   RH   R`   R"   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   Ů  s    c         C   sp  xi| d } | t  i t  i t  i t  i f j o2 t |  d j o |  i | |  S| d } q | t j o. t |  d j o t d  n | d } q | t  i	 j oŇ | d d t  i
 j o t d  n t |  d j o |  i | d  } x^ t d t |  d  D]C } | | } | d t i j o t d  n |  i | |  } qW|  i | | d |  S| d } q | t  i
 j oË | d d } | t i j o/ | d } | d t i j o t d  qXqi| t i j o< | d } | d t i j o t d  n |  i | |  S| t i j o |  i | d |  St d  q t d	 |  q d  S(
   Ni    i   i   s   can't assign to operatori˙˙˙˙s   can't assign to ()s   can't assign to []s   can't assign to literals   bad assignment (%s)(   R1   t   exprlistRĺ   t   testlist_safeRé   R+   t   com_assign_tuplet   _assign_typesR-  R  R  Rn   R   R6   R  R  t   com_assign_trailerR9   R   R;   R  t   com_assign_listRE   t   com_assign_name(   RH   R`   t	   assigningR  t   primaryRk   t   ch(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   ă  sN    
% 


c         C   s\   g  } x= t  d t |  d  D]# } | i |  i | | |   q Wt | d t |  S(   Ni   i   R(   (   R   R+   R   R   t   AssTupleR%   (   RH   R`   RL  t   assignsRk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRG    s
     !c         C   sÎ   g  } xŻ t  d t |  d  D] } | d t |  j  o[ | | d d t i j o t d  n | | d d t i j p t | | d  n | i |  i	 | | |   q Wt
 | d t |  S(   Ni   i   i    s"   can't assign to list comprehensionR(   (   R   R+   R1   t   list_forR-  R6   R¤   Ro   R   R   t   AssListR%   (   RH   R`   RL  RP  Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRJ    s     2!c         C   s   t  | d | d | d S(   Ni   R(   i   (   t   AssName(   RH   R`   RL  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRK    s    c         C   s   | d d } | t  i j o |  i | | d |  S| t  i j o |  i | | d |  S| t  i j o t d  n t d |  d  S(   Ni   i    i   s   can't assign to function calls   unknown trailer type: %s(   R6   Rp   t   com_assign_attrR;   t   com_subscriptlistR9   R-  (   RH   RM  R`   RL  R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRI  "  s    c         C   s   t  | | d | d | d S(   Ni   R(   i˙˙˙˙(   t   AssAttr(   RH   RM  R`   RL  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRT  ,  s    c         C   s   t  |  } | d j o" | d } |  i |  | d  Sg  } xD t d | d  D]0 } | | } | i |  i |  | d   qT W| | d t |  S(   s=   Compile 'NODE (OP NODE)*' into (type, [ node1, ..., nodeN ]).i   i    i   R(   (   R+   R   R   R   R%   (   RH   t   constructorRi   R"   Ra   R3   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRă   /  s    
 
$c         C   sO   |  i  |  | d  } | d  j	 p t  t | t  o | St | g  S(   Ni   (   R   R   Ro   R$   Rh   (   RH   R`   Rô   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRb   ;  s
    c         C   sb   |  i  |  | d  } | d  j	 p t  t | t  o | i | i  n | i |  d  S(   Ni   (   R   R   Ro   R$   Rh   t   extendR!   R   (   RH   Rl   R`   Rô   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRf   B  s
    RQ  c         C   sĹ   g  } xĽ t  d t |   D] } | | d t i j o7 t | |  d j p t  |  i | d | |  S| | d t i j o q n | i |  i	 | |   q Wt
 | d | d i S(   Ni   i    R(   (   R   R+   R1   RQ  Ro   t   com_list_comprehensionR6   R¤   R   Rn   R   R(   (   RH   Ri   t   valuesRk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR!  K  s     c         C   so  | d d } g  } xE| o=| d d } | d j o |  i  | d t  } |  i | d  } t | | g   } | d d | _ | i |  t |  d j o
 d  } qW|  i | d  } q | d j oq |  i | d  }	 t	 |	 d | d d }
 | i
 i |
  t |  d j o
 d  } qW|  i | d  } q t d	 | | f  q Wt | | d | S(
   Ni   i   t   fori   i   Rę   R(   i   s,   unexpected list comprehension element: %s %d(   R   R   Rn   t   ListCompForR(   R   R+   R   t   com_list_itert
   ListCompIft   ifsR-  t   ListComp(   RH   RU   R`   R(   t   forsR  RÚ   RŰ   t   newforRč   t   newif(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRY  X  s2     

c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t	   list_iterRo   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR]  {  s    c         C   sZ   g  } x: t  d t |  d  D]  } | i |  i | |   q Wt | d | d i S(   Ni   i   R(   i    (   R   R+   R   Rn   R   R(   (   RH   Ri   RZ  Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR!    s
     Rć   c         C   s  | d d } g  } xB| o:| d d } | d j o |  i  | d t  } |  i | d  } t | | g  d | d d } | i |  t |  d j o
 d  } qT|  i | d  } q | d j oq |  i | d  }	 t |	 d | d d }
 | i	 i |
  t |  d j o
 d  } qT|  i | d  } q t
 d	 | | f  q Wt | d
 _ t t | |  d | S(   Ni   i   R[  i   R(   i   Rę   i   s.   unexpected generator expression element: %s %di    (   R   R   Rn   t
   GenExprForR   R+   R   t   com_gen_itert	   GenExprIfR_  R-  t   Truet
   is_outmostt   GenExprt   GenExprInner(   RH   RU   R`   R(   Ra  R  RÚ   t   genNodeRb  Rč   Rc  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRç     s4     

c         C   s#   | d t  i j p t  | d S(   Ni    i   (   R1   t   gen_iterRo   (   RH   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRf  ¨  s    c         C   su   g  } xQ t  d t |  d  D]7 } | i |  i | |  |  i | | d  f  q Wt | d | d d i S(   Ni   i   i   R(   i    (   R   R+   R   Rn   R#  R(   (   RH   Ri   R3   Rk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR$  Ź  s     c         C   s   | d d } | t  i j o |  i | | d  S| t  i j o |  i | | d  S| t  i j o |  i | | d t  St d |  d  S(   Ni   i    i   s   unknown node type: %s(	   R6   R9   Rv   Rp   t   com_select_memberR;   RU  R   R-  (   RH   t   primaryNodeRi   R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR  ´  s    c         C   s<   | d t  i j o t d  n t | | d d | d S(   Ni    s   member must be a namei   R(   i   (   R6   RE   R-  Rq   (   RH   Ro  Ri   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRn  ż  s    c         C   sÇ  | d t  i j o t | g  d t |  Sg  } d } d  } } t |  } d } xO| | j  oA| | }	 |	 d t  i j oB | d  j	 o t d  n |  i | | d  } | d } qY nW |	 d t  i	 j oB | d  j	 o t d  n |  i | | d  } | d } qY n |  i
 |	 | |  \ } }
 | d j oH t |
 t  o8 t |	  d j o% |	 d d t i j o t d  n | i |
  | d } qY Wt | | | | d t |  S(	   Ni    R(   i   s$   already have the varargs indentifieri   s#   already have the kwargs indentifieri   s&   generator expression needs parenthesis(   R6   R   t   CallFuncR%   R   R+   RĂ   R-  Rn   R  t   com_argumentR$   Rj  R1   Rć   R   (   RH   Ro  Ri   R-   t   kwt	   star_nodet
   dstar_nodet   len_nodelistRk   R`   Rô   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRv   Ä  s<    
 


+c         C   sR  t  |  d j oF | d d t i j o. |  i | d  } d |  i | | d  f St  |  d j o@ | o t d  n | o t d  n d |  i | d  f S|  i | d  } | d } x6 t  |  d j o" | d t i j o | d } qĚ W| d t i j o t d | d  n t | d | d | d } d | f S(	   Ni   i   i    i   s!   non-keyword arg after keyword args+   only named arguments may follow *expressions#   keyword can't be an expression (%s)R(   (	   R+   R1   Rć   Rn   Rç   R-  R6   RE   t   Keyword(   RH   Ri   Rr  Rs  Rč   Rô   Ra   R`   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRq  ë  s$    +
 'c      	   C   sď   t  |  d j o} | d } | d d t i j p+ t  |  d j o- | d d t i j o, | d d t i j o |  i | | |  Sn g  } x: t d t  |  d  D]  } | i |  i | |   qŻ Wt	 | | | d t
 |  S(   Ni   i   i    i˙˙˙˙R(   (   R+   R6   R   R1   R   t	   com_sliceR   R   t   com_subscriptRD  R%   (   RH   RM  Ri   RL  t   subt
   subscriptsRk   (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRU  ţ  s    
+ c         C   s   | d } | d } | t  i j o  | d d t  i j o t   S| t  i j p t |  d j o |  i |  S|  i |  S(   Ni   i    i   (   R6   Rp   t   EllipsisR   R+   t   com_sliceobjRn   (   RH   R`   RN  R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRx    s    

(#c         C   sE  g  } | d d t  i j o | i t d    d } n! | i |  i | d   d } | t |  j  o@ | | d t i j o( | i |  i | |   | d } n | i t d    xk t	 | t |   D]T } | | } t |  d j o | i t d    q× | i |  i | d   q× Wt
 | d t |  S(   Ni   i    i   i   R(   (   R6   R   R   Rą   R   Rn   R+   R1   Rč   R   t   SliceobjR%   (   RH   R`   R3   Rk   t   jRN  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR|    s"    

+ 
c         C   sż   d  } } t |  d j oF | d d t i j o |  i | d  } q  |  i | d  } n> t |  d j o* |  i | d  } |  i | d  } n t | | | | d t |  S(   Ni   i   i    i   i   R(   (   R   R+   R6   R   Rn   RC  R%   (   RH   RM  R`   RL  t   lowert   upper(    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRw  @  s    
c      
   C   sŻ  | d  j o | d } | d } n | t i j o] t |  d j o |  i | d  Sx0 | D]( } | d t i j o |  i |  Sqa Wd  S| t i j o8 x0 | D]( } | d t i j o |  i |  SqŠ Wd  S| t i j oM | d d t i	 j o0 d } x" | D] } | t
 | d  } qW| Sd  S| t i j p  | t i j p | t i j o |  i | d  S| t j o% t |  d j o |  i | d  Sd  S(   Ni    i   RV   (   R   R1   RS   R+   Rd   R   R[   R  R6   RC   R   R   t
   small_stmtt
   _doc_nodes(   RH   R`   Ra   Ry  t   sR  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyRd   N  s>    
     N(   R   R   t   __doc__RK   RR   R   R   RX   RP   RZ   R[   R\   Rs   Rx   R{   R}   R^   R]   t   old_lambdefR_   R   R  t	   flow_stmtt   compound_stmtR   R   R~   R   R   Ru   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â   RS   Rĺ   RF  t	   testlist1RE  Ré   Rč   Rđ   t   old_testRň   Rő   Rű   RU   Rţ   R   R  R
  R  R  R  R  R8   R:   R<   R>   R@   R*  RB   RD   R   Rn   R5   R   R,  R.  RÂ   R2  R˝   R5  RĹ   R   RÝ   Rß   Rá   R   R   R   RG  RJ  RK  RI  RT  Ră   Rb   Rf   R   R1   R!  RY  R]  Rç   Rf  R$  R  Rn  Rv   Rq  RU  Rx  R|  Rw  R   Rd   (    (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR   ^   sţ   							
							!																																												!																					2					
		
			)	
			
	,		
		
						#		"				'			
	$	t   <t   >s   ==s   <=s   >=s   !=Rł   Rľ   c         C   s|   g  } xo |  D]g } t  | t  o | i t i | |   q t  | t  o | i |  q | i t |   q W| S(   N(   R$   t   intR   t   _namest   getR,   t
   debug_tree(   RQ   R"   R  (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyR  Ň  s     (S   R  t   compiler.astRN   R1   R6   t   StandardErrorR   t   compiler.constsR   R   R   R   R   R   R   R   R%   R/   R   R˘   Rĺ   RF  Rč   Rđ   Rň   Rő   Rű   RU   Rţ   R   R  R
  R  R  R  R  t   LESSt   GREATERt   EQEQUALR   t	   LESSEQUALt   GREATEREQUALt   NOTEQUALR÷   R^   R_   R   R  R  R   R  RŠ   RŞ   RŤ   R­   RŻ   R˛   Rş   Rť   RË   RÍ   RĎ   RŐ   RŘ   RÜ   RŢ   Rŕ   RS   RE  R  t   _legal_node_typesR   R   Rł   Rľ   RH  R  R2   R3   R&  t   vt   tok_nameR  (    (    (    s1   /mit/python/lib/python2.6/compiler/transformer.pyt   <module>	   sÖ   
	
			
	˙ ˙ ˙ ˙ ˙ 





  