+
    }¯³jï!  ã                  óö  € R t ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ RIH	t	 ^ RIH
t
 ^ RIHt ^R	IHt ^R
IHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ]
'       d1   ^RIHt ^RIHt ^RIHt ^RIH t  ^RIH!t! ^RIH"t" ^RIH#t# ^RI$H%t%  ! R R]4      t& ! R R ]]&4      t' ! R! R"]]4      t( ! R# R$](4      t) ! R% R&]4      t* ! R' R(]4      t+]+t,R)# )*aÖ  
.. dialect:: mysql+aiomysql
    :name: aiomysql
    :dbapi: aiomysql
    :connectstring: mysql+aiomysql://user:password@host:port/dbname[?key=value&key=value...]
    :url: https://github.com/aio-libs/aiomysql

The aiomysql dialect is SQLAlchemy's second Python asyncio dialect.

Using a special asyncio mediation layer, the aiomysql dialect is usable
as the backend for the :ref:`SQLAlchemy asyncio <asyncio_toplevel>`
extension package.

This dialect should normally be used only with the
:func:`_asyncio.create_async_engine` engine creation function::

    from sqlalchemy.ext.asyncio import create_async_engine

    engine = create_async_engine(
        "mysql+aiomysql://user:pass@hostname/dbname?charset=utf8mb4"
    )

)Úannotations)Ú
ModuleType)ÚAny)ÚDict)ÚOptional)ÚTuple)ÚTYPE_CHECKING)ÚUnion)Ú _connection_ping_reconnects_true)ÚMySQLDialect_pymysql)Úpool)Úutil)ÚAsyncAdapt_dbapi_connection)ÚAsyncAdapt_dbapi_cursor)ÚAsyncAdapt_dbapi_module)ÚAsyncAdapt_dbapi_ss_cursor)ÚAsyncAdapt_terminate)Úlanghelpers)Úawait_fallback)Ú
await_only)ÚAsyncIODBAPIConnection)ÚAsyncIODBAPICursor)ÚConnectArgsType)ÚDBAPIConnection)ÚDBAPICursor)ÚDBAPIModule)ÚPoolProxiedConnection)ÚURLc                  ó&   € ] tR t^CtRtR R ltRtR# )ÚAsyncAdapt_aiomysql_cursorc               ó    € V ^8„  d   QhRRRR/# ©é   Ú
connectionr   Úreturnr   © )Úformats   "Úc/home/luca/screen-checking/.venv/lib/python3.14/site-packages/sqlalchemy/dialects/mysql/aiomysql.pyÚ__annotate__Ú'AsyncAdapt_aiomysql_cursor.__annotate__F   s    € ÷ Fñ FØ0ðFà	ñFó    c                	ó`   € VP                  V P                  P                  P                  4      # ©N)ÚcursorÚ_adapt_connectionÚdbapiÚCursor©Úselfr#   s   &&r'   Ú_make_new_cursorÚ+AsyncAdapt_aiomysql_cursor._make_new_cursorF   s'   € ð × Ñ  ×!7Ñ!7×!=Ñ!=×!DÑ!DÓEÐEr*   r%   N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú	__slots__r3   Ú__static_attributes__r%   r*   r'   r   r   C   s   † Ø€I÷Fñ Fr*   r   c                  ó&   € ] tR t^LtRtR R ltRtR# )ÚAsyncAdapt_aiomysql_ss_cursorc               ó    € V ^8„  d   QhRRRR/# r!   r%   )r&   s   "r'   r(   Ú*AsyncAdapt_aiomysql_ss_cursor.__annotate__Q   s   € ÷ 
ñ 
Ø0ð
à	ñ
r*   c                	óˆ   € VP                  V P                  P                  P                  P                  P
                  4      # r,   )r-   r.   r/   ÚaiomysqlÚcursorsÚSSCursorr1   s   &&r'   r3   Ú.AsyncAdapt_aiomysql_ss_cursor._make_new_cursorQ   s8   € ð × Ñ Ø×"Ñ"×(Ñ(×1Ñ1×9Ñ9×BÑBó
