Hacked By AnonymousFox
�
�܋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&