Files
2025-04-30 08:48:49 -05:00

45 lines
1.6 KiB
Python

# 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