ð 	
r*   r%   Nr5   r%   r*   r'   r=   r=   L   s   † ð €I÷
ñ 
r*   r=   c                  óz   € ] tR t^YtRt]t]tRR R llt	R R lt
R R ltR R ltR	 R
 ltR R ltR R ltRtR# )ÚAsyncAdapt_aiomysql_connectionc               ó    € V ^8„  d   QhRRRR/# )r"   Ú	reconnectÚboolr$   ÚNoner%   )r&   s   "r'   r(   Ú+AsyncAdapt_aiomysql_connection.__annotate__a   s   € ÷ 1ñ 1˜dð 1¨tñ 1r*   c                	óþ   € V'       d   Q hV P                   P                  '       d.   V P                  V P                  P	                  R R7      4       R# V P                  V P                  P	                  4       4       R# )F)rH   N)r/   Ú_send_false_to_pingÚawait_Ú_connectionÚping)r2   rH   s   &&r'   rP   Ú#AsyncAdapt_aiomysql_connection.pinga   sU   € ßÐˆ}Ø�:‰:×)×)Ð)Ø�K‰K˜×(Ñ(×-Ñ-¸Ð-Ó>Ö?à�K‰K˜×(Ñ(×-Ñ-Ó/Ö0r*   c               ó   € V ^8„  d   QhRR/# )r"   r$   zOptional[str]r%   )r&   s   "r'   r(   rK   h   s   € ÷ 5ñ 5 Mñ 5r*   c                	ó6   € V P                   P                  4       # r,   )rO   Úcharacter_set_name©r2   s   &r'   rT   Ú1AsyncAdapt_aiomysql_connection.character_set_nameh   s   € Ø×Ñ×2Ñ2Ó4Ð4r*   c               ó    € V ^8„  d   QhRRRR/# )r"   Úvaluer   r$   rJ   r%   )r&   s   "r'   r(   rK   k   s   € ÷ 8ñ 8 ð 8¨ñ 8r*   c                	óZ   € V P                  V P                  P                  V4      4       R # r,   )rN   rO   Ú
