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/orm/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

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

���gA0��Z�dZddlmZddlmZddlmZddlm	Z	ddlm
Z
ddlmZdd	lmZdd
lm
Z
ddlmZddlmZdd
lmZddlmZddlmZGd�dej*�ZGd�dej.�ZGd�dej.�Ze�Ze�ZGd�d�Zdd�Zy)z�Evaluation functions used **INTERNALLY** by ORM DML use cases.


This module is **private, for internal use by SQLAlchemy**.

.. versionchanged:: 2.0.4 renamed ``EvaluatorCompiler`` to
   ``_EvaluatorCompiler``.

�)�annotations)�Type�)�exc)�LoaderCallableStatus)�PassiveFlag�)�inspect)�and_)�	operators)�Concatenable)�Integer)�Numeric)�warn_deprecatedc��eZdZy)�UnevaluatableErrorN)�__name__�
__module__�__qualname__���I/opt/hc_python/lib64/python3.12/site-packages/sqlalchemy/orm/evaluator.pyrr%s��rrc��eZdZd�Zd�Zy)�	_NoObjectc��y�Nr��self�arg�kws   r�operatez_NoObject.operate*���rc��yrrrs   r�reverse_operatez_NoObject.reverse_operate-r"rN�rrrr!r$rrrrr)����rrc��eZdZd�Zd�Zy)�_ExpiredObjectc��|Srrrs   rr!z_ExpiredObject.operate2����rc��|Srrrs   rr$z_ExpiredObject.reverse_operate5r*rNr%rrrr(r(1r&rr(c���eZdZdd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d	�Z
d
�Zd�Zd�Z
d
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZeZeZeZeZeZeZeZeZeZeZeZ d�Z!d�Z"d�Z#d�Z$d�Z%d�Z&d�Z'y)�_EvaluatorCompilerNc��||_yr)�
target_cls)rr/s  r�__init__z_EvaluatorCompiler.__init__>s	��$��rc��|rt|g|���}t|d|j��d�}|s!tdt	|�j
����||�S)N�visit_�Cannot evaluate )r�getattr�__visit_name__r�typer)r�clause�clauses�meths    r�processz_EvaluatorCompiler.processAsa����&�+�7�+�F��t�v�f�&;�&;�%<�=�t�D���$�"�4��<�#8�#8�"9�:��
��F�|�rc�8�|j|j�Sr)r:�element�rr7s  r�visit_groupingz!_EvaluatorCompiler.visit_groupingLs���|�|�F�N�N�+�+rc��d�S)Nc��yrr��objs r�<lambda>z/_EvaluatorCompiler.visit_null.<locals>.<lambda>P���4rrr=s  r�
visit_nullz_EvaluatorCompiler.visit_nullO����rc��d�S)Nc��y)NFrrAs rrCz0_EvaluatorCompiler.visit_false.<locals>.<lambda>Ss��5rrr=s  r�visit_falsez_EvaluatorCompiler.visit_falseRs�� � rc��d�S)Nc��y)NTrrAs rrCz/_EvaluatorCompiler.visit_true.<locals>.<lambda>VrDrrr=s  r�
visit_truez_EvaluatorCompiler.visit_trueUrFrc����	|jd}|jr8t	|j|j
�std|j
����|j
�	|j|j}|j|j��fd�}|S#t$r}td|���|�d}~wwxYw#tj$r}td|���|�d}~wwxYw)N�parentmapperzCannot evaluate column: z0Can't evaluate criteria against alternate class zCannot evaluate expression: c���|�tSt|�}|j}�j||tj
��}|tjurtS|S)N)�passive)	�
_NO_OBJECTr
�dict�getr�PASSIVE_NO_FETCHr�PASSIVE_NO_RESULT�_EXPIRED_OBJECT)rB�state�dict_�value�impls    �r�get_corresponding_attrz?_EvaluatorCompiler.visit_column.<locals>.get_corresponding_attrs\����{�!�!��C�L�E��J�J�E��H�H��u�k�&B�&B���E��,�>�>�>�&�&��Lr)
�_annotations�KeyErrorrr/�
issubclass�class_�_check_configure�_columntoproperty�key�orm_exc�UnmappedColumnError�
class_managerrZ)rr7rN�kerb�errr[rZs       @r�visit_columnz_EvaluatorCompiler.visit_columnXs���	�!�.�.�~�>�L��?�?�:��O�O�\�0�0�$
�%�#�#/�#6�#6�"7�9��
�
	�%�%�'�	��0�0��8�<�<�C��)�)�#�.�3�3��	�&�%��c�	�$�*�6�(�3���
��	��4�*�*�	�$�.�s�e�4���
��	�s/�B �'C� 	B=�)B8�8B=�C'�C"�"C'c�$�|j|�Sr��visit_clauselistr=s  r�visit_tuplez_EvaluatorCompiler.visit_tuple�����$�$�V�,�,rc�$�|j|�Srrjr=s  r�visit_expression_clauselistz._EvaluatorCompiler.visit_expression_clauselist�rmrc�$�|jD�cgc]}|j|���}}djjj	d��d�}t||d�}|r||j||�St
d|j����cc}w)Nr2�_�_clauselist_opz)Cannot evaluate clauselist with operator )r8r:�operatorr�rstripr4r)rr7�
evaluators�dispatchr9s     rrkz#_EvaluatorCompiler.visit_clauselist�s���9?���H��v�d�l�l�6�*��
�H��V�_�_�-�-�4�4�S�9�:�.�I�	��t�X�t�,��������V�<�<�$�;�F�O�O�;L�M��
��Is�B
c�d�|j|j�}|j|j�}d|jjjd��d�}t
||d�}|r||j|||�Stdt|�j�d|j����)Nr2rq�
_binary_opr3� with operator )	r:�left�rightrsrrtr4rr6)rr7�	eval_left�
eval_rightrvr9s      r�visit_binaryz_EvaluatorCompiler.visit_binary�s����L�L����-�	��\�\�&�,�,�/�
��F�O�O�4�4�;�;�C�@�A��L���t�X�t�,��������J��G�G�$�"�4��<�#8�#8�"9�:�"�O�O�,�.��
rc����fd�}|S)Nc�f��d}�D]&}||�}|turtcS|ry|xs|du}�(|ryy�NFT�rV)rB�has_null�sub_evaluaterYrus    �r�evaluatez;_EvaluatorCompiler.visit_or_clauselist_op.<locals>.evaluate�sI����H� *��$�S�)���O�+�*�*���#�4�u��}��
!+���rr�rrsrur7r�s  `  r�visit_or_clauselist_opz)_EvaluatorCompiler.visit_or_clauselist_op�s���	��rc����fd�}|S)Nc�d���D]*}||�}|turtcS|r�|�|turyyyr�)rVrQ)rBr�rYrus   �rr�z<_EvaluatorCompiler.visit_and_clauselist_op.<locals>.evaluate�s?��� *��$�S�)���O�+�*�*���}���(;�#� �!+�rrr�s  `  r�visit_and_clauselist_opz*_EvaluatorCompiler.visit_and_clauselist_op�s���
	��rc����fd�}|S)Nc���g}�D]7}||�}|turtcS|�|tury|j|��9t|�Sr)rVrQ�append�tuple)rB�valuesr�rYrus    �rr�zA_EvaluatorCompiler.visit_comma_op_clauselist_op.<locals>.evaluate�sQ����F� *��$�S�)���O�+�*�*��]�e�z�&9���
