ó
Nä²Wc           @@  sp   d  d l  m Z d d l m Z d d l m Z d d l m Z d d l m Z m	 Z	 d e f d „  ƒ  YZ
 d	 S(
   i    (   t   absolute_importi   (   t   CythonTransform(   t   EncodedString(   t   Options(   t
   PyrexTypest	   ExprNodest   EmbedSignaturec           B@  se  e  Z d  „  Z d Z 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 d 6d d 6d d 6d d 6d d 6d d 6d d 6d d  6d d! 6d d" 6d d# 6d$ d% 6Z d& d' „ Z d( „  Z d) „  Z d& d4 d& d4 e	 d* „ Z
 d+ „  Z d& d4 d& d4 d4 e	 d, „ Z d- „  Z d. „  Z d/ „  Z d0 „  Z d1 „  Z d2 „  Z d3 „  Z RS(5   c         C@  s5   t  t |  ƒ j | ƒ d  |  _ d  |  _ d  |  _ d  S(   N(   t   superR   t   __init__t   Nonet   denvt
   class_namet
   class_node(   t   selft   context(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyR   
   s    		i   i   t   ori   t   andi   t   noti   t   ins   not int   iss   is nott   <s   <=t   >s   >=s   !=s   ==i   t   |i   t   ^i   t   &i   s   <<s   >>i	   t   +t   -i
   t   *t   /s   //t   %i   s   **i    c         C@  s  t  | t j ƒ r„ | j r„ |  j j | j d ƒ } d |  j | j | ƒ | j |  j | j	 | ƒ f } | | k rd | } qn“ t  | t j
 ƒ rÚ d | j |  j | j |  j ƒ f } | |  j k rd | } qn= t  | t j ƒ rd |  j | j ƒ | j f } n	 | j } | S(   Ni    s   %s %s %ss   (%s)s   %s%ss   %s.%s(   t
   isinstanceR   t	   BinopNodet   inplacet   binop_precedencet   gett   operatort   _fmt_expr_nodet   operand1t   operand2t   UnopNodet   operandt   unop_precedencet   AttributeNodet   objt	   attributet   name(   R   t   nodet
   precedencet   new_prect   result(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyR$      s     	"	c         C@  s  | j  } | s d  St | t j ƒ r) d Sy¶ |  j } | j |  j ƒ } t | ƒ } t | t j ƒ r€ | d  d k rÚ d | SnZ t | t j	 ƒ r­ | d  d k rÚ d | Sn- t | t j
 ƒ rÚ | d  d k rÚ | d Sn  | SWn7 t k
 ry |  j | ƒ SWqt k
 rd SXn Xd  S(	   Nt   NULLi   t   uu   u%st   bu   b%st   ubs   <???>(   t   defaultR	   R   R   t   NullNodeR
   t   compile_time_valuet   reprt   UnicodeNodet	   BytesNodet
   StringNodet	   ExceptionR$   t   AttributeError(   R   t   argt   default_valR
   t   ctvalt   repr_val(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _fmt_arg_defv2   s0    		c         C@  sx   | j  t j k s | j r' | j } n | j  j | j d d ƒ} | j rt |  j | ƒ } | rt | d | } qt n  | S(   Nt   for_displayi   s   =%s(   t   typeR   t   py_object_typet   is_self_argR-   t   declaration_codeR6   RC   (   R   R?   t   doct   arg_defv(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _fmt_argL   s    	c   
      C@  s¤   g  } xA | D]9 } | s' | j  j r |  j | ƒ }	 | j |	 ƒ q q W| rj | j | d | j ƒ n | rƒ | j | d ƒ n  | r  | j d | j ƒ n  | S(   Ns   *%sR   s   **%s(   t   entryRG   RK   t   appendt   insertR-   (
   R   t   argst   npargst   pargst   nkargst   kargst	   hide_selft   arglistR?   t   arg_doc(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _fmt_arglistW   s    c         C@  s*   | t  j k r d  S| j d d d ƒSd  S(   Nt    RD   i   (   R   RF   R	   RH   (   R   t   ret(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _fmt_ret_typeh   s    c
         C@  sŽ   |  j  | | | | | d |	 ƒ}
 d j |
 ƒ } d | | f } | rY d | | f } n  | rŠ |  j | ƒ } | rŠ d | | f } qŠ n  | S(   NRT   s   , s   %s(%s)s   %s.%ss   %s -> %s(   RW   t   joinRZ   (   R   t   cls_namet	   func_nameRO   RP   RQ   RR   RS   t   return_typeRT   RU   t   arglist_doct   func_doct   ret_doc(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _fmt_signaturen   s    			c         C@  s   | r d | | f S| Sd  S(   Ns   %s
%s(    (   R   t	   signaturet   node_doc(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   _embed_signature€   s    c         C@  s'   t  j s | St t |  ƒ j | ƒ Sd  S(   N(   R   t
   docstringsR   R   t   __call__(   R   R.   (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyRg   †   s    	c         C@  sn   |  j  } |  j } | |  _ y | j |  _  Wn t k
 rJ | j  |  _  n X|  j | ƒ | |  _  | |  _ | S(   N(   R   R   R-   R>   t   visitchildren(   R   R.   t   oldnamet   oldclass(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   visit_ClassDefNodeŒ   s    					c         C@  s   | S(   N(    (   R   R.   (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   visit_LambdaNode›   s    c         C@  s­  |  j  d s | St } t } | j j rd |  j o> | j d k } | sK | Sd  |  j } } t } n |  j | j } } t	 | d d ƒ } t
 | j ƒ | } |  j | | | j | | j | | j d d  d | ƒ} | r©| ró |  j j j j }	 n	 | j }	 |	 j d  k	 r|	 j }
 n7 | rHt	 | d d  ƒ d  k	 rH| j j j }
 n d  }
 |  j | |
 ƒ } t | ƒ |	 _ | r©t	 | d d  ƒ d  k	 r©t | ƒ | j j _ q©n  | S(   Nt   embedsignatureR   t   num_kwonly_argsi    R^   RT   t   py_func(   t   current_directivest   FalseRL   t
   is_specialR   R-   R	   R   t   Truet   getattrt   lenRO   Rb   t   star_argt   starstar_argRE   t   scopeRI   Ro   Re   R   (   R   R.   t   is_constructorRT   R   R]   RR   RP   Rc   t
   doc_holdert   old_doct   new_doc(    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   visit_DefNodeŸ   s@    			c         C@  s  |  j  d s | S| j s | S|  j |  j | j j j | j j d | j ƒ} | r| j	 j
 d  k	 ru | j	 j
 } n0 t | d d  ƒ d  k	 rŸ | j j	 j
 } n d  } |  j | | ƒ } t | ƒ | j	 _
 t | d ƒ r| j d  k	 rt | ƒ | j j	 _
 qn  | S(   NRm   R^   Ro   (   Rp   t   overridableRb   R   t
   declaratort   baseR-   RO   R^   RL   RI   R	   Rt   Ro   Re   R   t   hasattr(   R   R.   Rc   R{   R|   (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   visit_CFuncDefNodeÇ   s&    	c         C@  s»   |  j  d s | S| j } | j d k r· | j j d d d ƒ} | j j sZ d | } n# | j j r} | j j d | } n  d | j | f } |  j	 | | j
 ƒ } t | ƒ | _
 n  | S(	   NRm   t   publicRX   RD   i   s   '%s't   .s   %s: %s(   Rp   RL   t
   visibilityRE   RH   t   is_pyobjectt   is_extension_typet   module_nameR-   Re   RI   R   (   R   R.   RL   t	   type_nameRc   R|   (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   visit_PropertyNodeÞ   s    	N(   t   __name__t
   __module__R   R)   R!   R$   RC   RK   R	   Rq   RW   RZ   Rb   Re   Rg   Rk   Rl   R}   R‚   RŠ   (    (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyR      s>   	F
								(	N(   t
   __future__R    t   VisitorR   t   StringEncodingR   RX   R   R   R   R   (    (    (    sD   /bar/jli/Chip-seq/script/cython/Cython/Compiler/AutoDocTransforms.pyt   <module>   s
   