autocommit)r2   rX   s   &&r'   rZ   Ú)AsyncAdapt_aiomysql_connection.autocommitk   s   € Ø�‰�D×$Ñ$×/Ñ/°Ó6Ö7r*   c               ó   € V ^8„  d   QhRR/# ©r"   r$   rI   r%   )r&   s   "r'   r(   rK   n   s   € ÷ 1ñ 1 ñ 1r*   c                	ó6   € V P                   P                  4       # r,   )rO   Úget_autocommitrU   s   &r'   r_   Ú-AsyncAdapt_aiomysql_connection.get_autocommitn   s   € Ø×Ñ×.Ñ.Ó0Ð0r*   c               ó   € V ^8„  d   QhRR/# ©r"   r$   rJ   r%   )r&   s   "r'   r(   rK   q   s   € ÷ 6ñ 6�tñ 6r*   c                	óX   € V P                  V P                  P                  4       4       R # r,   )rN   rO   Úensure_closedrU   s   &r'   ÚcloseÚ$AsyncAdapt_aiomysql_connection.closeq   s   € Ø�‰�D×$Ñ$×2Ñ2Ó4Ö5r*   c               ó   € V ^8„  d   QhRR/# rb   r%   )r&   s   "r'   r(   rK   t   s   € ÷ /ñ /°ñ /r*   c              ƒ  	óV   "  € V P                   P                  4       G R j  x€L
  R #  L5ir,   )rO   rd   rU   s   &r'   Ú_terminate_graceful_closeÚ8AsyncAdapt_aiomysql_connection._terminate_graceful_closet   s   é € Ø×Ñ×,Ñ,Ó.×.Ô.ùs   ‚) '¡)c               ó   € V ^8„  d   QhRR/# rb   r%   )r&   s   "r'   r(   rK   w   s   € ÷ !ñ !¨ñ !r*   c                	ó:   € V P                   P                  4        R # r,   )rO   re   rU   s   &r'   Ú_terminate_force_closeÚ5AsyncAdapt_aiomysql_connection._terminate_force_closew   s   € à×Ñ×ÑÖ r*   r%   N)F)r6   r7   r8   r9   r:   r   Ú_cursor_clsr=   Ú_ss_cursor_clsrP   rT   rZ   r_   re   ri   rm   r;   r%   r*   r'   rF   rF   Y   s;   † ð €Ià,€KØ2€N÷1õ5õ8õ1õ6õ/÷!ñ !r*   rF   c                  ó*   € ] tR t^|tRt]! ]4      tRtR# )Ú&AsyncAdaptFallback_aiomysql_connectionr%   N)	r6   r7   r8   r9   r:   Ústaticmethodr   rN   r;   r%   r*   r'   rr   rr   |   s   † Ø€Iá˜.Ó)„Fr*   rr   c                  óp   € ] tR t^‚tR R ltR R ltR R lt]P                  R R l4       t	R	 R
 lt
RtR# )ÚAsyncAdapt_aiomysql_dbapic               ó    € V ^8„  d   QhRRRR/# )r"   rA   r   Úpymysqlr%   )r&   s   "r'   r(   Ú&AsyncAdapt_aiomysql_dbapi.__annotate__ƒ   s   € ÷ Eñ E ð E°jñ Er*   c                	ó†   € Wn         W n        R V n        V P                  4        V P	                  4       w  V n        V n        R# )r&   N)rA   rw   Ú
paramstyleÚ_init_dbapi_attributesÚ_init_cursors_subclassesr0   rC   )r2   rA   rw   s   &&&r'   Ú__init__Ú"AsyncAdapt_aiomysql_dbapi.__init__ƒ   s6   € Ø ŒØŒØ"ˆŒØ×#Ñ#Ô%Ø%)×%BÑ%BÓ%DÑ"ˆŒ�T–]r*   c               ó   € V ^8„  d   QhRR/# rb   r%   )r&   s   "r'   r(   rx   Š   s   € ÷ =ñ =¨ñ =r*   c           	     	óª   € R F#  p\        W\        V P                  V4      4       K%  	  R F#  p\        W\        V P                  V4      4       K%  	  R# )ÚWarningN)r�   ÚErrorÚInterfaceErrorÚ	DataErrorÚDatabaseErrorÚOperationalErrorrƒ   ÚIntegrityErrorÚProgrammingErrorÚInternalErrorÚNotSupportedError)ÚNUMBERÚSTRINGÚDATETIMEÚBINARYÚ	TIMESTAMPÚBinary)ÚsetattrÚgetattrrA   rw   )r2   Únames   & r'   r{   Ú0AsyncAdapt_aiomysql_dbapi._init_dbapi_attributesŠ   sH   € ó
ˆDô �D¤¨¯©°tÓ <Ö=ñ
ó
ˆDô �D¤¨¯©°dÓ ;Ö<ó
r*   c               ó$   € V ^8„  d   QhRRRRRR/# )r"   Úargr   Úkwr$   rF   r%   )r&   s   "r'   r(   rx   ¤   s"   € ÷ ñ ˜Cð  sð Ð/Mñ r*   c           
     	ó  € VP                  R R4      pVP                  RV P                  P                  4      p\        P                  ! V4      '       d   \        V \        V! V/ VB 4      4      # \        V \        V! V/ VB 4      4      # )Úasync_fallbackFÚasync_creator_fn)	ÚpoprA   Úconnectr   Úasboolrr   r   rF   r   )r2   r–   r—   r™   Ú
creator_fns   &*,  r'   rœ   Ú!AsyncAdapt_aiomysql_dbapi.connect¤   sƒ   € ØŸ™Ð 0°%Ó8ˆØ—V‘VÐ.°·±×0EÑ0EÓFˆ
ä�;Š;�~×&Ò&Ü9ØÜ™z¨3Ð5°"Ñ5Ó6óð ô
 2ØÜ™: sÐ1¨bÑ1Ó2óð r*   c               ó   € V ^8„  d   QhRR/# r]   r%   )r&   s   "r'   r(   rx   ´   s   € ÷ @ñ @ Tñ @r*   c                óˆ   €  \        R4      P                  P                  p\        V4      #   \        \
        3 d     R# i ; i)z�determine if aiomysql has deprecated, changed the default of,
or removed the 'reconnect' argument of connection.ping().

See #13306 and #10492

zaiomysql.connectionT)Ú
__import__r#   Ú
Connectionr
   ÚImportErrorÚAttributeError)r2   r£   s   & r'   rM   Ú-AsyncAdapt_aiomysql_dbapi._send_false_to_ping³   sG   € ð	@Ü#Ø%óç‰jŸ™ð ô 4°JÓ?Ð?øô œ^Ð,ô 	Úð	ús   ‚, ¬AÁ Ac               ó   € V ^8„  d   QhRR/# )r"   r$   z-Tuple[AsyncIODBAPICursor, AsyncIODBAPICursor]r%   )r&   s   "r'   r(   rx   Å   s   € ÷  ñ  à	6ñ r*   c                	ó„   €  ! R  RV P                   P                  4      p ! R RV P                   P                  4      pW3# )c                  ó"   € ] tR t^ÉtR R ltRtR# )ÚBAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.Cursorc               ó    € V ^8„  d   QhRRRR/# ©r"   Úconnr   r$   rJ   r%   )r&   s   "r'   r(   ÚOAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.Cursor.__annotate__Ê   ó   € ÷ ñ Ø2ðàñr*   c              “  	ó   "  € R # 5ir,   r%   ©r2   r­   s   &&r'   Ú_show_warningsÚQAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.Cursor._show_warningsÊ   ó
   é € ñ ùó   ‚r%   N©r6   r7   r8   r9   r²   r;   r%   r*   r'   r0   rª   É   ó   † ÷ñ r*   r0   c                  ó"   € ] tR t^ÏtR R ltRtR# )ÚDAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.SSCursorc               ó    € V ^8„  d   QhRRRR/# r¬   r%   )r&   s   "r'   r(   ÚQAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.SSCursor.__annotate__Ð   r¯   r*   c              “  	ó   "  € R # 5ir,   r%   r±   s   &&r'   r²   ÚSAsyncAdapt_aiomysql_dbapi._init_cursors_subclasses.<locals>.SSCursor._show_warningsÐ   r´   rµ   r%   Nr¶   r%   r*   r'   rC   r¹   Ï   r·   r*   rC   )rA   r0   rC   )r2   r0   rC   s   &  r'   r|   Ú2AsyncAdapt_aiomysql_dbapi._init_cursors_subclassesÅ   s9   € ô	�T—]‘]×)Ñ)ô 	ô	�t—}‘}×-Ñ-ô 	ð ÐÐr*   )r0   rC   rA   rz   rw   N)r6   r7   r8   r9   r}   r{   rœ   r   Úmemoized_propertyrM   r|   r;   r%   r*   r'   ru   ru   ‚   s8   † õEõ=õ4ð ×"Ñ"ô@ó #ð@÷" ñ  r*   ru   c                  ó¬   a € ] tR t^ØtRtRtRt]tRt	Rt
]R R l4       t]R R l4       tR R ltRR	 V 3R
 llltR V 3R lltR R ltR R ltRtV ;t# )ÚMySQLDialect_aiomysqlrA   Tc               ó   € V ^8„  d   QhRR/# )r"   r$   ru   r%   )r&   s   "r'   r(   Ú"MySQLDialect_aiomysql.__annotate__ã   s   € ÷ 
