# uncompyle6 version 3.9.2 # Python bytecode version base 3.7.0 (3394) # Decompiled from: Python 3.8.19 (default, Mar 20 2024, 15:27:52) # [Clang 14.0.6 ] # Embedded file name: /var/user/app/device_supervisorbak/device_supervisor/lib/libevent.py # Compiled at: 2024-04-18 03:12:55 # Size of source mod 2**32: 1321 bytes from _libevent import * import weakref class Timer(Event): __doc__ = "Simplified class for timers." __slots__ = "_callback" def __init__(self, base, callback, userdata=None): if not callable(callback): raise TypeError("the callback must be callable") def _fire(evt, fd, what, userdata, selfref=weakref.ref(self)): """Special internal class to prevent circular references.""" self = selfref() if self is not None: self._callback(self, userdata) super(Timer, self).__init__(base, -1, 0, _fire, userdata) self._callback = callback class Signal(Event): __doc__ = "Simplified class for signals." __slots__ = "_callback" def __init__(self, base, signum, callback, userdata=None): if not callable(callback): raise TypeError("the callback must be callable") def _fire(evt, fd, what, userdata, selfref=weakref.ref(self)): """Special internal class to prevent circular references.""" self = selfref() if self is not None: self._callback(self, fd, userdata) super(Signal, self).__init__(base, signum, EV_SIGNAL | EV_PERSIST, _fire, userdata) self._callback = callback