�
�e�$�
!+���=� rrr�s  `  r�visit_comma_op_clauselist_opz/_EvaluatorCompiler.visit_comma_op_clauselist_op�s���		!��rc�t�|jr|j||||�Std|j�d���)NzCustom operator zR can't be evaluated in Python unless it specifies a callable using `.python_impl`.)�python_impl�_straight_evaluater�opstring�rrsr|r}r7s     r�visit_custom_op_binary_opz,_EvaluatorCompiler.visit_custom_op_binary_op�sP������*�*��)�Z���
�%�"�8�#4�#4�"7�8"�"��
rc������fd�}|S)Nc�Z���|�}�|�}|tus|turtS||k(Srr��rB�left_val�	right_valr|r}s   ��rr�z7_EvaluatorCompiler.visit_is_binary_op.<locals>.evaluate��5��� ��~�H�"�3��I��?�*�i�?�.J�&�&��y�(�(rr�rrsr|r}r7r�s  ``  r�visit_is_binary_opz%_EvaluatorCompiler.visit_is_binary_op�����	)��rc������fd�}|S)Nc�Z���|�}�|�}|tus|turtS||k7Srr�r�s   ��rr�z;_EvaluatorCompiler.visit_is_not_binary_op.<locals>.evaluate�r�rrr�s  ``  r�visit_is_not_binary_opz)_EvaluatorCompiler.visit_is_not_binary_op�r�rc��������fd�}|S)Nc����|�}�|�}|tus|turtS|�|�y��|��|��Srr�)rBr�r�r|r}rss   ���rr�z7_EvaluatorCompiler._straight_evaluate.<locals>.evaluatesM��� ��~�H�"�3��I��?�*�i�?�.J�&�&��!�Y�%6���I�c�N�J�s�O�<�<rrr�s ```  rr�z%_EvaluatorCompiler._straight_evaluate�s���	=��rc�f�|jjjttfvs,|j
jjttfvrFt
d|j�d|jj�d|j
j����|j||||�S)NzCannot evaluate math operator "�" for datatypes �, )	rzr6�_type_affinityrrr{rrr�r�s     r�_straight_evaluate_numeric_onlyz2_EvaluatorCompiler._straight_evaluate_numeric_onlys����;�;���*�*���3
�
��\�\�
�
�
-�
-�g�w�5G�
G�$�1�(�2C�2C�1D�E�#�[�[�-�-�.�b����1B�1B�0C�E��
�
�&�&�x��J��O�Orc�,�|jd�|||�S)Nc��|tur||vSdSr�rQ��a�bs  rrCz:_EvaluatorCompiler.visit_in_op_binary_op.<locals>.<lambda>(s��1�J�#6��a��@�D�@r�r�r�s     r�visit_in_op_binary_opz(_EvaluatorCompiler.visit_in_op_binary_op&s!���&�&�@����	
�	
rc�,�|jd�|||�S)Nc��|tur||vSdSrr�r�s  rrCz>_EvaluatorCompiler.visit_not_in_op_binary_op.<locals>.<lambda>2s��q�
�':��!��D��Drr�r�s     r�visit_not_in_op_binary_opz,_EvaluatorCompiler.visit_not_in_op_binary_op.s#���&�&�D����	
�	
rc�p�t|jjjt�r.t|j
jjt�sFt
d|j�d|jj�d|j
j����|jd�|||�S)Nz&Cannot evaluate concatenate operator "r�r�c��||zSrrr�s  rrCz>_EvaluatorCompiler.visit_concat_op_binary_op.<locals>.<lambda>Fs���Q�r)	r^rzr6r�r
r{rrr�r�s     r�visit_concat_op_binary_opz,_EvaluatorCompiler.visit_concat_op_binary_op8s�����K�K���+�+�\�
��F�L�L�-�-�<�<�l�K�$���%�%�&�'�#�[�[�-�-�.�b����1B�1B�0C�E��
��&�&��	�:�v�
�	
rc�,�|jd�|||�S)Nc�$�|j|�Sr)�
startswithr�s  rrCzB_EvaluatorCompiler.visit_startswith_op_binary_op.<locals>.<lambda>Ms�����a�rr�r�s     r�visit_startswith_op_binary_opz0_EvaluatorCompiler.visit_startswith_op_binary_opIs ���&�&�(�)�Z��
�	
rc�,�|jd�|||�S)Nc�$�|j|�Sr)�endswithr�s  rrCz@_EvaluatorCompiler.visit_endswith_op_binary_op.<locals>.<lambda>Ts�����A�rr�r�s     r�visit_endswith_op_binary_opz._EvaluatorCompiler.visit_endswith_op_binary_opPs ���&�&�&�	�:�v�
�	
rc����|j|j��|jtjur�fd�}|Stdt
|�j�d|j����)Nc�<���|�}|turtS|�y|Srr�)rBrY�
eval_inners  �rr�z0_EvaluatorCompiler.visit_unary.<locals>.evaluate[s*���"�3����O�+�*�*��]�� �y� rr3ry)r:r<rsr�invrr6r)rr7r�r�s   @r�visit_unaryz_EvaluatorCompiler.visit_unaryWsd����\�\�&�.�.�1�
��?�?�i�m�m�+�
!��O� ��t�F�|�4�4�5�6�#�_�_�-�
/�
�	
rc�`��|jr|j��n|j��fd�S)Nc����Srr)rB�vals �rrCz4_EvaluatorCompiler.visit_bindparam.<locals>.<lambda>ns���3r)�callablerY)rr7r�s  @r�visit_bindparamz"_EvaluatorCompiler.visit_bindparamis%����?�?��/�/�#�C��,�,�C��rr)(rrrr0r:r>rErIrLrhrlrorkr~r�r�r�r�r�r�r�r��visit_add_binary_op�visit_mul_binary_op�visit_sub_binary_op�visit_mod_binary_op�visit_truediv_binary_op�visit_lt_binary_op�visit_le_binary_op�visit_ne_binary_op�visit_gt_binary_op�visit_ge_binary_op�visit_eq_binary_opr�r�r�r�r�r�r�rrrr-r-=s���%�	�,� �!� �4&�l-�-���� 
������P�:��9��9��9��=��+��+��+��+��+��+��
�
�
�"
�
�
�$rr-c�Z�|dk(rtdd�tStdt�d|����)N�EvaluatorCompilerz�Direct use of 'EvaluatorCompiler' is not supported, and this name will be removed in a future release.  '_EvaluatorCompiler' is for internal use onlyz2.0zmodule z has no attribute )rr-�AttributeErrorr)�names r�__getattr__r�qs>���"�"��
<�
�		
�"�!��w�x�l�2D�T�H�M�N�NrN)r��str�returnzType[_EvaluatorCompiler])�__doc__�
__future__r�typingr�rrc�baserrr
�sqlrr�sql.sqltypesr
rr�utilr�InvalidRequestErrorr�ColumnOperatorsrr(rQrVr-r�rrr�<module>r�s����#���&������'�"�"�"�	��0�0�	��	�)�)���Y�.�.���[�
� �"��q�q�h	
Or

ZeroDay Forums Mini