UNPKG

@typed/effects

Version:

Generator-powered Effect management

30 lines 845 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.KillError = exports.kill = exports.Kill = void 0; const env_1 = require("@typed/env"); exports.Kill = { kill(fiber) { const { info } = fiber; if (info.state === 0 /* Running */) { fiber.info = { state: 2 /* Error */, error: new KillError() }; fiber.dispose(); return env_1.Resume.of(true); } return env_1.Resume.of(false); }, }; function* kill(f) { return yield (c) => c.kill(f); } exports.kill = kill; class KillError extends Error { constructor() { super(KillError.message); if (Error.captureStackTrace) { Error.captureStackTrace(this); } } } exports.KillError = KillError; KillError.message = `Kill`; //# sourceMappingURL=kill.js.map