method TaskClass.retry
Private
TaskClass.retry<T, E>(
task: TaskClass<T, E>,
times?: number,
): TaskClass<T, E>

Data-first twin of TaskClass#retry — fresh restarts until success.

let tries = 0;
const flaky = Task(() => {
  if (++tries < 2) throw new Error('again');
  return tries;
});
await Task.retry(flaky); // 2
await Task.retry(flaky, 3, { delayMs: 1 }); // the instance method's options, unchanged

Type Parameters

Parameters

task: TaskClass<T, E>
optional
times: number = 1
optional
options: RetryDelay | RetryOptions

Return Type

Usage

import { TaskClass } from "lib/task/task.ts";