o
    Šågê  ã                   @  s‚   d dl mZ d dlmZ d dlmZ d dlmZ d dlmZ ddlmZ er,ddl	m
Z
 d	Zddd„Zejded�Ze d¡ZdS )é    )Úannotations)ÚCallable)ÚOptional)ÚType)ÚTYPE_CHECKINGé   )Úutil)ÚDialect)ÚmssqlÚmysqlÚoracleÚ
postgresqlÚsqliteÚnameÚstrÚreturnú%Optional[Callable[[], Type[Dialect]]]c                   sš   d| v r|   d¡\}}n| }d}z |dkr"tdƒjjj‰ ˆ  |¡W S td|f ƒj‰ tˆ |ƒ‰ W n
 ty:   Y dS w tˆ |ƒrKtˆ |ƒ‰ ‡ fdd„S dS )	zedefault dialect importer.

    plugs into the :class:`.PluginLoader`
    as a first-hit system.

    Ú.ÚbaseÚmariadbz!sqlalchemy.dialects.mysql.mariadbzsqlalchemy.dialects.%sNc                     s   ˆ j S )N)Údialect© ©Úmoduler   úX/var/www/html/flaskapp/venv/lib/python3.10/site-packages/sqlalchemy/dialects/__init__.pyÚ<lambda>6   s    z_auto_fn.<locals>.<lambda>)	ÚsplitÚ
__import__Údialectsr   r   ÚloaderÚgetattrÚImportErrorÚhasattr)r   r   Údriverr   r   r   Ú_auto_fn   s*   ÿþÿ

r$   zsqlalchemy.dialects)Úauto_fnzsqlalchemy.pluginsN)r   r   r   r   )Ú
__future__r   Útypingr   r   r   r   Ú r   Úengine.interfacesr	   Ú__all__r$   ÚPluginLoaderÚregistryÚpluginsr   r   r   r   Ú<module>   s   
$