def register_event(self, event: str, handler: typing.Callable) -> None: """Register the given function as a handler of the given event.""" # Set function attribute for future reference handler.event = event # Create default delegate if none exist if event not in self.delegates: self.delegates[event] = Delegate(event, self) self.delegates[event].handlers.append(handler)