509318396
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
ó
vWS`c        )   @   sf  d  Z  d d l Td d l Z d d l Z d d l Z d e f d „  ƒ  YZ d d l m Z m	 Z	 d d l m
 Z
 m Z m Z d „  Z d	 d
 „ Z d „  Z d „  Z d „  Z d f  d „  ƒ  YZ e j e j e j e j e j e j e j e j e j e j e j e j e j e j  e j! e j" g Z# i d e j$ 6d e j% 6d e j& 6d e j' 6d e j( 6d e j) 6d e j* 6Z+ e j, e j- e j. e j/ e j0 e j1 e j2 e j e j3 e j4 e j5 e j6 e j7 e j8 e j9 e j: e j; e j< e j= e j> e j? e j@ e jA e jB e jC e j e j e j e j e j e j e jD e j e j e j e j e j e j  e j! e j" e jE g) ZF eG e d ƒ r�eF jH e jI ƒ n  eG e d ƒ r±eF jH e jJ ƒ n  e j e j e j e j e j e j e j e j e j e j e j  e j! g ZK i  ZL x' e jM jN ƒ  D] \ ZO ZP eP eL eO <qWx' e jQ jN ƒ  D] \ ZO ZP eP eL eO <q?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__(    (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   !   s   (   t
   CO_VARARGSt   CO_VARKEYWORDS(   t	   OP_ASSIGNt	   OP_DELETEt   OP_APPLYc         C   s3   t  |  d ƒ } | j ƒ  d } | j ƒ  t | ƒ S(   Nt   Us   
(   t   opent   readt   closet   parse(   t   patht   ft   src(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   parseFile'   s    
t   execc         C   sT   | d k s | d k r( t  ƒ  j |  ƒ S| d k rD t  ƒ  j |  ƒ St 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(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   1   s
    c         C   s¯   g  } x¢ |  D]š } t  | d ƒ r8 | j | j ƒ  ƒ q t | ƒ t d ƒ k rl | j t t | ƒ ƒ ƒ q t | ƒ t g  ƒ k rš | j t | ƒ ƒ q | j | ƒ q W| S(   Nt   asList(   NN(   t   hasattrt   appendR   t   typet   Nonet   tuple(   t   nodest   lt   item(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   :   s    c         C   sb   t  |  d t ƒ s |  d Sx@ |  d D]4 } t  | t ƒ r& t | ƒ } | d  k	 rZ | Sq& q& Wd  S(   Ni   i   (   t
   isinstanceR    t   extractLineNoR   (   t   astt   childt   lineno(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR%   H   s    c          G   st   |  d } | t  k r] y t  | |  d Œ  SWqp t k
 rY t  | Gt |  ƒ G|  GH‚  qp Xn t d t |  ƒ ‚ d  S(   Ni    i   s$   Can't find appropriate Node type: %s(   R!   t	   TypeErrort   lenR   t   str(   t   argst   kind(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   NodeR   s    

R   c           B   sU  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 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} du dt „ Z RS(v   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Õ   i  |  _  xE t j j ƒ  D]4 \ } } t |  | ƒ r t |  | ƒ |  j  | <q q W|  j |  j  t j <i |  j	 t j
 6|  j t j 6|  j t j 6|  j t j 6|  j t j 6|  j t j 6|  j t j 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(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   __init__h   s    	c         C   sC   t  | t ƒ p t  | t ƒ s6 t j | d d ƒ} n  |  j | ƒ S(   s,   Transform an AST into a modified parse tree.t	   line_infoi   (   R$   R    t   listt   parsert   st2tuplet   compile_node(   RG   t   tree(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   transformx   s    c         C   s   |  j  t j | ƒ ƒ S(   s6   Return a modified parse tree for the given suite text.(   RQ   RM   t   suite(   RG   t   text(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   ~   s    c         C   s   |  j  t j | ƒ ƒ S(   s;   Return a modified parse tree for the given expression text.(   RQ   RM   t   expr(   RG   RS   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   ‚   s    c         C   s:   t  | ƒ t  d ƒ k r' t | ƒ } n  |  j | j ƒ  ƒ S(   s@   Return a modified parse tree for the contents of the given file.t    (   R   R
   R   R   (   RG   t   file(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   parsefile†   s    c         C   s  | d } | t  j k r= | d |  _ | d } | d } n  | t  j k r] |  j | d ƒ S| t  j k r} |  j | d ƒ S| t  j k r� |  j | d ƒ S| t  j k r½ |  j | d ƒ S| t  j k rÝ |  j | d ƒ S| t  j k rý |  j | d ƒ St	 d | f ‚ d  S(   Ni    i   i   s   unexpected node type(
   R0   t   encoding_declRF   t   single_inputt
   file_inputt
   eval_inputt   lambdeft   funcdeft   classdefR   (   RG   t   nodet   n(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRO   ‘   s$    

c         C   s5   | d d } | t  j k r. |  j | d ƒ St ƒ  S(   Ni    (   R5   R6   t   com_stmtt   Pass(   RG   R_   R`   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRY   ©   s    c         C   s—   |  j  | t j ƒ } | d  k	 r* d } n d } g  } xK | | D]? } | d t j k rA | d t j k rA |  j | | ƒ qA qA Wt | t	 | ƒ ƒ S(   Ni   i    (
   t   get_docstringR0   RZ   R   R5   t	   ENDMARKERR6   t   com_append_stmtt   Modulet   Stmt(   RG   t   nodelistt   doct   it   stmtsR_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRZ   ³   s    	&c         C   s   t  |  j | d ƒ ƒ S(   Ni    (   t
   Expressiont   com_node(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR[   ¿   s    c         C   s½   t  | ƒ } | d k r( | d d k s. t ‚ |  j | ƒ } d } xs | | k  r¸ | | d t j k so t ‚ | | d d t j k s� t ‚ t | | | d d ƒ } | d 7} qF W| S(   Ni   i   i    (   R*   t   AssertionErrorRC   R5   t   DOTRD   t   Getattr(   RG   Rh   t   listlenR#   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   decorator_nameÄ   s    "!c         C   sØ   t  | ƒ d k s t ‚ | d d t j k s5 t ‚ | d d t j k sR t ‚ | d d t j k so t ‚ |  j | d d ƒ } t  | ƒ d k rÎ | d d t j k sµ t ‚ |  j	 | | d ƒ } n | } | S(	   Ni   i   i   i    iÿÿÿÿi   i   (   i   i   i   (
   R*   Rn   R5   t   ATR6   R0   t   dotted_nameRr   R8   t   com_call_function(   RG   Rh   t   funcnameRT   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   decoratorÒ   s    c         C   sT   g  } xA | D]9 } | d t  j k s, t ‚ | j |  j | d ƒ ƒ q Wt | ƒ S(   Ni    i   (   R0   Rw   Rn   R   t
   Decorators(   RG   Rh   R2   t   dec_nodelist(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   decoratorsã   s
    c         C   s¿   | d d t  j k s t ‚ | d d t  j k r` | d g t | d d ƒ } |  j | ƒ S| d d t  j k r² |  j | d d ƒ } |  j | d d ƒ } | | _ | St ƒ  ‚ d  S(   Ni    i   (   R0   Rz   Rn   R]   RL   R^   R   (   RG   Rh   R`   Rz   t   cls(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   decoratedë   s    	c      
   C   se  t  | ƒ d k rI | d d t j k s/ t ‚ |  j | d d ƒ } n t  | ƒ d k sa t ‚ d  } | d d } | d d } | d d } | d t j k rÃ |  j | d ƒ \ } } } n d
 } } d } |  j | d ƒ }	 |  j | d ƒ }
 |	 d  k	 rCt	 |
 t
 ƒ st ‚ t	 |
 j d t ƒ s6t ‚ |
 j d =n  t | | | | | |	 |
 d	 | ƒS(   Ni   i    i   i   iüÿÿÿi   iýÿÿÿiÿÿÿÿR(   (    (   R*   R0   Rz   Rn   R   t   varargslistt   com_arglistRc   Rm   R$   Rg   R!   t   Discardt   Function(   RG   Rh   Rz   R(   RI   R,   t   namest   defaultst   flagsRi   t   code(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR]   ÷   s(    
c         C   s~   | d d t  j k r: |  j | d d ƒ \ } } } n d } } d } |  j | d ƒ } t | | | | d | d d ƒS(   Ni   i    i   iÿÿÿÿR(   (    (   R0   R}   R~   Rm   t   Lambda(   RG   Rh   R�   R‚   Rƒ   R„   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR\     s    #
c         C   sò   | d d } |  j  | d ƒ } | d d t j k rA g  } n3 | d d t j k ra g  } n |  j | d ƒ } |  j | d ƒ } | d  k	 rÑ t | t ƒ s¨ t	 ‚ t | j
 d t ƒ sÄ t	 ‚ | j
 d =n  t | | | | d | d d ƒS(   Ni   iÿÿÿÿi   i    i   R(   (   Rc   R5   t   COLONt   RPARt	   com_basesRm   R   R$   Rg   Rn   R!   R   t   Class(   RG   Rh   RI   Ri   t   basesR„   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR^   &  s    		c         C   s   |  j  | d ƒ S(   Ni    (   Ra   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   stmt<  s    c         C   sG   g  } x4 t  d t | ƒ d ƒ D] } |  j | | | ƒ q Wt | ƒ S(   Ni    i   (   t   rangeR*   Re   Rg   (   RG   Rh   Rk   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   simple_stmtC  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   parametersJ  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR}   M  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   fpdefP  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   fplistS  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRt   V  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   comp_opY  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   trailer\  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   sliceop_  s    c         C   s
   t  ‚ d  S(   N(   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   argumentb  s    c         C   s  | d } |  j  | ƒ | d ƒ } t | ƒ d k rH t | d | j ƒS| d d t j k rÄ g  } xA t d t | ƒ d d ƒ D]# } | j |  j | | t	 ƒ ƒ q‚ Wt
 | | d | d d ƒS|  j | d ƒ } |  j | d ƒ } t | | d | d | d ƒSt d ‚ d  S(   Niÿÿÿÿi   R(   i    i   s   can't get here(   t   lookup_nodeR*   R   R(   R5   t   EQUALRŒ   R   t
   com_assignR   t   Assignt   com_augassignt   com_augassign_opt	   AugAssignR   (   RG   Rh   t   ent   exprNodet   nodeslRj   t   lvalt   op(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   expr_stmtj  s    
#!c         C   s  g  } t  | ƒ d k r' d } d  } nn | d d t j k r‰ t  | ƒ d k sm | d d t j k sm t ‚ |  j | d ƒ } d } n d  } d } x: t | t  | ƒ d ƒ D]  } | j |  j | | ƒ ƒ q® W| d d t j k rt	 | | d | d d ƒSt
 | | d | d d ƒS(   Ni   i    i   i   i   iÿÿÿÿR(   (   R*   R   R5   t
   RIGHTSHIFTt   COMMARn   Rm   RŒ   R   t   Printt   Printnl(   RG   Rh   R2   t   startt   destRj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   print_stmt{  s     		c         C   s   |  j  | d t ƒ S(   Ni   (   R—   R   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   del_stmt�  s    c         C   s   t  d | d d ƒ S(   NR(   i    i   (   Rb   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   pass_stmt’  s    c         C   s   t  d | d d ƒ S(   NR(   i    i   (   t   Break(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   break_stmt•  s    c         C   s   t  d | d d ƒ S(   NR(   i    i   (   t   Continue(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   continue_stmt˜  s    c         C   sU   t  | ƒ d k  r0 t t d  ƒ d | d d ƒSt |  j | d ƒ d | d d ƒS(   Ni   R(   i    i   (   R*   t   Returnt   ConstR   Rm   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   return_stmt›  s    c         C   s&   |  j  | d ƒ } t | d | j ƒS(   Ni    R(   (   Rm   R   R(   (   RG   Rh   RT   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   yield_stmt¡  s    c         C   sL   t  | ƒ d k r( |  j | d ƒ } n t d  ƒ } t | d | d d ƒS(   Ni   R(   i    i   (   R*   Rm   R°   R   t   Yield(   RG   Rh   RH   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   yield_expr¥  s    c         C   s¨   t  | ƒ d k r( |  j | d ƒ } n d  } t  | ƒ d k rV |  j | d ƒ } n d  } t  | ƒ d k r„ |  j | d ƒ } n d  } t | | | d | d d ƒS(   Ni   i   i   R(   i    i   (   R*   Rm   R   t   Raise(   RG   Rh   t   expr3t   expr2t   expr1(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   raise_stmt¬  s    c         C   s)   t  | ƒ d k s t ‚ |  j | d ƒ S(   Ni   i    (   R*   Rn   Rm   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   import_stmt¼  s    c         C   s%   t  |  j | d ƒ d | d d ƒS(   Ni   R(   i    i   (   t   Importt   com_dotted_as_names(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   import_nameÁ  s    c         C   s4  | d d d k s t  ‚ d } x" | | d d k rD | d 7} q# W| d } | | d t j k r† |  j | | ƒ } | d 7} n d } | | d d k s¦ t  ‚ | | d d t j k râ t | d
 g | d | d d	 ƒS| | d | | d d t j k } t | |  j	 | ƒ | d | d d	 ƒSd  S(   Ni    i   t   fromt   .RU   t   importR    R(   i   (   R    N(
   Rn   R0   Rt   t   com_dotted_nameR5   t   STARt   FromR   R8   t   com_import_as_names(   RG   Rh   t   idxt   levelt   fromnameR_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   import_fromÆ  s     
'c         C   sV   g  } x5 t  d t | ƒ d ƒ D] } | j | | d ƒ q Wt | d | d d ƒS(   Ni   i   R(   i    (   RŒ   R*   R   t   Global(   RG   Rh   R�   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   global_stmtÜ  s    c         C   s‘   |  j  | d ƒ } t | ƒ d k ri |  j  | d ƒ } t | ƒ d k r` |  j  | d ƒ } qs d  } n
 d  } } t | | | d | d d ƒS(	   Ni   i   i   i   i   R(   i    i   (   Rm   R*   R   t   Exec(   RG   Rh   R¸   R·   R¶   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   exec_stmtã  s    	
c         C   s\   |  j  | d ƒ } t | ƒ d k r; |  j  | d ƒ } n d  } t | | d | d d ƒS(   Ni   i   i   R(   i    i   (   Rm   R*   R   t   Assert(   RG   Rh   R¸   R·   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   assert_stmtñ  s
    c         C   s»   g  } xe t  d t | ƒ d d ƒ D]G } |  j | | d ƒ } |  j | | d ƒ } | j | | f ƒ q# Wt | ƒ d d k rš |  j | d ƒ } n d  } t | | d | d d ƒS(   Ni    i   i   i   iÿÿÿÿR(   i   (   RŒ   R*   Rm   R   R   t   If(   RG   Rh   t   testsRj   t   testNodet	   suiteNodet   elseNode(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   if_stmtú  s    #c         C   sr   |  j  | d ƒ } |  j  | d ƒ } t | ƒ d k rN |  j  | d ƒ } n d  } t | | | d | d d ƒS(   Ni   i   i   i   R(   i    i   (   Rm   R*   R   t   While(   RG   Rh   RÑ   t   bodyNodeRÓ   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   while_stmt	  s    c         C   s‹   |  j  | d t ƒ } |  j | d ƒ } |  j | d ƒ } t | ƒ d k rd |  j | d ƒ } n d  } t | | | | d | d d ƒS(   Ni   i   i   i   R(   i    i   (   R—   R   Rm   R*   R   t   For(   RG   Rh   t
   assignNodet   listNodeRÖ   RÓ   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   for_stmt  s    c         C   s   |  j  | ƒ S(   N(   t   com_try_except_finally(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   try_stmt%  s    c         C   s   |  j  | ƒ S(   N(   t   com_with(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt	   with_stmt(  s    c         C   s   |  j  | ƒ S(   N(   t   com_with_var(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   with_var+  s    c         C   sj   t  | ƒ d k r# |  j | d ƒ Sg  } x4 | D], } | d t j k r0 |  j | | ƒ q0 q0 Wt | ƒ S(   Ni   i    (   R*   Ra   R0   R‹   Re   Rg   (   RG   Rh   Rk   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRR   .  s    c         C   s   |  j  t | ƒ S(   N(   t
   com_binaryt   Tuple(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   testlist>  s    c         C   sz   | d d t  j k s t ‚ t | ƒ d k rm | d d t  j k rm |  j | d ƒ } |  j | | d ƒ S|  j | ƒ S(   Ni    i   i   (   R0   t   testRn   R*   t   comp_forRm   t   com_generator_expressionRä   (   RG   Rh   Rå   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   testlist_compH  s
    )c         C   só   t  | ƒ d k r: | d d t j k r: |  j | d ƒ S|  j | d ƒ } t  | ƒ d k rï t  | ƒ d k sw t ‚ | d d d k s‘ t ‚ | d d d k s« t ‚ |  j | d ƒ } |  j | d ƒ } t | | | d	 | d d ƒS| S(
   Ni   i    i   t   ifi   t   elsei   i   R(   (   R*   R0   R\   Rm   Rn   t   IfExp(   RG   Rh   t   thenRå   t   else_(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRå   P  s    )c         C   sJ   t  | ƒ d k r: | d d t j k r: |  j | d ƒ S|  j t | ƒ S(   Ni   i    (   R*   R0   R\   Râ   t   Or(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   or_test^  s    )c         C   s   |  j  t | ƒ S(   N(   Râ   t   And(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   and_teste  s    c         C   sA   |  j  | d ƒ } t | ƒ d k r= t | d | d d ƒS| S(   Niÿÿÿÿi   R(   i    (   Rm   R*   t   Not(   RG   Rh   t   result(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   not_testi  s    c   	      C   s	  |  j  | d ƒ } t | ƒ d k r) | Sg  } xÄ t d t | ƒ d ƒ D]ª } | | d } | d } | d t j k r¶ | d } t | ƒ d k rÄ | d k rª d } q³ d } qÄ n t | d } | d d } | j | |  j  | | ƒ f ƒ qH Wt | | d | ƒS(	   Ni    i   i   i   t   nots   not ins   is notR(   (   Rm   R*   RŒ   R5   RD   t
   _cmp_typesR   t   Compare(	   RG   Rh   R_   t   resultsRj   t   nlR`   R   R(   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   comparisonp  s"    

	$c         C   s   |  j  t | ƒ S(   N(   Râ   t   Bitor(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRT   ‘  s    c         C   s   |  j  t | ƒ S(   N(   Râ   t   Bitxor(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   xor_expr•  s    c         C   s   |  j  t | ƒ S(   N(   Râ   t   Bitand(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   and_expr™  s    c         C   sâ   |  j  | d ƒ } xÈ t d t | ƒ d ƒ D]® } |  j  | | ƒ } | | d d t j k rƒ t | | g d | d d ƒ} q, | | d d t j k rÁ t | | g d | d d ƒ} q, t d | | d d ‚ q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rm   RŒ   R*   R5   t	   LEFTSHIFTt	   LeftShiftR¢   t
   RightShiftR   (   RG   Rh   R_   Rj   t   right(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   shift_expr�  s    ##c         C   sâ   |  j  | d ƒ } xÈ t d t | ƒ d ƒ D]® } |  j  | | ƒ } | | d d t j k rƒ t | | g d | d d ƒ} q, | | d d t j k rÁ t | | g d | d d ƒ} q, t d | | d d ‚ q, W| S(   Ni    i   i   R(   s   unexpected token: %s(	   Rm   RŒ   R*   R5   t   PLUSt   Addt   MINUSt   SubR   (   RG   Rh   R_   Rj   R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt
   arith_exprª  s    ##c         C   s  |  j  | d ƒ } xó t d t | ƒ d ƒ D]Ù } |  j  | | ƒ } | | d d } | t j k r{ t | | g ƒ } ny | t j k rŸ t | | g ƒ } nU | t j k rÃ t	 | | g ƒ } n1 | t j
 k rç t | | g ƒ } n t d | ‚ | d d | _ q, W| S(   Ni    i   i   s   unexpected token: %s(   Rm   RŒ   R*   R5   RÂ   t   Mult   SLASHt   Divt   PERCENTt   Modt   DOUBLESLASHt   FloorDivR   R(   (   RG   Rh   R_   Rj   R  t   t(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   term¶  s    c         C   s§   | d } | d } |  j  | d ƒ | d d ƒ } | t j k rX t | d | d ƒS| t j k r{ t | d | d ƒS| t j k r£ t | d | d ƒ} n  | S(   Ni    iÿÿÿÿi   R(   i   (   R•   R5   R  t   UnaryAddR  t   UnarySubt   TILDEt   Invert(   RG   Rh   t   eltR  R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   factorÈ  s    

!c         C   s‘   |  j  | d ƒ } xw t d t | ƒ ƒ D]` } | | } | d t j k rw t | |  j  | | d ƒ g d | d ƒS|  j | | ƒ } q) W| S(   Ni    i   R(   i   (   Rm   RŒ   R*   R5   t
   DOUBLESTARt   Powert   com_apply_trailer(   RG   Rh   R_   Rj   R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   powerÕ  s    
 c         C   s   |  j  | d d | ƒ S(   Ni    (   RE   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   atomâ  s    c         C   s@   | d d t  j k r/ t d d | d d ƒS|  j | d ƒ S(   Ni   i    R(   i   (    (   R5   R‡   Rã   Rm   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR7   å  s    c         C   s@   | d d t  j k r/ t d d | d d ƒS|  j | d ƒ S(   Ni   i    R(   i   (    (   R5   t   RSQBt   Listt   com_list_constructor(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR9   ê  s    c         C   s@   | d d t  j k r/ t d d | d d ƒS|  j | d ƒ S(   Ni   i    R(   i   (    (   R5   t   RBRACEt   Dictt   com_dictorsetmaker(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR;   ï  s    c         C   s   t  |  j | d ƒ ƒ S(   Ni   (   t	   BackquoteRm   (   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR=   ô  s    c         C   s,   t  | d d ƒ } t | d | d d ƒS(   Ni    i   R(   i   (   R   R°   (   RG   Rh   t   k(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR?   ÷  s    c         C   s[   |  j  rM |  j  d k r6 t | d ƒ j |  j  ƒ } n  t d |  j  | f ƒ St | ƒ Sd  S(   Ns   utf-8s
   iso-8859-1s   # coding: %s
%s(   s   utf-8s
   iso-8859-1(   RF   t   unicodet   encodeR   (   RG   t   lit(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   decode_literalü  s
    	c         C   sF   d } x% | D] } | |  j  | d ƒ 7} q Wt | d | d d ƒS(   NRU   i   R(   i    i   (   R)  R°   (   RG   Rh   R%  R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRA     s    c         C   s    t  | d d d | d d ƒS(   Ni    i   R(   i   (   t   Name(   RG   Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRC     s    c         C   s   |  j  | d S(   Ni    (   R/   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR•     s    c         C   s   |  j  | d | d ƒ S(   Ni    i   (   R/   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRm      s    c         G   s   t  t d  ƒ ƒ S(   N(   R   R°   R   (   RG   R,   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR4   '  s    c         C   sÒ  g  } g  } d } d } xª| t  | ƒ k  rÄ| | } | d t j k s] | d t j k r+| d t j k r¼ | | d } | d t j k r¼ | j | d ƒ | t B} | d } q¼ n  | t  | ƒ k  r'| | d } | t j k rü | | d } n t d | ‚ | j | d ƒ | t B} n  Pn  | j |  j	 | ƒ ƒ | d } | t  | ƒ k  rŸ| | d t j
 k rŸ| j |  j | | d ƒ ƒ | d } n t  | ƒ r·t d ‚ n  | d } q W| | | f S(   Ni    i   i   s   unexpected token: %si   s-   non-default argument follows default argument(   R*   R5   RÂ   R  RD   R   R   R   R   t	   com_fpdefR–   Rm   t   SyntaxError(   RG   Rh   R�   R‚   Rƒ   Rj   R_   R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR~   -  s<    
&

)c         C   s4   | d d t  j k r( |  j | d ƒ S| d d S(   Ni   i    i   (   R5   R8   t
   com_fplist(   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR+  _  s    c         C   sp   t  | ƒ d k r# |  j | d ƒ Sg  } x: t d t  | ƒ d ƒ D]  } | j |  j | | ƒ ƒ qB Wt | ƒ S(   Ni   i   (   R*   R+  RŒ   R   R    (   RG   R_   RL   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR-  e  s    c         C   s\   d } xK | D]C } t  | ƒ t  d ƒ k r | d d k r | | d d } q q W| d  S(   NRU   i    i   R¿   iÿÿÿÿ(    (   R   (   RG   R_   RI   R`   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRÁ   n  s
    (c         C   sŸ   | d t  j k s t ‚ | d } |  j | d d ƒ } t | ƒ d k rV | d  f S| d d d k sp t ‚ | d d t j k s� t ‚ | | d d f S(   Ni    i   t   asi   (   R0   t   dotted_as_nameRn   RÁ   R*   R   R5   RD   (   RG   R_   t   dot(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   com_dotted_as_namev  s    

c         C   sz   | d t  j k s t ‚ | d } |  j | d ƒ g } x: t d t | ƒ d ƒ D]  } | j |  j | | ƒ ƒ qR W| S(   Ni    i   i   (   R0   t   dotted_as_namesRn   R1  RŒ   R*   R   (   RG   R_   R�   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR¼   €  s    
c         C   s»   | d t  j k s t ‚ | d } | d d t j k s@ t ‚ t | ƒ d k rd | d d d  f S| d d d k s„ t | ƒ ‚ | d d t j k s¡ t ‚ | d d | d d f S(   Ni    i   R.  i   (   R0   t   import_as_nameRn   R5   RD   R*   R   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   com_import_as_nameˆ  s    
 c         C   sz   | d t  j k s t ‚ | d } |  j | d ƒ g } x: t d t | ƒ d ƒ D]  } | j |  j | | ƒ ƒ qR W| S(   Ni    i   i   (   R0   t   import_as_namesRn   R4  RŒ   R*   R   (   RG   R_   R�   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRÄ   ’  s    
c         C   sG   g  } x: t  d t | ƒ d ƒ D]  } | j |  j | | ƒ ƒ q W| S(   Ni   i   (   RŒ   R*   R   Rm   (   RG   R_   RŠ   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRˆ   š  s    c   
      C   së  | d d t  j k rL t |  j | d ƒ |  j | d ƒ d | d d ƒSg  } d  } d  } x4t d t | ƒ d ƒ D]} | | } | d t j k r't | ƒ d k ró |  j | d ƒ } t | ƒ d k rê |  j	 | d t
 ƒ } qý d  } n
 d  } } | j | | |  j | | d ƒ f ƒ n  | d t  j k rw | d d k rd|  j | | d ƒ } q‘| d d	 k r‘|  j | | d ƒ } q‘qw qw Wt |  j | d ƒ | | d | d d ƒ}	 | rãt |	 | d | d d ƒS|	 Sd  S(
   Ni   i    i   i   R(   i   i   Rê   t   finally(   R5   RD   t
   TryFinallyRm   R   RŒ   R*   R0   t   except_clauseR—   R   R   t	   TryExcept(
   RG   Rh   t   clausesRÓ   t   finallyNodeRj   R_   R¸   R·   t
   try_except(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRÜ      s6    
	
*!c         C   su   |  j  | d ƒ } x[ t t | ƒ d d d ƒ D]= } |  j | | | | d d ƒ } | d k rg | S| } q0 Wd  S(   Niÿÿÿÿi   i    iþÿÿÿi   i   (   Rm   RŒ   R*   t   com_with_item(   RG   Rh   t   bodyRj   t   ret(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRÞ   É  s    #!c         C   sZ   t  | ƒ d k r+ |  j | d t ƒ } n d  } |  j | d ƒ } t | | | d | ƒS(   Ni   i   i   R(   (   R*   R—   R   R   Rm   t   With(   RG   Rh   R>  R(   t   varRT   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR=  Ò  s
    c         C   s!   | d t  j k s t ‚ | d S(   Ni    i   (   R0   t	   augassignRn   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRš   Û  s    c         C   sE   |  j  | ƒ } | j t t t t f k r. | St d | j j ‚ 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(   Rm   t	   __class__R*  t   Slicet	   SubscriptRp   R,  R   (   RG   R_   R"   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR™   ß  s    c         C   sU  xN| d } | t  j t  j t  j t  j f k r` t | ƒ d k rS |  j | | ƒ S| d } q | t k r— t | ƒ d k rŠ t d ‚ n  | d } q | t  j	 k rq| d d t  j
 k rÉ t d ‚ n  t | ƒ d k rd|  j | d ƒ } x\ t d t | ƒ d ƒ D]A } | | } | d t j k r7t d ‚ n  |  j | | ƒ } qW|  j | | d | ƒ S| d } q | t  j
 k r@| d d } | t j k rÉ| d } | d t j k r=t d ‚ q=qM| t j k r| d } | d t j k rt d ‚ n  |  j | | ƒ S| t j k r4|  j | d | ƒ St d ‚ q t d	 | ‚ q Wd  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)(   R0   t   exprlistRä   t   testlist_safeRè   R*   t   com_assign_tuplet   _assign_typesR,  R  R  Rm   RŒ   R5   R  R  t   com_assign_trailerR8   R‡   R:   R  t   com_assign_listRD   t   com_assign_name(   RG   R_   t	   assigningR  t   primaryRj   t   ch(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR—   é  sL    
$ 


c         C   s\   g  } x= t  d t | ƒ d ƒ D]# } | j |  j | | | ƒ ƒ q Wt | d t | ƒ ƒS(   Ni   i   R(   (   RŒ   R*   R   R—   t   AssTupleR%   (   RG   R_   RM  t   assignsRj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRH    s    !c         C   sË   g  } x¬ t  d t | ƒ d ƒ D]’ } | d t | ƒ k  r” | | d d t j k rb t d ‚ n  | | d d t j k s” t | | d ƒ ‚ n  | j |  j	 | | | ƒ ƒ q Wt
 | d t | ƒ ƒS(   Ni   i   i    s"   can't assign to list comprehensionR(   (   RŒ   R*   R0   t   list_forR,  R5   R£   Rn   R   R—   t   AssListR%   (   RG   R_   RM  RQ  Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRK    s    2!c         C   s   t  | d | d | d ƒS(   Ni   R(   i   (   t   AssName(   RG   R_   RM  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRL  %  s    c         C   s†   | d d } | t  j k r4 |  j | | d | ƒ S| t  j k rZ |  j | | d | ƒ S| t  j k ru t d ‚ n  t d | ‚ d  S(   Ni   i    i   s   can't assign to function calls   unknown trailer type: %s(   R5   Ro   t   com_assign_attrR:   t   com_subscriptlistR8   R,  (   RG   RN  R_   RM  R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRJ  (  s    c         C   s   t  | | d | d | d ƒS(   Ni   R(   iÿÿÿÿ(   t   AssAttr(   RG   RN  R_   RM  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRU  2  s    c         C   sœ   t  | ƒ } | d k r9 | d } |  j | ƒ | d ƒ Sg  } xD t d | d ƒ D]0 } | | } | j |  j | ƒ | d ƒ ƒ qR W| | d t | ƒ ƒS(   s=   Compile 'NODE (OP NODE)*' into (type, [ node1, ..., nodeN ]).i   i    i   R(   (   R*   R•   RŒ   R   R%   (   RG   t   constructorRh   R"   R`   R2   Rj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRâ   5  s    

$c         C   sK   |  j  | ƒ | d ƒ } | d  k	 s+ t ‚ t | t ƒ r> | St | g ƒ S(   Ni   (   R•   R   Rn   R$   Rg   (   RG   R_   Ró   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRa   A  s
    c         C   s^   |  j  | ƒ | d ƒ } | d  k	 s+ t ‚ t | t ƒ rM | j | j ƒ n | j | ƒ d  S(   Ni   (   R•   R   Rn   R$   Rg   t   extendR!   R   (   RG   Rk   R_   Ró   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRe   H  s
    c         C   s¿   g  } xŸ t  d t | ƒ ƒ D]ˆ } | | d t j k rm t | | ƒ d k sU t ‚ |  j | d | | ƒ S| | d t j k rŠ q n  | j |  j	 | | ƒ ƒ q Wt
 | d | d j ƒS(   Ni   i    R(   (   RŒ   R*   R0   RR  Rn   t   com_list_comprehensionR5   R£   R   Rm   R  R(   (   RG   Rh   t   valuesRj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   P  s    c         C   s   |  j  | d  | d ƒ S(   NRL   (   t   com_comprehensionR   (   RG   RT   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRZ  ]  s    c         C   s  | d d } g  } x| r•| d d } | d k rã |  j  | d t ƒ } |  j | d ƒ }	 t | |	 g  ƒ }
 | d d |
 _ | j |
 ƒ t | ƒ d k r« d  } q’| d k rÍ |  j | d ƒ } q’|  j	 | d ƒ } q | d k r|  j | d ƒ } t
 | d | d d ƒ} |
 j j | ƒ t | ƒ d	 k rGd  } q’| d k ri|  j | d	 ƒ } q’|  j	 | d	 ƒ } q t d
 | | f ‚ q W| d k rµt | | d | ƒS| d k rÔt | | d | ƒS| d k röt | | | d | ƒSt d t | ƒ ƒ ‚ d  S(   Ni   i   t   fori   i   RL   Ré   R(   i   s'   unexpected comprehension element: %s %dt   sett   dicts   unexpected comprehension type: (   R—   R   Rm   t   ListCompForR(   R   R*   R   t   com_list_itert   com_comp_itert
   ListCompIft   ifsR,  t   ListCompt   SetCompt   DictCompR   t   repr(   RG   R¸   R·   R_   R   R(   t   forsR  RÙ   t   compNodet   newforRå   t   newif(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR\  `  sD    
			c         C   s!   | d t  j k s t ‚ | d S(   Ni    i   (   R0   t	   list_iterRn   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRa  ‘  s    c         C   s!   | d t  j k s t ‚ | d S(   Ni    i   (   R0   t	   comp_iterRn   (   RG   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRb  •  s    c         C   su  | d d } g  } x8| rN| d d } | d k r¾ |  j  | d t ƒ } |  j | d ƒ } t | | g  d | d d ƒ} | j | ƒ t | ƒ d k r¨ d  } qK|  j | d ƒ } q | d k r8|  j | d ƒ }	 t |	 d | d d ƒ}
 | j	 j |
 ƒ t | ƒ d k r"d  } qK|  j | 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   Rm   t
   GenExprForR   R*   R   Rb  t	   GenExprIfRd  R,  t   Truet
   is_outmostt   GenExprt   GenExprInner(   RG   RT   R_   R(   Ri  R  RÙ   t   genNodeRk  Rå   Rl  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRç   ™  s2    			c         C   sé  | d t  j k s t ‚ | d } t | ƒ d k sL | d d t j k r¦ g  } x: t d t | ƒ d ƒ D]  } | j |  j | | ƒ ƒ qk Wt	 | d | d j
 ƒS| d d t  j k rê |  j | d ƒ } |  j | d  | d d ƒ St | ƒ d k rp| d d t  j k rp| d d t j k s0t ‚ |  j | d ƒ } |  j | d ƒ } |  j | | | d d ƒ Sg  } xQ t d t | ƒ d ƒ D]7 } | j |  j | | ƒ |  j | | d ƒ f ƒ q�Wt | d | d d j
 ƒSd  S(	   Ni    i   i   R(   R^  i   R_  i   (   R0   t   dictorsetmakerRn   R*   R5   R£   RŒ   R   Rm   t   SetR(   Ræ   R\  R   R†   R"  (   RG   Rh   R2   Rj   RT   t   keyRH   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR#  »  s(    
))c         C   s‹   | d d } | t  j k r1 |  j | | d ƒ S| t  j k rT |  j | | d ƒ S| t  j k rz |  j | | d t ƒ St d | ‚ d  S(   Ni   i    i   s   unknown node type: %s(	   R5   R8   Ru   Ro   t   com_select_memberR:   RV  R   R,  (   RG   t   primaryNodeRh   R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR  Ø  s    c         C   s:   | d t  j k r t d ‚ n  t | | d d | d ƒS(   Ni    s   member must be a namei   R(   i   (   R5   RD   R,  Rp   (   RG   Rz  Rh   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRy  ã  s    c         C   s¶  | d t  j k r, t | g  d t | ƒ ƒSg  } d } d  } } t | ƒ } d } x@| | k  r–| | }	 |	 d t  j k r¿ | d  k	 r˜ t d ‚ n  |  j | | d ƒ } | d } qW nR |	 d t  j	 k r| d  k	 rê t d ‚ n  |  j | | d ƒ } | d } qW n  |  j
 |	 | | ƒ \ } }
 | d k r|t |
 t ƒ r|t |	 ƒ d k r||	 d d t j k r|t d ‚ n  | j |
 ƒ | d } qW Wt | | | | d t | ƒ ƒS(	   Ni    R(   i   s$   already have the varargs indentifieri   s#   already have the kwargs indentifieri   s&   generator expression needs parenthesis(   R5   R‡   t   CallFuncR%   R   R*   RÂ   R,  Rm   R  t   com_argumentR$   Rs  R0   Ræ   R   (   RG   Rz  Rh   R,   t   kwt	   star_nodet
   dstar_nodet   len_nodelistRj   R_   Ró   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRu   è  s:    



)c         C   sD  t  | ƒ d k rV | d d t j k rV |  j | d ƒ } d |  j | | d ƒ f St  | ƒ d k r£ | rz t d ‚ n  | rŒ t d ‚ n  d |  j | d ƒ f S|  j | d ƒ } | d } x3 t  | ƒ d k rõ | d t j k rõ | d } qÃ W| d t j k r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*   R0   Ræ   Rm   Rç   R,  R5   RD   t   Keyword(   RG   Rh   R}  R~  Rå   Ró   R`   R_   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR|    s"    )
(c         C   sè   t  | ƒ d k r‰ | d } | d d t j k s\ t  | ƒ d k r‰ | d d t j k r‰ | d d t j k r‰ |  j | | | ƒ Sn  g  } x: t d t  | ƒ d ƒ D]  } | j |  j | | ƒ ƒ q¨ Wt	 | | | d t
 | ƒ ƒS(   Ni   i   i    iÿÿÿÿR(   (   R*   R5   R†   R0   R“   t	   com_sliceRŒ   R   t   com_subscriptRE  R%   (   RG   RN  Rh   RM  t   subt
   subscriptsRj   (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRV  "  s    
)c         C   s|   | d } | d } | t  j k rA | d d t  j k rA t ƒ  S| t  j k sb t | ƒ d k ro |  j | ƒ S|  j | ƒ S(   Ni   i    i   (   R5   Ro   t   EllipsisR†   R*   t   com_sliceobjRm   (   RG   R_   RO  R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRƒ  6  s    

&!c         C   s>  g  } | d d t  j k r9 | j t d  ƒ ƒ d } n  | j |  j | d ƒ ƒ d } | t | ƒ k  r© | | d t j k r© | j |  j | | ƒ ƒ | d } n | j t d  ƒ ƒ xi t	 | t | ƒ ƒ D]R } | | } t | ƒ d k r
| j t d  ƒ ƒ qÒ | j |  j | d ƒ ƒ qÒ Wt
 | d t | ƒ ƒS(   Ni   i    i   i   R(   (   R5   R†   R   R°   R   Rm   R*   R0   Rå   RŒ   t   SliceobjR%   (   RG   R_   R2   Rj   t   jRO  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR‡  @  s     
	)
c         C   s¹   d  } } t | ƒ d k r_ | d d t j k rI |  j | d ƒ } qš |  j | d ƒ } n; t | ƒ d k rš |  j | d ƒ } |  j | d ƒ } n  t | | | | d t | ƒ ƒS(   Ni   i   i    i   i   R(   (   R   R*   R5   R†   Rm   RD  R%   (   RG   RN  R_   RM  t   lowert   upper(    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR‚  d  s    
c         C   s˜  | d  k r# | d } | d } n  | t j k rŠ t | ƒ d k rU |  j | d ƒ Sx. | D]& } | d t j k r\ |  j | ƒ Sq\ Wd  S| t j k rÎ x. | D]& } | d t j k r  |  j | ƒ Sq  Wd  S| t j k r'| d d t j	 k r#d } x" | D] } | t
 | d ƒ } qW| Sd  S| t j k sT| t j k sT| t j k re|  j | d ƒ S| t k r”t | ƒ d k r”|  j | d ƒ Sd  S(   Ni    i   RU   (   R   R0   RR   R*   Rc   R‹   RZ   R  R5   RB   R   R�   t
   small_stmtt
   _doc_nodes(   RG   R_   R`   R„  t   sR  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyRc   r  s8    
N(€   R   R   t   __doc__RJ   RQ   R   R   RW   RO   RY   RZ   R[   Rr   Rw   Rz   R|   R]   R\   t   old_lambdefR^   R‹   RŒ  t	   flow_stmtt   compound_stmtR�   RŽ   R}   R�   R�   Rt   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á   RR   Rä   RG  t	   testlist1RF  Rè   Rå   Rï   t   old_testRñ   Rô   Rú   RT   Rý   Rÿ   R  R	  R  R  R  R  R7   R9   R;   R=   R?   R)  RA   RC   R•   Rm   R4   R~   R+  R-  RÁ   R1  R¼   R4  RÄ   Rˆ   RÜ   RÞ   R=  Rš   R™   R—   RH  RK  RL  RJ  RU  Râ   Ra   Re   R   RZ  R\  Ra  Rb  Rç   R#  R  Ry  Ru   R|  RV  Rƒ  R‡  R‚  R   Rc   (    (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR   ^   sú   							
							!																																												!																					2					
		
			)						
	,		
		
							1			"				'			
	$	t   <t   >s   ==s   <=s   >=s   !=R²   R´   c         C   s~   g  } xq |  D]i } t  | t t f ƒ rD | j t j | | ƒ ƒ q t  | t ƒ rc | j | ƒ q | j t | ƒ ƒ q W| S(   N(   R$   t   intt   longR   t   _namest   getR+   t
   debug_tree(   RP   R"   R  (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyR›  ö  s    (S   R�  t   compiler.astRM   R0   R5   t   StandardErrorR   t   compiler.constsR   R   R   R   R   R   R   R   R%   R.   R   R¡   Rä   RG  Rå   Rï   Rñ   Rô   Rú   RT   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ß   RR   RF  R  t   _legal_node_typesR   R   R²   R´   RI  R™  R1   R2   R%  t   vt   tok_nameR›  (    (    (    s9   /opt/alt/python27/lib64/python2.7/compiler/transformer.pyt   <module>	   sÒ   
	
			
	ÿ ÿ ÿ ÿ ÿ 9





