Sh3ll
OdayForums


Server : LiteSpeed
System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64
User : claqxcrl ( 523)
PHP Version : 8.1.32
Disable Function : NONE
Directory :  /opt/hc_python/lib64/python3.12/site-packages/sqlalchemy/event/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //opt/hc_python/lib64/python3.12/site-packages/sqlalchemy/event/__pycache__/legacy.cpython-312.pyc
�

���g# ���dZddlmZddlZddlmZddlmZddlmZddlmZddlmZdd	lm	Z	d
dl
mZd
dl
mZd
dl
mZd
dlmZej"rd
dlmZd
dlmZeeeeeedeffZ	d							dd�Z								dd�Zdd�Z								dd�Z								dd�Z						d d�Z								d!d�Zy)"zhRoutines to handle adaption of legacy call signatures,
generation of deprecation notes and docstrings.

�)�annotationsN)�Any)�Callable)�List)�Optional)�Tuple)�Type�)�_ET)�_ListenerFnType�)�util)�FullArgSpec)�_ClsLevelDispatch)�_HasEventsDispatch.c�����d���fd�}|S)a_legacy sig decorator


    :param since: string version for deprecation warning
    :param argnames: list of strings, which is *all* arguments that the legacy
     version accepted, including arguments that are still there
    :param converter: lambda that will accept tuple of this full arg signature
     and return tuple of new arg signature.

    c�j��t|d�sg|_|jj���f�|S)N�_legacy_signatures)�hasattrr�append)�fn�argnames�	converter�sinces ����H/opt/hc_python/lib64/python3.12/site-packages/sqlalchemy/event/legacy.py�legz_legacy_signature.<locals>.leg3s6����r�/�0�$&�B�!�
���$�$�e�X�y�%A�B��	�)r�Callable[..., Any]�returnr�)rrrrs``` r�_legacy_signaturer!#s��� ��Jrc
���������	��jD]�\����ddk(rd��dd�nd�t��t|j�k(s�;�t|j�us�Sd�j
�ddj
�j���rd	nd
�d�}d�j�d
�j
�d��d|�d�	�	���rJ�d����	fd�}|cSd������	fd�}|cS�S)N���z**kwTrFzdef �(�, �, **kw��)z The argument signature for the "�.z+" event listener has changed as of version zl, and conversion for the old argument signature will be removed in a future release.  The new signature is "�"c�J��tj������J���|��S�N)�version)r�warn_deprecated)�args�kw�convrr�warning_txts  ����r�wrap_legz%_wrap_fn_for_legacy.<locals>.wrap_leg`s.����(�(��e�D��+�+�+��t�T�{�+�+rc���tj�
�	��tt�j|��}�D�cgc]}||��	}}�r�|i|��S�|�Scc}wr,)rr.�dict�zip�	arg_names)r/r0�argdict�name�args_from_dictr�dispatch_collectionr�has_kwrr2s     ������rr3z%_wrap_fn_for_legacy.<locals>.wrap_leggsg����(�(��e�D�"�3�':�'D�'D�d�#K�L�G�@H�%I���g�d�m��N�%I��!�>�8�R�8�8�!�>�2�2��	&Js�A)r/rr0rrr)	�legacy_signatures�lenr/�bool�varkwr9�joinr7�clsname)
r;r�argspec�
formatted_defr3rr1r<rr2s
``   @@@@@r�_wrap_fn_for_legacyrE<s����
"5�!F�!F���x���B�<�6�!��F���"�~�H��F��x�=�C����-�-�&�D��M�M�=
�3
�$�(�(��	�	�-�7�7�8�"���*��M�(�/�/�'�,�,��!�	�
���!�!�z�,�,� �O�3�3��O�_"G�b�	rc�V��dj�fd�|jd�D��S)N�
c3�(�K�|]	}�|z���y�w�Nr )�.0�line�indents  �r�	<genexpr>z_indent.<locals>.<genexpr>vs�����@�/?�t�V�d�]�/?�s�)rA�split)�textrLs `r�_indentrPus!����9�9�@�t�z�z�$�/?�@�@�@rc�F�tdjd�|jddD��d�}|jrt	d�|jD��}nd}d}||rd|znd	|j
|jrd
nd	dj|j�||d�z}|S)
NrGc3�*K�|]}dd|iz���
y�w)z%(arg)s = kw['%(arg)s']�argNr )rJrSs  rrMz+_standard_listen_example.<locals>.<genexpr>s!����
�9��
&����4�9�s�rr
z    c3�(K�|]
\}}}|���y�wrIr )rJrr/r1s    rrMz+_standard_listen_example.<locals>.<genexpr>�s����
�%J�!��t�T�
�%J�s�z�from sqlalchemy import event


@event.listens_for(%(sample_target)s, '%(event_name)s')
def receive_%(event_name)s(%(named_event_arguments)s%(has_kw_arguments)s):
    "listen for the '%(event_name)s' event"

    # ... (event handling logic) ...
z (arguments as of %s)r'r&r%)�
current_since�
event_name�has_kw_arguments�named_event_arguments�example_kw_arg�
sample_target)rPrAr7r=�max�__name__r<)r;rZrrYrUrOs      r�_standard_listen_exampler]ys���
��	�	�
�*�4�4�Q�q�9�
�	
�	��N��,�,��
�%8�%J�%J�
�
�
�
�
�	3�	�	�7D�#�m�3�"��k�k�(;�(B�(B�H��!%���+>�+H�+H�!I�(�&�	
�	�D��Krc	��d}|jD];\}}}|d||j|jrdnddj|�|d�zz
}�=|S)Nr'a&
# DEPRECATED calling style (pre-%(since)s, will be removed in a future release)
@event.listens_for(%(sample_target)s, '%(event_name)s')
def receive_%(event_name)s(%(named_event_arguments)s%(has_kw_arguments)s):
    "listen for the '%(event_name)s' event"

    # ... (event handling logic) ...
z **kwr%)rrVrWrXrZ)r=r\r<rA)r;rZrrOrr/r1s       r�_legacy_listen_examplesr_�sh��
�D�0�B�B���t�T��
7�� �k�k�2�9�9�G�r�)-���4��!.��
�	
��C�&�Krc������jd\}}}d|�j�jdj��fd��jD���j
rdd�zSdd�zS)Nra=
.. versionchanged:: %(since)s
    The :meth:`.%(clsname)s.%(event_name)s` event now accepts the 
    arguments %(named_event_arguments)s%(has_kw_arguments)s.
    Support for listener functions which accept the previous 
    argument signature(s) listed above as "deprecated" will be 
    removed in a future release.r%c3�X�K�|]!}d�j�j|d�z���#y�w)z6:paramref:`.%(clsname)s.%(event_name)s.%(param_name)s`)rBrV�
param_nameN)r\r9)rJrbr;�parent_dispatch_clss  ��rrMz-_version_signature_changes.<locals>.<genexpr>�s?�����/�#@�J�
I�2�;�;�"5�":�":�",���#@�s�'*r&r')rrBrVrXrW)r=r\r9rAr7r<)rcr;rr/r1s``   r�_version_signature_changesrd�s����,�=�=�a�@��E�4��	+��*�3�3�-�2�2�%)�Y�Y�/�#6�"?�"?�/�&�-@�,F�,F��
�
	
��(MO�
�
	
�rc��d}t|dd�}|tt|||�d�z}|jr)|tt	|||�d�z
}|t||�z
}t
j|j|d�S)Nz@.. container:: event_signatures

     Example argument forms::

�_target_class_doc�objz        r
)	�getattrrPr]r=r_rdr�inject_docstring_text�__doc__)r;rcr�headerrZrOs      r�_augment_fn_docsrl�s���	
���/�1D�e�L�M��G� �!4�m�R�H����D��,�,���#�$7���K��
�	
��
	
�*��!4�
�	
���%�%�b�j�j�$��:�:rrI)r�strrz	List[str]rzOptional[Callable[..., Any]]rz2Callable[[Callable[..., Any]], Callable[..., Any]])r;�_ClsLevelDispatch[_ET]rrrCrrr)rOrmrLrmrrm)r;rnrZrrrrrm)r;rnrZrmrrrrm)rc�Type[_HasEventsDispatch[_ET]]r;rnrrm)r;rnrcrorrrrm)rj�
__future__r�typingrrrrrr	�registryrrr'r�util.compatr�
TYPE_CHECKING�attrr�baserrm�_LegacySignatureTyper!rErPr]r_rdrlr rr�<module>rxs^���#�
��������%��%�	���'�(��S�$�s�)�X�h�s�C�x�6H�-I�I�J��/3������,��8�	�26�/�6��6��6��	6�rA�&�/�&��&�	�&�	�	&�R�/����	��	�	�8�6��/��	��<;�/�;�6�;�	�;�	�	;r

ZeroDay Forums Mini