Verzeichnisstruktur phpBB-3.2.0
- Veröffentlicht
- 06.01.2017
So funktioniert es
|
Auf das letzte Element klicken. Dies geht jeweils ein Schritt zurück |
Auf das Icon klicken, dies öffnet das Verzeichnis. Nochmal klicken schließt das Verzeichnis. |
|
(Beispiel Datei-Icons)
|
Auf das Icon klicken um den Quellcode anzuzeigen |
RejectedPromise.php
01 <?php
02
03 namespace React\Promise;
04
05 class RejectedPromise implements ExtendedPromiseInterface, CancellablePromiseInterface
06 {
07 private $reason;
08
09 public function __construct($reason = null)
10 {
11 if ($reason instanceof PromiseInterface) {
12 throw new \InvalidArgumentException('You cannot create React\Promise\RejectedPromise with a promise. Use React\Promise\reject($promiseOrValue) instead.');
13 }
14
15 $this->reason = $reason;
16 }
17
18 public function then(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null)
19 {
20 if (null === $onRejected) {
21 return $this;
22 }
23
24 try {
25 return resolve($onRejected($this->reason));
26 } catch (\Throwable $exception) {
27 return new RejectedPromise($exception);
28 } catch (\Exception $exception) {
29 return new RejectedPromise($exception);
30 }
31 }
32
33 public function done(callable $onFulfilled = null, callable $onRejected = null, callable $onProgress = null)
34 {
35 if (null === $onRejected) {
36 throw UnhandledRejectionException::resolve($this->reason);
37 }
38
39 $result = $onRejected($this->reason);
40
41 if ($result instanceof self) {
42 throw UnhandledRejectionException::resolve($result->reason);
43 }
44
45 if ($result instanceof ExtendedPromiseInterface) {
46 $result->done();
47 }
48 }
49
50 public function otherwise(callable $onRejected)
51 {
52 if (!_checkTypehint($onRejected, $this->reason)) {
53 return $this;
54 }
55
56 return $this->then(null, $onRejected);
57 }
58
59 public function always(callable $onFulfilledOrRejected)
60 {
61 return $this->then(null, function ($reason) use ($onFulfilledOrRejected) {
62 return resolve($onFulfilledOrRejected())->then(function () use ($reason) {
63 return new RejectedPromise($reason);
64 });
65 });
66 }
67
68 public function progress(callable $onProgress)
69 {
70 return $this;
71 }
72
73 public function cancel()
74 {
75 }
76 }
77