Skip to content

asyncLoop

La fonction asyncLoop() est la variante asynchrone de loop. Chaque itération peut retourner une promesse avant de décider de continuer (next) ou de sortir (exit).

Exemple interactif

Syntaxe

typescript
export interface LoopParams<
	GenericRawNextOutput extends any
> {
	count: number;
	previousOutput: GenericRawNextOutput | undefined;
	next<GenericInput extends GenericRawNextOutput | undefined = undefined>(
		output?: GenericInput
	): LoopOutputNextResult<GenericInput>;
	exit<GenericOutput extends AnyValue = undefined>(
		output?: GenericOutput
	): LoopOutputExistResult<GenericOutput>;
}

function asyncLoop<
	GenericRawExitOutput extends AnyValue = undefined,
	GenericRawNextOutput extends AnyValue = undefined
>(
	loop: (
		params: LoopParams<GenericRawNextOutput>
	) => Promise<
		LoopOutputNextResult<GenericRawNextOutput | undefined> |
		LoopOutputExistResult<GenericRawExitOutput>
	>
): Promise<GenericRawExitOutput>;

Paramètres

  • loop : Fonction async appelée à chaque itération. Elle reçoit params (count, previousOutput, next, exit) et retourne une promesse de next(...) ou exit(...).

Valeur de retour

Une promesse résolue avec la valeur passée à exit(...) (ou undefined par défaut) lorsque la boucle se termine.

Voir aussi

  • loop - Version synchrone

Diffusé sous licence MIT.