o
    6	f                     @   s&!  U d Z ddlmZmZmZ ddlmZmZmZm	Z	m
Z
mZmZmZmZ ddlmZmZ ddlmZ ddlmZ ddlmZmZ dd	lmZmZmZmZ dd
lmZ er[ddlm Z m!Z! edeee"ee# f f Z$ee%d< i Z&ee'df e%d< eG dd dZ(dedefddZ)G dd de*Z+G dd de*Z,G dd de,Z-G dd de,Z.G dd de.Z/G d d! d!e.Z0G d"d# d#e.Z1G d$d% d%e.Z2G d&d' d'e.Z3G d(d) d)e.Z4G d*d+ d+e0Z5G d,d- d-e0Z6G d.d/ d/Z7d0e$de$fd1d2Z8d3e'dee, fd4d5Z9d<d7ed8e'de,fd9d:Z:d0e$dee fd;d<Z;d3e'dee, fd=d>Z<d3e'dee, fd?d@Z=i dAe0dBe4dCe3dDe3dEe/dFe1dGe2dHe2dIe3dJe0dKe0dLe2dMe2dNe0dOe3dPe0dQe0e0e3e3e0e3e3e0e0e0e0e0e0e0e3e2dRZ>G dSdT dTe.dUdVdWZ?G dXdY dYe.dZd[dWZ@G d\d] d]e.d^d_dWZAG d`da dae0dbdcdWZBG ddde dee0dfdgdWZCG dhdi die0djdkdWZDG dldm dme0dndodWZEG dpdq dqe0drdsdWZFG dtdu due0dvdwdWZGG dxdy dye0dzd{dWZHG d|d} d}e.d~ddWZIG dd de4dddWZJG dd de.dddWZKG dd de.dddWZLG dd de.dddWZMG dd de.dddWZNG dd de.dddWZOG dd de.dddWZPG dd de.dddWZQG dd de.dddWZRG dd de3dddWZSG dd de3dddWZTG dd de/dddWZUG dd de/dddWZVG dd de/dddWZWG dd de/dddWZXG dd de/dddWZYG dd de/dddWZZG ddń de/dddWZ[G ddɄ de/dddWZ\G dd̈́ de/dddWZ]G ddф de/dddWZ^G ddՄ de/dddWZ_G ddل de/dddWZ`G dd݄ de/dddWZaG dd de/dddWZbG dd de/dddWZcG dd de/dddWZdG dd de/dddWZeG dd de/dddWZfG dd de/dddWZgG dd de/dddWZhG dd de/dddWZiG d d de/dddWZjG dd de/dddWZkG dd	 d	e/d
ddWZlG dd de/dddWZmG dd de/dddWZnG dd de/dddWZoG dd de/dddWZpG dd de/dddWZqG d d! d!e/d"d#dWZrG d$d% d%e/d&d'dWZsG d(d) d)e/d*d+dWZtG d,d- d-e/d.d/dWZuG d0d1 d1e/d2d3dWZvG d4d5 d5e/d6d7dWZwG d8d9 d9e/d:d;dWZxG d<d= d=e/d>d?dWZyG d@dA dAe/dBdCdWZzG dDdE dEe/dFdGdWZ{G dHdI dIe/dJdKdWZ|G dLdM dMe/dNdOdWZ}G dPdQ dQe/dRdSdWZ~G dTdU dUe/dVdWdWZG dXdY dYe/dZd[dWZG d\d] d]e/d^d_dWZG d`da dae/dbdcdWZG ddde dee/dfdgdWZG dhdi die/djdkdWZG dldm dme/dndodWZG dpdq dqe/drdsdWZG dtdu due/dvdwdWZG dxdy dye/dzd{dWZG d|d} d}e/d~ddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de/dddWZG dd de1dddWZG dd de1dddWZG dĐdń de1dƐddWZG dȐdɄ de1dʐddWZG d̐d̈́ de1dΐddWZG dАdф de1dҐddWZG dԐdՄ de1d֐ddWZG dؐdل de2dڐddWZG dܐd݄ de2dސddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG dd de2dddWZG d d de2dddWZG dd de2dddWZG dd	 d	e2d
ddWZG dd de3dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de2dddWZG d d! d!e2d"d#dWZG d$d% d%e2d&d'dWZG d(d) d)e0d*d+dWZG d,d- d-e0d.d/dWZG d0d1 d1e0d2d3dWZG d4d5 d5e0d6d7dWZG d8d9 d9e0d:d;dWZG d<d= d=e3d>d?dWZG d@dA dAe0dBdCdWZG dDdE dEe0dFdGdWZG dHdI dIe0dJd/dWZG dKdL dLe0dMd3dWZG dNdO dOe0dPd7dWZG dQdR dRe0dSdTdWZG dUdV dVe0dWdXdWZG dYdZ dZe0d[ddWZG d\d] d]e0d^d_dWZG d`da dae0dbdcdWZG ddde dee0dfdgdWZG dhdi die0djdkdWZG dldm dme0dndodWZG dpdq dqe3drdsdWZG dtdu due3dvdwdWZG dxdy dye0dzd{dWZG d|d} d}e0d~ddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dĐdń de3dƐddWZG dȐdɄ de3dʐddWZG d̐d̈́ de3dΐddWZG dАdф de3dҐddWZG dԐdՄ de3d֐ddWZG dؐdل de3dڐddWZG dܐd݄ de3dސddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG d d de3dddWZG dd de3dddWZG dd	 d	e3d
ddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG dd de3dddWZG d d! d!e3d"d#dWZG d$d% d%e3d&d'dWZG d(d) d)e3d*d+dWZG d,d- d-e3d.d/dWZG d0d1 d1e3d2d3dWZG d4d5 d5e3d6d7dWZG d8d9 d9e3d:d;dWZG d<d= d=e3d>d?dWZG d@dA dAe0dBdCdWZG dDdE dEe0dFdGdWZG dHdI dIe0dJdKdWZG dLdM dMe0dNdOdWZG dPdQ dQe0dRdSdWZG dTdU dUe0dVdWdWZ G dXdY dYe0dZd[dWZG d\d] d]e0d^d_dWZG d`da dae0dbdcdWZG ddde dee0dfdgdWZG dhdi die0djdkdWZG dldm dme0dndodWZG dpdq dqe0drdsdWZG dtdu due0dvdwdWZG dxdy dye0dzd{dWZ	G d|d} d}e0d~ddWZ
G dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de.dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dd de0dddWZG dĐdń de0dƐddWZG dȐdɄ de0dʐddWZG d̐d̈́ de0dΐddWZG dАdф de0dҐddWZG dԐdՄ de0d֐ddWZ G dؐdل de0dڐddWZ!G dܐd݄ de0dސddWZ"G dd de0dddWZ#G dd de0dddWZ$G dd de0dddWZ%G dd de0dddWZ&G dd de0dddWZ'G dd de0dddWZ(G dd de0dddWZ)G dd de0dddWZ*G d d de0dddWZ+G dd de0dddWZ,G dd	 d	e0d
ddWZ-G dd de0dddWZ.G dd de0dddWZ/G dd de0dddWZ0G dd de0dddWZ1G dd de3dddWZ2G d d! d!e3d"d#dWZ3G d$d% d%e3d&d'dWZ4G d(d) d)e3d*d+dWZ5G d,d- d-e3d.d/dWZ6G d0d1 d1e2d2d3dWZ7G d4d5 d5e2d6d7dWZ8G d8d9 d9e2d:d;dWZ9e,e:efZ;dS (=  a]  
psycopg exceptions

DBAPI-defined Exceptions are defined in the following hierarchy::

    Exceptions
    |__Warning
    |__Error
       |__InterfaceError
       |__DatabaseError
          |__DataError
          |__OperationalError
          |__IntegrityError
          |__InternalError
          |__ProgrammingError
          |__NotSupportedError
    )	dataclassfieldfields)	AnyCallableDictListNoReturnOptionalSequenceTupleType)UnionTYPE_CHECKING)	TypeAlias)CancelledError   )PGconnPGresult)