ñ 
Ð6ñ 
r*   c                	ó>   € \        \        R 4      \        R4      4      # )rA   rw   )ru   r¢   )Úclss   &r'   Úimport_dbapiÚ"MySQLDialect_aiomysql.import_dbapiâ   s   € ä(Ü�zÓ"¤J¨yÓ$9ó
ð 	
r*   c               ó    € V ^8„  d   QhRRRR/# )r"   Úurlr   r$   Útyper%   )r&   s   "r'   r(   rÃ   é   s   € ÷ .ñ . ð .¨ñ .r*   c                	ó²   € VP                   P                  R R4      p\        P                  ! V4      '       d   \        P
                  # \        P                  # )r™   F)ÚqueryÚgetr   r�   r   ÚFallbackAsyncAdaptedQueuePoolÚAsyncAdaptedQueuePool)rÅ   rÉ   r™   s   && r'   Úget_pool_classÚ$MySQLDialect_aiomysql.get_pool_classè   s>   € àŸ™Ÿ™Ð'7¸Ó?ˆä�;Š;�~×&Ò&Ü×5Ñ5Ð5ä×-Ñ-Ð-r*   c               ó    € V ^8„  d   QhRRRR/# )r"   Údbapi_connectionr   r$   rJ   r%   )r&   s   "r'   r(   rÃ   ñ   s   € ÷ %ñ %¨_ð %Àñ %r*   c                	ó&   € VP                  4        R # r,   )Ú	terminate)r2   rÓ   s   &&r'   Údo_terminateÚ"MySQLDialect_aiomysql.do_terminateñ   s   € Ø×"Ñ"Ö$r*   c               ó$   € V ^8„  d   QhRRRRRR/# )r"   rÉ   r   Ú_translate_argszOptional[Dict[str, Any]]r$   r   r%   )r&   s   "r'   r(   rÃ   ô   s$   € ÷ 
