
    g;$                       % S SK Jr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJ	r	  S S	KJ
r
  S S
KJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  SSKJr  SSKJr  \(       a  S SKJr  S SKJr  S SKJr  \\\4   r\" S\S9r0 r S\!S'    " S S\5      r" " S S \\   5      r# " S! S"\#\   5      r$ " S# S$\#\   5      r% " S% S&\#\   5      r&S+S' jr'S,S( jr(S-S) jr)g*).    )annotations)Any)ClassVar)Dict)Generic)
NamedTuple)Optional)Sequence)Tuple)Type)TYPE_CHECKING)TypeVar)Union)
Constraint)ForeignKeyConstraint)Index)UniqueConstraint)	TypeGuard   )util)sqla_compat)Literal)AutogenContext)DefaultImpl_C)boundz Dict[str, Type[_constraint_sig]]_clsregc                      \ rS rSr% S\S'   S\S'   \SS j5       r\SS j5       r\SS j5       r\	SS	 j5       r
\	SS
 j5       r\	SS j5       rSrg)ComparisonResult)   z%Literal['equal', 'different', 'skip']statusstrmessagec                     U R                   S:H  $ )Nequalr!   selfs    \/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/alembic/ddl/_autogen.pyis_equalComparisonResult.is_equal-   s    {{g%%    c                     U R                   S:H  $ )N	differentr&   r'   s    r)   is_differentComparisonResult.is_different1   s    {{k))r,   c                     U R                   S:H  $ )Nskipr&   r'   s    r)   is_skipComparisonResult.is_skip5   s    {{f$$r,   c                    U " SS5      $ )zthe constraints are equal.r%   zThe two constraints are equal clss    r)   EqualComparisonResult.Equal9   s     7;<<r,   c                Z    U " SSR                  [        R                  " U5      5      5      $ )z9the constraints are different for the provided reason(s).r.   , joinr   to_listr8   reasons     r)   	DifferentComparisonResult.Different>   s#     ;		$,,v*> ?@@r,   c                Z    U " SSR                  [        R                  " U5      5      5      $ )zthe constraint cannot be compared for the provided reason(s).

The message is logged, but the constraints will be otherwise
considered equal, meaning that no migration command will be
generated.
r2   r<   r=   r@   s     r)   SkipComparisonResult.SkipC   s#     6499T\\&%9:;;r,   r6   Nreturnbool)rH   r   )rA   zUnion[str, Sequence[str]]rH   r   )__name__
__module____qualname____firstlineno____annotations__propertyr*   r/   r3   classmethodr9   rB   rE   __static_attributes__r6   r,   r)   r   r   )   s    11L& & * * % % = = A A < <r,   r   c                     \ rS rSr% S\S'   S\S'   S\S'   S\S	'   S
rS\S'   S
rS\S'   S
rS\S'   S\S'   S!S jr\	S 5       r
        S"S jr    S#S jr    S$S jr\	        S%S j5       rS&S jr\R"                  S 5       r\R"                  S'S j5       r\R"                  S'S j5       r\R"                  S'S j5       rS(S jrS(S jrS)S jrSrg )*_constraint_sigN   r   constTuple[Any, ...]_sigz,Optional[sqla_compat._ConstraintNameDefined]namer   implFzClassVar[bool]	_is_index_is_fk_is_uqrI   _is_metadatac                $    U R                  5         g N)	_registerr7   s    r)   __init_subclass__!_constraint_sig.__init_subclass__\   s    r,   c                    [        5       er_   NotImplementedErrorr7   s    r)   r`   _constraint_sig._register_       !##r,   c                    [        5       er_   rd   r(   is_metadatarY   rU   s       r)   __init___constraint_sig.__init__c        "##r,   c                    U R                   UR                   L d   eU R                  (       d   eUR                  (       a   eU R                  U5      $ r_   )rY   r]   _compare_to_reflectedr(   others     r)   compare_to_reflected$_constraint_sig.compare_to_reflectedh   sI     yyEJJ&&&    %%%%))%00r,   c                    [        5       er_   rd   rp   s     r)   ro   %_constraint_sig._compare_to_reflectedq   rm   r,   c                :    [         UR                     " XU5      nU$ r_   )r   __visit_name__)r8   rj   rY   
constraintsigs        r)   from_constraint_constraint_sig.from_constraintv   s      j//0JO
r,   c                X    [         R                  " U R                  UR                  5      $ r_   )r   _get_constraint_final_namerU   dialect)r(   contexts     r)   md_name_to_sql_name#_constraint_sig.md_name_to_sql_name   s"    55JJ
 	
r,   c                l    [         R                  " U R                  U R                  R                  5      $ r_   )r   _constraint_is_namedrU   rY   r~   r'   s    r)   is_named_constraint_sig.is_named   s#    //

DII<M<MNNr,   c                    U R                   $ r_   )rW   r'   s    r)   unnamed_constraint_sig.unnamed   s    yyr,   c                    [        5       er_   rd   r'   s    r)   unnamed_no_options"_constraint_sig.unnamed_no_options   rg   r,   c                6    U R                   4U R                  -   $ r_   )rX   r   r'   s    r)   	_full_sig_constraint_sig._full_sig   s    		|dll**r,   c                4    U R                   UR                   :H  $ r_   r   rp   s     r)   __eq___constraint_sig.__eq__       ~~00r,   c                4    U R                   UR                   :g  $ r_   r   rp   s     r)   __ne___constraint_sig.__ne__   r   r,   c                ,    [        U R                  5      $ r_   )hashr   r'   s    r)   __hash___constraint_sig.__hash__   s    DNN##r,   r6   NrH   None)rj   rI   rY   r   rU   r   rH   r   )rq   z_constraint_sig[Any]rH   r   rq   _constraint_sig[_C]rH   r   )rj   rI   rY   r   rx   r   rH   r   )r   r   rH   zOptional[str])rH   rV   rG   )rH   int)rJ   rK   rL   rM   rN   rZ   r[   r\   ra   rP   r`   rk   rr   ro   rz   r   r   memoized_propertyr   r   r   r   r   r   r   rQ   r6   r,   r)   rS   rS   N   sW   I

