12345678910111213141516171819 |
- import warnings
- class Callbacks(list):
- def append(self, value):
- assert callable(value), "It only excepts callable values!"
- def __call__(self, *args, **kwargs):
- for callback in self:
- try:
- callback(*args, **kwargs)
- except TypeError as e:
- warnings.warn(f"{callback} failed with arguments {args} and {kwargs}!")
- pass
|