File: //home/arjun/.local/lib/python3.10/site-packages/sqlalchemy/orm/__pycache__/exc.cpython-310.pyc
o
���g� � @ s� d Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlm Z d d
l
mZ ddlm
Z dd
lm
Z
ddl
mZ ddl
mZ er^d dlmZ d dlmZ d dlmZ e ded�ZeefZ G dd� dej�ZeZG dd� dej�ZG dd� dej�ZG dd� dej�Z G dd� dej�Z!G dd � d e�Z"G d!d"� d"e�Z#G d#d$� d$ej�Z$G d%d&� d&ej�Z%G d'd(� d(ej�Z&d4d-d.�Z'e
�(d/�d5d1d2��Z)d3S )6zSQLAlchemy ORM exceptions.� )�annotations)�Any)�Optional)�Tuple)�Type)�
TYPE_CHECKING)�TypeVar� )�_mapper_property_as_plain_name� )�exc)�util)�MultipleResultsFound)�
NoResultFound)�LoaderStrategy)�MapperProperty)�
InstanceState�_T)�boundc @ � e Zd ZdZdS )�StaleDataErroraa An operation encountered database state that is unaccounted for.
Conditions which cause this to happen include:
* A flush may have attempted to update or delete rows
and an unexpected number of rows were matched during
the UPDATE or DELETE statement. Note that when
version_id_col is used, rows in UPDATE or DELETE statements
are also matched against the current known version
identifier.
* A mapped object with version_id_col was refreshed,
and the version number coming back from the database does
not match that of the object itself.
* A object is detached from its parent object, however
the object was previously attached to a different parent
identity which was garbage collected, and a decision
cannot be made if the new parent was really the most
recent "parent".
N��__name__�
__module__�__qualname__�__doc__� r r �E/home/arjun/.local/lib/python3.10/site-packages/sqlalchemy/orm/exc.pyr $ � r c @ r )�
FlushErrorz0A invalid condition was detected during flush().Nr r r r r r @ r r c @ r )�
UnmappedErrorz?Base for exceptions that involve expected mappings not present.Nr r r r r r D r r c @ r )�ObjectDereferencedErrorzPAn operation cannot complete due to an object being garbage
collected.
Nr r r r r r! H r r! c @ s e Zd ZdZdZdS )�DetachedInstanceErrorzSAn attempt to access unloaded attributes on a
mapped instance that is detached.�bhk3N)r r r r �coder r r r r"