TaskClass.fail<F>(reason: F): TaskClass<never, F>
A Task that fails with reason (a rejection — so await throws it), typed: the declared
E is exactly reason's type.
import { define } from '../result/failure.ts'; const Denied = define('Denied', (d: { user: string }) => `denied: ${d.user}`); const denied = Task.fail(Denied({ user: 'root' })); // Task<never, Failure<'Denied', …>> (await denied.result()).code; // 'Denied' — the failure arrives bare, typed end to end
reason: F