ó
¦V]c           @@  s
  d  d l  m Z y d  d l m Z Wn e k
 rC e e f Z n Xd  d l Z d  d l	 m
 Z
 d d l m Z d d l m Z d d	 l m Z d
 e f d „  ƒ  YZ d e f d „  ƒ  YZ d „  Z d „  Z d „  Z d 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 e f d „  ƒ  YZ d a d  a d a d d „ Z  d „  Z! e" d „ Z# d  „  Z$ d Z% d d! „ Z& d  d" „ Z' i  Z( d  d# „ Z) g  Z* d$ „  Z+ e, d% „ Z- d& „  Z. e
 e, d' „ ƒ Z/ d( „  Z0 d S()   i    (   t   absolute_import(   t
   basestringN(   t   contextmanageri   (   t   open_new_filei   (   t
   DebugFlags(   t   Optionst
   PyrexErrorc           B@  s   e  Z RS(    (   t   __name__t
   __module__(    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR      s   t   PyrexWarningc           B@  s   e  Z RS(    (   R   R   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR	      s   c         C@  sº   |  d } t  | t ƒ s* t d | ƒ ‚ y | j ƒ  } Wn t k
 rS d } nH Xd j | t d |  d d ƒ |  d !ƒ } d | d |  d	 d f } d
 d d | d d f } | S(   Ni    sO   Please replace filename strings with Scanning.FileSourceDescriptor instances %ru   [unprintable code]
u    i   i   u
   ...
%s%s^
u    i   u   %s
%s%s
u   -i<   (   t
   isinstancet   any_string_typet   AssertionErrort	   get_linest   UnicodeDecodeErrort   joint   max(   t   positiont   sourcet   Ft   s(    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   context   s    

+c         C@  s-   |  r) d |  d j  ƒ  |  d |  d f Sd S(   Nu
   %s:%d:%d: i    i   i   u    (   t   get_error_description(   R   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   format_position+   s    c         C@  s>   | r: t  | ƒ } t | ƒ } d | | |  p0 d f }  n  |  S(   Nu%   
Error compiling Cython file:
%s
%s%su    (   R   R   (   t   messageR   t   pos_strt   cont(    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   format_error1   s
    t   CompileErrorc           B@  s    e  Z d d  d „ Z d „  Z RS(   u    c         C@  sS   | |  _  | |  _ t | | ƒ |  _ t |  _ t j |  |  j ƒ | | f |  _ d  S(   N(	   R   t   message_onlyR   t   formatted_messaget   Falset   reportedt	   Exceptiont   __init__t   args(   t   selfR   R   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR"   :   s    			c         C@  s   |  j  S(   N(   R   (   R$   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   __str__F   s    N(   R   R   t   NoneR"   R%   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR   8   s   t   CompileWarningc           B@  s   e  Z d d  d „ Z RS(   t    c         C@  s'   | |  _  t j |  t | ƒ | ƒ d  S(   N(   R   R!   R"   R   (   R$   R   R   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR"   K   s    	N(   R   R   R&   R"   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR'   I   s   t   InternalErrorc           B@  s   e  Z d  „  Z RS(   c         C@  s!   | |  _  t j |  d | ƒ d  S(   Nu   Internal compiler error: %s(   R   R!   R"   (   R$   R   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR"   T   s    	(   R   R   R"   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR)   Q   s   t
   AbortErrorc           B@  s   e  Z d  „  Z RS(   c         C@  s!   | |  _  t j |  d | ƒ d  S(   Nu   Abort error: %s(   R   R!   R"   (   R$   R   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR"   \   s    	(   R   R   R"   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR*   Y   s   t   CompilerCrashc           B@  s   e  Z d d  „ Z RS(   c         C@  sÕ   | r d | } n d } | |  _  | r; d | | f } n  | rp d d  l } | d d j | j | ƒ ƒ 7} n  | r¦ | s‰ | d 7} n  | d | j j | f 7} n  t j |  | | ƒ | | | | | f |  _ d  S(   Nu   
u   Compiler crash in %s%si    u/   

Compiler crash traceback from this point on:
u    u   %s: %s(	   R   t	   tracebackR   t	   format_tbt	   __class__R   R   R"   R#   (   R$   t   posR   R   t   causet
   stacktraceR,   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR"   b   s"    	N(   R   R   R&   R"   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR+   `   s   t   NoElementTreeInstalledExceptionc           B@  s   e  Z d  Z RS(   sc   raised when the user enabled options.gdb_debug but no ElementTree
    implementation was found
    (   R   R   t   __doc__(    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR2   x   s   c         C@  sC   |  d  k	 r t |  ƒ a n d  a | r3 t j a n d  a d a d  S(   Ni    (   R&   R   t   listing_filet   syst   stderrt	   echo_filet
   num_errors(   t   patht   echo_to_stderr(    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   open_listing_file   s    c           C@  s   t  r t  j ƒ  d  a  n  d  S(   N(   R4   t   closeR&   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   close_listing_file   s    
c         C@  s7  t  r  | r  t  d j |  ƒ n|  j r- d  St |  _ y d |  } Wn< t k
 r‚ t t |  d d ƒ t |  d d  ƒ ƒ d } n Xt rÊ y t j	 | ƒ WqÊ t k
 rÆ t j	 | j
 d d ƒ ƒ qÊ Xn  t ry t j	 | ƒ Wqt k
 rt j	 | j
 d d ƒ ƒ qXn  t d	 7a t j r3t d
 ƒ ‚ n  d  S(   Niÿÿÿÿu   %s
R   s   [unprintable exception message]R   u   
t   ASCIIt   replacei   s   fatal errors(   t   error_stackt   appendR    t   Truet   UnicodeEncodeErrorR   t   getattrR&   R4   t   writet   encodeR7   R8   R   t	   fast_failR*   (   t   errt	   use_stackt   line(    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   report_error•   s.    	 	     
	c         C@  sP   |  d  k r t | ƒ ‚ n  t |  | ƒ } t j rB t | ƒ ‚ n  t | ƒ | S(   N(   R&   R)   R   R   t   debug_exception_on_errorR!   RK   (   R   R   RH   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   error¯   s    	 
c         C@  sY   | t  k  r d  St |  | ƒ } d | } t r? t j | ƒ n  t rU t j | ƒ n  | S(   Ns	   note: %s
(   t   LEVELR'   R4   RE   R7   (   R   R   t   levelt   warnRJ   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyR   ¼   s    
c         C@  su   | t  k  r d  St j r, |  r, t |  | ƒ St |  | ƒ } d | } t r[ t j | ƒ n  t rq t j | ƒ n  | S(   Ns   warning: %s
(   RN   R   t   warning_errorsRM   R'   R4   RE   R7   (   R   R   RO   RP   RJ   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   warningÈ   s    
c         C@  so   | t  k  s | t k r d  St |  | ƒ } d | } t rK t j | ƒ n  t ra t j | ƒ n  t t | <| S(   Ns   warning: %s
(   RN   t   _warn_once_seenR'   R4   RE   R7   RB   (   R   R   RO   RP   RJ   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt	   warn_once×   s    

c           C@  s   t  j g  ƒ d  S(   N(   R@   RA   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   hold_errorsé   s    c         C@  s4   t  j ƒ  } |  s0 x | D] } t | ƒ q Wn  d  S(   N(   R@   t   popRK   (   t   ignoret   held_errorsRH   (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   release_errorsí   s    c           C@  s   t  d S(   Niÿÿÿÿ(   R@   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyRX   ô   s    c         c@  s1   g  } t  j | ƒ z	 | VWd  t d |  ƒ Xd  S(   NRW   (   R@   RA   RY   (   RW   t   errors(    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   local_errorsú   s
    	c           C@  s   t  j ƒ  t 2d  S(   N(   RS   t   clearR@   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   reset  s    
(1   t
   __future__R    t   __builtin__R   R   t   ImportErrort   bytest   strR5   t
   contextlibR   t   UtilsR   R(   R   R   R!   R   R	   R   R   R   R   R'   R)   R*   R+   R2   R&   R4   R8   R7   R;   R=   RB   RK   RM   RN   R   RR   RS   RT   R@   RU   R   RY   RX   R[   R]   (    (    (    s5   lib/python2.7/site-packages/Cython/Compiler/Errors.pyt   <module>   sN   					
		