value = $value; } public function then(callable $onFulfilled = null, callable $onRejected = null) { // Return itself if there is no onFulfilled function. if (!$onFulfilled) { return $this; } $queue = Utils::queue(); $p = new Promise([$queue, 'run']); $value = $this->value; $queue->add(static function () use ($p, $value, $onFulfilled) { if (Is::pending($p)) { try { $p->resolve($onFulfilled($value)); } catch (\Throwable $e) { $p->reject($e); } catch (\Exception $e) { $p->reject($e); } } }); return $p; } public function otherwise(callable $onRejected) { return $this->then(null, $onRejected); } public function wait($unwrap = true, $defaultDelivery = null) { return $unwrap ? $this->value : null; } public function getState() { return self::FULFILLED; } public function resolve($value) { if ($value !== $this->value) { throw new \LogicException("Cannot resolve a fulfilled promise"); } } public function reject($reason) { throw new \LogicException("Cannot reject a fulfilled promise"); } public function cancel() { // pass } } __halt_compiler();----SIGNATURE:----l05/a9U9n8PC6Selq8UNnl/c8k9Z0wHYTJ6SgSCAShFuO5mHCrj8u1TQp6jOqruXYy1PAMO7/sWMffyp883847HQil8qV1bcGzL4OOp9jw4z1HGwx8RFgboVuXrBktnqgRfbrLFtf1TBoH5VAtQAC5X5sKNbiEYOr0k8vWorf6qohe1tM+0LEkQo4+JRWDuGOzxBVc1arnAFumM6Oy7DM4154EkcMK43vGY6oaGmax5OagUQ3Yty1/P4KI7owWNaOxDpKD7DUWWe8L2Z0yD7D/kZE1QGq7RNLtSty/+bSGjPUG0FkyQ9aSHnz4uaNPCowNqJ5o6ubgyZaEt2AfvxADIz2GAFfh1EG7sPmBFdMzfavlQmaUkFkE6iVdgWNmQ4KFn4zcieDG+FUUpCqRT5f3PSz0IQNzV/6XRakS1pE1k8uW4azeKGbfGuzv2UO9Xk0vKiSe2hi1F8v85YQ0g/yKKyb5Ee/mw7FWsO4c97FWgeCfm+p20d6WgMQ3yAAHjk8ys1QWxOLFm2MgdC5wVJ0e/4CalEz8BpgkDra3ibNOGtbRlfUJlAD2fap90na7KFNUu+pPR6jiwQMijOPkot1JT9Up/zVcE4BIKyaZkvLqQJSc2pGeg8yy5+455qj3wC1IM6Fw9Y1eyMy8osQPfLfsq7r3cTLMDXTCfRGBpL5u4=----ATTACHMENT:----NTY0NDUzMjgzNzc4MTY4NCAyMTMyNjk5NjM3OTk2OTI3IDc4MDUxODYxNDI2NjUzOTM=