isCancelled property
Whether the job has accepted a cancellation, even if the body still runs, or has ended with one.
While the core cleans up after the body it answers by the decided
outcome, so a disposer of a body that threw a Cancelled of its own
sees true here as well. On a branch of JobContext.runAll it can
still change after the body returned a value: a branch is held until
the group decides, and a cancellation reaching it in that window
ends it Cancelled.
Implementation
@override
bool get isCancelled => _pendingCancel != null || _outcome is Cancelled;