Represents a promise that iterates over many promises and invokes side-effect functions in the process.
- Full name:
\GuzzleHttp\Promise\EachPromise
- This class implements:
\GuzzleHttp\Promise\PromisorInterface
private $pending
private $nextPendingIndex
private \Iterator|null $iterable
private callable|int|null $concurrency
private callable|null $onFulfilled
private callable|null $onRejected
private \GuzzleHttp\Promise\Promise|null $aggregate
private bool|null $mutex
Configuration hash can include the following key value pairs:
public __construct(mixed $iterable, array $config = []): mixed
- fulfilled: (callable) Invoked when a promise fulfills. The function is invoked with three arguments: the fulfillment value, the index position from the iterable list of the promise, and the aggregate promise that manages all of the promises. The aggregate promise may be resolved from within the callback to short-circuit the promise.
- rejected: (callable) Invoked when a promise is rejected. The function is invoked with three arguments: the rejection reason, the index position from the iterable list of the promise, and the aggregate promise that manages all of the promises. The aggregate promise may be resolved from within the callback to short-circuit the promise.
- concurrency: (integer) Pass this configuration option to limit the allowed number of outstanding concurrently executing promises, creating a capped pool of promises. There is no limit by default.
Parameters:
Parameter | Type | Description |
---|---|---|
$iterable |
mixed | Promises or values to iterate. |
$config |
array | Configuration options |
Returns a promise.
public promise(): \GuzzleHttp\Promise\PromiseInterface
private createPromise(): mixed
private refillPending(): mixed
private addPending(): mixed
private advanceIterator(): mixed
private step(mixed $idx): mixed
Parameters:
Parameter | Type | Description |
---|---|---|
$idx |
mixed |
private checkIfFinished(): mixed