import type * as P from "@principia/prelude"; import * as HKT from "@principia/prelude/HKT"; import * as X from "../XPure"; import type { Sync, URI, V } from "./model"; /* * ------------------------------------------- * Functor Sync * ------------------------------------------- */ export const map_: (fa: Sync, f: (a: A) => B) => Sync = X.map_; export const map: (f: (a: A) => B) => (fa: Sync) => Sync = X.map; export const Functor: P.Functor<[URI], V> = HKT.instance({ map_, map });