版博士V2.0程序
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

22 строки
746 B

  1. /**
  2. * @since 2.0.0
  3. */
  4. import { getApplicativeComposition } from './Applicative';
  5. import * as E from './Either';
  6. import * as _ from './internal';
  7. /** @deprecated */
  8. export function getValidationM(S, M) {
  9. var A = getApplicativeComposition(M, E.getApplicativeValidation(S));
  10. return {
  11. map: A.map,
  12. ap: A.ap,
  13. of: A.of,
  14. chain: function (ma, f) { return M.chain(ma, function (e) { return (_.isLeft(e) ? M.of(_.left(e.left)) : f(e.right)); }); },
  15. alt: function (me, that) {
  16. return M.chain(me, function (e1) {
  17. return _.isRight(e1) ? M.of(e1) : M.map(that(), function (e2) { return (_.isLeft(e2) ? _.left(S.concat(e1.left, e2.left)) : e2); });
  18. });
  19. }
  20. };
  21. }