
V]c           @@ s   d  Z  d d l m Z m Z d d l m Z d d l Td e f d     YZ d e f d	     YZ	 d
 e	 f d     YZ
 d e	 f d     YZ d e f d     YZ d S(   s  
Serializes a Cython code tree to Cython code. This is primarily useful for
debugging and testing purposes.

The output is in a strict format, no whitespace or comments from the input
is preserved (and it could not be as it is not present in the code tree).
i    (   t   absolute_importt   print_functioni   (   t   TreeVisitor(   t   *t   LinesResultc           B@ s,   e  Z d    Z d   Z d   Z d   Z RS(   c         C@ s   g  |  _  d |  _ d  S(   Nu    (   t   linest   s(   t   self(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   __init__   s    	c         C@ s   |  j  | 7_  d  S(   N(   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   put   s    c         C@ s    |  j  j |  j  d |  _ d  S(   Nu    (   R   t   appendR   (   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   newline   s    c         C@ s   |  j  |  |  j   d  S(   N(   R	   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   putline   s    (   t   __name__t
   __module__R   R	   R   R   (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR      s   			t   DeclarationWriterc           B@ s  e  Z d  Z d0 d  Z d   Z d   Z d   Z d d  Z d   Z	 d   Z
 d d	  Z d
   Z e 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#   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 RS(1   u       c         C@ sS   t  t |   j   | d  k r+ t   } n  | |  _ d |  _ i  |  _ d |  _ d  S(   Ni    (	   t   superR   R   t   NoneR   t   resultt
   numindentst	   tempnamest   tempblockindex(   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR   #   s    			c         C@ s   |  j  |  |  j S(   N(   t   visitR   (   R   t   tree(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   write,   s    c         C@ s   |  j  d 7_  d  S(   Ni   (   R   (   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   indent0   s    c         C@ s   |  j  d 8_  d  S(   Ni   (   R   (   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   dedent3   s    u    c         C@ s"   |  j  j |  j |  j |  d  S(   N(   R   R	   t   indent_stringR   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt	   startline6   s    c         C@ s   |  j  j |  d  S(   N(   R   R	   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR	   9   s    c         C@ s"   |  j  j |  j |  j |  d  S(   N(   R   R   R   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR   <   s    c         C@ s   |  j  j |  d  S(   N(   R   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   endline?   s    c         C@ s   |  j  |  |  j   d  S(   N(   R   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   lineB   s    c         C@ s   t  |  d k r xa | d  D]U } |  j |  | re | j d  k	 re |  j d  |  j | j  n  |  j d  q W|  j | d  n  d  S(   Ni    iu    = u   , (   t   lenR   t   defaultR   R	   (   R   t   itemst
   output_rhst   item(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   comma_separated_listF   s    c         C@ s   t  d |   d  S(   Ns"   Node not handled by serializer: %r(   t   AssertionError(   R   t   node(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt
   visit_NodeP   s    c         C@ s   |  j  |  d  S(   N(   t   visitchildren(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ModuleNodeS   s    c         C@ s   |  j  |  d  S(   N(   R(   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_StatListNodeV   s    c         C@ s^   | j  d  k r d } n d | j  } |  j d |  |  j   |  j | j  |  j   d  S(   Nu   *u   "%s"u   cdef extern from %s:(   t   include_fileR   R   R   R   t   bodyR   (   R   R&   t   file(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CDefExternNodeY   s    	
c         C@ s!   |  j  d  |  j | j  d  S(   NR   (   R	   R   t   base(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CPtrDeclaratorNodec   s    c         C@ s!   |  j  d  |  j | j  d  S(   Nt   &(   R	   R   R/   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CReferenceDeclaratorNodeg   s    c         C@ sP   |  j  | j  |  j d  | j d  k	 r? |  j  | j  n  |  j d  d  S(   Nu   [u   ](   R   R/   R	   t	   dimensionR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CArrayDeclaratorNodek   s
    c         C@ sP   |  j  | j  |  j d  | j d  k	 r? |  j  | j  n  |  j d  d  S(   Nu   [u   ](   R   R/   R	   R3   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR4   r   s
    c         C@ s>   |  j  | j  |  j d  |  j | j  |  j d  d  S(   Nu   (u   )(   R   R/   R	   R$   t   argsR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CFuncDeclaratorNodey   s    c         C@ s   |  j  | j  d  S(   N(   R	   t   name(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CNameDeclaratorNode   s    c         C@ s   | j  rm |  j d | j  | j d k  rD |  j d | j  qm | j d k rm |  j d | j  qm n  |  j | j  d  S(   Ns	   unsigned t    s   signed i    s   short s   long (   s	   unsigned R9   s   signed (   t   is_basic_c_typeR	   t   signedt   longnessR7   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CSimpleBaseTypeNode   s    	c         C@ s>   |  j  d  |  j | j  |  j | j  |  j  d  d  S(   Nu   (u   )(   R	   R   t	   base_typet
   declarator(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CComplexBaseTypeNode   s    c         C@ s1   |  j  | j  |  j d  |  j | j  d  S(   Nu   .(   R   R>   R	   R7   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CNestedBaseTypeNode   s    c         C@ sH   |  j  | j  |  j d  |  j | j | j j  |  j d  d  S(   Nu   [u   ](   R   t   base_type_nodeR	   R$   t   positional_argst   keyword_argst   key_value_pairs(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TemplatedTypeNode   s    c         C@ sN   |  j  d  |  j | j  |  j d  |  j | j d t |  j   d  S(   Nu   cdef u    R"   (   R   R   R>   R	   R$   t   declaratorst   TrueR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CVarDefNode   s
    c         C@ s   |  j  |  | j r\ |  j d  |  j | j  | j d  k	 r\ |  j d | j  q\ n  | rr |  j |  n  |  j d  |  j   | s |  j d  n x | D] } |  j |  q W|  j	   d  S(   Nu    u    "%s"t   :t   pass(
   R   R7   R	   t   cnameR   R   R   R   R   R   (   R   R&   t   declt   extrast
   attributest	   attribute(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_container_node   s    	
c         C@ st   | j  r d } n d } | j d k r4 | d 7} n  | j rJ | d 7} n  | | j 7} |  j | | d  | j  d  S(   Nu	   ctypedef u   cdef t   publicu   public u   packed (   t   typedef_flagt
   visibilityt   packedt   kindRQ   R   RO   (   R   R&   RM   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CStructOrUnionDefNode   s    			c         C@ sk   d } | j  r( d d j | j   } n  | j rN | d d j | j  7} n  |  j | d | | j  d  S(   NR9   u   [%s]s   , s   (%s)u   cdef cppclass(   t	   templatest   joint   base_classesRQ   RO   (   R   R&   RN   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CppClassNode   s    		c         C@ s   |  j  | d d  | j  d  S(   Nu	   cdef enum(   RQ   R   R!   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CEnumDefNode   s    c         C@ sg   |  j  | j  | j r0 |  j d | j  n  | j rY |  j d  |  j | j  n  |  j   d  S(   Nu    "%s"u    = (   R   R7   RL   R	   t   valueR   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CEnumDefItemNode   s    		c         C@ s   | j  s t  | j r= x! | j D] } |  j |  q# Wn  |  j d  |  j | j  | j r |  j d  | j r |  j | j  |  j d  n  |  j | j  |  j d  n  |  j	 d  |  j
   |  j | j  |  j   d  S(   Nu   cdef class u   (u   .u   )u   :(   t   module_nameR%   t
   decoratorsR   R   R	   t
   class_namet   base_class_namet   base_class_moduleR   R   R,   R   (   R   R&   t	   decorator(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CClassDefNode   s"    			
c         C@ sH   |  j  d  |  j | j  |  j d  |  j | j  |  j   d  S(   Nu	   ctypedef u    (   R   R   R>   R	   R?   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CTypeDefNode   s
    c         C@ sY   |  j  d | j  |  j | j  |  j d  |  j   |  j | j  |  j   d  S(   Nu   def %s(u   ):(	   R   R7   R$   R5   R   R   R   R,   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_FuncDefNode   s    
c         C@ su   | j  j d  k	 r2 |  j | j   |  j d  n  |  j | j  | j d  k	 rq |  j d  |  j | j  n  d  S(   Nu    u    = (   R>   R7   R   R   R	   R?   R    (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CArgDeclNode   s    c         C@ sT   |  j  d  |  j | j  | j rF |  j d  |  j | j  n  |  j   d  S(   Nu   cimport u    as (   R   R	   R_   t   as_nameR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CImportStatNode  s    	c         C@ s   |  j  d  |  j | j  |  j d  t } x{ | j D]p \ } } } } | d  k s^ t  | rm t } n |  j d  |  j |  | r: |  j d  |  j |  q: q: W|  j   d  S(   Nu   from u	    cimport u   , u    as (	   R   R	   R_   RH   t   imported_namesR   R%   t   FalseR   (   R   R&   t   firstt   posR7   Ri   RV   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_FromCImportStatNode  s    	c         C@ s   |  j  | j  d  S(   N(   R	   R7   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_NameNode  s    c         C@ s   |  j  | j  d  S(   N(   R	   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_IntNode  s    c         C@ s   |  j  d  d  S(   Nu   None(   R	   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_NoneNode"  s    c         C@ s.   |  j  d  |  j | j  |  j  d  d  S(   Nu   (not u   )(   R	   R   t   operand(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_NotNode%  s    c         C@ s+   |  j  d  |  j | j  |  j   d  S(   Nt   @(   R   R   Rd   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_DecoratorNode*  s    c         C@ s8   |  j  | j  |  j d | j  |  j  | j  d  S(   Nu    %s (   R   t   operand1R	   t   operatort   operand2(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_BinopNode/  s    c         C@ s(   |  j  | j  |  j d | j  d  S(   Nu   .%s(   R   t   objR	   RP   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_AttributeNode4  s    c         C@ s   |  j  t | j   d  S(   N(   R	   t   strR]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_BoolNode8  s    c         C@ sD   | j  } | j d  k	 r- | j | j  } n  |  j t |   d  S(   N(   R]   t   encodingR   t   encodeR	   t   repr(   R   R&   R]   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_StringNode<  s    	c         C@ s   |  j  d  |  j   d  S(   Nu   pass(   R   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_PassStatNodeB  s    N(2   R   R   R   R   R   R   R   R   R   R	   R   R   R   Rl   R$   R'   R)   R*   R.   R0   R2   R4   R6   R8   R=   R@   RA   RF   RI   RQ   RW   R[   R\   R^   Re   Rf   Rg   Rh   Rj   Ro   Rp   Rq   Rr   Rt   Rv   Rz   R|   R~   R   R   (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR      s^   							
				
							
																										t
   CodeWriterc           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 d   Z d   Z d   Z RS(   c         C@ sE   |  j    |  j | j  |  j d  |  j | j  |  j   d  S(   Nu    = (   R   R   t   lhsR	   t   rhsR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SingleAssignmentNodeH  s
    
c         C@ sV   |  j    x+ | j D]  } |  j |  |  j d  q W|  j | j  |  j   d  S(   Nu    = (   R   t   lhs_listR   R	   R   R   (   R   R&   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CascadedAssignmentNodeO  s    
c         C@ sG   |  j  d  |  j | j j  | j s9 |  j d  n  |  j   d  S(   Nu   print u   ,(   R   R$   t	   arg_tupleR5   t   append_newlineR	   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_PrintStatNodeW  s
    	c         C@ s   |  j  d  |  j | j  |  j d  |  j | j j  |  j d  |  j   |  j | j  |  j	   | j
 d  k	 r |  j d  |  j   |  j | j
  |  j	   n  d  S(   Nu   for u    in u   :u   else:(   R   R   t   targetR	   t   iteratort   sequenceR   R   R,   R   t   else_clauseR   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ForInStatNode^  s    


c         C@ s	  |  j  d  |  j | j d j  |  j d  |  j   |  j | j d j  |  j   xc | j d D]T } |  j  d  |  j | j  |  j d  |  j   |  j | j  |  j   qj W| j d  k	 r|  j
 d  |  j   |  j | j  |  j   n  d  S(   Nu   if i    RJ   i   s   elif s   else:(   R   R   t
   if_clausest	   conditionR   R   R,   R   R   R   R   (   R   R&   t   clause(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_IfStatNodem  s$    



c         C@ s   |  j  | j  d  S(   N(   R$   R5   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SequenceNode  s    c         C@ s>   |  j  | j  |  j d  |  j | j  |  j d  d  S(   Nu   (t   )(   R   t   functionR	   R$   R5   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SimpleCallNode  s    c         C@ s  |  j  | j  |  j d  | j } t | t  rH |  j  | j  n |  j | j  | j	 r t | j	 t
  r xx t | j	 j  D]U \ } \ } } | d k r |  j d  n  |  j  |  |  j d  |  j  |  q Wq t d   n  |  j d  d  S(   Nu   (i    s   , t   =s   Not implemented yetu   )(   R   R   R	   RC   t
   isinstancet   AsTupleNodet   argR$   R5   RD   t   DictNodet	   enumerateRE   t	   Exception(   R   R&   t   posargt   iR7   R]   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_GeneralCallNode  s     		%c         C@ s(   |  j    |  j | j  |  j   d  S(   N(   R   R   t   exprR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ExprStatNode  s    
c         C@ sL   |  j    |  j | j  |  j d | j  |  j | j  |  j   d  S(   Nu    %s= (   R   R   R   R	   Rx   R   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_InPlaceAssignmentNode  s
    
c         C@ s   |  j    |  j d  |  j | j  | j d  k	 rV |  j d  |  j | j  n  |  j d  |  j   |  j | j  |  j	   d  S(   Nu   with u    as u   :(
   R   R	   R   t   managerR   R   R   R   R,   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_WithStatNode  s    

c         C@ sf   |  j  d  |  j   |  j | j  |  j   |  j  d  |  j   |  j | j  |  j   d  S(   Nu   try:u   finally:(   R   R   R   R,   R   t   finally_clause(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TryFinallyStatNode  s    


c         C@ sx   |  j  d  |  j   |  j | j  |  j   x | j D] } |  j |  q; W| j d  k	 rt |  j | j  n  d  S(   Nu   try:(   R   R   R   R,   R   t   except_clausesR   R   (   R   R&   t   x(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TryExceptStatNode  s    

c         C@ s   |  j  d  | j d  k	 r< |  j d  |  j | j  n  | j d  k	 rk |  j d  |  j | j  n  |  j d  |  j   |  j | j  |  j	   d  S(   Nu   exceptu    u   , RJ   (
   R   t   patternR   R	   R   R   R   R   R,   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ExceptClauseNode  s    
c         C@ s+   |  j  d  |  j | j  |  j   d  S(   Ns   return (   R   R   R]   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ReturnStatNode  s    c         C@ s   |  j  d  d  S(   Nt   raise(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ReraiseStatNode  s    c         C@ s   |  j  d | j j  d  S(   Nu   (import %s)(   R	   R_   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ImportNode  s    c         C@ sa   d } x5 | j  D]* } d |  j | f |  j | <| d 7} q W|  j d 7_ |  j | j  d S(   s   
        Temporaries are output like $1_1', where the first number is
        an index of the TempsBlockNode and the second number is an index
        of the temporary which that block allocates.
        i    s   $%d_%di   N(   t   tempsR   R   R   R,   (   R   R&   t   idxt   handle(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TempsBlockNode  s    c         C@ s   |  j  |  j | j  d  S(   N(   R	   R   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TempRefNode  s    (   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR   F  s&   												
	
					t	   PxdWriterc           B@ s#   e  Z d    Z d   Z d   Z RS(   c         C@ s#   t  d j |  j |  j   | S(   Nu   
(   t   printRY   R   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   __call__  s    c         C@ s   d | j  k r d  S| j r, |  j d  n |  j d  | j d k rh |  j | j  |  j d  n  | j r |  j d  n  |  j | j  d  S(   Nt   inlineu   cpdef u   cdef t   privateu    u   api (   t	   modifierst   overridableR   RT   R	   t   apiR   R?   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CFuncDefNode  s    		c         C@ s   d  S(   N(    (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_StatNode  s    (   R   R   R   R   R   (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     s   		t   ExpressionWriterc           B@ su  e  Z dT 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 d  Z d   Z d   Z d   Z dU d  Z d   Z d   Z d   Z d   Z d   Z i d d 6d d 6d d 6d d 6d d 6Z i d d 6d  d! 6d" d# 6d" d$ 6d" d% 6d" d& 6d" d' 6d" d( 6d" d) 6d" d* 6d" d+ 6d" d, 6d- d. 6d/ d0 6d1 d2 6d3 d4 6d3 d5 6d6 d 6d6 d 6d7 d8 6d7 d9 6d7 d: 6d7 d; 6d7 d< 6d= d> 6Z d?   Z d@   Z dA   Z dB   Z dC   Z dD   Z  dE   Z! dF   Z" dG   Z# dH   Z$ dI   Z% dJ   Z& dK   Z' dL   Z( dM   Z) dN   Z* dV dO  Z+ dP   Z, dQ   Z- dR   Z. dS   Z/ RS(W   c         C@ sA   t  t |   j   | d  k r( d } n  | |  _ d g |  _ d  S(   Nu    i    (   R   R   R   R   R   t
   precedence(   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     s
    		c         C@ s   |  j  |  |  j S(   N(   R   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     s    c         C@ s   |  j  | 7_  d  S(   N(   R   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR	     s    c         C@ s0   |  j  j |  r, |  j  t |   |  _  n  d  S(   N(   R   t   endswithR   (   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   remove  s    c         C@ sY   t  |  d k rU x, | d  D]  } |  j |  |  j d  q W|  j | d  n  d  S(   Ni    iu   , (   R   R   R	   (   R   R!   R#   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR$      s
    c         C@ s   t  d |   d  S(   Ns"   Node not handled by serializer: %r(   R%   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR'   '  s    c         C@ s   |  j  | j  d  S(   N(   R	   R7   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyRp   *  s    c         C@ s   |  j  d  d  S(   Nu   None(   R	   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyRr   -  s    c         C@ s   |  j  d  d  S(   Nu   ...(   R	   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_EllipsisNode0  s    c         C@ s   |  j  t | j   d  S(   N(   R	   R}   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR~   3  s    c         C@ s   |  j  t | j   d  S(   N(   R	   R}   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ConstNode6  s    c         C@ s!   |  j  | j  |  j  d  d  S(   Nu   j(   R	   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ImagNode9  s    u    c         C@ sG   t  | j  } | d d k r, | d } n  |  j d | | f  d  S(   Ni    t   ubi   u   %s%s(   R   R]   R	   (   R   R&   t   prefixt   repr_val(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   emit_string=  s    c         C@ s   |  j  | d  d  S(   Nu   b(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_BytesNodeC  s    c         C@ s   |  j  |  d  S(   N(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR   F  s    c         C@ s   |  j  | d  d  S(   Nu   u(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_UnicodeNodeI  s    c         C@ sC   | \ } } | j    } |  j |  |  j |  |  j |  d  S(   N(   t   subexpr_nodesR	   R$   (   R   R&   t   parenst
   open_parent   close_parenR!   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   emit_sequenceL  s
    c         C@ s   |  j  | d  d  S(   Nu   [](   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ListNodeS  s    c         C@ s   |  j  | d  d  S(   Nu   ()(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_TupleNodeV  s    c         C@ s<   t  | j    d k r+ |  j | d  n |  j d  d  S(   Ni    u   {}u   set()(   R   R   R   R	   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SetNodeY  s    c         C@ s   |  j  | d  d  S(   Nu   {}(   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_DictNode_  s    c         C@ s1   |  j  | j  |  j d  |  j  | j  d  S(   Nu   : (   R   t   keyR	   R]   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_DictItemNodeb  s    i   t   nott   !i   t   +t   -t   ~i   t   ori   t   andi   t   int   not_int   ist   is_nott   <s   <=t   >s   >=s   !=s   ==i   t   |i   t   ^i   R1   i   s   <<s   >>i	   i
   R   Ru   t   /s   //t   %i   s   **c         C@ s=   |  j  d } | | k r) |  j d  n  |  j  j |  d  S(   Niu   ((   R   R	   R
   (   R   t   new_prect   old_prec(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   operator_enterz  s    c         C@ s@   |  j  d \ } } | | k r/ |  j d  n  |  j  j   d  S(   Niu   )(   R   R	   t   pop(   R   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   operator_exit  s    c         C@ sK   d } |  j  | } |  j |  |  j d  |  j | j  |  j   d  S(   NR   u   not (   t   unop_precedenceR   R	   R   Rs   R   (   R   R&   t   opt   prec(    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyRt     s    c         C@ sU   | j  } |  j | } |  j |  |  j d | j   |  j | j  |  j   d  S(   Nu   %s(   Rx   R   R   R	   R   Rs   R   (   R   R&   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_UnopNode  s    	c         C@ sv   | j  } |  j j | d  } |  j |  |  j | j  |  j d | j d d   |  j | j  |  j	   d  S(   Ni    u    %s t   _t    (
   Rx   t   binop_precedencet   getR   R   Rw   R	   t   replaceRy   R   (   R   R&   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyRz     s    	c         C@ s   |  j  |  d  S(   N(   Rz   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_BoolBinopNode  s    c         C@ s   |  j  |  d  S(   N(   Rz   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_PrimaryCmpNode  s    c         C@ sc   |  j  | j  |  j d  t | j t  rB |  j | j  n |  j  | j  |  j d  d  S(   Nu   [u   ](   R   R/   R	   R   t   indext	   TupleNodeR   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_IndexNode  s    c         C@ s   |  j  | j  |  j d  | j r9 |  j  | j  n  |  j d  | j rb |  j  | j  n  | j r |  j d  |  j  | j  n  |  j d  d  S(   Nu   [u   :u   ](   R   R/   R	   t   startt   stopt   slice(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SliceIndexNode  s    			c         C@ s{   | j  j s |  j | j   n  |  j d  | j j sK |  j | j  n  | j j sw |  j d  |  j | j  n  d  S(   Nu   :(   R   t   is_noneR   R	   R   t   step(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_SliceNode  s    c         C@ sN   |  j  | j  |  j d  |  j  | j  |  j d  |  j  | j  d  S(   Nu    if u    else (   R   t   true_valR	   t   testt	   false_val(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_CondExprNode  s
    c         C@ s(   |  j  | j  |  j d | j  d  S(   Nu   .%s(   R   R{   R	   RP   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR|     s    c         C@ s>   |  j  | j  |  j d  |  j | j  |  j d  d  S(   Nu   (R   (   R   R   R	   R$   R5   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     s    c         C@ s   | d  k r d  St | t  rB |  j | j  |  j | j  n t | t  r x | j   D]  } |  j |  |  j	 d  q^ WnV t | t
  r |  j	 d  |  j | j  |  j	 d  n |  j |  |  j	 d  d  S(   Nu   , R   (   R   R   t   AddNodet   emit_pos_argsRw   Ry   R   R   R   R	   R   R   (   R   R&   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR    s    c         C@ s   | d  k r d  St | t  rF x | j   D] } |  j |  q, Wn t | t  r xr | j   D]: } |  j d | j j  |  j	 | j  |  j d  qb Wn' |  j d  |  j	 |  |  j d  d  S(   Nu   %s=u   , u   **(
   R   R   t   MergedDictNodeR   t   emit_kwd_argsR   R	   R   R]   R   (   R   R&   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR    s    c         C@ s[   |  j  | j  |  j d  |  j | j  |  j | j  |  j d  |  j d  d  S(   Nu   (u   , R   (   R   R   R	   R  RC   R  RD   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     s    c         C@ s   | \ } } |  j  |  |  j |  |  j  d  |  j |  |  j  d  |  j |  | r} |  j  d  |  j |  n  |  j  |  d  S(   Nu    for u    in u    if (   R	   R   (   R   R,   R   R   R   R   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   emit_comprehension   s    c         C@ s   |  j  | j  d  S(   N(   R   R   (   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ComprehensionAppendNode  s    c         C@ s1   |  j  | j  |  j d  |  j  | j  d  S(   Nu   : (   R   t   key_exprR	   t
   value_expr(   R   R&   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt!   visit_DictComprehensionAppendNode  s    c         C@ s   i d d 6d d 6d d 6} | | j  j   } | j j } | j j } | j j j } d  } t | d  r | j	 d j
 } | j	 d j } n  |  j | | | | |  d  S(   Nu   []t   listu   {}t   dictt   setR   i    (   t   typet   py_type_namet   loopR,   R   R   R   R   t   hasattrR   R   R  (   R   R&   t   tpmapR   R,   R   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_ComprehensionNode  s    c         C@ s   | j  j } | j  j } | j  j j } d  } t | d  re | j d j } | j d j j	 j
 } n t | d  r | j	 j
 } n  |  j | | | | d  d  S(   NR   i    R   u   ()(   R  R,   R   R   R   R   R  R   R   R   R   R  (   R   R&   R,   R   R   R   (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   visit_GeneratorExpressionNode$  s    N(   u    u    (   u    u    (0   R   R   R   R   R   R	   R   R$   R'   Rp   Rr   R   R~   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   R   Rt   R   Rz   R   R   R   R  R  R	  R|   R   R  R  R   R  R  R  R  R  (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyR     sr   																			F#
												
						
			N(   t   __doc__t
   __future__R    R   t   Compiler.VisitorR   t   Compiler.ExprNodest   objectR   R   R   R   R   (    (    (    s0   lib/python2.7/site-packages/Cython/CodeWriter.pyt   <module>   s   
 (