/// A reporter (a type of transmitter) which sends events (the message to be transmitted) to
/// a listener (a type of receiver).
pubtraitEventReporter{/// The type of message send from a reporter to some listener.
typeEvent;/// The type of error which will occur in case of a failure to report an event.
typeErr;/// Send an event to listeners.
fnreport_event(&self, event: impl Into<Self::Event>)->Result<(), Self::Err>;/// Disconnect the reporter from the [`EventListener`].
////// [`EventListener`]: crate::EventListener
fndisconnect(self)->Result<(), Self::Err>;}