@dillonkearns/elm-graphql
Version:
<img src="https://cdn.jsdelivr.net/gh/martimatix/logo-graphqelm/logo.svg" alt="dillonearns/elm-graphql logo" width="40%" align="right">
23 lines (20 loc) • 426 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.composeKleisli = composeKleisli;
var _HKT = require('./HKT');
// Forwards Kleisli composition.
//
// For example:
//
// ```js
// import * as arr from '../Arr'
//
// const second = a => composeKleisli(maybe, arr.tail, arr.head)
// ```
function composeKleisli(chain, f, g) {
return function (a) {
return chain.chain(g, f(a));
};
}