deno.land / x / cockatiel@v3.1.2 / src / NoopPolicy.ts

نووسراو ببینە
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import { neverAbortedSignal } from './common/abort';import { ExecuteWrapper, returnOrThrow } from './common/Executor';import { IDefaultPolicyContext, IPolicy } from './Policy';
/** * A no-op policy, useful for unit tests and stubs. */export class NoopPolicy implements IPolicy { declare readonly _altReturn: never; private readonly executor = new ExecuteWrapper(); public readonly onSuccess = this.executor.onSuccess; public readonly onFailure = this.executor.onFailure;
public async execute<T>( fn: (context: IDefaultPolicyContext) => PromiseLike<T> | T, signal: AbortSignal = neverAbortedSignal, ): Promise<T> { return returnOrThrow(await this.executor.invoke(fn, { signal })); }}
cockatiel

Version Info

Tagged at
5 months ago