
    Fwg                     Z    d Z ddlmZ ddlmZmZmZmZmZ  G d dej                        Z
y)zFixer for
              raise E(V).with_traceback(T)
    to:
              from future.utils import raise_
              ...
              raise_(E, V, T)

TODO: FIXME!!

    )
fixer_base)CommaNodeLeaftokensymsc                       e Zd ZdZd Zy)FixRaisez
    raise_stmt< 'raise' (power< name=any [trailer< '(' val=any* ')' >]
        [trailer< '.' 'with_traceback' > trailer< '(' trc=any ')' >] > | any) ['from' chain=any] >c                    t          |j                  d      |j                  d      |j                  d      }}}|j                  d      }|<| j                  |d       |j                  j	                          |j	                          ||r|d   nt        t        j                  d      }dx|_        |_        t        t        j                  d	      |j                         t               |j                         t               |j                         g}t        t        j                  |      }|j                  |       y y )
Nnamevaltrcchainz8explicit exception chaining is not supported in Python 2r   None raise)FIXMEgetwarningprev_siblingremover   r   NAMEprefixcloner   r   r   
raise_stmtreplace)	selfnoderesultsr   r   r   r   kidsr   s	            U/var/www/horilla/myenv/lib/python3.12/site-packages/libpasteurize/fixes/fix_raise_.py	transformzFixRaise.transform   s    !++g.F0CW[[QWEX3cH%LLZ[%%'LLN?#a&T%**g%>C&**CJX.

egIIK#))+7Ddoot4JLL$     N)__name__
__module____qualname__PATTERNr"    r#   r!   r
   r
      s    fG%r#   r
   N)__doc__lib2to3r   lib2to3.fixer_utilr   r   r   r   r   BaseFixr
   r(   r#   r!   <module>r-      s'   	  = =%z!! %r#   