관리-도구
편집 파일: evaluator.cpython-38.pyc
U -?�f�. � @ s� d Z ddlmZ ddlmZ ddlmZ ddlm Z ddlm Z ddlmZ dd lmZ dd lm Z ddlmZ ddlmZ dd lmZ ddlmZ G dd� dej�ZG dd� dej�ZG dd� dej�Ze� Ze� ZG dd� d�Zddd�dd�ZdS )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)�Integer)�Numeric)�warn_deprecatedc @ s e Zd ZdS )�UnevaluatableErrorN)�__name__� __module__�__qualname__� r r �H/opt/hc_python/lib64/python3.8/site-packages/sqlalchemy/orm/evaluator.pyr $ s r c @ s e Zd Zdd� Zdd� ZdS )� _NoObjectc O s d S �Nr ��self�arg�kwr r r �operate) s z_NoObject.operatec O s d S r r r r r r �reverse_operate, s z_NoObject.reverse_operateN�r r r r r r r r r r ( s r c @ s e Zd Zdd� Zdd� ZdS )�_ExpiredObjectc O s | S r r r r r r r 1 s z_ExpiredObject.operatec O s | S r r r r r r r 4 s z_ExpiredObject.reverse_operateNr r r r r r 0 s r c @ s e Zd Zd6dd�Zdd� Zdd� Zdd � Zd d� Zdd � Zdd� Z dd� Z dd� Zdd� Zdd� Z dd� Zdd� Zdd� Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� ZeZeZeZeZeZeZeZeZeZeZeZ d(d)� Z!d*d+� Z"d,d-� Z#d.d/� Z$d0d1� Z%d2d3� Z&d4d5� Z'dS )7�_EvaluatorCompilerNc C s || _ d S r )� target_cls)r r r r r �__init__= s z_EvaluatorCompiler.__init__c G sF |rt |f|�� }t| d|j� �d �}|s>tdt|�j� ���||�S )N�visit_�Cannot evaluate )r �getattrZ__visit_name__r �typer )r �clause�clauses�methr r r �process@ s �z_EvaluatorCompiler.processc C s | � |j�S r )r) �element�r r&