Versions in this module Expand all Collapse all v0 v0.5.3 Dec 8, 2023 v0.5.2 Nov 26, 2023 Changes in this version + type Broadcaster interface + BroadcastEvent func(ctx context.Context, event Event) + RegisterListener func(listener *Listener) + RemoveAllListeners func() + RemoveListener func(listener *Listener) + func NewBroadcaster() Broadcaster + type Event interface + EventSource func() any + Time func() time.Time + type Listener struct + func Listen[E Event, F ListenerFunc[E]](handler F) *Listener + func (l *Listener) EventType() reflect.Type + func (l *Listener) Identifier() string + func (l *Listener) OnEvent(ctx context.Context, event Event) + type ListenerFunc interface + type ListenerRegistry interface + Listeners func() []*Listener + RegisterListener func(listener *Listener) + type Publisher interface + PublishEvent func(ctx context.Context, event Event)