版博士V2.0程序
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

21 lines
554 B

  1. /**
  2. * Lift a computation from the `Task` monad
  3. *
  4. * @since 2.10.0
  5. */
  6. import { chainFirst } from './Chain';
  7. import { flow } from './function';
  8. export function fromTaskK(F) {
  9. return function (f) { return flow(f, F.fromTask); };
  10. }
  11. export function chainTaskK(F, M) {
  12. return function (f) {
  13. var g = flow(f, F.fromTask);
  14. return function (first) { return M.chain(first, g); };
  15. };
  16. }
  17. export function chainFirstTaskK(F, M) {
  18. var chainFirstM = chainFirst(M);
  19. return function (f) { return chainFirstM(flow(f, F.fromTask)); };
  20. }