
    h^                        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 ddlm	Z	 d	d
l
mZ  G d dej                  e         Z G d dej                  e         Z G d de	      Z G d de      ZddZy)    )annotations)Any)Callable   )MariaDBIdentifierPreparer)MySQLDialect)MySQLIdentifierPreparer)MySQLTypeCompiler   )sqltypesc                      e Zd ZdZd Zy)INET4z@INET4 column type for MariaDB

    .. versionadded:: 2.0.37
    N__name__
__module____qualname____doc____visit_name__     _/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/sqlalchemy/dialects/mysql/mariadb.pyr   r          
 Nr   r   c                      e Zd ZdZd Zy)INET6z@INET6 column type for MariaDB

    .. versionadded:: 2.0.37
    Nr   r   r   r   r   r      r   r   r   c                      e Zd ZddZddZy)MariaDBTypeCompilerc                     y)Nr   r   selftype_kwargss      r   visit_INET4zMariaDBTypeCompiler.visit_INET4'       r   c                     y)Nr   r   r   s      r   visit_INET6zMariaDBTypeCompiler.visit_INET6*   r#   r   N)r    r   r!   r   returnstr)r    r   r!   r   r&   r'   )r   r   r   r"   r%   r   r   r   r   r   &   s    r   r   c                  ,    e Zd ZU dZdZdZeZded<   e	Z
y)MariaDBDialectTmariadbztype[MySQLIdentifierPreparer]preparerN)r   r   r   
is_mariadbsupports_statement_cachenamer   r+   __annotations__r   type_compiler_clsr   r   r   r)   r)   .   s#    J#D.GH+G+r   r)   c                    t        d| z        j                  j                  }t        ||       }t	        |d      r|j
                  }|S |j                  }t        d| z  t        |fddi      S )Nzsqlalchemy.dialects.mysql.%smariadb_dialectzMariaDBDialect_%sr-   T)	
__import__dialectsmysqlgetattrhasattrr2   dialecttyper)   )driverdialect_mod
driver_mod
driver_clss       r   loaderr>   6   s    &/huu  f-Jz,-//
''
&( (.
 	
r   N)r:   r'   r&   z"Callable[[], type[MariaDBDialect]])
__future__r   typingr   r   baser   r   r	   r
   sqlr   
TypeEnginer'   r   r   r   r)   r>   r   r   r   <module>rD      sk    #   +  ) # H$ H$ + ,\ ,
r   