1<?php 2 3namespace React\Promise; 4 5class UnhandledRejectionException extends \RuntimeException 6{ 7 private $reason; 8 9 public static function resolve($reason) 10 { 11 if ($reason instanceof \Exception || $reason instanceof \Throwable) { 12 return $reason; 13 } 14 15 return new static($reason); 16 } 17 18 public function __construct($reason) 19 { 20 $this->reason = $reason; 21 22 $message = \sprintf('Unhandled Rejection: %s', \json_encode($reason)); 23 24 parent::__construct($message, 0); 25 } 26 27 public function getReason() 28 { 29 return $this->reason; 30 } 31} 32