/opt/cloudlinux/venv/lib/python3.11/site-packages/sqlalchemy/event/__pycache__
Edit: /opt/cloudlinux/venv/lib/python3.11/site-packages/sqlalchemy/event/__pycache__/attr.cpython-311.pyc (23793B)
§
(ÔuSm UMã ód — d Z ddlmZ ddlmZ ddlZddlmZ ddlZddlm Z ddlm
Z
d d
lmZ d dlmZ d dlm
Z
G d
„ dej ¦ « Z G d„ de¦ « Z G d„ de¦ « Z G d„ de¦ « Z G d„ de¦ « Z G d„ de¦ « Z G d„ de¦ « Z G d„ de¦ « ZdS )a• Attribute implementation for _Dispatch classes.
The various listener targets for a particular event class are represented
as attributes, which refer to collections of listeners to be fired off.
These collections can exist at the class level as well as at the instance
level. An event is fired off using code like this::
some_object.dispatch.first_connect(arg1, arg2)
Above, ``some_object.dispatch`` would be an instance of ``_Dispatch`` and
``first_connect`` is typically an instance of ``_ListenerCollection``
if event listeners are present, or ``_EmptyListener`` if none are present.
The attribute mechanics here spend effort trying to ensure listener functions
are available with a minimum of function call overhead, that unnecessary
objects aren't created (i.e. many empty per-instance listener collections),
as well as that everything is garbage collectable when owning references are
lost. Other features such as "propagation" of listener functions across
many ``_Dispatch`` instances, "joining" of multiple ``_Dispatch`` instances,
as well as support for subclass propagation (e.g. events assigned to
``Pool`` vs. ``QueuePool``) are all implemented here.
é )Úabsolute_import)Úwith_statementN)Úchainé )Úlegacy)Úregistryé )Úexc)Úutil)Ú threadingc ó — e Zd ZdZd„ ZdS )Ú
RefCollection)Úrefc ó@ — t j | t j ¦ « S ©N)Úweakrefr r Ú_collection_gced©Úselfs úi/builddir/build/BUILD/cloudlinux-venv-1.0.12/venv/lib64/python3.11/site-packages/sqlalchemy/event/attr.pyÚ_memoized_attr_refz RefCollection._memoized_attr_ref1 s € ÝŒ{˜4¥Ô!:Ñ;Ô;Ð;ó N)Ú__name__Ú
__module__Ú__qualname__Ú __slots__r © r r r r . s( € € € € € Ø€Ið<ð <ð <ð <ð