ConnStatusDiagnosticFieldPipelineStatusTransactionStatus)	TypeGuard)PGnotifyConninfoOptionN	ErrorInfozType[Error]	_sqlcodesc                   @   s  e Zd ZU dZeedZed ed< dZ	e
ed< dZe
ed< dZe
ed< dZe
ed	< dZe
ed
< dZe
ed< dZe
ed< dZe
ed< ejjZeed< ejjZeed< ejjZeed< dZe
ed< dZeed< dZeed< dZ e!ed< dZ"e!ed< dZ#e!ed< dZ$eed< dZ%e&e'dgdf  ed< dZ(e&e'dgdf  ed< e)de*fd d!Z+e,d"e-de*fd#d$Z.e,d"e-de*fd%d&Z/de*fd'd(Z0dud)d*Z1de*fd+d,Z2de*fd-d.Z3de*fd/d0Z4e,d"e-de*fd1d2Z5d"e-de*fd3d4Z6e7de*fd5d6Z8d"e-de*fd7d8Z9d"e-ddfd9d:Z:d"e-de*fd;d<Z;d"e-de*fd=d>Z<d"e-de*fd?d@Z=d"e-de*fdAdBZ>d"e-de*fdCdDZ?d"e-de*fdEdFZ@d"e-de*fdGdHZAd"e-de*fdIdJZBd"e-de*fdKdLZCd"e-de*fdMdNZDde*fdOdPZEde*fdQdRZFde*fdSdTZGde*fdUdVZHde*fdWdXZIde*fdYdZZJde*fd[d\ZKd"e-de*fd]d^ZLd"e-de*fd_d`ZMd"e-de*fdadbZNd"e-de*fdcddZOd"e-de*fdedfZPde*fdgdhZQd"e-de*fdidjZRd"e-de*fdkdlZSde*fdmdnZTde*fdodpZUde*fdqdrZVde*fdsdtZWdS )vFinishedPGconnzFinished libpq connection.

    Attributes are set from a real `~pscopg.pq.PGconn` but any operations will
    raise an `~psycopg.OperationalError`.
    )default_factoryr   info    dbuserpasswordhosthostaddrportttyoptionsstatustransaction_statuspipeline_statuserror_messager   server_versionbackend_pidFneeds_passwordused_password
ssl_in_usenonblockingNr   notice_handlerr   notify_handlerreturnc                   C   s   t d)Nzthe connection is closed)OperationalError r8   r8   G/home/ertert/spirit/venv/lib/python3.10/site-packages/psycopg/errors.py_raiseJ   s   zFinishedPGconn._raiseargsc                 G      t |  dNz is unusable	TypeErrorclsr;   r8   r8   r9   connectN      zFinishedPGconn.connectc                 G   r<   r=   r>   r@   r8   r8   r9   connect_startR   rC   zFinishedPGconn.connect_startc                 C      |    d S Nr:   selfr8   r8   r9   connect_pollV      zFinishedPGconn.connect_pollc                 C   s   d S rF   r8   rH   r8   r8   r9   finishY   s   zFinishedPGconn.finishc                 C   rE   rF   rG   rH   r8   r8   r9   reset\   rK   zFinishedPGconn.resetc                 C   rE   rF   rG   rH   r8   r8   r9   reset_start_   rK   zFinishedPGconn.reset_startc                 C   rE   rF   rG   rH   r8   r8   r9   
reset_pollb   rK   zFinishedPGconn.reset_pollc                 G   r<   r=   r>   r@   r8   r8   r9   pinge   rC   zFinishedPGconn.pingc                 G   rE   rF   rG   rI   r;   r8   r8   r9   parameter_statusi   rK   zFinishedPGconn.parameter_statusc                 C   rE   rF   rG   rH   r8   r8   r9   socketl      zFinishedPGconn.socketc                 G   rE   rF   rG   rQ   r8   r8   r9   exec_p   rK   zFinishedPGconn.exec_c                 G   rE   rF   rG   rQ   r8   r8   r9   
send_querys   rK   zFinishedPGconn.send_queryc                 G   rE   rF   rG   rQ   r8   r8   r9   exec_paramsv   rK   zFinishedPGconn.exec_paramsc                 G   rE   rF   rG   rQ   r8   r8   r9   send_query_paramsy   rK   z FinishedPGconn.send_query_paramsc                 G   rE   rF   rG   rQ   r8   r8   r9   send_prepare|   rK   zFinishedPGconn.send_preparec                 G   rE   rF   rG   rQ   r8   r8   r9   send_query_prepared   rK   z"FinishedPGconn.send_query_preparedc                 G   rE   rF   rG   rQ   r8   r8   r9   prepare   rK   zFinishedPGconn.preparec                 G   rE   rF   rG   rQ   r8   r8   r9   exec_prepared   rK   zFinishedPGconn.exec_preparedc                 G   rE   rF   rG   rQ   r8   r8   r9   describe_prepared   rK   z FinishedPGconn.describe_preparedc                 G   rE   rF   rG   rQ   r8   r8   r9   send_describe_prepared   rK   z%FinishedPGconn.send_describe_preparedc                 G   rE   rF   rG   rQ   r8   r8   r9   describe_portal   rK   zFinishedPGconn.describe_portalc                 G   rE   rF   rG   rQ   r8   r8   r9   send_describe_portal   rK   z#FinishedPGconn.send_describe_portalc                 C   rE   rF   rG   rH   r8   r8   r9   
get_result   rK   zFinishedPGconn.get_resultc                 C   rE   rF   rG   rH   r8   r8   r9   consume_input   rK   zFinishedPGconn.consume_inputc                 C   rE   rF   rG   rH   r8   r8   r9   is_busy   rK   zFinishedPGconn.is_busyc                 C   rE   rF   rG   rH   r8   r8   r9   flush   rK   zFinishedPGconn.flushc                 C   rE   rF   rG   rH   r8   r8   r9   set_single_row_mode   rK   z"FinishedPGconn.set_single_row_modec                 C   rE   rF   rG   rH   r8   r8   r9   
get_cancel   rK   zFinishedPGconn.get_cancelc                 C   rE   rF   rG   rH   r8   r8   r9   notifies   rK   zFinishedPGconn.notifiesc                 G   rE   rF   rG   rQ   r8   r8   r9   put_copy_data   rK   zFinishedPGconn.put_copy_datac                 G   rE   rF   rG   rQ   r8   r8   r9   put_copy_end   rK   zFinishedPGconn.put_copy_endc                 G   rE   rF   rG   rQ   r8   r8   r9   get_copy_data   rK   zFinishedPGconn.get_copy_datac                 G   rE   rF   rG   rQ   r8   r8   r9   trace   rK   zFinishedPGconn.tracec                 G   rE   rF   rG   rQ   r8   r8   r9   set_trace_flags   rK   zFinishedPGconn.set_trace_flagsc                 C   rE   rF   rG   rH   r8   r8   r9   untrace   rK   zFinishedPGconn.untracec                 G   rE   rF   rG   rQ   r8   r8   r9   encrypt_password   rK   zFinishedPGconn.encrypt_passwordc                 G   rE   rF   rG   rQ   r8   r8   r9   make_empty_result   rK   z FinishedPGconn.make_empty_resultc                 C   rE   rF   rG   rH   r8   r8   r9   enter_pipeline_mode   rK   z"FinishedPGconn.enter_pipeline_modec                 C   rE   rF   rG   rH   r8   r8   r9   exit_pipeline_mode   rK   z!FinishedPGconn.exit_pipeline_modec                 C   rE   rF   rG   rH   r8   r8   r9   pipeline_sync   rK   zFinishedPGconn.pipeline_syncc                 C   rE   rF   rG   rH   r8   r8   r9   send_flush_request   rK   z!FinishedPGconn.send_flush_request)r6   N)X__name__
__module____qualname____doc__r   listr    r   __annotations__r"   bytesr#   r$   r%   r&   r'   r(   r)   r   BADvaluer*   intr   UNKNOWNr+   r   OFFr,   r-   r.   r/   r0   boolr1   r2   r3   r4   r
   r   r5   staticmethodr	   r:   classmethodr   rB   rD   rJ   rL   rM   rN   rO   rP   rR   propertyrS   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rs   r8   r8   r8   r9   r   '   s   
 
r   pgconnr6   c              	   C   sP   i }t tD ]}zt| |j||j< W q ty   Y qw |   tdi |S )Nr8   )r   r   getattrname	ExceptionrL   )r   r;   fr8   r8   r9   finish_pgconn   s   r   c                   @      e Zd ZdZdZdS )Warningzy
    Exception raised for important warnings.

    Defined for DBAPI compatibility, but never raised by ``psycopg``.
    psycopgNrt   ru   rv   rw   r8   r8   r8   r9   r          r   c                
       s   e Zd ZU dZdZdZee ed< dddddee	 de
