Ë
    ðŸ|h  ã                   ó(   — d Z ddlZdgZi Zdd„Zd„ Zy)aö  Class-based event handlers


A light-weight event-handler framework based on event classes.

Handlers are registered for event classes:

    >>> import zope.event.classhandler

    >>> class MyEvent(object):
    ...     pass

    >>> def handler1(event):
    ...     print("handler1 %r" % event.__class__.__name__)

    >>> zope.event.classhandler.handler(MyEvent, handler1)

Descriptor syntax:

    >>> @zope.event.classhandler.handler(MyEvent)
    ... def handler2(event):
    ...     print("handler2 %r" % event.__class__.__name__)

    >>> class MySubEvent(MyEvent):
    ...     pass

    >>> @zope.event.classhandler.handler(MySubEvent)
    ... def handler3(event):
    ...     print("handler3 %r" % event.__class__.__name__)


Subscribers are called in class method-resolution order, so only
new-style event classes are supported, and then by order of registry.

    >>> import zope.event
    >>> zope.event.notify(MySubEvent())
    handler3 'MySubEvent'
    handler1 'MySubEvent'
    handler2 'MySubEvent'

é    NÚhandlerc                 óà   ‡ — |€ˆ fd„S t         s-t        j                  j                  j	                  t
        «       ‰ t         vr|gt         ‰ <   nt         ‰    j	                  |«       |rt        S y)z¯ Define an event handler for a (new-style) class.

    This can be called with a class and a handler, or with just a
    class and the result used as a handler decorator.
    Nc                 ó   •— t        ‰| d«      S )NT)r   )ÚfuncÚevent_classs    €úV/var/www/html/test/engine/venv/lib/python3.12/site-packages/zope/event/classhandler.pyú<lambda>zhandler.<locals>.<lambda>;   s   ø€ œG K°°tÓ<€ ó    )ÚregistryÚzopeÚeventÚsubscribersÚappendÚdispatchr   )r   Úhandler_Ú
_decorators   `  r   r   r   4   s`   ø€ ð ÐÛ<Ð<åÜ
‰
×Ñ×%Ñ%¤hÔ/àœ(Ñ"Ø!) 
ŒÒäÑ×$Ñ$ XÔ.áÜˆð r
   c                 ó€   — | j                   j                  D ]%  }t        j                  |d«      D ]
  } || «       Œ Œ' y )N© )Ú	__class__Ú__mro__r   Úget)r   r   r   s      r   r   r   I   s<   € Ø—‘×.Ñ.ò ˆÜ—|‘| K°Ó4ò 	ˆGÙENñ	ñr
   )NF)Ú__doc__Ú
zope.eventr   Ú__all__r   r   r   r   r
   r   ú<module>r      s-   ðñ(óR ð ð€ð €óó*r
   