66
 %I~%"FN""FN" $ $$$'2$;=$	$
1)1	1$($	$
 &1?A	 

 
O O 
  
$ $ 
+ +11$r,   rS   c                  p    \ rS rSrSr\S	S j5       rSr        S
S jr\	SS j5       r
    SS jrSrg)_uq_constraint_sig   Tc                    U [         S'   g )Nunique_constraintr   r7   s    r)   r`   _uq_constraint_sig._register   s    '*#$r,   c                    X l         X0l        [        R                  " UR                  5      U l        [        [        UR                   Vs/ s H  oDR                  PM     sn5      5      U l        Xl	        g s  snf r_   )
rY   rU   r   constraint_name_or_nonerX   tuplesortedcolumnsrW   r]   )r(   rj   rY   rU   cols        r)   rk   _uq_constraint_sig.__init__   sV     	
77

C	&emm!Dms((m!DEF	' "Es   
A6c                ~    [        U R                  R                   Vs/ s H  oR                  PM     sn5      $ s  snf r_   r   rU   r   rX   r(   r   s     r)   column_names_uq_constraint_sig.column_names   -    $***<*<=*<3hh*<=>>=   :c                    U R                   (       d   eU nUn[        U5      (       d   eU R                  R                  UR                  UR                  5      $ r_   )r]   	is_uq_sigrY   compare_unique_constraintrU   r(   rq   metadata_objconn_objs       r)   ro   (_uq_constraint_sig._compare_to_reflected   sT         """"yy22
 	
r,   )r]   rW   rU   rY   rX   Nr   )rj   rI   rY   r   rU   r   rH   r   rH   zTuple[str, ...]r   )rJ   rK   rL   rM   r\   rP   r`   	is_uniquerk   rO   r   ro   rQ   r6   r,   r)   r   r      st    F+ + I
(
( 
(  	
(
 

( ? ?

(

	

r,   r   c                      \ rS rSr% SrS\S'   \SS j5       r        SS jr    SS jr	\
R                  S 5       r\
R                  SS	 j5       r\
R                  SS
 j5       r\
R                  S 5       r\
R                  S 5       rSrg)_ix_constraint_sig   Tzsqla_compat._ConstraintNamerX   c                    U [         S'   g )Nindexr   r7   s    r)   r`   _ix_constraint_sig._register   s    r,   c                ~    X l         X0l        UR                  U l        [        UR                  5      U l        Xl        g r_   )rY   rU   rX   rI   uniquer   r]   ri   s       r)   rk   _ix_constraint_sig.__init__   s/     	
JJ	ell+'r,   c                    U R                   (       d   eU nUn[        U5      (       d   eU R                  R                  UR                  UR                  5      $ r_   )r]   is_index_sigrY   compare_indexesrU   r   s       r)   ro   (_ix_constraint_sig._compare_to_reflected   sO         H%%%%yy((););X^^LLr,   c                B    [         R                  " U R                  5      $ r_   )r   is_expression_indexrU   r'   s    r)   has_expressions"_ix_constraint_sig.has_expressions   s    ..tzz::r,   c                ~    [        U R                  R                   Vs/ s H  oR                  PM     sn5      $ s  snf r_   r   r   s     r)   r   _ix_constraint_sig.column_names   r   r   c           
         [        U R                  R                   Vs/ s H  n[        USS 5      PM     sn5      $ s  snf )NrX   )r   rU   expressionsgetattrr   s     r)   column_names_optional(_ix_constraint_sig.column_names_optional   s9    37::3I3IJ3ICWS&$'3IJ
 	
Js   <c                    g)NTr6   r'   s    r)   r   _ix_constraint_sig.is_named   s    r,   c                6    U R                   4U R                  -   $ r_   )r   r   r'   s    r)   r   _ix_constraint_sig.unnamed   s     4#=#===r,   )r]   rU   rY   r   rX   Nr   )rj   rI   rY   r   rU   r   rH   r   r   r   )rH   zTuple[Optional[str], ...])rJ   rK   rL   rM   rZ   rN   rP   r`   rk   ro   r   r   r   r   r   r   r   rQ   r6   r,   r)   r   r      s    I
%% (('2(;@(	(M(M	M 
; ; 
? ? 

 

 
  
> >r,   r   c                  j    \ rS rSrSr\SS j5       r        S	S jr\R                  S 5       r
Srg)
_fk_constraint_sig   Tc                    U [         S'   g )Nforeign_key_constraintr   r7   s    r)   r`   _fk_constraint_sig._register   s    ,/()r,   c                   Xl         X l        X0l        [        R                  " UR
                  5      U l        [        R                  " U5      u
  U l        U l        U l	        U l
        U l        U l        nnnnU R                  U R                  [        U R                  5      U R                  U R                  [        U R                  5      4U(       a&  UR                  5       S:X  a  S OUR                  5       OS U(       a&  UR                  5       S:X  a  S OUR                  5       OS U(       a  UR                  5       S:X  a  SO
U(       a  SOS4-   U l        g )Nz	no actiondeferredinitially_deferrable
deferrableznot deferrable)r]   rY   rU   r   r   rX   _fk_specsource_schemasource_tablesource_columnstarget_schematarget_tabletarget_columnsr   lowerrW   )r(   rj   rY   rU   onupdateondeleter   	initiallys           r)   rk   _fk_constraint_sig.__init__   s,    (	
77

C	   '	
 $%%&$%%&&
  ")[8hnn>N  ")[8hnn>N
 !2j!@ '%/\5E
&
	r,   c                    U R                   U R                  [        U R                  5      U R                  U R
                  [        U R                  5      4$ r_   )r   r   r   r   r   r   r   r'   s    r)   r   %_fk_constraint_sig.unnamed_no_options4  sN     $%%&$%%&
 	
r,   )r]   rW   rU   rY   rX   r   r   r   r   r   r   Nr   )rj   rI   rY   r   rU   r   rH   r   )rJ   rK   rL   rM   r[   rP   r`   rk   r   r   r   rQ   r6   r,   r)   r   r      s_    F0 02
2
 2
 $	2

 
2
h 

 
r,   r   c                    U R                   $ r_   )rZ   ry   s    r)   r   r   @  s    ==r,   c                    U R                   $ r_   )r\   r   s    r)   r   r   D      ::r,   c                    U R                   $ r_   )r[   r   s    r)   	is_fk_sigr   H  r   r,   N)ry   rS   rH   zTypeGuard[_ix_constraint_sig])ry   rS   rH   zTypeGuard[_uq_constraint_sig])ry   rS   rH   zTypeGuard[_fk_constraint_sig])*
__future__r   typingr   r   r   r   r   r	   r
   r   r   r   r   r   sqlalchemy.sql.schemar   r   r   r   typing_extensionsr    r   r   r   alembic.autogenerate.apir   alembic.ddl.implr   CompareConstraintTyper   r   rN   r   rS   r   r   r   r   r   r   r6   r,   r)   <module>r     s    #              , 6 ' 2 '  7,j%/0 T./,.	) ."<z "<JO$gbk O$d#
)9: #
L0>/ 0>fD
)=> D
Nr,   