module Athena::Contracts::EventDispatcher::Interface
#
Represents the most basic interface that event dispatchers must implement. Can be further extended to provide additional functionality.
All dispatchers:
- MUST call listeners synchronously
- MUST return the same even object it was originally passed.
- MUST NOT return until all listeners have executed.
- MUST handle the case where the provided event is a ACTR::EventDispatcher::StoppableEvent.
Methods#
abstract #dispatch(event : ACTR::EventDispatcher::Event) : ACTR::EventDispatcher::Event
#
Dispatches the provided event to all listeners listening on that event.