@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">
11 lines (8 loc) • 296 B
Flow
// @flow
import { HKT } from './HKT'
export interface Contravariant<F> {
contramap<A, B>(f: (a: B) => A, fa: HKT<F, A>): HKT<F, B>
}
export function lift<F, A, B>(contravariant: Contravariant<F>, f: (a: B) => A): (fa: HKT<F, A>) => HKT<F, B> {
return fa => contravariant.contramap(f, fa)
}