Обработчик необработанных ошибок HandleUncaughtErrorHandler
Тип функции реализации пользовательского обработчика Zone.handleUncaughtError.
Получает Zone, на котором был зарегистрирован обработчик, как self, делегат, передающий обработчики родительской зоны self как parent, и текущую зону, в которой произошла ошибка, как zone, у которой будет self в качестве родительской зоны.
error и stackTrace — это ошибка и стек вызовов, которые не были обработаны в zone.
Функция должна обращаться к зонам только через self, parent или zone. Она не должна зависеть от текущей зоны (Zone.current).
Если обработчик необработанной ошибки генерирует исключение, ошибка будет передана в parent.handleUncaughtError. Если брошенное исключение является error, то сброс считается повторным броском, и исходный stackTrace сохраняется. Это позволяет асинхронной ошибке выйти из зоны ошибок.
Реализация
typedef HandleUncaughtErrorHandler = void Function(Zone self,
ZoneDelegate parent, Zone zone, Object error, StackTrace stackTrace);
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-async/HandleUncaughtErrorHandler.html