File: //usr/local/lib/python3.10/dist-packages/sqlalchemy/orm/__pycache__/properties.cpython-310.pyc
o
���g�q � @ s~ d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z dd lm
Z
dd
lmZ ddlmZ ddlm
Z
dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z ddlm!Z! ddl"m#Z# ddl$m%Z% d d!lm&Z' d d"lm(Z( d d#lm)Z) d d$lm$Z$ d d%l*m+Z+ d d&l*m,Z, d d'l-m.Z. d d(l/m0Z0 d d)l/m1Z1 d d*l2m3Z3 d d+l4m5Z5 d d,l4m6Z6 d d-l4m7Z7 d d.l4m8Z8 d d/l4m9Z9 d d0l4m:Z: d d1l4m;Z; e
�rydd2l<m=Z= dd3l<m>Z> dd4l<m?Z? dd5l<m@Z@ dd6lmAZA dd7lBmCZC dd8lDmEZE dd9lFmGZG dd:lHmIZI dd;lHmJZJ d d<lKmLZL d d=lMmNZN d d>lMmOZO d d?lPmQZQ d d@l4mRZR d dAl4mSZS edBedC�ZTedDedC�ZUedEdFdC�ZVg dG�ZWe)jXG dHdI� dIeeT e!eT ee)jY��ZZG dJdK� dKeZeT eeT �Z[G dLdM� dMeeeT eeT �Z\dNS )Oz|MapperProperty implementations.
This is a private module which defines the behavior of individual ORM-
mapped attributes.
� )�annotations)�Any)�cast)�Dict)�List)�Optional)�Sequence)�Set)�Tuple)�Type)�
TYPE_CHECKING)�TypeVar)�Union� )�
attributes)�strategy_options)�_DeclarativeMapped)�class_mapper)�CompositeProperty)�ConcreteInheritedProperty)�SynonymProperty)�_AttributeOptions)�_DEFAULT_ATTRIBUTE_OPTIONS)�_IntrospectsAnnotations)�_MapsColumns)�MapperProperty)�PropComparator)�StrategizedProperty)�RelationshipProperty)�de_stringify_annotation� )�exc)�
ForeignKey)�log)�util)� coercions)�roles)�_NoArg)�Column)�SchemaConst)�
TypeEngine)�de_optionalize_union_types)�get_args)�
includes_none)�
is_fwd_ref)� is_pep593)� is_pep695)�Self)�_IdentityKeyType)�
_InstanceDict)�_ORMColumnExprArgument)�
_RegistryType)�Mapped)�_ClassScanMapperConfig)�Mapper)�Session)�_InstallLoaderCallableProto)�
InstanceState)� _InfoType)�
ColumnElement)�NamedColumn)�OperatorType)�_AnnotationScanType)�RODescriptorReference�_T)�bound�_PT�_NCzNamedColumn[Any])�ColumnPropertyr r r r c s4 e Zd ZU dZejZdZ dZde d<