UNPKG

@typed/io

Version:

Runtime IO type system

12 lines 469 B
import { fromLeft, fromRight, isLeft, isRight } from '@typed/either'; import { Record } from './Record'; import { refinement } from './refinement'; const UnknownEither = refinement(Record, (e) => isLeft(e) || isRight(e)); export { UnknownEither as Either }; export const either = (left, right) => refinement(UnknownEither, (e) => { if (isLeft(e)) { return left.is(fromLeft(e)); } return right.is(fromRight(e)); }); //# sourceMappingURL=Either.js.map