
    j                    @   U d Z ddlmZ ddlmZmZmZmZmZ ddl	m
Z
mZ ddlmZmZ ddlmZ er
dd	lmZmZmZ eeeef         Zd
ed<    G d de          Z G d de          Z G d de          Z G d de          Z G d de          Z G d de          ZdS )zP
Protocol objects to represent objects exposed by different pq implementations.
    )annotations)TYPE_CHECKINGAnyProtocol	TypeAliasUnion)CallableSequence   )FormatTrace   )Self)ConninfoOptionPGnotifyPGresAttDescr   Bufferc                     e Zd ZU ded<   ded<   edxd	            Zedxd
            ZdydZdzdZe	d{d            Z
dzdZdzdZdydZed|d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	d}d            Ze	dyd            Ze	dyd            Zd~d!Ze	d}d"            Zddd&Ze	dd'            Ze	dyd(            Ze	dyd)            Ze	dyd*            Ze	dyd+            Z e	dyd,            Z!e	dd.            Z"e	dd/            Z#e	dd0            Z$e	dd1            Z%dd4Z&dd5Z'd6d6e(j)        fdd=Z*d6d6e(j)        fdd>Z+	 ddd?Z,d6e(j)        fdd@Z-	 dddAZ.	 	 dddDZ/ddEZ0ddFZ1ddGZ2ddHZ3ddIZ4ddJZ5ddKZ6ddLZ7ddNZ8dzdOZ9dydPZ:e	dydQ            Z;e;j<        ddS            Z;dydTZ=dzdUZ>ddWZ?ddYZ@dd[ZAdd]ZBdd`ZCdddbZDddeZEddgZFddjZGdzdkZH	 dddoZIddpZJddrZKe	dyds            ZLdzdtZMdzduZNdzdvZOdzdwZPd6S )PGconnz!Callable[[PGresult], None] | Nonenotice_handlerz!Callable[[PGnotify], None] | Nonenotify_handlerconninfobytesreturnr   c                    d S N clsr   s     Y/DATA/AppData/hermes/projects/honcho/.venv/lib/python3.11/site-packages/psycopg/pq/abc.pyconnectzPGconn.connect   s    /2s    c                    d S r   r   r   s     r    connect_startzPGconn.connect_start   s    58Sr"   intc                    d S r   r   selfs    r    connect_pollzPGconn.connect_poll          r"   Nonec                    d S r   r   r'   s    r    finishzPGconn.finish"   r*   r"   list[ConninfoOption]c                    d S r   r   r'   s    r    infozPGconn.info$       ,/Cr"   c                    d S r   r   r'   s    r    resetzPGconn.reset'   r*   r"   c                    d S r   r   r'   s    r    reset_startzPGconn.reset_start)   r*   r"   c                    d S r   r   r'   s    r    
reset_pollzPGconn.reset_poll+   r*   r"   c                    d S r   r   )r(   r   s     r    pingzPGconn.ping-   r1   r"   c                    d S r   r   r'   s    r    dbz	PGconn.db0   s    3r"   c                    d S r   r   r'   s    r    userzPGconn.user3        Sr"   c                    d S r   r   r'   s    r    passwordzPGconn.password6       !$r"   c                    d S r   r   r'   s    r    hostzPGconn.host9   r>   r"   c                    d S r   r   r'   s    r    hostaddrzPGconn.hostaddr<   rA   r"   c                    d S r   r   r'   s    r    portzPGconn.port?   r>   r"   c                    d S r   r   r'   s    r    ttyz
PGconn.ttyB   s    Cr"   c                    d S r   r   r'   s    r    optionszPGconn.optionsE        #r"   c                    d S r   r   r'   s    r    statuszPGconn.statusH   r>   r"   c                    d S r   r   r'   s    r    transaction_statuszPGconn.transaction_statusK   s    ),r"   namebytes | Nonec                    d S r   r   r(   rQ   s     r    parameter_statuszPGconn.parameter_statusN   r*   r"   c                    d S r   r   r'   s    r    error_messagezPGconn.error_messageP       &)cr"   .encodingstrc                    d S r   r   r(   rY   s     r    get_error_messagezPGconn.get_error_messageS   r*   r"   c                    d S r   r   r'   s    r    	_encodingzPGconn._encodingU   rL   r"   c                    d S r   r   r'   s    r    protocol_versionzPGconn.protocol_versionX   s    '*sr"   c                    d S r   r   r'   s    r    full_protocol_versionzPGconn.full_protocol_version[   r1   r"   c                    d S r   r   r'   s    r    server_versionzPGconn.server_version^       %(Sr"   c                    d S r   r   r'   s    r    socketzPGconn.socketa   r>   r"   c                    d S r   r   r'   s    r    backend_pidzPGconn.backend_pidd       "%#r"   boolc                    d S r   r   r'   s    r    needs_passwordzPGconn.needs_passwordg   rX   r"   c                    d S r   r   r'   s    r    used_passwordzPGconn.used_passwordj   rf   r"   c                    d S r   r   r'   s    r    used_gssapizPGconn.used_gssapim   s    #&3r"   c                    d S r   r   r'   s    r    
ssl_in_usezPGconn.ssl_in_usep   rk   r"   commandPGresultc                    d S r   r   r(   ru   s     r    exec_zPGconn.exec_s   r*   r"   c                    d S r   r   rx   s     r    
send_queryzPGconn.send_queryu   r*   r"   Nparam_valuesSequence[Buffer | None] | Noneparam_typesSequence[int] | Noneparam_formatsresult_formatc                    d S r   r   r(   ru   r|   r~   r   r   s         r    exec_paramszPGconn.exec_paramsw   s	     3r"   c                    d S r   r   r   s         r    send_query_paramszPGconn.send_query_params   s	     sr"   c                    d S r   r   r(   rQ   ru   r~   s       r    send_preparezPGconn.send_prepare   s	    
 sr"   c                    d S r   r   r(   rQ   r|   r   r   s        r    send_query_preparedzPGconn.send_query_prepared   s	     sr"   c                    d S r   r   r   s       r    preparezPGconn.prepare   s	    
 3r"   r   Sequence[Buffer] | Nonec                    d S r   r   r   s        r    exec_preparedzPGconn.exec_prepared   s	     3r"   c                    d S r   r   rT   s     r    describe_preparedzPGconn.describe_prepared   r*   r"   c                    d S r   r   rT   s     r    send_describe_preparedzPGconn.send_describe_prepared   r*   r"   c                    d S r   r   rT   s     r    describe_portalzPGconn.describe_portal   r*   r"   c                    d S r   r   rT   s     r    send_describe_portalzPGconn.send_describe_portal   r*   r"   c                    d S r   r   rT   s     r    close_preparedzPGconn.close_prepared   r*   r"   c                    d S r   r   rT   s     r    send_close_preparedzPGconn.send_close_prepared   r*   r"   c                    d S r   r   rT   s     r    close_portalzPGconn.close_portal   r*   r"   c                    d S r   r   rT   s     r    send_close_portalzPGconn.send_close_portal   r*   r"   PGresult | Nonec                    d S r   r   r'   s    r    
get_resultzPGconn.get_result   r*   r"   c                    d S r   r   r'   s    r    consume_inputzPGconn.consume_input   r*   r"   c                    d S r   r   r'   s    r    is_busyzPGconn.is_busy   r*   r"   c                    d S r   r   r'   s    r    nonblockingzPGconn.nonblocking   rk   r"   argc                    d S r   r   )r(   r   s     r    r   zPGconn.nonblocking   s    -0Sr"   c                    d S r   r   r'   s    r    flushzPGconn.flush   r*   r"   c                    d S r   r   r'   s    r    set_single_row_modezPGconn.set_single_row_mode   r*   r"   sizec                    d S r   r   )r(   r   s     r    set_chunked_rows_modezPGconn.set_chunked_rows_mode   r*   r"   PGcancelConnc                    d S r   r   r'   s    r    cancel_connzPGconn.cancel_conn   r*   r"   PGcancelc                    d S r   r   r'   s    r    
get_cancelzPGconn.get_cancel   r*   r"   PGnotify | Nonec                    d S r   r   r'   s    r    notifieszPGconn.notifies   r*   r"   bufferr   c                    d S r   r   )r(   r   s     r    put_copy_datazPGconn.put_copy_data   r*   r"   errorc                    d S r   r   )r(   r   s     r    put_copy_endzPGconn.put_copy_end   r*   r"   async_tuple[int, memoryview]c                    d S r   r   )r(   r   s     r    get_copy_datazPGconn.get_copy_data   r*   r"   filenoc                    d S r   r   )r(   r   s     r    tracezPGconn.trace   r*   r"   flagsr   c                    d S r   r   )r(   r   s     r    set_trace_flagszPGconn.set_trace_flags   r*   r"   c                    d S r   r   r'   s    r    untracezPGconn.untrace   r*   r"   passwdr=   	algorithmc                    d S r   r   )r(   r   r=   r   s       r    encrypt_passwordzPGconn.encrypt_password   s    r"   c                    d S r   r   )r(   r=   r   s      r    change_passwordzPGconn.change_password   r*   r"   exec_statusc                    d S r   r   )r(   r   s     r    make_empty_resultzPGconn.make_empty_result   r*   r"   c                    d S r   r   r'   s    r    pipeline_statuszPGconn.pipeline_status   rX   r"   c                    d S r   r   r'   s    r    enter_pipeline_modezPGconn.enter_pipeline_mode   r*   r"   c                    d S r   r   r'   s    r    exit_pipeline_modezPGconn.exit_pipeline_mode   r*   r"   c                    d S r   r   r'   s    r    pipeline_synczPGconn.pipeline_sync   r*   r"   c                    d S r   r   r'   s    r    send_flush_requestzPGconn.send_flush_request   r*   r"   )r   r   r   r   r   r%   r   r+   r   r.   )r   r   r   r%   r   r   )rQ   r   r   rR   .rY   rZ   r   rZ   )r   rZ   )r   rl   )ru   r   r   rv   )ru   r   r   r+   )ru   r   r|   r}   r~   r   r   r   r   r%   r   rv   )ru   r   r|   r}   r~   r   r   r   r   r%   r   r+   r   )rQ   r   ru   r   r~   r   r   r+   )
rQ   r   r|   r}   r   r   r   r%   r   r+   )rQ   r   ru   r   r~   r   r   rv   )Nr   )
rQ   r   r|   r   r   r   r   r%   r   rv   )rQ   r   r   rv   )rQ   r   r   r+   )r   r   )r   r%   r   r+   )r   r%   r   r+   )r   r   )r   r   )r   r   )r   r   r   r%   )r   rR   r   r%   )r   r%   r   r   )r   r%   r   r+   )r   r   r   r+   )r   r   r=   r   r   rR   r   r   )r=   r   r   r   r   r+   )r   r%   r   rv   )Q__name__
__module____qualname____annotations__classmethodr!   r$   r)   r-   propertyr0   r3   r5   r7   r9   r;   r=   r@   rC   rE   rG   rI   rK   rN   rP   rU   rW   r]   r_   ra   rc   re   rh   rj   rn   rp   rr   rt   ry   r{   r   TEXTr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   setterr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r"   r    r   r      sU        55555555222 [2888 [8&&&&!!!!/// X/    &&&&$$$$/// [/ X    X $$$ X$    X $$$ X$    X  X### X#    X ,,, X,@@@@))) X)@@@@@### X#*** X*/// X/((( X(    X %%% X%))) X)((( X(&&& X&%%% X%44445555 -1.2#[     -1.2#[     -1	     /3#[     -1	     /3     >===>>>>;;;;<<<<::::;;;;888899990000((((!!!!%%% X%000 0....;;;;....))))....7777BBBBBGGGG----8888"""" EI     GFFFBBBB))) X)....----((((------r"   r   c                  P   e Zd Zd'dZed(d            Zed)d            Zd*d+dZd,dZed(d            Z	ed(d            Z
d-dZd.dZd.dZd.dZd.dZd.dZd.dZed(d            Zd/dZed(d            Zd0dZed1d            Zed2d!            Zed(d"            Zd3d%Zd&S )4rv   r   r+   c                    d S r   r   r'   s    r    clearzPGresult.clear   r*   r"   r%   c                    d S r   r   r'   s    r    rN   zPGresult.status   r>   r"   r   c                    d S r   r   r'   s    r    rW   zPGresult.error_message   rX   r"   .rY   rZ   c                    d S r   r   r\   s     r    r]   zPGresult.get_error_message   r*   r"   	fieldcoderR   c                    d S r   r   )r(   r   s     r    error_fieldzPGresult.error_field   r*   r"   c                    d S r   r   r'   s    r    ntupleszPGresult.ntuples       !cr"   c                    d S r   r   r'   s    r    nfieldszPGresult.nfields   r   r"   column_numberc                    d S r   r   r(   r   s     r    fnamezPGresult.fname  r*   r"   c                    d S r   r   r   s     r    ftablezPGresult.ftable  r*   r"   c                    d S r   r   r   s     r    	ftablecolzPGresult.ftablecol  r*   r"   c                    d S r   r   r   s     r    fformatzPGresult.fformat  r*   r"   c                    d S r   r   r   s     r    ftypezPGresult.ftype
  r*   r"   c                    d S r   r   r   s     r    fmodzPGresult.fmod  r*   r"   c                    d S r   r   r   s     r    fsizezPGresult.fsize  r*   r"   c                    d S r   r   r'   s    r    binary_tupleszPGresult.binary_tuples  s    $'Cr"   
row_numberc                    d S r   r   )r(   r  r   s      r    	get_valuezPGresult.get_value  r*   r"   c                    d S r   r   r'   s    r    nparamszPGresult.nparams  r   r"   param_numberc                    d S r   r   )r(   r  s     r    
param_typezPGresult.param_type  r*   r"   c                    d S r   r   r'   s    r    command_statuszPGresult.command_status  s    .1cr"   
int | Nonec                    d S r   r   r'   s    r    command_tupleszPGresult.command_tuples  r1   r"   c                    d S r   r   r'   s    r    	oid_valuezPGresult.oid_value   rL   r"   descriptionslist[PGresAttDesc]c                    d S r   r   )r(   r  s     r    set_attributeszPGresult.set_attributes#  r*   r"   Nr   r   r   r   r   )r   r%   r   rR   )r   r%   r   rR   )r   r%   r   r%   )r  r%   r   r%   r   rR   )r  r%   r   r%   )r   rR   )r   r  )r  r   r   r+   )r   r   r   r   r   rN   rW   r]   r   r   r   r  r  r  r  r	  r  r  r  r  r  r  r  r  r  r"  r   r"   r    rv   rv      su               X ))) X)@@@@@>>>>!!! X!!!! X!<<<<444477775555333322223333''' X'QQQQ!!! X!7777111 X1/// X/### X#KKKKKKr"   rv   c                      e Zd ZddZddZddZedd            Zedd            Zedd
            Z	dddZ
ddZddZdS )r   r   r+   c                    d S r   r   r'   s    r    startzPGcancelConn.start'  r*   r"   c                    d S r   r   r'   s    r    blockingzPGcancelConn.blocking)  r*   r"   r%   c                    d S r   r   r'   s    r    pollzPGcancelConn.poll+  r*   r"   c                    d S r   r   r'   s    r    rN   zPGcancelConn.status-  r>   r"   c                    d S r   r   r'   s    r    rh   zPGcancelConn.socket0  r>   r"   r   c                    d S r   r   r'   s    r    rW   zPGcancelConn.error_message3  rX   r"   .rY   rZ   c                    d S r   r   r\   s     r    r]   zPGcancelConn.get_error_message6  r*   r"   c                    d S r   r   r'   s    r    r3   zPGcancelConn.reset8  r*   r"   c                    d S r   r   r'   s    r    r-   zPGcancelConn.finish:  r*   r"   Nr   r   r   r   r   )r   r   r   r%  r'  r)  r   rN   rh   rW   r]   r3   r-   r   r"   r    r   r   &  s            ####    X     X ))) X)@@@@@    !!!!!!r"   r   c                      e Zd ZddZddZdS )r   r   r+   c                    d S r   r   r'   s    r    freezPGcancel.free>  r*   r"   c                    d S r   r   r'   s    r    cancelzPGcancel.cancel@  r*   r"   Nr   )r   r   r   r2  r4  r   r"   r    r   r   =  s(        !!!!!!r"   r   c                  V    e Zd Zedd            Zedd            Zedd	            Zd
S )Conninfor   r.   c                    d S r   r   )r   s    r    get_defaultszConninfo.get_defaultsD  s    363r"   r   r   c                    d S r   r   r   s     r    parsezConninfo.parseG  s    =@Sr"   optsSequence[Any]c                    d S r   r   )r   r;  s     r    _options_from_arrayzConninfo._options_from_arrayJ  s    ORsr"   Nr   )r   r   r   r.   )r;  r<  r   r.   )r   r   r   r   r8  r:  r>  r   r"   r    r6  r6  C  sR        666 [6@@@ [@RRR [RRRr"   r6  c                  @    e Zd ZdddZdd	Zdd
ZddZddZddZdS )EscapingNconnPGconn | Nonec                    d S r   r   )r(   rA  s     r    __init__zEscaping.__init__O  r*   r"   datar   r   r   c                    d S r   r   r(   rE  s     r    escape_literalzEscaping.escape_literalQ  r*   r"   c                    d S r   r   rG  s     r    escape_identifierzEscaping.escape_identifierS  r*   r"   c                    d S r   r   rG  s     r    escape_stringzEscaping.escape_stringU  r*   r"   c                    d S r   r   rG  s     r    escape_byteazEscaping.escape_byteaW  r*   r"   c                    d S r   r   rG  s     r    unescape_byteazEscaping.unescape_byteaY  r*   r"   r   )rA  rB  )rE  r   r   r   )	r   r   r   rD  rH  rJ  rL  rN  rP  r   r"   r    r@  r@  N  s[        777778888;;;;77776666888888r"   r@  N) __doc__
__future__r   typingr   r   r   r   r   collections.abcr	   r
   _enumsr   r   _compatr   miscr   r   r   r   	bytearray
memoryviewr   r   r   rv   r   r   r6  r@  r   r"   r    <module>rZ     s     # " " " " " A A A A A A A A A A A A A A . . . . . . . . ! ! ! ! ! ! ! !       =<<<<<<<<<< %J67 7 7 7 7V. V. V. V. V.X V. V. V.r4L 4L 4L 4L 4Lx 4L 4L 4Ln" " " " "8 " " "." " " " "x " " "S S S S Sx S S S9 9 9 9 9x 9 9 9 9 9r"   