ó
Æ^c           @   s�   d  Z  d d l Z d d l 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 S(   s!   
Exceptions used in the Waf code
iÿÿÿÿNt   WafErrorc           B   s&   e  Z d  Z d d d „ Z d „  Z RS(   s   Base class for all Waf errorst    c         C   sË   t  j |  ƒ | |  _ t | t  ƒ s, t ‚ g  |  _ | r� | sS t | ƒ |  _ n  t | t ƒ rq | j |  _ q� t j	 t
 j ƒ  d ƒ |  _ n  |  j t j ƒ  d  7_ d j t j |  j ƒ ƒ |  _ d S(   s~   
		:param msg: error message
		:type msg: string
		:param ex: exception causing this error (optional)
		:type ex: exception
		i   iÿÿÿÿR   N(   t	   Exceptiont   __init__t   msgt
   isinstancet   AssertionErrort   stackt   strR    t	   tracebackt
   extract_tbt   syst   exc_infot   extract_stackt   joint   format_listt   verbose_msg(   t   selfR   t   ex(    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR      s    		c         C   s   t  |  j ƒ S(   N(   R   R   (   R   (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyt   __str__#   s    N(   t   __name__t
   __module__t   __doc__t   NoneR   R   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR       s   t
   BuildErrorc           B   s#   e  Z d  Z g  d „ Z d „  Z RS(   s0   Error raised during the build and install phasesc         C   s#   | |  _  t j |  |  j ƒ  ƒ d S(   sj   
		:param error_tasks: tasks that could not complete normally
		:type error_tasks: list of task objects
		N(   t   tasksR    R   t   format_error(   R   t   error_tasks(    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR   (   s    	c         C   sL   d g } x3 |  j  D]( } | j ƒ  } | r | j | ƒ q q Wd j | ƒ S(   s5   Formats the error messages from the tasks that faileds   Build faileds   
(   R   R   t   appendR   (   R   t   lstt   tskt   txt(    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR   0   s    	(   R   R   R   R   R   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR   &   s   t   ConfigurationErrorc           B   s   e  Z d  Z RS(   sW   Configuration exception raised in particular by :py:meth:`waflib.Context.Context.fatal`(   R   R   R   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR    9   s   t
   TaskRescanc           B   s   e  Z d  Z RS(   sI   Task-specific exception type signalling required signature recalculations(   R   R   R   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR!   =   s   t   TaskNotReadyc           B   s   e  Z d  Z RS(   sO   Task-specific exception type signalling that task signatures cannot be computed(   R   R   R   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyR"   A   s   (	   R   R	   R   R   R    R   R    R!   R"   (    (    (    s0   /git_repos/PolyLV2/poly_mclk_in/waflib/Errors.pyt   <module>   s   