mirror of
https://github.com/rr-/pq-cli.git
synced 2026-09-29 14:54:00 -06:00
15 lines
412 B
Python
15 lines
412 B
Python
import typing as T
|
|
|
|
|
|
class EventHandler:
|
|
def __init__(self) -> None:
|
|
self.callbacks: T.List[T.Callable[..., T.Any]] = []
|
|
|
|
def __call__(self, *args: T.Any, **kwargs: T.Any) -> None:
|
|
for callback in self.callbacks:
|
|
callback(*args, **kwargs)
|
|
|
|
def __iadd__(self, callback: T.Callable[..., T.Any]) -> "EventHandler":
|
|
self.callbacks.append(callback)
|
|
return self
|