ZoneSpecification class Null safety
A parameter object with custom zone function handlers for Zone.fork.
A zone specification is a parameter object passed to Zone.fork and any underlying ForkHandler custom implementations. The individual handlers, if set to a non-null value, will be the implementation of the correpsonding Zone methods for a forked zone created using this zone specification.
Handlers have the same signature as the same-named methods on Zone, but receive three additional arguments:
- The zone the handlers are attached to (the "self" zone). This is the zone created by Zone.fork where the handler is passed as part of the zone delegation.
- A ZoneDelegate to the parent zone.
- The "current" zone at the time the request was made. The self zone is always a parent zone of the current zone.
Handlers can either stop propagating 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, R run(Zone self, ZoneDelegate parent, Zone zone, R f()), R runUnary(Zone self, ZoneDelegate parent, Zone zone, R f(T arg), T arg), R runBinary(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2), ZoneCallback<
R> registerCallback(Zone self, ZoneDelegate parent, Zone zone, R f()), ZoneUnaryCallback<R, T> registerUnaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T arg)), ZoneBinaryCallback<R, T1, T2> registerBinaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2)), ErrorCallbackHandler? errorCallback, ScheduleMicrotaskHandler? scheduleMicrotask, CreateTimerHandler? createTimer, CreatePeriodicTimerHandler? createPeriodicTimer, PrintHandler? print, ForkHandler? fork}) -
Creates a specification with the provided handlers. [...]
constfactory
-
ZoneSpecification.from(ZoneSpecification other, {HandleUncaughtErrorHandler? handleUncaughtError, R run(Zone self, ZoneDelegate parent, Zone zone, R f()), R runUnary(Zone self, ZoneDelegate parent, Zone zone, R f(T arg), T arg), R runBinary(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2), ZoneCallback<
R> registerCallback(Zone self, ZoneDelegate parent, Zone zone, R f()), ZoneUnaryCallback<R, T> registerUnaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T arg)), ZoneBinaryCallback<R, T1, T2> registerBinaryCallback(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2)), ErrorCallbackHandler? errorCallback, ScheduleMicrotaskHandler? scheduleMicrotask, CreateTimerHandler? createTimer, CreatePeriodicTimerHandler? createPeriodicTimer, PrintHandler? print, ForkHandler? fork}) -
Creates a specification from
other
and provided handlers. [...]factory
Properties
- createPeriodicTimer → CreatePeriodicTimerHandler?
-
A custom Zone.createPeriodicTimer implementation for a new zone.
read-only
- createTimer → CreateTimerHandler?
-
A custom Zone.createTimer implementation for a new zone.
read-only
- errorCallback → ErrorCallbackHandler?
-
A custom Zone.errorCallback implementation for a new zone.
read-only
- fork → ForkHandler?
-
A custom Zone.handleUncaughtError implementation for a new zone.
read-only
- handleUncaughtError → HandleUncaughtErrorHandler?
-
A custom Zone.handleUncaughtError implementation for a new zone.
read-only
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- print → PrintHandler?
-
A custom Zone.print implementation for a new zone.
read-only
-
registerBinaryCallback
→ (ZoneBinaryCallback<
R, T1, T2> Function<R, T1, T2>?(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2))?) -
A custom Zone.registerBinaryCallback implementation for a new zone.
read-only
-
registerCallback
→ (ZoneCallback<
R> Function<R>?(Zone self, ZoneDelegate parent, Zone zone, R f())?) -
A custom Zone.registerCallback implementation for a new zone.
read-only
-
registerUnaryCallback
→ (ZoneUnaryCallback<
R, T> Function<R, T>?(Zone self, ZoneDelegate parent, Zone zone, R f(T arg))?) -
A custom Zone.registerUnaryCallback implementation for a new zone.
read-only
-
run
→ (R Function<
R>?(Zone self, ZoneDelegate parent, Zone zone, R f())?) -
A custom Zone.run implementation for a new zone.
read-only
-
runBinary
→ (R Function<
R, T1, T2>?(Zone self, ZoneDelegate parent, Zone zone, R f(T1 arg1, T2 arg2), T1 arg1, T2 arg2)?) -
A custom Zone.runBinary implementation for a new zone.
read-only
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
-
runUnary
→ (R Function<
R, T>?(Zone self, ZoneDelegate parent, Zone zone, R f(T arg), T arg)?) -
A custom Zone.runUnary implementation for a new zone.
read-only
- scheduleMicrotask → ScheduleMicrotaskHandler?
-
A custom Zone.scheduleMicrotask implementation for a new zone.
read-only
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toString(
) → String -
A string representation of this object. [...]
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator. [...]
inherited