Repository URL to install this package:
|
Version:
4.0.111 ▾
|
contego
/
home
/
tvault
/
.virtenv
/
lib
/
python2.7
/
site-packages
/
sqlalchemy
/
event
/
base.pyc
|
|---|
ó
EYc @@ s d Z d d l m Z d d l Z d d l m Z d d l m Z m Z m Z e j
e Z d Z
d e f d
YZ d e f d YZ d
e f d YZ d Z d Z d e j e e f d YZ d e f d YZ d e f d YZ d S( 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 ( t absolute_importNi ( t utili ( t _JoinedListenert _EmptyListenert _ClsLevelDispatchc C@ s | j d o | d k S( Nt _t dispatch( t
startswith( t name( ( sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pyt _is_event_name s t _UnpickleDispatchc B@ s e Z d Z d Z RS( s Serializable callable that re-generates an instance of
:class:`_Dispatch` given a particular :class:`.Events` subclass.
c C@ sJ xC | j D], } d | j k r
| j d j j | Sq
Wt d d S( NR s* No class with a 'dispatch' member present.( t __mro__t __dict__t dispatch_clst
_for_classt AttributeError( t selft
_instance_clst cls( ( sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pyt __call__' s
( t __name__t
__module__t __doc__R ( ( ( sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pyR
! s t _Dispatchc B@ s e Z d Z d Z e j Z d d Z d Z e
d Z d Z d Z
e
d
Z d Z d Z e d
Z d Z RS( 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 _parentR R t _empty_listenersc @ s} | | _ | _ rp y | j | _ Wqy t k
rl t f d | j D | _ | j <qy Xn i | _ d S( Nc 3@ s' | ] } | j t | f Vq d S( N( R R ( t .0t ls( t instance_cls( sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pys <genexpr>S s ( R R t _empty_listener_regR t KeyErrort dictt _event_descriptors( R t parentR ( ( R sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pyt __init__J s
%c C@ sL y | j | } Wn t k
r0 t | n Xt | | j | | Sd S( N( R R R t setattrR ( R R R ( ( sJ /home/tvault/.virtenv/lib/python2.7/site-packages/sqlalchemy/event/base.pyt __getattr__Y s
c c@ s&