|
- import { pipe } from './function';
- import { getFunctorComposition, map } from './Functor';
- import { getLeft, getRight } from './Option';
- import * as S from './Separated';
- export function compact(F, G) {
- return function (fga) { return F.map(fga, G.compact); };
- }
- export function separate(F, C, G) {
- var _compact = compact(F, C);
- var _map = map(F, G);
- return function (fge) { return S.separated(_compact(pipe(fge, _map(getLeft))), _compact(pipe(fge, _map(getRight)))); };
- }
- /** @deprecated */
- export function getCompactableComposition(F, G) {
- var map = getFunctorComposition(F, G).map;
- return {
- map: map,
- compact: compact(F, G),
- separate: separate(F, G, G)
- };
- }
|