ñ 
Øð
Ø)Að
à	ñ
r*   c                	ó<   <€ \         SV `  V\        R RR7      R7      # )ÚuserÚdb)ÚusernameÚdatabase)rÙ   )ÚsuperÚcreate_connect_argsÚdict)r2   rÉ   rÙ   Ú	__class__s   &&&€r'   rà   Ú)MySQLDialect_aiomysql.create_connect_argsô   s(   ø€ ô ‰wÑ*Ø¤¨vÀÔ!Eð +ó 
ð 	
r*   c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r"   ÚezDBAPIModule.Errorr#   z7Optional[Union[PoolProxiedConnection, DBAPIConnection]]r-   zOptional[DBAPICursor]r$   rI   r%   )r&   s   "r'   r(   rÃ   û   s3   € ÷ 
,ñ 
,àð
,ð Lð
,ð &ð	
,ð
 
ñ
,r*   c                	óp   <€ \         SV `  WV4      '       d   R # \        V4      P                  4       pRV9   # )Tznot connected)rß   Úis_disconnectÚstrÚlower)r2   rå   r#   r-   Ústr_erâ   s   &&&& €r'   rç   Ú#MySQLDialect_aiomysql.is_disconnectû   s4   ø€ ô ‰7Ñ  °×7Ò7Ùä˜“F—L‘L“NˆEØ" eÑ+Ð+r*   c               ó   € V ^8„  d   QhRR/# )r"   r$   Úintr%   )r&   s   "r'   r(   rÃ     s   € ÷ !ñ !¨ñ !r*   c                	ó&   € ^ RI Hp VP                  # )é    )ÚCLIENT)Úpymysql.constantsrð   Ú
FOUND_ROWS)r2   rð   s   & r'   Ú_found_rows_client_flagÚ-MySQLDialect_aiomysql._found_rows_client_flag  s   € Ý,à× Ñ Ð r*   c               ó    € V ^8„  d   QhRRRR/# )r"   r#   r   r$   r   r%   )r&   s   "r'   r(   rÃ     s   € ÷ &ñ &Ø)ð&à	ñ&r*   c                	ó   € VP                   # r,   )rO   r1   s   &&r'   Úget_driver_connectionÚ+MySQLDialect_aiomysql.get_driver_connection  s   € ð ×%Ñ%Ð%r*   r%   r,   )r6   r7   r8   r9   ÚdriverÚsupports_statement_cacheÚsupports_server_side_cursorsr=   Ú	_sscursorÚis_asyncÚhas_terminateÚclassmethodrÆ   rÐ   rÖ   rà   rç   ró   r÷   r;   Ú__classcell__)râ   s   @r'   rÁ   rÁ   Ø   sq   ø† Ø€FØ#Ðà#'Ð Ø-€Ià€HØ€Màô
ó ð
ð
 ô.ó ð.õ%÷
ò 
÷
,ð 
,õ!÷
&ó &r*   rÁ   N)-Ú__doc__Ú
__future__r   Útypesr   Útypingr   r   r   r   r   r	   rw   r
   r   Ú r   r   Úconnectors.asyncior   r   r   r   r   r   Úutil.concurrencyr   r   r   r   Úengine.interfacesr   r   r   r   r   Ú
engine.urlr   r   r=   rF   rr   ru   rÁ   Údialectr%   r*   r'   Ú<module>r     sÅ   ðñõ0 #å Ý Ý Ý Ý Ý  Ý å 5Ý )Ý Ý Ý =Ý 9Ý 9Ý <Ý 6Ý Ý .Ý *çå<Ý8Ý4Ý4Ý0Ý0Ý:Ý!ôFÐ!8ô Fô

ØÐ :ô

ô !ØÐ5ô !ôF*Ð-Kô *ôS Ð 7ô S ôl7&Ð0ô 7&ðt  ‚r*   