d	ed
ee f fddZedee fddZedee fddZedddZdeeee	df f f fddZ  ZS )Errora  
    Base exception for all the errors psycopg will raise.

    Exception that is the base class of all other error exceptions. You can
    use this to catch all errors with one single `!except` statement.

    This exception is guaranteed to be picklable.
    r   Nsqlstateutf-8)r    encodingr   r;   r    r   r   c                   s>   t  j|  || _|| _|| _| js|r| jj| _d S d S d S rF   )super__init___info	_encoding_pgconnr   diag)rI   r    r   r   r;   	__class__r8   r9   r      s   
zError.__init__r6   c                 C   s   | j r| j S dS )zThe connection object, if the error was raised from a connection attempt.

        :rtype: Optional[psycopg.pq.PGconn]
        N)r   rH   r8   r8   r9   r     s   zError.pgconnc                 C   s   t | jr| jS dS )z|The result object, if the exception was raised after a failed query.

        :rtype: Optional[psycopg.pq.PGresult]
        N)_is_pgresultr   rH   r8   r8   r9   pgresult	  s   zError.pgresult
Diagnosticc                 C   s   t | j| jdS )z[
        A `Diagnostic` object to inspect details of the errors from the database.
        r   )r   r   r   rH   r8   r8   r9   r     s   z
Error.diag.c                    sB   t   }t|trt|dkrt| j|d d< d |d d< |S )N      r   r   r   
__reduce__
isinstancetuplelen_info_to_dictr   rI   resr   r8   r9   r     s
   
zError.__reduce__)r6   r   )rt   ru   rv   rw   r   r
   strry   r   r   r   r   r   r   r   r   r   r   r   r   r   __classcell__r8   r8   r   r9   r      s.   
 	*r   c                   @   r   )InterfaceErrorzU
    An error related to the database interface rather than the database itself.
    r   Nr   r8   r8   r8   r9   r   "      r   c                   @   s0   e Zd ZdZdZddee dee fddZdS )	DatabaseErrorzG
    Exception raised for errors that are related to the database.
    r   Ncoder   c                 C   s&   |r	| t |< || _|r| t |< d S d S rF   )r   r   )rA   r   r   r8   r8   r9   __init_subclass__1  s   zDatabaseError.__init_subclass__)NN)rt   ru   rv   rw   r
   r   r   r8   r8   r8   r9   r   *  s     r   c                   @   r   )	DataErrorz
    An error caused by problems with the processed data.

    Examples may be division by zero, numeric value out of range, etc.
    r   Nr   r8   r8   r8   r9   r   9  r   r   c                   @   r   )r7   a8  
    An error related to the database's operation.

    These errors are not necessarily under the control of the programmer, e.g.
    an unexpected disconnect occurs, the data source name is not found, a
    transaction could not be processed, a memory allocation error occurred
    during processing, etc.
    r   Nr   r8   r8   r8   r9   r7   C  s    	r7   c                   @   r   )IntegrityErrorz
    An error caused when the relational integrity of the database is affected.

    An example may be a foreign key check failed.
    r   Nr   r8   r8   r8   r9   r   P  r   r   c                   @   r   )InternalErrorz
    An error generated when the database encounters an internal error,

    Examples could be the cursor is not valid anymore, the transaction is out
    of sync, etc.
    r   Nr   r8   r8   r8   r9   r   Z      r   c                   @   r   )ProgrammingErrorz
    Exception raised for programming errors

    Examples may be table not found or already exists, syntax error in the SQL
    statement, wrong number of parameters specified, etc.
    r   Nr   r8   r8   r8   r9   r   e  r   r   c                   @   r   )NotSupportedErrorzS
    A method or database API was used which is not supported by the database.
    r   Nr   r8   r8   r8   r9   r   p  r   r   c                   @      e Zd ZdZdS )ConnectionTimeoutz
    Exception raised on timeout of the `~psycopg.Connection.connect()` method.

    The error is raised if the ``connect_timeout`` is specified and a
    connection is not obtained in useful time.

    Subclass of `~psycopg.OperationalError`.
    Nr   r8   r8   r8   r9   r   x      r   c                   @   r   )PipelineAbortedz
    Raised when a operation fails because the current pipeline is in aborted state.

    Subclass of `~psycopg.OperationalError`.
    Nr   r8   r8   r8   r9   r     r   r   c                       s  e Zd ZdZd2dedefddZedee fdd	Z	edee fd
dZ
edee fddZedee fddZedee fddZedee fddZedee fddZedee fddZedee fddZedee fddZedee fddZedee fddZedee fd d!Zedee fd"d#Zedee fd$d%Zedee fd&d'Zedee fd(d)Zedee fd*d+Zd,edee fd-d.Zdeeeed/f f f fd0d1Z   Z!S )3r   z%Details from a database error report.r   r    r   c                 C   s   || _ || _d S rF   )r   r   )rI   r    r   r8   r8   r9   r     s   
zDiagnostic.__init__r6   c                 C      |  tjS rF   )_error_messager   SEVERITYrH   r8   r8   r9   severity  rT   zDiagnostic.severityc                 C   r   rF   )r   r   SEVERITY_NONLOCALIZEDrH   r8   r8   r9   severity_nonlocalized  rT   z Diagnostic.severity_nonlocalizedc                 C   r   rF   )r   r   SQLSTATErH   r8   r8   r9   r     rT   zDiagnostic.sqlstatec                 C   r   rF   )r   r   MESSAGE_PRIMARYrH   r8   r8   r9   message_primary  rT   zDiagnostic.message_primaryc                 C   r   rF   )r   r   MESSAGE_DETAILrH   r8   r8   r9   message_detail  rT   zDiagnostic.message_detailc                 C   r   rF   )r   r   MESSAGE_HINTrH   r8   r8   r9   message_hint  rT   zDiagnostic.message_hintc                 C   r   rF   )r   r   STATEMENT_POSITIONrH   r8   r8   r9   statement_position  rT   zDiagnostic.statement_positionc                 C   r   rF   )r   r   INTERNAL_POSITIONrH   r8   r8   r9   internal_position  rT   zDiagnostic.internal_positionc                 C   r   rF   )r   r   INTERNAL_QUERYrH   r8   r8   r9   internal_query  rT   zDiagnostic.internal_queryc                 C   r   rF   )r   r   CONTEXTrH   r8   r8   r9   context  rT   zDiagnostic.contextc                 C   r   rF   )r   r   SCHEMA_NAMErH   r8   r8   r9   schema_name  rT   zDiagnostic.schema_namec                 C   r   rF   )r   r   
TABLE_NAMErH   r8   r8   r9   
table_name  rT   zDiagnostic.table_namec                 C   r   rF   )r   r   COLUMN_NAMErH   r8   r8   r9   column_name  rT   zDiagnostic.column_namec                 C   r   rF   )r   r   DATATYPE_NAMErH   r8   r8   r9   datatype_name  rT   zDiagnostic.datatype_namec                 C   r   rF   )r   r   CONSTRAINT_NAMErH   r8   r8   r9   constraint_name  rT   zDiagnostic.constraint_namec                 C   r   rF   )r   r   SOURCE_FILErH   r8   r8   r9   source_file  rT   zDiagnostic.source_filec                 C   r   rF   )r   r   SOURCE_LINErH   r8   r8   r9   source_line  rT   zDiagnostic.source_linec                 C   r   rF   )r   r   SOURCE_FUNCTIONrH   r8   r8   r9   source_function  rT   zDiagnostic.source_functionr   c                 C   sF   | j r!t| j tr| j |}n| j |}|d ur!|| jdS d S )Nreplace)r   r   dictgeterror_fielddecoder   )rI   r   valr8   r8   r9   r     s   zDiagnostic._error_message.c                    s6   t   }t|trt|dkrt| j|d d< |S )Nr   r   r   r   r   r   r8   r9   r     s   
zDiagnostic.__reduce__r   )"rt   ru   rv   rw   r   r   r   r   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r8   r8   r   r9   r     sR    *r   r    c                    s   t  r fddtD S  S )zH
    Convert a PGresult to a dictionary to make the info picklable.
    c                    s   i | ]}|  |qS r8   )r   ).0vr    r8   r9   
