Update ipkg
This commit is contained in:
parent
69870ff394
commit
b1ad4ceef0
7 changed files with 20 additions and 9 deletions
|
|
@ -1,4 +1,4 @@
|
|||
module Control.Lens.Internal.Backwards
|
||||
module Control.Applicative.Backwards
|
||||
|
||||
%default total
|
||||
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
module Control.Lens.Fold
|
||||
|
||||
import Data.Bicontravariant
|
||||
import Data.Profunctor
|
||||
import Data.Profunctor.Costrong
|
||||
import Data.Profunctor.Traversing
|
||||
import Control.Lens.Internal.Bicontravariant
|
||||
import Control.Lens.Internal.Backwards
|
||||
import Control.Applicative.Backwards
|
||||
import Control.Lens.Optic
|
||||
import Control.Lens.OptionalFold
|
||||
import Control.Lens.Traversal
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
module Control.Lens.Getter
|
||||
|
||||
import Data.Bicontravariant
|
||||
import Data.Profunctor
|
||||
import Data.Profunctor.Costrong
|
||||
import Control.Lens.Optic
|
||||
import Control.Lens.Lens
|
||||
import Control.Lens.Internal.Bicontravariant
|
||||
|
||||
%default total
|
||||
|
||||
|
|
|
|||
|
|
@ -1,41 +0,0 @@
|
|||
module Control.Lens.Internal.Bicontravariant
|
||||
|
||||
import Data.Morphisms
|
||||
import Data.Contravariant
|
||||
import Data.Profunctor
|
||||
|
||||
%default total
|
||||
|
||||
|
||||
public export
|
||||
interface Bicontravariant f where
|
||||
contrabimap : (a -> b) -> (c -> d) -> f b d -> f a c
|
||||
contrabimap f g = contramapFst f . contramapSnd g
|
||||
|
||||
contramapFst : (a -> b) -> f b c -> f a c
|
||||
contramapFst f = contrabimap f id
|
||||
|
||||
contramapSnd : (b -> c) -> f a c -> f a b
|
||||
contramapSnd = contrabimap id
|
||||
|
||||
|
||||
public export
|
||||
Contravariant f => Bicontravariant (Star f) where
|
||||
contrabimap f g = MkStar . dimap @{Function} f (contramap g) . applyStar
|
||||
|
||||
public export
|
||||
Contravariant f => Bicontravariant (Kleislimorphism f) where
|
||||
contrabimap f g = Kleisli . dimap @{Function} f (contramap g) . applyKleisli
|
||||
|
||||
public export
|
||||
Bicontravariant (Forget {k=Type} r) where
|
||||
contrabimap f _ = MkForget . lmap @{Function} f . runForget
|
||||
|
||||
|
||||
public export
|
||||
rphantom : (Profunctor p, Bicontravariant p) => p a b -> p a c
|
||||
rphantom = contramapSnd (const ()) . rmap (const ())
|
||||
|
||||
public export
|
||||
biphantom : (Bifunctor p, Bicontravariant p) => p a b -> p c d
|
||||
biphantom = contrabimap (const ()) (const ()) . bimap (const ()) (const ())
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
module Control.Lens.OptionalFold
|
||||
|
||||
import Data.Bicontravariant
|
||||
import Data.Profunctor
|
||||
import Data.Profunctor.Costrong
|
||||
import Control.Lens.Internal.Bicontravariant
|
||||
import Control.Lens.Optic
|
||||
import Control.Lens.Optional
|
||||
import Control.Lens.Getter
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import Control.Monad.State
|
|||
import Data.Zippable
|
||||
import Data.Profunctor
|
||||
import Data.Profunctor.Traversing
|
||||
import Control.Lens.Internal.Backwards
|
||||
import Control.Applicative.Backwards
|
||||
import Control.Lens.Optic
|
||||
import Control.Lens.Optional
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue