HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyc
�
���ec@@s6dZddlmZddlZddlmZddlmZddlmZdd	lm	Z	e	j
e�Zd
�Z
defd��YZd
efd��YZdefd��YZd�Zd�Zde	jee�fd��YZdefd��YZdefd��YZdefd��YZdS(s�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``.

i(tabsolute_importNi(t_ClsLevelDispatch(t_EmptyListener(t_JoinedListeneri(tutilcC@s)|jd�r|dkp(|jd�S(Nt_tdispatcht	_sa_event(t
startswith(tname((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_is_event_namest_UnpickleDispatchcB@seZdZd�ZRS(s�Serializable callable that re-generates an instance of
    :class:`_Dispatch` given a particular :class:`.Events` subclass.

    cC@sJxC|jD],}d|jkr
|jdjj|�Sq
Wtd��dS(NRs*No class with a 'dispatch' member present.(t__mro__t__dict__Rt
_for_classtAttributeError(tselft
_instance_clstcls((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt__call__/s
(t__name__t
__module__t__doc__R(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR)st	_DispatchcB@s�eZdZdZej�Zdd�Zd�Z	e
d��Ze
d��Zd	�Z
d
�Zd�Zd�Zed
�Zd�ZRS(s;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.

    t_parentRR
t_empty_listenersc@sw||_�|_�rjy|j�|_Wqstk
rf�fd�|jD�|_|j�<qsXn	i|_dS(Nc@s%i|]}t|��|j�qS((RR	(t.0tls(tinstance_cls(sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pys
<dictcomp>^s	(RRt_empty_listener_regRtKeyErrort_event_descriptors(RtparentR((RsF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt__init__Ss		
"cC@sLy|j|}Wntk
r0t|��nXt||j|�|SdS(N(RRRtsetattrR	(RR	R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt__getattr__ds
cc@s&x|jD]}t||�Vq
WdS(N(t_event_namestgetattr(Rtk((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRoscC@s
|jjS(N(t_eventst_listen(R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR(vscC@s|j||�S(N(t	__class__(RR((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRzscC@s|j}|j|�S(N(R)R(RtinstanceR((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt
_for_instance}s	cC@sZd|jjkrJtd|jjtfi|jd6�}||j_n|j||�S(s�Create a 'join' of this :class:`._Dispatch` and another.

        This new dispatcher will dispatch events to both
        :class:`._Dispatch` objects.

        t_joined_dispatch_clssJoined%st	__slots__(R)R
ttypeRt_JoinedDispatcherR$R,(RtotherR((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_join�s
cC@st�|jffS(N(RR(R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt
__reduce__�scC@sUxN|jD]C}t|t�r%q
nt||j�j|�j|d|�q
WdS(sIPopulate from the listeners in another :class:`_Dispatch`
        object.tonly_propagateN(Rt
isinstanceRR%R	t
for_modifyt_update(RR0R3R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR6�s
cC@s+x$|jD]}|j|�j�q
WdS(N(RR5tclear(RR((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_clear�s(RRR
RN(RRRR-tweakreftWeakKeyDictionaryRtNoneR!R#tpropertyRR(RR+R1R2tTrueR6R8(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR9s					
t
_EventMetacB@seZdZd�ZRS(sKIntercept new Event subclasses and create
    associated _Dispatch classes.cC@s-t||||�tj||||�dS(N(t_create_dispatcher_classR.R!(Rt	classnametbasestdict_((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR!�s(RRRR!(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR>�scC@s�t|d�r|jj}nt}g|D]}t|�r+|^q+}td||fi|d6�}||_|j||�}x?|jD]4}t||t	|||��t
|j|�q�Wxo|jD]d}	t
|	t�r�|	tk	r�x@|	jjjD],}
t||
j|
�|jj|
j�qWq�q�Wt|dd�r�|j}t|d�r�d|jkr�t|�|j_q�t|�|j_ndS(sRCreate a :class:`._Dispatch` class corresponding to an
    :class:`.Events` class.Rs
%sDispatchR-t_dispatch_targett_slots_dispatchN(thasattrRR)RR
R.R$t
_set_dispatchR"Rt_registrarstappendt	__bases__t
issubclassR'RR	R%R;RCR-tslots_dispatchert
dispatcher(RR@RARBt
dispatch_baseR&tevent_namestdispatch_clst
dispatch_insttsuper_Rtthe_cls((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR?�s,%		cC@s@x9|jjD]+}t|j|�t|s
t|=q
q
WdS(N(RR$RGtremove(RR&((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_remove_dispatcher�s
tEventscB@seeZdZed��Zed��Zeeeeed��Zed��Z	ed��Z
RS(s>Define event listening functions for a particular target type.cC@s|d�|_||_|jS(N(R;RR'(RRO((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRF�s	c@s}�fd�}�fd�}t�d�ry||jj�sr|t|jj�sr|t�ry||jj�ry�SndS(Nc@st�fd�|D��S(Nc3@s!|]}t�j|�VqdS(N(R4R(Rtt(ttarget(sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pys	<genexpr>�s(tall(ttypes(RW(sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pytdispatch_is�sc@st�jj|�S(N(R4RR (RV(RW(sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pytdispatch_parent_is�sR(RERR)R.R/(RRWRZR[((RWsF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_accept_with�sc	C@s&|jd|d|d|d|�dS(Nt	propagatetinserttnamedtasyncio(tbase_listen(Rt	event_keyR]R^R_R`((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR(s		cC@s|j�dS(N(RS(RRb((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt_remove
scC@s|jj�dS(N(RR8(R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR8s(RRRtstaticmethodRFtclassmethodR\tFalseR(RcR8(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRU�sR/cB@sDeZdZdZd�Zd�Zed��Zed��ZRS(	s5Represent a connection between two _Dispatch objects.tlocalR RcC@s%||_||_|jj|_dS(N(RgR R(RRgR ((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR!s		cC@sAt|j|�}t|j|j|�}t||j|�|S(N(R%RgRR R	R"(RR	Rtjl((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR# scC@s
|jjS(N(R R((R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR((scC@s
|jjS(N(R R'(R((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR',s(RgR R(	RRRR-R!R#R<R(R'(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR/s		RLcB@s eZdZd�Zd�ZRS(s�Descriptor used by target classes to
    deliver the _Dispatch class at the class level
    and produce new _Dispatch instances for target
    instances.

    cC@s|j|_||_dS(N(Rtevents(RRi((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyR!9scC@sp|dkr|jS|jj|�}y||jd<Wn3tk
rk}tjtd|f�d|�nX|S(NRsGtarget %r doesn't have __dict__, should it be defining _slots_dispatch?treplace_context(R;RR+R
RRtraise_t	TypeError(RtobjRtdisptae((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt__get__=s
(RRRR!Rp(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRL1s	RKcB@seZd�ZRS(cC@sH|dkr|jSt|d�r)|jS|jj|�}||_|S(NRD(R;RRERDR+(RRmRRn((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRpPs	(RRRp(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyRKOs(Rt
__future__RR9tattrRRRtRtdefaultdicttlistRGR
tobjectRRR.R>R?RTtwith_metaclassRUR/RLRK(((sF/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/event/base.pyt<module>s"	
k		)	"9