ó
àÆ÷Xc           @` sm   d  Z  d d l m Z m Z m Z d d l m Z d Z d Z d Z	 d Z
 d Z d	 e j f d
 „  ƒ  YZ d S(   s%   Symbolic Op for raising an exception.i    (   t   absolute_importt   print_functiont   division(   t   gofs   James Bergstras    (c) 2011, Universite de Montreals   3-clause BSD Licenses(   theano-dev <theano-dev@googlegroups.com>s   restructuredtext ent   Raisec           B` s>   e  Z d  Z d Z d e d „ Z d „  Z d „  Z d „  Z RS(	   s,   Op whose perform() raises an exception.
    t   msgt   exct    c         C` s   | |  _  | |  _ d S(   so   
        msg - the argument to the exception
        exc - an exception class to raise in self.perform
        N(   R   R   (   t   selfR   R   (    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyt   __init__   s    	c         C` s   d |  j  |  j f S(   Ns   Raise{%s(%s)}(   R   R   (   R   (    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyt   __str__   s    c         C` s   t  j |  | g | j ƒ  g ƒ S(   N(   R   t   Applyt   type(   R   t   x(    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyt	   make_node   s    c         C` s   |  j  |  j ƒ ‚ d  S(   N(   R   R   (   R   t   nodet   inputst   out_storage(    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyt   perform    s    (   s   msgs   exc(	   t   __name__t
   __module__t   __doc__t	   __props__t   NotImplementedErrorR	   R
   R   R   (    (    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyR      s   		N(   R   t
   __future__R    R   R   t   theanoR   t   __authors__t   __copyright__t   __license__t   __contact__t   __docformat__t   OpR   (    (    (    s/   /tmp/pip-build-X4mzal/theano/theano/raise_op.pyt   <module>   s   