§
    YŠtj6  ã                  óÐ   — d Z ddlmZ ddlmZ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 dd	lmZ dd
lmZ ddlmZ erddlmZ  G d„ dedef         ee         ¦  «        ZdS )z$
psycopg server-side cursor (sync).
é    )Úannotations)ÚTYPE_CHECKINGÚAnyÚoverload)ÚIterableé   )Úerrors)ÚParamsÚQuery)ÚRowÚ
RowFactory)ÚCursor)ÚSelf)ÚServerCursorMixin)Ú
Connectionc                  óÎ   ‡ — e Zd ZdZdZedddœd8d„¦   «         Zedddœd9d„¦   «         Zddddœd:d„Zd;ˆ fd„Z	 d<ddœd=d"„Zd#d$œd>d(„Zd?d*„Z	d@dAd/„Z
dBd0„ZdCd1„ZdDd3„ZdEdFd7„Zˆ xZS )GÚServerCursorÚpsycopg© NF)Ú
scrollableÚwithholdÚ
connectionúConnection[Row]ÚnameÚstrr   úbool | Noner   Úboolc               ó   — d S ©Nr   )Úselfr   r   r   r   s        úT/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/psycopg/_server_cursor.pyÚ__init__zServerCursor.__init__   s	   € ð €só    úConnection[Any]Úrow_factoryúRowFactory[Row]c               ó   — d S r   r   ©r    r   r   r%   r   r   s         r!   r"   zServerCursor.__init__(   s	   € ð €sr#   )r%   r   r   úRowFactory[Row] | Nonec               óp   — t          j        | ||p|j        ¬¦  «         t          j        | |||¦  «         d S )N)r%   )r   r"   r%   r   r(   s         r!   r"   zServerCursor.__init__3   sK   € õ 	ŒØ�*¨+Ð*O¸Ô9Oð	
ñ 	
ô 	
ð 	
õ 	Ô" 4¨¨z¸8ÑDÔDÐDÐDÐDr#   ÚreturnÚNonec                ó,  •— | j         j        5  | j        r	 ddd¦  «         dS | j         j        s,| j                              |                      ¦   «         ¦  «         t          ¦   «                              ¦   «          ddd¦  «         dS # 1 swxY w Y   dS )zI
        Close the current cursor and free associated resources.
        N)Ú_connÚlockÚclosedÚwaitÚ
_close_genÚsuperÚclose)r    Ú	__class__s    €r!   r4   zServerCursor.closeA   sæ   ø€ ð ŒZŒ_ð 	ð 	ØŒ{ð Øð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð ”:Ô$ð 3Ø”
—’ §¢Ñ 1Ô 1Ñ2Ô2Ð2Ý‰GŒG�MŠM‰OŒOˆOð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Ž	B	¤AB	Â	BÂB)ÚbinaryÚqueryr   ÚparamsúParams | Noner6   Úkwargsr   r   c               ó–  — |r%t          dt          |¦  «        d         › �¦  «        ‚| j        j        rt	          j        d¦  «        ‚	 | j        j        5  | j                             |  	                    |||¦  «        ¦  «         ddd¦  «         n# 1 swxY w Y   n,# t          j
        $ r}|                     d¦  «        ‚d}~ww xY w| S )zC
        Open a cursor to execute a query to the database.
        zkeyword not supported: r   z2server-side cursors not supported in pipeline modeN)Ú	TypeErrorÚlistÚ_pgconnÚpipeline_statusÚeÚNotSupportedErrorr.   r/   r1   Ú_declare_genÚ_NO_TRACEBACKÚwith_traceback)r    r7   r8   r6   r:   Úexs         r!   ÚexecutezServerCursor.executeL   s+  € ð ð 	IÝÐGµd¸6±l´lÀ1´oÐGÐGÑHÔHÐHØŒ<Ô'ð 	ÝÔ%ØDñô ð ð	*Ø””ð Jð JØ”
