관리-도구
편집 파일: base.cpython-311.pyc
� �܋f]} � � � d Z ddlZddlZddlmZ ddlmZ ddlmZ ddlmZ dd lm Z dd l mZ ddl mZ ddl m Z ddl mZ dd l mZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddl mZ dxa a!d� Z"d� Z#d� Z$d(d�Z%d� Z&d� Z' G d� d e(� � Z) G d!� d"e)� � Z*d#� Z+d$� Z,d%� Z-d&e-_. d'� Z/dS ))z(Internal implementation for declarative.� N)�instrumentation� )�clsregistry� )�event)�exc)�util)�class_mapper)�mapper)� mapperlib)�synonym)�QueryableAttribute)�_is_mapped_class)�InspectionAttr)�MapperProperty)�ColumnProperty)�CompositeProperty)�Column)�Table)� expression)�topologicalc � � t � | � � rt � | � � S t | � � rt | d�� � S d S )NF)� configure)�_DeferredMapperConfig�has_cls�config_for_clsr r ��clss �V/opt/cloudlinux/venv/lib64/python3.11/site-packages/sqlalchemy/ext/declarative/base.py�_declared_mapping_infor % sT � ��$�$�S�)�)� �$�3�3�C�8�8�8� �#� � � ��C�5�1�1�1�1��t� c � � | t u rd S t | dd�� � r!| j D ]}t |� � }|�|c S �d S t | � � }|�|S | S )N�__abstract__T��strict)�object�_get_immediate_cls_attr� __bases__�"_resolve_for_abstract_or_classical�"_dive_for_classically_mapped_class)r �sup� classicals r r) r) 0 s} � � �f�}�}��t��s�N�4�@�@�@� ��=� � �C�4�S�9�9�C���� � � � � �4�6�s�;�;� �� ����Jr! c � � t | d� � rd S t j | � � }|�| S | j D ]}t |� � }|�|c S �d S )N�_decl_class_registry)�hasattrr �manager_of_classr( r* )r �managerr+ r s r r* r* C sp � � �s�*�+�+� ��t��.�s�3�3�G���� ��=� � �C�7��<�<�F��!�� � � � "� �4r! Fc �� � t | t � � sdS | j D ]V}t |d� � }| ot |� � du}||j v r'|| u s|r || j v rn |s|st ||� � c S �WdS )a� return an attribute of the class that is either present directly on the class, e.g. not on a superclass, or is from a superclass but this superclass is a non-mapped mixin, that is, not a descendant of the declarative base and is also not classically mapped. This is used to detect attributes that indicate something about a mapped class independently from any mapped classes that it may inherit from. Nr. )� issubclassr&