<dictcomp>  s    z!_info_to_dict.<locals>.<dictcomp>)r   r   r   r8   r   r9   r     s   r   r   c                 C   s   t |   S )zLookup an error code or `constant name`__ and return its exception class.

    Raise `!KeyError` if the code is not found.

    .. __: https://www.postgresql.org/docs/current/errcodes-appendix.html
            #ERRCODES-TABLE
    )r   upperr   r8   r8   r9   lookup  s   r   r   resultr   c                 C   sB   ddl m} | tjpd}t|d}||j| |d| |dS )Nr   )pqr!   asciir   )r    r   )r   r   r   r   r   _class_for_stater   r-   )r   r   r   staterA   r8   r8   r9   error_from_result  s   r   c                 C   s
   t | dS )z3Return True if an ErrorInfo is a PGresult instance.r   )hasattrr   r8   r8   r9   r     s   
r   c                 C   s&   zt | W S  ty   t|  Y S w rF   )r   KeyErrorget_base_exceptionr   r8   r8   r9   r     s
   
r   c                 C   s(   t | d d pt | d d ptS )Nr   r   )_base_exc_mapr   r   r   r8   r8   r9   r     s
   r   080A2021222324252627282B2D2F343839)3B3D3F4042445354555758FHPXc                   @      e Zd ZdS )NoDataNrt   ru   rv   r8   r8   r8   r9   r  Q      r  02000NO_DATA)r   r   c                   @   r  )%NoAdditionalDynamicResultSetsReturnedNr  r8   r8   r8   r9   r  U  r  r  02001*NO_ADDITIONAL_DYNAMIC_RESULT_SETS_RETURNEDc                   @   r  )SqlStatementNotYetCompleteNr  r8   r8   r8   r9   r   \  r  r   03000SQL_STATEMENT_NOT_YET_COMPLETEc                   @   r  )ConnectionExceptionNr  r8   r8   r8   r9   r#  c  r  r#  08000CONNECTION_EXCEPTIONc                   @   r  )'SqlclientUnableToEstablishSqlconnectionNr  r8   r8   r8   r9   r&  g  r  r&  08001+SQLCLIENT_UNABLE_TO_ESTABLISH_SQLCONNECTIONc                   @   r  )ConnectionDoesNotExistNr  r8   r8   r8   r9   r)  k  r  r)  08003CONNECTION_DOES_NOT_EXISTc                   @   r  )-SqlserverRejectedEstablishmentOfSqlconnectionNr  r8   r8   r8   r9   r,  o  r  r,  080041SQLSERVER_REJECTED_ESTABLISHMENT_OF_SQLCONNECTIONc                   @   r  )ConnectionFailureNr  r8   r8   r8   r9   r/  s  r  r/  08006CONNECTION_FAILUREc                   @   r  )TransactionResolutionUnknownNr  r8   r8   r8   r9   r2  w  r  r2  08007TRANSACTION_RESOLUTION_UNKNOWNc                   @   r  )ProtocolViolationNr  r8   r8   r8   r9   r5  {  r  r5  08P01PROTOCOL_VIOLATIONc                   @   r  )TriggeredActionExceptionNr  r8   r8   r8   r9   r8    r  r8  09000TRIGGERED_ACTION_EXCEPTIONc                   @   r  )FeatureNotSupportedNr  r8   r8   r8   r9   r;    r  r;  0A000FEATURE_NOT_SUPPORTEDc                   @   r  )InvalidTransactionInitiationNr  r8   r8   r8   r9   r>    r  r>  0B000INVALID_TRANSACTION_INITIATIONc                   @   r  )LocatorExceptionNr  r8   r8   r8   r9   rA    r  rA  0F000LOCATOR_EXCEPTIONc                   @   r  )InvalidLocatorSpecificationNr  r8   r8   r8   r9   rD    r  rD  0F001INVALID_LOCATOR_SPECIFICATIONc                   @   r  )InvalidGrantorNr  r8   r8   r8   r9   rG    r  rG  0L000INVALID_GRANTORc                   @   r  )InvalidGrantOperationNr  r8   r8   r8   r9   rJ    r  rJ  0LP01INVALID_GRANT_OPERATIONc                   @   r  )InvalidRoleSpecificationNr  r8   r8   r8   r9   rM    r  rM  0P000INVALID_ROLE_SPECIFICATIONc                   @   r  )DiagnosticsExceptionNr  r8   r8   r8   r9   rP    r  rP  0Z000DIAGNOSTICS_EXCEPTIONc                   @   r  ).StackedDiagnosticsAccessedWithoutActiveHandlerNr  r8   r8   r8   r9   rS    r  rS  0Z0023STACKED_DIAGNOSTICS_ACCESSED_WITHOUT_ACTIVE_HANDLERc                   @   r  )CaseNotFoundNr  r8   r8   r8   r9   rV    r  rV  20000CASE_NOT_FOUNDc                   @   r  )CardinalityViolationNr  r8   r8   r8   r9   rY    r  rY  21000CARDINALITY_VIOLATIONc                   @   r  )DataExceptionNr  r8   r8   r8   r9   r\    r  r\  22000DATA_EXCEPTIONc                   @   r  )StringDataRightTruncationNr  r8   r8   r8   r9   r_    r  r_  22001STRING_DATA_RIGHT_TRUNCATIONc                   @   r  )NullValueNoIndicatorParameterNr  r8   r8   r8   r9   rb    r  rb  22002!NULL_VALUE_NO_INDICATOR_PARAMETERc                   @   r  )NumericValueOutOfRangeNr  r8   r8   r8   r9   re    r  re  22003NUMERIC_VALUE_OUT_OF_RANGEc                   @   r  )NullValueNotAllowedNr  r8   r8   r8   r9   rh    r  rh  22004NULL_VALUE_NOT_ALLOWEDc                   @   r  )ErrorInAssignmentNr  r8   r8   r8   r9   rk    r  rk  22005ERROR_IN_ASSIGNMENTc                   @   r  )InvalidDatetimeFormatNr  r8   r8   r8   r9   rn    r  rn  22007INVALID_DATETIME_FORMATc                   @   r  )DatetimeFieldOverflowNr  r8   r8   r8   r9   rq    r  rq  22008DATETIME_FIELD_OVERFLOWc                   @   r  ) InvalidTimeZoneDisplacementValueNr  r8   r8   r8   r9   rt    r  rt  22009$INVALID_TIME_ZONE_DISPLACEMENT_VALUEc                   @   r  )EscapeCharacterConflictNr  r8   r8   r8   r9   rw    r  rw  2200BESCAPE_CHARACTER_CONFLICTc                   @   r  )InvalidUseOfEscapeCharacterNr  r8   r8   r8   r9   rz    r  rz  2200CINVALID_USE_OF_ESCAPE_CHARACTERc                   @   r  )InvalidEscapeOctetNr  r8   r8   r8   r9   r}    r  r}  2200DINVALID_ESCAPE_OCTETc                   @   r  )ZeroLengthCharacterStringNr  r8   r8   r8   r9   r    r  r  2200FZERO_LENGTH_CHARACTER_STRINGc                   @   r  )MostSpecificTypeMismatchNr  r8   r8   r8   r9   r    r  r  2200GMOST_SPECIFIC_TYPE_MISMATCHc                   @   r  )SequenceGeneratorLimitExceededNr  r8   r8   r8   r9   r    r  r  2200H!SEQUENCE_GENERATOR_LIMIT_EXCEEDEDc                   @   r  )NotAnXmlDocumentNr  r8   r8   r8   r9   r  	  r  r  2200LNOT_AN_XML_DOCUMENTc                   @   r  )InvalidXmlDocumentNr  r8   r8   r8   r9   r    r  r  2200MINVALID_XML_DOCUMENTc                   @   r  )InvalidXmlContentNr  r8   r8   r8   r9   r    r  r  2200NINVALID_XML_CONTENTc                   @   r  )InvalidXmlCommentNr  r8   r8   r8   r9   r    r  r  2200SINVALID_XML_COMMENTc                   @   r  )InvalidXmlProcessingInstructionNr  r8   r8   r8   r9   r    r  r  2200T"INVALID_XML_PROCESSING_INSTRUCTIONc                   @   r  )InvalidIndicatorParameterValueNr  r8   r8   r8   r9   r    r  r  22010!INVALID_INDICATOR_PARAMETER_VALUEc                   @   r  )SubstringErrorNr  r8   r8   r8   r9   r  !  r  r  22011SUBSTRING_ERRORc                   @   r  )DivisionByZeroNr  r8   r8   r8   r9   r  %  r  r  22012DIVISION_BY_ZEROc                   @   r  )InvalidPrecedingOrFollowingSizeNr  r8   r8   r8   r9   r  )  r  r  22013#INVALID_PRECEDING_OR_FOLLOWING_SIZEc                   @   r  )InvalidArgumentForNtileFunctionNr  r8   r8   r8   r9   r  -  r  r  22014#INVALID_ARGUMENT_FOR_NTILE_FUNCTIONc                   @   r  )IntervalFieldOverflowNr  r8   r8   r8   r9   r  1  r  r  22015INTERVAL_FIELD_OVERFLOWc                   @   r  )"InvalidArgumentForNthValueFunctionNr  r8   r8   r8   r9   r  5  r  r  22016'INVALID_ARGUMENT_FOR_NTH_VALUE_FUNCTIONc                   @   r  )InvalidCharacterValueForCastNr  r8   r8   r8   r9   r  9  r  r  22018 INVALID_CHARACTER_VALUE_FOR_CASTc                   @   r  )InvalidEscapeCharacterNr  r8   r8   r8   r9   r  =  r  r  22019INVALID_ESCAPE_CHARACTERc                   @   r  )InvalidRegularExpressionNr  r8   r8   r8   r9   r  A  r  r  2201BINVALID_REGULAR_EXPRESSIONc                   @   r  )InvalidArgumentForLogarithmNr  r8   r8   r8   r9   r  E  r  r  2201EINVALID_ARGUMENT_FOR_LOGARITHMc                   @   r  )InvalidArgumentForPowerFunctionNr  r8   r8   r8   r9   r  I  r  r  2201F#INVALID_ARGUMENT_FOR_POWER_FUNCTIONc                   @   r  )%InvalidArgumentForWidthBucketFunctionNr  r8   r8   r8   r9   r  M  r  r  2201G*INVALID_ARGUMENT_FOR_WIDTH_BUCKET_FUNCTIONc                   @   r  )InvalidRowCountInLimitClauseNr  r8   r8   r8   r9   r  Q  r  r  2201W!INVALID_ROW_COUNT_IN_LIMIT_CLAUSEc                   @   r  )#InvalidRowCountInResultOffsetClauseNr  r8   r8   r8   r9   r  U  r  r  2201X)INVALID_ROW_COUNT_IN_RESULT_OFFSET_CLAUSEc                   @   r  )CharacterNotInRepertoireNr  r8   r8   r8   r9   r  Y  r  r  22021CHARACTER_NOT_IN_REPERTOIREc                   @   r  )IndicatorOverflowNr  r8   r8   r8   r9   r  ]  r  r  22022INDICATOR_OVERFLOWc                   @   r  )InvalidParameterValueNr  r8   r8   r8   r9   r  a  r  r  22023INVALID_PARAMETER_VALUEc                   @   r  )UnterminatedCStringNr  r8   r8   r8   r9   r  e  r  r  22024UNTERMINATED_C_STRINGc                   @   r  )InvalidEscapeSequenceNr  r8   r8   r8   r9   r  i  r  r  22025INVALID_ESCAPE_SEQUENCEc                   @   r  )StringDataLengthMismatchNr  r8   r8   r8   r9   r  m  r  r  22026STRING_DATA_LENGTH_MISMATCHc                   @   r  )	TrimErrorNr  r8   r8   r8   r9   r  q  r  r  22027
