PATH:
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
sqlalchemy
/
event
/
__pycache__
� mO0�;ܒ� �F � d Z ddlmZ ddlZddlmZ ddlmZ ddlmZ dd lm Z e j e� � Zd � Z G d� de� � Z G d � de� � Z G d� de� � Zd� Zd� Z G d� d e j ee� � � � Z G d� de� � Z G d� de� � ZdS )a� Base implementation classes. The public-facing ``Events`` serves as the base class for an event interface; its public attributes represent different kinds of events. These attributes are mirrored onto a ``_Dispatch`` class, which serves as a container for collections of listener functions. These collections are represented both at the class level of a particular ``_Dispatch`` class as well as within instances of ``_Dispatch``. � )�absolute_importN� )�_ClsLevelDispatch)�_EmptyListener)�_JoinedListener� )�utilc �d � | � d� � o| dk p| � d� � S )N�_�dispatch� _sa_event)� startswith)�names �i/builddir/build/BUILD/cloudlinux-venv-1.0.10/venv/lib64/python3.11/site-packages/sqlalchemy/event/base.py�_is_event_namer s9 � � �O�O�C� � � �7�T�Z�%7�&� ���� %� %�&� c � � e Zd ZdZd� ZdS )�_UnpickleDispatchz�Serializable callable that re-generates an instance of :class:`_Dispatch` given a particular :class:`.Events` subclass. c � � |j D ]2}d|j v r'|j d j � |� � c S �3t d� � �)Nr z*No class with a 'dispatch' member present.)�__mro__�__dict__r � _for_class�AttributeError)�self� _instance_cls�clss r �__call__z_UnpickleDispatch.__call__/ sh � � �(� O� O�C��S�\�)�)��|�J�/�8�C�C�!�� � � � � *� !�!M�N�N�Nr N)�__name__� __module__�__qualname__�__doc__r � r r r r ) s2 � � � � � �� � O� O� O� O� Or r c � � e Zd ZdZdZ ej � � Zdd�Zd� Z e d� � � Ze d� � � Zd� Z d � Zd � Zd� Zdd �Zd� ZdS )� _Dispatcha; Mirror the event listening definitions of an Events class with listener collections. Classes which define a "dispatch" member will return a non-instantiated :class:`._Dispatch` subclass when the member is accessed at the class level. When the "dispatch" member is accessed at the instance level of its owner, an instance of the :class:`._Dispatch` class is returned. A :class:`._Dispatch` class is generated for each :class:`.Events` class defined, by the :func:`._create_dispatcher_class` function. The original :class:`.Events` classes remain untouched. This decouples the construction of :class:`.Events` subclasses from the implementation used by the event internals, and allows inspecting tools like Sphinx to work in an unsurprising way against the public API. )�_parentr r �_empty_listenersNc �� �� || _ �| _ �rH | j � | _ d S # t $ r& �fd�|j D � � x| _ | j �<