RunHandler 类型定义

RunHandler = R Function<R>(Zone self, ZoneDelegate parent, Zone zone, R f())

自定义 Zone.run 实现函数的类型。

接收处理器注册的 Zone 作为 self,将请求转发到 self 父区域的处理器作为 parent,以及未捕获错误的当前区域作为 zone,其中 self 将作为父区域。

函数 f 是传递给 zoneZone.run 的函数。

Zone.run 的默认行为是在当前区域 zone 中调用 f。自定义处理器可以在调用 f 之前、之后或代替调用 f

函数必须仅通过 selfparentzone 访问区域相关功能。它不应依赖于当前区域 (Zone.current)。

实现

typedef RunHandler = R Function<R>(
    Zone self, ZoneDelegate parent, Zone zone, R Function() f);