—’ × 1Ò 1°%¸ÀÑ HÔ HÑIÔIÐIðJð Jð Jñ Jô Jð Jð Jð Jð Jð Jð Jøøøð Jð Jð Jð JøøåŒð 	*ð 	*ð 	*Ø×#Ò# DÑ)Ô)Ð)øøøøð	*øøøð ˆs<   Á	B Á0BÂB ÂBÂB ÂBÂB ÂCÂ,CÃCT)Ú	returningÚ
params_seqúIterable[Params]rG   c               ó*   — t          j        d¦  «        ‚)z/Method not implemented for server-side cursors.z0executemany not supported on server-side cursors)r@   rA   )r    r7   rH   rG   s       r!   ÚexecutemanyzServerCursor.executemanyf   s   € õ Ô!Ð"TÑUÔUÐUr#   ú
Row | Nonec                óÜ   — | j         j        5  | j                              |                      d¦  «        ¦  «        }d d d ¦  «         n# 1 swxY w Y   |r| xj        dz  c_        |d         S d S )Nr   r   )r.   r/   r1   Ú
_fetch_genÚ_pos©r    Úrecss     r!   ÚfetchonezServerCursor.fetchonel   s¥   € ØŒZŒ_ð 	7ð 	7Ø”:—?’? 4§?¢?°1Ñ#5Ô#5Ñ6Ô6ˆDð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7àð 	ØˆIŒI˜‰NˆIŒIØ˜”7ˆNà�4ó   �.AÁAÁAr   ÚsizeÚintú	list[Row]c                óô   — |s| j         }| j        j        5  | j                             |                      |¦  «        ¦  «        }d d d ¦  «         n# 1 swxY w Y   | xj        t          |¦  «        z  c_        |S r   )Ú	arraysizer.   r/   r1   rN   rO   Úlen)r    rT   rQ   s      r!   Ú	fetchmanyzServerCursor.fetchmanyu   sª   € Øð 	"Ø”>ˆDØŒZŒ_ð 	:ð 	:Ø”:—?’? 4§?¢?°4Ñ#8Ô#8Ñ9Ô9ˆDð	:ð 	:ð 	:ñ 	:ô 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:øøøð 	:ð 	:ð 	:ð 	:àˆ	Œ	•S˜‘Y”YÑˆ	Œ	Øˆs   –.AÁAÁAc                óâ   — | j         j        5  | j                              |                      d ¦  «        ¦  «        }d d d ¦  «         n# 1 swxY w Y   | xj        t          |¦  «        z  c_        |S r   )r.   r/   r1   rN   rO   rY   rP   s     r!   ÚfetchallzServerCursor.fetchall}   s›   € ØŒZŒ_ð 	:ð 	:Ø”:—?’? 4§?¢?°4Ñ#8Ô#8Ñ9Ô9ˆDð	:ð 	:ð 	:ñ 	:ô 	:ð 	:ð 	:ð 	:ð 	:ð 	:ð 	:øøøð 	:ð 	:ð 	:ð 	:àˆ	Œ	•S˜‘Y”YÑˆ	Œ	ØˆrS   c                ó   — | S r   r   )r    s    r!   Ú__iter__zServerCursor.__iter__ƒ   s   € Øˆr#   r   c                óì  — | j         �,| j        t          | j         ¦  «        cxk    r| j        k    ren nb| j        j        5  | j                             |                      | j        ¦  «        ¦  «        | _         d| _        d d d ¦  «         n# 1 swxY w Y   | j        t          | j         ¦  «        k    rt          d¦  «        ‚| j         | j                 }| xj        dz  c_        | xj	        dz  c_	        |S )Nr   zno more records to returnr   )
Ú
_iter_rowsÚ	_page_posrY   Úitersizer.   r/   r1   rN   ÚStopIterationrO   )r    Úrecs     r!   Ú__next__zServerCursor.__next__†   s  € ð ŒOÐ#ØŒ~¥ T¤_Ñ!5Ô!5ÐFÐFÒFÐF¸¼ÒFÐFÐFÐFÐFà””ð #ð #Ø"&¤*§/¢/°$·/²/À$Ä-Ñ2PÔ2PÑ"QÔ"Q�”Ø!"�”ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #ð Œ>�S ¤Ñ1Ô1Ò1Ð1ÝÐ ;Ñ<Ô<Ð<àŒo˜dœnÔ-ˆØˆŒ˜!ÑˆŒØˆ	Œ	�Q‰ˆ	Œ	Øˆ
s   Á ?BÂBÂBÚrelativeÚvalueÚmodec                óè   — | j         j        5  | j                              |                      ||¦  «        ¦  «         d d d ¦  «         n# 1 swxY w Y   |dk    r| xj        |z  c_        d S || _        d S )Nrf   )r.   r/   r1   Ú_scroll_genrO   )r    rg   rh   s      r!   ÚscrollzServerCursor.scroll™   s±   € ØŒZŒ_ð 	;ð 	;ØŒJ�OŠO˜D×,Ò,¨U°DÑ9Ô9Ñ:Ô:Ð:ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;ð �:ÒÐØˆIŒI˜ÑˆIŒIˆIˆIàˆDŒIˆIˆIs   �/AÁAÁA)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   )
r7   r   r8   r9   r6   r   r:   r   r+   r   )r7   r   rH   rI   rG   r   r+   r,   )r+   rL   )r   )rT   rU   r+   rV   )r+   rV   )r+   r   )r+   r   )rf   )rg   rU   rh   r   r+   r,   )Ú__name__Ú
__module__Ú__qualname__Ú	__slots__r   r"   r4   rF   rK   rR   rZ   r\   r^   re   rk   Ú__classcell__)r5   s   @r!   r   r      s²  ø€ € € € € Ø€JØ€Iàð #'Øðð ð ð ð ñ „Xðð ð #'Øðð ð ð ð ñ „Xðð /3Ø"&ØðEð Eð Eð Eð Eð Eð	ð 	ð 	ð 	ð 	ð 	ð !%ðð
 #ðð ð ð ð ð ð6 PTðVð Vð Vð Vð Vð Vðð ð ð ðð ð ð ð ðð ð ð ðð ð ð ðð ð ð ð&ð ð ð ð ð ð ð ð r#   r   r$   N)Ú__doc__Ú
__future__r   Útypingr   r   r   Úcollections.abcr   Ú r	   r@   Úabcr
   r   Úrowsr   r   Úcursorr   Ú_compatr   Ú_server_cursor_baser   r   r   r   r   r#   r!   ú<module>r{      s5  ððð ð #Ð "Ð "Ð "Ð "Ð "à /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø $Ð $Ð $Ð $Ð $Ð $à Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2àð 'Ø&Ð&Ð&Ð&Ð&Ð&ðFð Fð Fð Fð FÐ$Ð%6¸Ð%;Ô<¸fÀS¼kñ Fô Fð Fð Fð Fr#   