emit method

dynamic emit(
  1. String eventName, [
  2. dynamic args
])

Emit an event with optional arguments Returns the result of the last listener execution

Implementation

dynamic emit(String eventName, [dynamic args]) {
  logger.debug('[event] Emit event:', [eventName, args]);
  final listeners = _events[eventName];
  if (listeners == null || listeners.isEmpty) {
    return null;
  }

  var result;
  for (final listener in listeners) {
    try {
      result = listener(args);
    } catch (e) {
      logger.error('[event] Event listener execution failed:', [e]);
    }
  }
  return result;
}