aboutsummaryrefslogtreecommitdiff
path: root/tools/cru-py/cru/util/_event.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/cru-py/cru/util/_event.py')
-rw-r--r--tools/cru-py/cru/util/_event.py41
1 files changed, 0 insertions, 41 deletions
diff --git a/tools/cru-py/cru/util/_event.py b/tools/cru-py/cru/util/_event.py
deleted file mode 100644
index 813e33f..0000000
--- a/tools/cru-py/cru/util/_event.py
+++ /dev/null
@@ -1,41 +0,0 @@
-from typing import ParamSpec, TypeVar, Callable
-
-from ._list import CruInplaceList, CruList
-
-P = ParamSpec('P')
-R = TypeVar('R')
-F = Callable[P, R]
-
-
-class EventHandlerToken:
- def __init__(self, event: "Event", handler: F, once: bool = False) -> None:
- self._event = event
- self._handler = handler
- self._once = once
-
- @property
- def event(self) -> "Event":
- return self._event
-
- @property
- def handler(self) -> F:
- return self._handler
-
- @property
- def once(self) -> bool:
- return self._once
-
-
-class Event:
- def __init__(self, name: str) -> None:
- self._name = name
- self._tokens: CruInplaceList[EventHandlerToken] = CruInplaceList()
-
- def register(self, handler: F, once: bool = False) -> EventHandlerToken:
- token = EventHandlerToken(self, handler, once)
- self._tokens.append(token)
- return token
-
- def unregister(self, *h: EventHandlerToken | F) -> int:
-
- self._tokens.find_all_indices_if(lambda t: )