phasync
Coroutines / RethrowExceptionInterface

Interface

RethrowExceptionInterface

Marks the exceptions that phasync rethrows with a stack trace that begins in the code that called phasync, not inside it.

Introduction#

Implemented by CancelledException, ChannelException and TimeoutException.

Class synopsis#

interface RethrowExceptionInterface extends \Throwable, \Stringable {
    /* Methods */
    public RethrowExceptionInterface::rebuildStackTrace(): void
}

Methods#

MethodDescription
rebuildStackTraceReplaces the stack trace with one that starts where the exception was rethrown.

See also#

  • CancelledExceptionThrown in a coroutine whose wait was cancelled: with phasync::cancel(), or with its frame (Frame::cancel(), the frame's deadline, a deadlock).
  • ChannelExceptionA channel operation failed: it was written to after it was closed, or the wait looked like a deadlock.
  • TimeoutExceptionA wait with a timeout ran out before it was satisfied.