@typed/io
Version:
Runtime IO type system
15 lines • 638 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.either = exports.Either = void 0;
const either_1 = require("@typed/either");
const Record_1 = require("./Record");
const refinement_1 = require("./refinement");
const UnknownEither = refinement_1.refinement(Record_1.Record, (e) => either_1.isLeft(e) || either_1.isRight(e));
exports.Either = UnknownEither;
exports.either = (left, right) => refinement_1.refinement(UnknownEither, (e) => {
if (either_1.isLeft(e)) {
return left.is(either_1.fromLeft(e));
}
return right.is(either_1.fromRight(e));
});
//# sourceMappingURL=Either.js.map