TRIM_ERRORc                   @   r  )ArraySubscriptErrorNr  r8   r8   r8   r9   r  u  r  r  2202EARRAY_SUBSCRIPT_ERRORc                   @   r  )InvalidTablesampleRepeatNr  r8   r8   r8   r9   r  y  r  r  2202GINVALID_TABLESAMPLE_REPEATc                   @   r  )InvalidTablesampleArgumentNr  r8   r8   r8   r9   r  }  r  r  2202HINVALID_TABLESAMPLE_ARGUMENTc                   @   r  )DuplicateJsonObjectKeyValueNr  r8   r8   r8   r9   r    r  r  22030DUPLICATE_JSON_OBJECT_KEY_VALUEc                   @   r  ))InvalidArgumentForSqlJsonDatetimeFunctionNr  r8   r8   r8   r9   r    r  r  22031/INVALID_ARGUMENT_FOR_SQL_JSON_DATETIME_FUNCTIONc                   @   r  )InvalidJsonTextNr  r8   r8   r8   r9   r    r  r  22032INVALID_JSON_TEXTc                   @   r  )InvalidSqlJsonSubscriptNr  r8   r8   r8   r9   r    r  r  22033INVALID_SQL_JSON_SUBSCRIPTc                   @   r  )MoreThanOneSqlJsonItemNr  r8   r8   r8   r9   r    r  r  22034MORE_THAN_ONE_SQL_JSON_ITEMc                   @   r  )NoSqlJsonItemNr  r8   r8   r8   r9   r    r  r  22035NO_SQL_JSON_ITEMc                   @   r  )NonNumericSqlJsonItemNr  r8   r8   r8   r9   r    r  r  22036NON_NUMERIC_SQL_JSON_ITEMc                   @   r  )NonUniqueKeysInAJsonObjectNr  r8   r8   r8   r9   r    r  r  22037 NON_UNIQUE_KEYS_IN_A_JSON_OBJECTc                   @   r  )SingletonSqlJsonItemRequiredNr  r8   r8   r8   r9   r    r  r  22038 SINGLETON_SQL_JSON_ITEM_REQUIREDc                   @   r  )SqlJsonArrayNotFoundNr  r8   r8   r8   r9   r    r  r  22039SQL_JSON_ARRAY_NOT_FOUNDc                   @   r  )SqlJsonMemberNotFoundNr  r8   r8   r8   r9   r    r  r  2203ASQL_JSON_MEMBER_NOT_FOUNDc                   @   r  )SqlJsonNumberNotFoundNr  r8   r8   r8   r9   r    r  r  2203BSQL_JSON_NUMBER_NOT_FOUNDc                   @   r  )SqlJsonObjectNotFoundNr  r8   r8   r8   r9   r    r  r  2203CSQL_JSON_OBJECT_NOT_FOUNDc                   @   r  )TooManyJsonArrayElementsNr  r8   r8   r8   r9   r
    r  r
  2203DTOO_MANY_JSON_ARRAY_ELEMENTSc                   @   r  )TooManyJsonObjectMembersNr  r8   r8   r8   r9   r    r  r  2203ETOO_MANY_JSON_OBJECT_MEMBERSc                   @   r  )SqlJsonScalarRequiredNr  r8   r8   r8   r9   r    r  r  2203FSQL_JSON_SCALAR_REQUIREDc                   @   r  )#SqlJsonItemCannotBeCastToTargetTypeNr  r8   r8   r8   r9   r    r  r  2203G+SQL_JSON_ITEM_CANNOT_BE_CAST_TO_TARGET_TYPEc                   @   r  )FloatingPointExceptionNr  r8   r8   r8   r9   r    r  r  22P01FLOATING_POINT_EXCEPTIONc                   @   r  )InvalidTextRepresentationNr  r8   r8   r8   r9   r    r  r  22P02INVALID_TEXT_REPRESENTATIONc                   @   r  )InvalidBinaryRepresentationNr  r8   r8   r8   r9   r    r  r  22P03INVALID_BINARY_REPRESENTATIONc                   @   r  )BadCopyFileFormatNr  r8   r8   r8   r9   r    r  r  22P04BAD_COPY_FILE_FORMATc                   @   r  )UntranslatableCharacterNr  r8   r8   r8   r9   r"    r  r"  22P05UNTRANSLATABLE_CHARACTERc                   @   r  )NonstandardUseOfEscapeCharacterNr  r8   r8   r8   r9   r%    r  r%  22P06#NONSTANDARD_USE_OF_ESCAPE_CHARACTERc                   @   r  )IntegrityConstraintViolationNr  r8   r8   r8   r9   r(    r  r(  23000INTEGRITY_CONSTRAINT_VIOLATIONc                   @   r  )RestrictViolationNr  r8   r8   r8   r9   r+    r  r+  23001RESTRICT_VIOLATIONc                   @   r  )NotNullViolationNr  r8   r8   r8   r9   r.    r  r.  23502NOT_NULL_VIOLATIONc                   @   r  )ForeignKeyViolationNr  r8   r8   r8   r9   r1    r  r1  23503FOREIGN_KEY_VIOLATIONc                   @   r  )UniqueViolationNr  r8   r8   r8   r9   r4    r  r4  23505UNIQUE_VIOLATIONc                   @   r  )CheckViolationNr  r8   r8   r8   r9   r7    r  r7  23514CHECK_VIOLATIONc                   @   r  )ExclusionViolationNr  r8   r8   r8   r9   r:    r  r:  23P01EXCLUSION_VIOLATIONc                   @   r  )InvalidCursorStateNr  r8   r8   r8   r9   r=    r  r=  24000INVALID_CURSOR_STATEc                   @   r  )InvalidTransactionStateNr  r8   r8   r8   r9   r@    r  r@  25000INVALID_TRANSACTION_STATEc                   @   r  )ActiveSqlTransactionNr  r8   r8   r8   r9   rC  
  r  rC  25001ACTIVE_SQL_TRANSACTIONc                   @   r  )BranchTransactionAlreadyActiveNr  r8   r8   r8   r9   rF    r  rF  25002!BRANCH_TRANSACTION_ALREADY_ACTIVEc                   @   r  )+InappropriateAccessModeForBranchTransactionNr  r8   r8   r8   r9   rI    r  rI  250030INAPPROPRIATE_ACCESS_MODE_FOR_BRANCH_TRANSACTIONc                   @   r  )/InappropriateIsolationLevelForBranchTransactionNr  r8   r8   r8   r9   rL    r  rL  250044INAPPROPRIATE_ISOLATION_LEVEL_FOR_BRANCH_TRANSACTIONc                   @   r  )*NoActiveSqlTransactionForBranchTransactionNr  r8   r8   r8   r9   rO    r  rO  250050NO_ACTIVE_SQL_TRANSACTION_FOR_BRANCH_TRANSACTIONc                   @   r  )ReadOnlySqlTransactionNr  r8   r8   r8   r9   rR    r  rR  25006READ_ONLY_SQL_TRANSACTIONc                   @   r  )(SchemaAndDataStatementMixingNotSupportedNr  r8   r8   r8   r9   rU  "  r  rU  25007.SCHEMA_AND_DATA_STATEMENT_MIXING_NOT_SUPPORTEDc                   @   r  )$HeldCursorRequiresSameIsolationLevelNr  r8   r8   r8   r9   rX  &  r  rX  25008)HELD_CURSOR_REQUIRES_SAME_ISOLATION_LEVELc                   @   r  )NoActiveSqlTransactionNr  r8   r8   r8   r9   r[  *  r  r[  25P01NO_ACTIVE_SQL_TRANSACTIONc                   @   r  )InFailedSqlTransactionNr  r8   r8   r8   r9   r^  .  r  r^  25P02IN_FAILED_SQL_TRANSACTIONc                   @   r  )IdleInTransactionSessionTimeoutNr  r8   r8   r8   r9   ra  2  r  ra  25P03#IDLE_IN_TRANSACTION_SESSION_TIMEOUTc                   @   r  )InvalidSqlStatementNameNr  r8   r8   r8   r9   rd  9  r  rd  26000INVALID_SQL_STATEMENT_NAMEc                   @   r  )TriggeredDataChangeViolationNr  r8   r8   r8   r9   rg  @  r  rg  27000TRIGGERED_DATA_CHANGE_VIOLATIONc                   @   r  )!InvalidAuthorizationSpecificationNr  r8   r8   r8   r9   rj  G  r  rj  28000#INVALID_AUTHORIZATION_SPECIFICATIONc                   @   r  )InvalidPasswordNr  r8   r8   r8   r9   rm  K  r  rm  28P01INVALID_PASSWORDc                   @   r  )'DependentPrivilegeDescriptorsStillExistNr  r8   r8   r8   r9   rp  R  r  rp  2B000+DEPENDENT_PRIVILEGE_DESCRIPTORS_STILL_EXISTc                   @   r  )DependentObjectsStillExistNr  r8   r8   r8   r9   rs  V  r  rs  2BP01DEPENDENT_OBJECTS_STILL_EXISTc                   @   r  )InvalidTransactionTerminationNr  r8   r8   r8   r9   rv  ]  r  rv  2D000INVALID_TRANSACTION_TERMINATIONc                   @   r  )SqlRoutineExceptionNr  r8   r8   r8   r9   ry  d  r  ry  2F000SQL_ROUTINE_EXCEPTIONc                   @   r  )ModifyingSqlDataNotPermittedNr  r8   r8   r8   r9   r|  h  r  r|  2F002 MODIFYING_SQL_DATA_NOT_PERMITTEDc                   @   r  )ProhibitedSqlStatementAttemptedNr  r8   r8   r8   r9   r  l  r  r  2F003"PROHIBITED_SQL_STATEMENT_ATTEMPTEDc                   @   r  )ReadingSqlDataNotPermittedNr  r8   r8   r8   r9   r  p  r  r  2F004READING_SQL_DATA_NOT_PERMITTEDc                   @   r  )!FunctionExecutedNoReturnStatementNr  r8   r8   r8   r9   r  t  r  r  2F005%FUNCTION_EXECUTED_NO_RETURN_STATEMENTc                   @   r  )InvalidCursorNameNr  r8   r8   r8   r9   r  {  r  r  34000INVALID_CURSOR_NAMEc                   @   r  )ExternalRoutineExceptionNr  r8   r8   r8   r9   r    r  r  38000EXTERNAL_ROUTINE_EXCEPTIONc                   @   r  )ContainingSqlNotPermittedNr  r8   r8   r8   r9   r    r  r  38001CONTAINING_SQL_NOT_PERMITTEDc                   @   r  )ModifyingSqlDataNotPermittedExtNr  r8   r8   r8   r9   r    r  r  38002c                   @   r  )"ProhibitedSqlStatementAttemptedExtNr  r8   r8   r8   r9   r    r  r  38003c                   @   r  )ReadingSqlDataNotPermittedExtNr  r8   r8   r8   r9   r    r  r  38004c                   @   r  )"ExternalRoutineInvocationExceptionNr  r8   r8   r8   r9   r    r  r  39000%EXTERNAL_ROUTINE_INVOCATION_EXCEPTIONc                   @   r  )InvalidSqlstateReturnedNr  r8   r8   r8   r9   r    r  r  39001INVALID_SQLSTATE_RETURNEDc                   @   r  )NullValueNotAllowedExtNr  r8   r8   r8   r9   r    r  r  39004c                   @   r  )TriggerProtocolViolatedNr  r8   r8   r8   r9   r    r  r  39P01TRIGGER_PROTOCOL_VIOLATEDc                   @   r  )SrfProtocolViolatedNr  r8   r8   r8   r9   r    r  r  39P02SRF_PROTOCOL_VIOLATEDc                   @   r  )EventTriggerProtocolViolatedNr  r8   r8   r8   r9   r    r  r  39P03EVENT_TRIGGER_PROTOCOL_VIOLATEDc                   @   r  )SavepointExceptionNr  r8   r8   r8   r9   r    r  r  3B000SAVEPOINT_EXCEPTIONc                   @   r  )InvalidSavepointSpecificationNr  r8   r8   r8   r9   r    r  r  3B001INVALID_SAVEPOINT_SPECIFICATIONc                   @   r  )InvalidCatalogNameNr  r8   r8   r8   r9   r    r  r  3D000INVALID_CATALOG_NAMEc                   @   r  )InvalidSchemaNameNr  r8   r8   r8   r9   r    r  r  3F000INVALID_SCHEMA_NAMEc                   @   r  )TransactionRollbackNr  r8   r8   r8   r9   r    r  r  40000TRANSACTION_ROLLBACKc                   @   r  )SerializationFailureNr  r8   r8   r8   r9   r    r  r  40001SERIALIZATION_FAILUREc                   @   r  )'TransactionIntegrityConstraintViolationNr  r8   r8   r8   r9   r    r  r  40002*TRANSACTION_INTEGRITY_CONSTRAINT_VIOLATIONc                   @   r  )StatementCompletionUnknownNr  r8   r8   r8   r9   r    r  r  40003STATEMENT_COMPLETION_UNKNOWNc                   @   r  )DeadlockDetectedNr  r8   r8   r8   r9   r    r  r  40P01DEADLOCK_DETECTEDc                   @   r  ) SyntaxErrorOrAccessRuleViolationNr  r8   r8   r8   r9   r    r  r  42000%SYNTAX_ERROR_OR_ACCESS_RULE_VIOLATIONc                   @   r  )InsufficientPrivilegeNr  r8   r8   r8   r9   r    r  r  42501INSUFFICIENT_PRIVILEGEc                   @   r  )SyntaxErrorNr  r8   r8   r8   r9   r    r  r  42601SYNTAX_ERRORc                   @   r  )InvalidNameNr  r8   r8   r8   r9   r    r  r  42602INVALID_NAMEc                   @   r  )InvalidColumnDefinitionNr  r8   r8   r8   r9   r    r  r  42611INVALID_COLUMN_DEFINITIONc                   @   r  )NameTooLongNr  r8   r8   r8   r9   r    r  r  42622NAME_TOO_LONGc                   @   r  )DuplicateColumnNr  r8   r8   r8   r9   r    r  r  42701DUPLICATE_COLUMNc                   @   r  )AmbiguousColumnNr  r8   r8   r8   r9   r     r  r  42702AMBIGUOUS_COLUMNc                   @   r  )UndefinedColumnNr  r8   r8   r8   r9   r    r  r  42703UNDEFINED_COLUMNc                   @   r  )UndefinedObjectNr  r8   r8   r8   r9   r    r  r  42704UNDEFINED_OBJECTc                   @   r  )DuplicateObjectNr  r8   r8   r8   r9   r    r  r  42710DUPLICATE_OBJECTc                   @   r  )DuplicateAliasNr  r8   r8   r8   r9   r    r  r  42712DUPLICATE_ALIASc                   @   r  )DuplicateFunctionNr  r8   r8   r8   r9   r    r  r  42723DUPLICATE_FUNCTIONc                   @   r  )AmbiguousFunctionNr  r8   r8   r8   r9   r    r  r  42725AMBIGUOUS_FUNCTIONc                   @   r  )GroupingErrorNr  r8   r8   r8   r9   r    r  r  42803GROUPING_ERRORc                   @   r  )DatatypeMismatchNr  r8   r8   r8   r9   r     r  r  42804DATATYPE_MISMATCHc                   @   r  )WrongObjectTypeNr  r8   r8   r8   r9   r  $  r  r  42809WRONG_OBJECT_TYPEc                   @   r  )InvalidForeignKeyNr  r8   r8   r8   r9   r  (  r  r  42830INVALID_FOREIGN_KEYc                   @   r  )CannotCoerceNr  r8   r8   r8   r9   r  ,  r  r  42846CANNOT_COERCEc                   @   r  )UndefinedFunctionNr  r8   r8   r8   r9   r  0  r  r  42883UNDEFINED_FUNCTIONc                   @   r  )GeneratedAlwaysNr  r8   r8   r8   r9   r  4  r  r  428C9GENERATED_ALWAYSc                   @   r  )ReservedNameNr  r8   r8   r8   r9   r  8  r  r  42939RESERVED_NAMEc                   @   r  )UndefinedTableNr  r8   r8   r8   r9   r  <  r  r  42P01UNDEFINED_TABLEc                   @   r  )UndefinedParameterNr  r8   r8   r8   r9   r  @  r  r  42P02UNDEFINED_PARAMETERc                   @   r  )DuplicateCursorNr  r8   r8   r8   r9   r  D  r  r  42P03DUPLICATE_CURSORc                   @   r  )DuplicateDatabaseNr  r8   r8   r8   r9   r  H  r  r  42P04DUPLICATE_DATABASEc                   @   r  )DuplicatePreparedStatementNr  r8   r8   r8   r9   r  L  r  r  42P05DUPLICATE_PREPARED_STATEMENTc                   @   r  )DuplicateSchemaNr  r8   r8   r8   r9   r  P  r  r  42P06DUPLICATE_SCHEMAc                   @   r  )DuplicateTableNr  r8   r8   r8   r9   r  T  r  r  42P07DUPLICATE_TABLEc                   @   r  )AmbiguousParameterNr  r8   r8   r8   r9   r  X  r  r  42P08AMBIGUOUS_PARAMETERc                   @   r  )AmbiguousAliasNr  r8   r8   r8   r9   r  \  r  r  42P09AMBIGUOUS_ALIASc                   @   r  )InvalidColumnReferenceNr  r8   r8   r8   r9   r   `  r  r   42P10INVALID_COLUMN_REFERENCEc                   @   r  )InvalidCursorDefinitionNr  r8   r8   r8   r9   r#  d  r  r#  42P11INVALID_CURSOR_DEFINITIONc                   @   r  )InvalidDatabaseDefinitionNr  r8   r8   r8   r9   r&  h  r  r&  42P12INVALID_DATABASE_DEFINITIONc                   @   r  )InvalidFunctionDefinitionNr  r8   r8   r8   r9   r)  l  r  r)  42P13INVALID_FUNCTION_DEFINITIONc                   @   r  )"InvalidPreparedStatementDefinitionNr  r8   r8   r8   r9   r,  p  r  r,  42P14%INVALID_PREPARED_STATEMENT_DEFINITIONc                   @   r  )InvalidSchemaDefinitionNr  r8   r8   r8   r9   r/  t  r  r/  42P15INVALID_SCHEMA_DEFINITIONc                   @   r  )InvalidTableDefinitionNr  r8   r8   r8   r9   r2  x  r  r2  42P16INVALID_TABLE_DEFINITIONc                   @   r  )InvalidObjectDefinitionNr  r8   r8   r8   r9   r5  |  r  r5  42P17INVALID_OBJECT_DEFINITIONc                   @   r  )IndeterminateDatatypeNr  r8   r8   r8   r9   r8    r  r8  42P18INDETERMINATE_DATATYPEc                   @   r  )InvalidRecursionNr  r8   r8   r8   r9   r;    r  r;  42P19INVALID_RECURSIONc                   @   r  )WindowingErrorNr  r8   r8   r8   r9   r>    r  r>  42P20WINDOWING_ERRORc                   @   r  )CollationMismatchNr  r8   r8   r8   r9   rA    r  rA  42P21COLLATION_MISMATCHc                   @   r  )IndeterminateCollationNr  r8   r8   r8   r9   rD    r  rD  42P22INDETERMINATE_COLLATIONc                   @   r  )WithCheckOptionViolationNr  r8   r8   r8   r9   rG    r  rG  44000WITH_CHECK_OPTION_VIOLATIONc                   @   r  )InsufficientResourcesNr  r8   r8   r8   r9   rJ    r  rJ  53000INSUFFICIENT_RESOURCESc                   @   r  )DiskFullNr  r8   r8   r8   r9   rM    r  rM  53100	DISK_FULLc                   @   r  )OutOfMemoryNr  r8   r8   r8   r9   rP    r  rP  53200OUT_OF_MEMORYc                   @   r  )TooManyConnectionsNr  r8   r8   r8   r9   rS    r  rS  53300TOO_MANY_CONNECTIONSc                   @   r  )ConfigurationLimitExceededNr  r8   r8   r8   r9   rV    r  rV  53400CONFIGURATION_LIMIT_EXCEEDEDc                   @   r  )ProgramLimitExceededNr  r8   r8   r8   r9   rY    r  rY  54000PROGRAM_LIMIT_EXCEEDEDc                   @   r  )StatementTooComplexNr  r8   r8   r8   r9   r\    r  r\  54001STATEMENT_TOO_COMPLEXc                   @   r  )TooManyColumnsNr  r8   r8   r8   r9   r_    r  r_  54011TOO_MANY_COLUMNSc                   @   r  )TooManyArgumentsNr  r8   r8   r8   r9   rb    r  rb  54023TOO_MANY_ARGUMENTSc                   @   r  )ObjectNotInPrerequisiteStateNr  r8   r8   r8   r9   re    r  re  55000 OBJECT_NOT_IN_PREREQUISITE_STATEc                   @   r  )ObjectInUseNr  r8   r8   r8   r9   rh    r  rh  55006OBJECT_IN_USEc                   @   r  )CantChangeRuntimeParamNr  r8   r8   r8   r9   rk    r  rk  55P02CANT_CHANGE_RUNTIME_PARAMc                   @   r  )LockNotAvailableNr  r8   r8   r8   r9   rn    r  rn  55P03LOCK_NOT_AVAILABLEc                   @   r  )UnsafeNewEnumValueUsageNr  r8   r8   r8   r9   rq    r  rq  55P04UNSAFE_NEW_ENUM_VALUE_USAGEc                   @   r  )OperatorInterventionNr  r8   r8   r8   r9   rt    r  rt  57000OPERATOR_INTERVENTIONc                   @   r  )QueryCanceledNr  r8   r8   r8   r9   rw    r  rw  57014QUERY_CANCELEDc                   @   r  )AdminShutdownNr  r8   r8   r8   r9   rz    r  rz  57P01ADMIN_SHUTDOWNc                   @   r  )CrashShutdownNr  r8   r8   r8   r9   r}    r  r}  57P02CRASH_SHUTDOWNc                   @   r  )CannotConnectNowNr  r8   r8   r8   r9   r    r  r  57P03CANNOT_CONNECT_NOWc                   @   r  )DatabaseDroppedNr  r8   r8   r8   r9   r    r  r  57P04DATABASE_DROPPEDc                   @   r  )IdleSessionTimeoutNr  r8   r8   r8   r9   r    r  r  57P05IDLE_SESSION_TIMEOUTc                   @   r  )SystemErrorNr  r8   r8   r8   r9   r    r  r  58000SYSTEM_ERRORc                   @   r  )IoErrorNr  r8   r8   r8   r9   r    r  r  58030IO_ERRORc                   @   r  )UndefinedFileNr  r8   r8   r8   r9   r    r  r  58P01UNDEFINED_FILEc                   @   r  )DuplicateFileNr  r8   r8   r8   r9   r  
  r  r  58P02DUPLICATE_FILEc                   @   r  )SnapshotTooOldNr  r8   r8   r8   r9   r    r  r  72000SNAPSHOT_TOO_OLDc                   @   r  )ConfigFileErrorNr  r8   r8   r8   r9   r    r  r  F0000CONFIG_FILE_ERRORc                   @   r  )LockFileExistsNr  r8   r8   r8   r9   r    r  r  F0001LOCK_FILE_EXISTSc                   @   r  )FdwErrorNr  r8   r8   r8   r9   r  #  r  r  HV000	FDW_ERRORc                   @   r  )FdwOutOfMemoryNr  r8   r8   r8   r9   r  '  r  r  HV001FDW_OUT_OF_MEMORYc                   @   r  )FdwDynamicParameterValueNeededNr  r8   r8   r8   r9   r  +  r  r  HV002"FDW_DYNAMIC_PARAMETER_VALUE_NEEDEDc                   @   r  )FdwInvalidDataTypeNr  r8   r8   r8   r9   r  /  r  r  HV004FDW_INVALID_DATA_TYPEc                   @   r  )FdwColumnNameNotFoundNr  r8   r8   r8   r9   r  3  r  r  HV005FDW_COLUMN_NAME_NOT_FOUNDc                   @   r  )FdwInvalidDataTypeDescriptorsNr  r8   r8   r8   r9   r  7  r  r  HV006!FDW_INVALID_DATA_TYPE_DESCRIPTORSc                   @   r  )FdwInvalidColumnNameNr  r8   r8   r8   r9   r  ;  r  r  HV007FDW_INVALID_COLUMN_NAMEc                   @   r  )FdwInvalidColumnNumberNr  r8   r8   r8   r9   r  ?  r  r  HV008FDW_INVALID_COLUMN_NUMBERc                   @   r  )FdwInvalidUseOfNullPointerNr  r8   r8   r8   r9   r  C  r  r  HV009FDW_INVALID_USE_OF_NULL_POINTERc                   @   r  )FdwInvalidStringFormatNr  r8   r8   r8   r9   r  G  r  r  HV00AFDW_INVALID_STRING_FORMATc                   @   r  )FdwInvalidHandleNr  r8   r8   r8   r9   r  K  r  r  HV00BFDW_INVALID_HANDLEc                   @   r  )FdwInvalidOptionIndexNr  r8   r8   r8   r9   r  O  r  r  HV00CFDW_INVALID_OPTION_INDEXc                   @   r  )FdwInvalidOptionNameNr  r8   r8   r8   r9   r  S  r  r  HV00DFDW_INVALID_OPTION_NAMEc                   @   r  )FdwOptionNameNotFoundNr  r8   r8   r8   r9   r  W  r  r  HV00JFDW_OPTION_NAME_NOT_FOUNDc                   @   r  )FdwReplyHandleNr  r8   r8   r8   r9   r  [  r  r  HV00KFDW_REPLY_HANDLEc                   @   r  )FdwUnableToCreateExecutionNr  r8   r8   r8   r9   r  _  r  r  HV00LFDW_UNABLE_TO_CREATE_EXECUTIONc                   @   r  )FdwUnableToCreateReplyNr  r8   r8   r8   r9   r  c  r  r  HV00MFDW_UNABLE_TO_CREATE_REPLYc                   @   r  )FdwUnableToEstablishConnectionNr  r8   r8   r8   r9   r  g  r  r  HV00N"FDW_UNABLE_TO_ESTABLISH_CONNECTIONc                   @   r  )FdwNoSchemasNr  r8   r8   r8   r9   r  k  r  r  HV00PFDW_NO_SCHEMASc                   @   r  )FdwSchemaNotFoundNr  r8   r8   r8   r9   r  o  r  r  HV00QFDW_SCHEMA_NOT_FOUNDc                   @   r  )FdwTableNotFoundNr  r8   r8   r8   r9   r  s  r  r  HV00RFDW_TABLE_NOT_FOUNDc                   @   r  )FdwFunctionSequenceErrorNr  r8   r8   r8   r9   r  w  r  r  HV010FDW_FUNCTION_SEQUENCE_ERRORc                   @   r  )FdwTooManyHandlesNr  r8   r8   r8   r9   r  {  r  r  HV014FDW_TOO_MANY_HANDLESc                   @   r  )$FdwInconsistentDescriptorInformationNr  r8   r8   r8   r9   r    r  r  HV021'FDW_INCONSISTENT_DESCRIPTOR_INFORMATIONc                   @   r  )FdwInvalidAttributeValueNr  r8   r8   r8   r9   r    r  r  HV024FDW_INVALID_ATTRIBUTE_VALUEc                   @   r  )$FdwInvalidStringLengthOrBufferLengthNr  r8   r8   r8   r9   r    r  r  HV090*FDW_INVALID_STRING_LENGTH_OR_BUFFER_LENGTHc                   @   r  )#FdwInvalidDescriptorFieldIdentifierNr  r8   r8   r8   r9   r    r  r  HV091'FDW_INVALID_DESCRIPTOR_FIELD_IDENTIFIERc                   @   r  )PlpgsqlErrorNr  r8   r8   r8   r9   r    r  r  P0000PLPGSQL_ERRORc                   @   r  )RaiseExceptionNr  r8   r8   r8   r9   r    r  r  P0001RAISE_EXCEPTIONc                   @   r  )NoDataFoundNr  r8   r8   r8   r9   r    r  r  P0002NO_DATA_FOUNDc                   @   r  )TooManyRowsNr  r8   r8   r8   r9   r    r  r  P0003TOO_MANY_ROWSc                   @   r  )AssertFailureNr  r8   r8   r8   r9   r    r  r  P0004ASSERT_FAILUREc                   @   r  )InternalError_Nr  r8   r8   r8   r9   r    r  r  XX000INTERNAL_ERRORc                   @   r  )DataCorruptedNr  r8   r8   r8   r9   r    r  r  XX001DATA_CORRUPTEDc                   @   r  )IndexCorruptedNr  r8   r8   r8   r9   r    r  r  XX002INDEX_CORRUPTEDr   (<  rw   dataclassesr   r   r   typingr   r   r   r   r	   r
   r   r   r   r   r   typing_extensionsr   asyncior   pq.abcr   r   	pq._enumsr   r   r   r   _compatr   pq.miscr   r   r}   rz   r   ry   r   r   r   r   r   r   r   r   r   r   r7   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r   r#  r&  r)  r,  r/  r2  r5  r8  r;  r>  rA  rD  rG  rJ  rM  rP  rS  rV  rY  r\  r_  rb  re  rh  rk  rn  rq  rt  rw  rz  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r
  r  r  r  r  r  r  r  r"  r%  r(  r+  r.  r1  r4  r7  r:  r=  r@  rC  rF  rI  rL  rO  rR  rU  rX  r[  r^  ra  rd  rg  rj  rm  rp  rs  rv  ry  r|  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r#  r&  r)  r,  r/  r2  r5  r8  r;  r>  rA  rD  rG  rJ  rM  rP  rS  rV  rY  r\  r_  rb  re  rh  rk  rn  rq  rt  rw  rz  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  KeyboardInterrupt_NO_TRACEBACKr8   r8   r8   r9   <module>   s   ," '
?

c	
,