ó
Nä²Wc           @@  sÕ  d  d l  m Z d e f d „  ƒ  YZ e Z e Z e Z dQ Z
 e Z e Z e Z dQ Z e Z e Z e Z e Z e Z e Z e Z e Z dQ Z e d ƒ Z e Z d Z d Z d „  Z i8 e d 6e d 6e d	 6e d
 6i  d 6e d 6e d 6e d 6e d 6e d 6e d 6e d 6e d 6e d 6d d 6e d 6e d 6e d 6e d 6e d 6e d 6e d 6e d 6dQ d 6e d  6e d! 6e d" 6e d# 6d$ d% 6e d& 6e d' 6d( d) 6d d* 6e d+ 6e d, 6e d 6dQ d- 6dQ d. 6e d/ 6e d0 6e d1 6e d2 6e d3 6e d4 6e d5 6e d6 6e d7 6e d8 6e d9 6d d: 6e d; 6g  d< 6g  d= 6dQ d> 6d  d? 6e d@ 6Z i e d1 6e d0 6e d2 6Z dA „  Z dB „  Z  i e! d 6e! d 6e! d 6e! d> 6dQ dC 6dQ dD 6dQ dE 6dQ dF 6dQ dG 6e" dH 6e# d- 6e$ d? 6e d( dI dJ dK ƒ d) 6e  d* 6Z% x9 e j& ƒ  D]+ \ Z' Z( e' e% k ròe" e( ƒ e% e' <qòqòWi dR d 6dS dE 6dT dF 6dU d 6dV d 6dW d 6dX d! 6dY d# 6dZ d" 6d[ d- 6d\ d< 6d] d= 6d^ d? 6d_ d 6d` d 6da d) 6db d* 6dc d+ 6dd d% 6de d 6Z) e dO „ Z* e e dQ dP „ Z+ dQ S(f   i    (   t   absolute_importt   ShouldBeFromDirectivec           B@  sA   e  Z g  Z d e d  „ Z d „  Z d „  Z d „  Z d „  Z	 RS(   c         C@  s5   | |  _  | p | |  _ | |  _ |  j j |  ƒ d  S(   N(   t   options_namet   directive_namet	   dissallowt   known_directivest   append(   t   selfR   R   R   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   __init__   s    		c         C@  s   |  j  ƒ  d  S(   N(   t   _bad_access(   R   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   __nonzero__   s    c         C@  s   |  j  ƒ  d  S(   N(   R	   (   R   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   __int__   s    c         C@  s   t  t |  ƒ ƒ ‚ d  S(   N(   t   RuntimeErrort   repr(   R   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyR	      s    c         C@  s   d |  j  |  j f S(   NsE   Illegal access of '%s' from Options module rather than directive '%s'(   R   R   (   R   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   __repr__   s    N(
   t   __name__t
   __module__R   t   Nonet   FalseR   R
   R   R	   R   (    (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyR      s   			t   old_style_globalsi   c          C@  s‰   x‚ t  j D]w }  t ƒ  j |  j ƒ } |  j t k s: t ‚ t | t  ƒ s
 |  j	 rq t
 d |  j |  j f ƒ ‚ q | t |  j <q
 q
 Wt S(   Ns+   Option '%s' must be set from directive '%s'(   R   R   t   globalst   getR   R   t   _directive_defaultst   AssertionErrort
   isinstancet   disallowR   t   option_name(   t
   old_optiont   value(    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   get_directive_defaultsz   s    	t   boundscheckt	   nonecheckt   initializedcheckt   embedsignaturet   localst
   auto_cpdeft	   cdivisiont   cdivision_warningst   overflowchecks   overflowcheck.foldt   always_allow_keywordst   allow_none_for_extension_argst
   wraparoundt   ccomplext    t   callspect   finalt   internalt   profilet   no_gc_cleart   no_gct	   linetracet   emit_code_commentst   annotation_typingt   infer_typess   infer_types.verboset   autotestdicts   autotestdict.cdefs   autotestdict.alli   t   language_levelt   fast_getattrt
   py2_importt   bytest   c_string_typet   c_string_encodingt   type_version_tagt   unraisable_tracebackst   set_initial_patht   warns   warn.undeclareds   warn.unreachables   warn.maybe_uninitializeds   warn.unuseds   warn.unused_args   warn.unused_results   warn.multiple_declaratorss   optimize.inline_defnode_callss   optimize.unpack_method_callss   optimize.use_switcht   remove_unreachables   control_flow.dot_outputs   control_flow.dot_annotate_defst   test_assert_path_existst   test_fail_if_path_existst   bindingt   freelistt   formal_grammarc          @  s   ‡  f d †  } | S(   Nc         @  s0   | ˆ  k r( t  d |  ˆ  | f ƒ ‚ n | Sd  S(   Ns(   %s directive must be one of %s, got '%s'(   t
   ValueError(   t   nameR   (   t   args(    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   validateÝ   s    (    (   RI   RJ   (    (   RI   s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   one_ofÜ   s    c         C@  sˆ   | s
 d S| j  ƒ  d k r& | j  ƒ  Sd d l } y | j | ƒ } Wn t k
 rY | SXx' d D] } | j | ƒ | k ra | Sqa W| S(	   s…  
    >>> normalise_encoding_name('c_string_encoding', 'ascii')
    'ascii'
    >>> normalise_encoding_name('c_string_encoding', 'AsCIi')
    'ascii'
    >>> normalise_encoding_name('c_string_encoding', 'us-ascii')
    'ascii'
    >>> normalise_encoding_name('c_string_encoding', 'utF8')
    'utf8'
    >>> normalise_encoding_name('c_string_encoding', 'utF-8')
    'utf8'
    >>> normalise_encoding_name('c_string_encoding', 'deFAuLT')
    'default'
    >>> normalise_encoding_name('c_string_encoding', 'default')
    'default'
    >>> normalise_encoding_name('c_string_encoding', 'SeriousLyNoSuch--Encoding')
    'SeriousLyNoSuch--Encoding'
    R+   t   defaultt   asciit   utf8i    N(   s   defaults   asciis   utf8(   s   asciis   utf8(   t   lowert   codecst
   getdecodert   LookupError(   R   t   encodingRP   t   decoderRH   (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   normalise_encoding_nameæ   s    
t   cfunct   ccallt   inlinet   staticmethodt   cclasst   returnst	   bytearrayt   strt   unicodet   functiont   modulet   classc         C@  s+  t  j |  ƒ } | s d	 S| } | t k r¥ t | ƒ } | d k rG t S| d k rW t S| rŒ | j ƒ  } | d
 k ry t S| d k rŒ t Sn  t d |  | f ƒ ‚ n‚ | t	 k rì y t	 | ƒ SWq't k
 rè t d |  | f ƒ ‚ q'Xn; | t k rt | ƒ St
 | ƒ r| |  | ƒ St s't ‚ d	 S(   s  
    Parses value as an option value for the given name and returns
    the interpreted value. None is returned if the option does not exist.

    >>> print(parse_directive_value('nonexisting', 'asdf asdfd'))
    None
    >>> parse_directive_value('boundscheck', 'True')
    True
    >>> parse_directive_value('boundscheck', 'true')
    Traceback (most recent call last):
       ...
    ValueError: boundscheck directive must be set to True or False, got 'true'

    >>> parse_directive_value('c_string_encoding', 'us-ascii')
    'ascii'
    >>> parse_directive_value('c_string_type', 'str')
    'str'
    >>> parse_directive_value('c_string_type', 'bytes')
    'bytes'
    >>> parse_directive_value('c_string_type', 'bytearray')
    'bytearray'
    >>> parse_directive_value('c_string_type', 'unicode')
    'unicode'
    >>> parse_directive_value('c_string_type', 'unnicode')
    Traceback (most recent call last):
    ValueError: c_string_type directive must be one of ('bytes', 'bytearray', 'str', 'unicode'), got 'unnicode'
    t   TrueR   t   truet   yest   falset   nos3   %s directive must be set to True or False, got '%s's0   %s directive must be set to an integer, got '%s'N(   s   trues   yes(   s   falses   no(   t   directive_typesR   R   t   boolR]   Rb   R   RO   RG   t   intt   callableR   (   RH   R   t   relaxed_boolt   typet
   orig_value(    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   parse_directive_value:  s:    
c         C@  s`  | d	 k r i  } n | } x>|  j d ƒ D]-} | j ƒ  } | sI q+ n  d | k rh t d | ƒ ‚ n  g  | j ƒ  j d d ƒ D] }  |  j ƒ  ^ q \ } } | t k r9t } | j d ƒ r| d  }	 xH t D]= }
 |
 j |	 ƒ rÑ t } t	 |
 | d | ƒ} | | |
 <qÑ qÑ Wn  | rX| rXt d | ƒ ‚ qXq+ t	 | | d | ƒ} | | | <q+ W| S(
   sJ  
    Parses a comma-separated list of pragma options. Whitespace
    is not considered.

    >>> parse_directive_list('      ')
    {}
    >>> (parse_directive_list('boundscheck=True') ==
    ... {'boundscheck': True})
    True
    >>> parse_directive_list('  asdf')
    Traceback (most recent call last):
       ...
    ValueError: Expected "=" in option "asdf"
    >>> parse_directive_list('boundscheck=hey')
    Traceback (most recent call last):
       ...
    ValueError: boundscheck directive must be set to True or False, got 'hey'
    >>> parse_directive_list('unknown=True')
    Traceback (most recent call last):
       ...
    ValueError: Unknown option: "unknown"
    >>> warnings = parse_directive_list('warn.all=True')
    >>> len(warnings) > 1
    True
    >>> sum(warnings.values()) == len(warnings)  # all true.
    True
    t   ,t   =s   Expected "=" in option "%s"i   s   .alliýÿÿÿRk   s   Unknown option: "%s"N(
   R   t   splitt   stripRG   R   R   t   endswitht
   startswithRb   Rn   (   t   sRk   t   ignore_unknownt   current_settingst   resultt   itemRH   R   t   foundt   prefixt	   directivet   parsed_value(    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   parse_directive_listv  s0    	7
N(   s   cclasss   function(   s   function(   s   function(   s   cclass(   s   cclass(   s   cclass(   s   module(   s   module(   s   module(   s   module(   s   functions   classs   cclass(   s   functions   classs   cclass(   s   cclass(   s   module(   s   module(   s   module(   s   module(   s   modules   cclass(   s   module(   s   module(,   t
   __future__R    t   objectR   Rb   t
   docstringsR   t   embed_pos_in_docstringR3   R   t
   pre_importt   generate_cleanup_codet   clear_to_nonet   annotatet   annotate_coverage_xmlt	   fast_failt   warning_errorst   error_on_unknown_namest   error_on_uninitializedt   convert_ranget   cache_builtinst   gcc_branch_hintst   lookup_module_cpdeft   embedR   t   cimport_from_pyxt   buffer_max_dimst   closure_freelist_sizeR   R   t   extra_warningsRK   RU   Rh   Rl   R]   Ri   Rg   t   itemst   keyt   valt   directive_scopesRn   R~   (    (    (    s:   /bar/jli/Chip-seq/script/cython/Cython/Compiler/Options.pyt   <module>   s   		

	
	#

<