This class provides the specification for a forked zone.

When forking a new zone (see Zone.fork) one can override the default behavior of the zone by providing callbacks. These callbacks must be given in an instance of this class.

Handlers have the same signature as the same-named methods on Zone but receive three additional arguments:

  1. the zone the handlers are attached to (the "self" zone).
  2. a ZoneDelegate to the parent zone.
  3. the zone that first received the request (before the request was bubbled up).

Handlers can either stop propagation the request (by simply not calling the parent handler), or forward to the parent zone, potentially modifying the arguments on the way.

Constructors

ZoneSpecification({HandleUncaughtErrorHandler handleUncaughtError(Zone self, ZoneDelegate parent, Zone zone, error, StackTrace stackTrace), RunHandler run(Zone self, ZoneDelegate parent, Zone zone, R f()), RunUnaryHandler runUnary(Zone self, ZoneDelegate parent, Zone zone, R f(T arg), T arg), RunBinaryHandler runBinary(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2), RegisterCallbackHandler registerCallback(Zone self, ZoneDelegate parent, Zone zone, R f()), RegisterUnaryCallbackHandler registerUnaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T arg)), RegisterBinaryCallbackHandler registerBinaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2)), ErrorCallbackHandler errorCallback(Zone self, ZoneDelegate parent, Zone zone, Object error, StackTrace stackTrace), ScheduleMicrotaskHandler scheduleMicrotask(Zone self, ZoneDelegate parent, Zone zone, void f()), CreateTimerHandler createTimer(Zone self, ZoneDelegate parent, Zone zone, Duration duration, void f()), CreatePeriodicTimerHandler createPeriodicTimer(Zone self, ZoneDelegate parent, Zone zone, Duration period, void f(Timer timer)), PrintHandler print(Zone self, ZoneDelegate parent, Zone zone, String line), ForkHandler fork(Zone self, ZoneDelegate parent, Zone zone, ZoneSpecification specification, Map zoneValues)})

Creates a specification with the provided handlers.

const
factory
ZoneSpecification.from(ZoneSpecification other, {HandleUncaughtErrorHandler handleUncaughtError(Zone self, ZoneDelegate parent, Zone zone, error, StackTrace stackTrace): null, RunHandler run(Zone self, ZoneDelegate parent, Zone zone, R f()): null, RunUnaryHandler runUnary(Zone self, ZoneDelegate parent, Zone zone, R f(T arg), T arg): null, RunBinaryHandler runBinary(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2): null, RegisterCallbackHandler registerCallback(Zone self, ZoneDelegate parent, Zone zone, R f()): null, RegisterUnaryCallbackHandler registerUnaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T arg)): null, RegisterBinaryCallbackHandler registerBinaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2)): null, ErrorCallbackHandler errorCallback(Zone self, ZoneDelegate parent, Zone zone, Object error, StackTrace stackTrace): null, ScheduleMicrotaskHandler scheduleMicrotask(Zone self, ZoneDelegate parent, Zone zone, void f()): null, CreateTimerHandler createTimer(Zone self, ZoneDelegate parent, Zone zone, Duration duration, void f()): null, CreatePeriodicTimerHandler createPeriodicTimer(Zone self, ZoneDelegate parent, Zone zone, Duration period, void f(Timer timer)): null, PrintHandler print(Zone self, ZoneDelegate parent, Zone zone, String line): null, ForkHandler fork(Zone self, ZoneDelegate parent, Zone zone, ZoneSpecification specification, Map zoneValues): null})

Creates a specification from other with the provided handlers overriding the ones in other.

factory

Properties

createPeriodicTimer CreatePeriodicTimerHandler

read-only
createTimer CreateTimerHandler

read-only
errorCallback ErrorCallbackHandler

read-only
fork ForkHandler

read-only
handleUncaughtError HandleUncaughtErrorHandler

read-only
hashCode int

Get a hash code for this object.

read-only, inherited
print PrintHandler

read-only
registerBinaryCallback RegisterBinaryCallbackHandler

read-only
registerCallback RegisterCallbackHandler

read-only
registerUnaryCallback RegisterUnaryCallbackHandler

read-only
run RunHandler

read-only
runBinary RunBinaryHandler

read-only
runtimeType Type

A representation of the runtime type of the object.

read-only, inherited
runUnary RunUnaryHandler

read-only
scheduleMicrotask ScheduleMicrotaskHandler

read-only

Operators

operator ==(other) bool

The equality operator.

inherited

Methods

noSuchMethod(Invocation invocation) → dynamic

Invoked when a non-existent method or property is accessed.

inherited
toString() String

Returns a string representation of this object.

inherited