
    Pqh                         d dl mZ d dlmZ  G d d      Z G d d      Z G d d      Z G d	 d
      Z G d d      Z G d d      Z	 G d d      Z
y)    )zip_longest)schemac                       e Zd Zd Zd Zd Zy)CompareTablec                     || _         y N)table)selfr	   s     ^/srv/www/ollama/chat-ollama/venv/lib/python3.12/site-packages/alembic/testing/schemacompare.py__init__zCompareTable.__init__   s	    
    c                 *   | j                   j                  |j                  k7  s#| j                   j                  |j                  k7  ryt        | j                   j                  |j                        D ]  \  }}|||| yt        |      |k7  s y yNFT)r	   namer   r   cCompareColumn)r
   otherc1c2s       r   __eq__zCompareTable.__eq__
   s~    ::??ejj(DJJ,=,=,M!$**,,8 	FB
r~
r~R B&	 r   c                 &    | j                  |       S r   r   r
   r   s     r   __ne__zCompareTable.__ne__       ;;u%%%r   N__name__
__module____qualname__r   r   r    r   r   r   r      s     &r   r   c                       e Zd Zd Zd Zd Zy)r   c                     || _         y r   )column)r
   r#   s     r   r   zCompareColumn.__init__   s	    r   c                     | j                   j                  |j                  k(  xr# | j                   j                  |j                  k(  S r   )r#   r   nullabler   s     r   r   zCompareColumn.__eq__"   s8    KK

* 7$$6	
r   c                 &    | j                  |       S r   r   r   s     r   r   zCompareColumn.__ne__)   r   r   Nr   r    r   r   r   r      s    
&r   r   c                        e Zd ZddZd Zd Zy)CompareIndexc                      || _         || _        y r   )index	name_only)r
   r*   r+   s      r   r   zCompareIndex.__init__.   s    
"r   c                 8   | j                   r#| j                  j                  |j                  k(  S t        t	        j
                  | j                              t        t	        j
                  |            k(  xr# | j                  j                  |j                  k(  S r   )r+   r*   r   strr   CreateIndexdialect_kwargsr   s     r   r   zCompareIndex.__eq__2   st    >>::??ejj00 F&&tzz23v))%012 FJJ--1E1EEr   c                 &    | j                  |       S r   r   r   s     r   r   zCompareIndex.__ne__<   r   r   N)Fr   r    r   r   r(   r(   -   s    #&r   r(   c                       e Zd Zd Zd Zd Zy)CompareCheckConstraintc                     || _         y r   
constraintr
   r5   s     r   r   zCompareCheckConstraint.__init__A   	    $r   c                    t        |t        j                        xr | j                  j                  |j                  k(  xr t        | j                  j                        t        |j                        k(  xrp |j                  j                  | j                  j                  j                  k(  xr7 |j                  j                  | j                  j                  j                  k(  S r   )
isinstancer   CheckConstraintr5   r   r-   sqltextr	   r   s     r   r   zCompareCheckConstraint.__eq__D   s    uf445 C$$

2CT__,,-U]]1CCC !!T__%:%:%?%??C ""doo&;&;&B&BB	
r   c                 &    | j                  |       S r   r   r   s     r   r   zCompareCheckConstraint.__ne__M   r   r   Nr   r    r   r   r2   r2   @   s    %
&r   r2   c                       e Zd Zd Zd Zd Zy)CompareForeignKeyc                     || _         y r   r4   r6   s     r   r   zCompareForeignKey.__init__R   r7   r   c                    t        |t        j                        xr | j                  j                  |j                  k(  xrp |j
                  j                  | j                  j
                  j                  k(  xr7 |j
                  j                  | j                  j
                  j                  k(  }|syt        | j                  j                  |j                        D ]  \  }}|||| yt        |      |k7  s y yr   )	r9   r   ForeignKeyConstraintr5   r   r	   r   columnsr   r
   r   r1r   r   s        r   r   zCompareForeignKey.__eq__U   s    uf99: C$$

2C!!T__%:%:%?%??C ""doo&;&;&B&BB	 	 !$//"9"95==I 	FB
r~
r~R B&	 r   c                 &    | j                  |       S r   r   r   s     r   r   zCompareForeignKey.__ne__g   r   r   Nr   r    r   r   r>   r>   Q   s    %$&r   r>   c                       e Zd Zd Zd Zd Zy)ComparePrimaryKeyc                     || _         y r   r4   r6   s     r   r   zComparePrimaryKey.__init__l   r7   r   c                    t        |t        j                        xr | j                  j                  |j                  k(  xrp |j
                  j                  | j                  j
                  j                  k(  xr7 |j
                  j                  | j                  j
                  j                  k(  }|syt        | j                  j                  |j                        D ]  \  }}|||| yt        |      |k7  s y yr   )	r9   r   PrimaryKeyConstraintr5   r   r	   r   rB   r   rC   s        r   r   zComparePrimaryKey.__eq__o   s    uf99: C$$

2C!!T__%:%:%?%??C ""doo&;&;&B&BB	 	 !$//"9"95==I 	FB
r~
r~R B&	 r   c                 &    | j                  |       S r   r   r   s     r   r   zComparePrimaryKey.__ne__   r   r   Nr   r    r   r   rG   rG   k       %(&r   rG   c                       e Zd Zd Zd Zd Zy)CompareUniqueConstraintc                     || _         y r   r4   r6   s     r   r   z CompareUniqueConstraint.__init__   r7   r   c                    t        |t        j                        xr | j                  j                  |j                  k(  xrp |j
                  j                  | j                  j
                  j                  k(  xr7 |j
                  j                  | j                  j
                  j                  k(  }|syt        | j                  j                  |j                        D ]  \  }}|||| yt        |      |k7  s y yr   )	r9   r   UniqueConstraintr5   r   r	   r   rB   r   rC   s        r   r   zCompareUniqueConstraint.__eq__   s    uf556 C$$

2C!!T__%:%:%?%??C ""doo&;&;&B&BB	 	 !$//"9"95==I 	FB
r~
r~R B&	 r   c                 &    | j                  |       S r   r   r   s     r   r   zCompareUniqueConstraint.__ne__   r   r   Nr   r    r   r   rN   rN      rL   r   rN   N)	itertoolsr   
sqlalchemyr   r   r   r(   r2   r>   rG   rN   r    r   r   <module>rU      sQ    ! & &0& && &&& &"& &4& &8& &r   