Hacked By AnonymousFox
�
�܋f�d � � � d Z ddlmZ ddlZddlmZ ddlmZ ddlm Z ddlm
Z
dd lmZ dd
lmZ ddlm
Z
ddlmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dxZxZZdZ G d� de e
ej � � Z G d� dej � � Z G d� de� � Z G d� de � � Z! G d� de � � Z"dS ) aI
Contains various base classes used throughout the ORM.
Defines some key base classes prominent within the internals,
as well as the now-deprecated ORM extension classes.
Other than the deprecated extensions, this module and the
classes within are mostly private, though some attributes
are exposed when inspecting mappings.
� )�absolute_importN� )�exc)�
path_registry)�_MappedAttribute)�EXT_CONTINUE)�EXT_SKIP)�EXT_STOP)�InspectionAttr)�InspectionAttrInfo)�
MANYTOMANY)� MANYTOONE)�
NOT_EXTENSION)� ONETOMANY� )�inspect)�util)� operators)�AttributeExtensionr r
r r r
r r �LoaderStrategy�MapperExtension�MapperOption�MapperProperty�PropComparator�SessionExtension�StrategizedPropertyc � � e Zd ZdZdZ e� � Z dZ d� Zd� Z d� Z
dd�Zd � Zd
� Z
d� Zd� Zed
� � � Zd� Zd� Zd� Zd� ZdS )r a� Represent a particular class attribute mapped by :class:`_orm.Mapper`.
The most common occurrences of :class:`.MapperProperty` are the
mapped :class:`_schema.Column`, which is represented in a mapping as
an instance of :class:`.ColumnProperty`,
and a reference to another class produced by :func:`_orm.relationship`,
represented in the mapping as an instance of
:class:`.RelationshipProperty`.
)�_configure_started�_configure_finished�parent�key�infoTc � � i S )a� Info dictionary associated with the object, allowing user-defined
data to be associated with this :class:`.InspectionAttr`.
The dictionary is generated when first accessed. Alternatively,
it can be specified as a constructor argument to the
:func:`.column_property`, :func:`_orm.relationship`, or
:func:`.composite`
functions.
.. versionchanged:: 1.0.0 :attr:`.MapperProperty.info` is also
available on extension types via the
:attr:`.InspectionAttrInfo.info` attribute, so that it can apply
to a wider variety of ORM and extension constructs.
.. seealso::
:attr:`.QueryableAttribute.info`
:attr:`.SchemaItem.info`
� ��selfs �P/opt/cloudlinux/venv/lib64/python3.11/site-packages/sqlalchemy/orm/interfaces.py�_memoized_attr_infoz"MapperProperty._memoized_attr_infoc s � �, � � c � � dS )a Called by Query for the purposes of constructing a SQL statement.
Each MapperProperty associated with the target mapper processes the
statement referenced by the query context, adding columns and/or
criterion as appropriate.
Nr$ )r&