Newer version available
You’re viewing the API reference for version 3.0.3, but the latest version is 3.1.0. The latest version include may important updates and fixes.
View Latest Versiontype alias Callable
thefrontside/effectiontype Callable = Operation<T> | Promise<T> | (() => Operation<T>) | (() => Promise<T>) | (() => T)
A uniform integration type representing anything that can be evaluated as a the parameter to call.
call converts a Callable
into an Operation
which can then be used
anywhere within Effection.
APIs that accept Callable
values allow end developers to pass simple
functions without necessarily needing to know anything about Operations.
function hello(to: Callable<string>): Operation<string> {
return function*() {
return `hello ${yield* call(to)}`;
}
}
await run(() => hello(() => "world!")); // => "hello world!"
await run(() => hello(async () => "world!")); // => "hello world!"
await run(() => hello(function*() { return "world!" })); "hello world!";
Type Parameters
T