*/ final class Failure implements Promise { private \Throwable $exception; /** * @param \Throwable $exception Rejection reason. */ public function __construct(\Throwable $exception) { $this->exception = $exception; } /** * {@inheritdoc} */ public function onResolve(callable $onResolved): void { Loop::defer(fn() => $onResolved($this->exception, null)); } }