UNPKG

@typed/effects

Version:

Generator-powered Effect management

25 lines 665 B
import { Resume } from '@typed/env'; export const Kill = { kill(fiber) { const { info } = fiber; if (info.state === 0 /* Running */) { fiber.info = { state: 2 /* Error */, error: new KillError() }; fiber.dispose(); return Resume.of(true); } return Resume.of(false); }, }; export function* kill(f) { return yield (c) => c.kill(f); } export class KillError extends Error { constructor() { super(KillError.message); if (Error.captureStackTrace) { Error.captureStackTrace(this); } } } KillError.message = `Kill`; //# sourceMappingURL=kill.js.map