Source code for jmetal.core.observer

from abc import abstractmethod, ABC

"""
.. module:: Observable
   :platform: Unix, Windows
   :synopsis: Implementation of the observer-observable pattern.

.. moduleauthor:: Antonio J. Nebro <antonio@lcc.uma.es>
"""


[docs]class Observer(ABC):
[docs] @abstractmethod def update(self, *args, **kwargs): """ Update method. """ pass
[docs]class Observable(ABC):
[docs] @abstractmethod def register(self, observer): pass
[docs] @abstractmethod def deregister(self, observer): pass
[docs] @abstractmethod def deregister_all(self): pass
[docs] @abstractmethod def notify_all(self, *args, **kwargs): pass