FiberObserverModule

PackageAxial
Standard fiber observers.

Summary

NameSignatureSynopsis
Representation
OnStartOnStartA fiber was forked.
OnEndOnEndA fiber settled.
OnUnobservedDefectOnUnobservedDefectA Cause.Die defect became unobservable: a forked fiber died unobserved and no observation can happen anymore, or the runtime discarded a race/timeout loser's exit.
Operations
noneFiberObserver.none The default observer: every hook is a no-op.
composeFiberObserver.compose first secondCombines two observers so every hook runs both, each guarded independently.

Representation

kind:member

OnStart

OnStart
Member
A fiber was forked. Receives the child fiber's metadata.

Returns

FiberMetadata -> unit
kind:member

OnEnd

OnEnd
Member
A fiber settled. FiberMetadata.Status distinguishes success, failure, and interruption; the first Cause.Die defect in the exit, if any, is passed alongside.

Returns

FiberMetadata -> exn option -> unit
kind:member

OnUnobservedDefect

OnUnobservedDefect
Member
A Cause.Die defect became unobservable: a forked fiber died unobserved and no observation can happen anymore, or the runtime discarded a race/timeout loser's exit. The metadata is absent for discarded race/timeout losers, which are executions rather than fibers.

Returns

FiberMetadata option -> exn -> unit

Operations

kind:member

none

FiberObserver.none
Member
The default observer: every hook is a no-op.

Returns

FiberObserver
kind:member

compose

FiberObserver.compose first second
Member
Combines two observers so every hook runs both, each guarded independently.

Parameters

NameTypeDescription
firstFiberObserver
secondFiberObserver

Returns

FiberObserver