PSR-14 Compatible event dispatcher
Usage
class MyListener implements \Psr\EventDispatcher\ListenerProviderInterface
{
publicfunctiongetListenersForEvent(object$event) : iterable
{
yieldstaticfunction (MyEvent$event) {
echo"$event->message\n";
};
}
}
class MyEvent {
publicstring$message = 'Hello World';
}
$dispatcher = newCodin\Events\EventDispatcher();
$dispatcher->registerListener(newMyListener());
$dispatcher->dispatch(newMyEvent());