관리-도구
편집 파일: mapped_collection.cpython-38.pyc
U -?�f�L � @ s2 d dl mZ d dlZd dlmZ d dlmZ d dlmZ d dlmZ d dlmZ d dlm Z d d lm Z d d lmZ d dlmZ d dlm Z d d lmZ d dlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z e �r^ddlm!Z! ddlm"Z" ddlm#Z# ddl$m%Z% ed ed!�Z&ed"ed!�Z'G d#d$� d$ee& �Z(G d%d&� d&e(e& �Z)d'd(�d)d*d+d,�d-d.�Z*G d/d0� d0�Z+d'd(�d1d*d2d3�d4d5�Z,d'd(�d6d*d7d8�d9d:�Z-G d;d<� d<ee&e'f �Z.d6d*d+d8�d=d>�Z/e.Z0e-Z1e,Z2e*Z3dS )?� )�annotationsN)�Any)�Callable)�Dict)�Generic)�List)�Optional)�Sequence)�Tuple)�Type)� TYPE_CHECKING)�TypeVar)�Union� )�base)� collection)�collection_adapter� )�exc)�util)� coercions)� expression)�roles)�Missing)� MissingOr)�Literal)�AttributeEventToken)�Mapper)�CollectionAdapter)� ColumnElement�_KT)�bound�_VTc @ sR e Zd ZdZdZddd�dd�Zdd �d d�Zddd �dd�Zddd�dd�ZdS )�_PlainColumnGetterz�Plain column getter, stores collection of Column objects directly. Serializes to a :class:`._SerializableColumnGetterV2` which has more expensive __call__() performance and some rare caveats. )�cols� composite�Sequence[ColumnElement[_KT]]�None�r$ �returnc C s || _ t|�dk| _d S �Nr )r$ �lenr% )�selfr$ � r- �P/opt/hc_python/lib64/python3.8/site-packages/sqlalchemy/orm/mapped_collection.py�__init__: s z_PlainColumnGetter.__init__�cTuple[Type[_SerializableColumnGetterV2[_KT]], Tuple[Sequence[Tuple[Optional[str], Optional[str]]]]]�r) c C s t �| j�S �N)�_SerializableColumnGetterV2�_reduce_from_colsr$ �r, r- r- r. � __reduce__>