File tree Expand file tree Collapse file tree 6 files changed +77
-0
lines changed Expand file tree Collapse file tree 6 files changed +77
-0
lines changed Original file line number Diff line number Diff line change
1
+ ## Module Data.Profunctor.Closed
2
+
3
+ #### ` Closed `
4
+
5
+ ``` purescript
6
+ class (Profunctor p) <= Closed p where
7
+ closed :: forall a b x. p a b -> p (x -> a) (x -> b)
8
+ ```
9
+
10
+ The ` Closed ` class extends the ` Profunctor ` class to work with functions.
11
+
12
+ ##### Instances
13
+ ``` purescript
14
+ instance closedFunction :: Closed Function
15
+ ```
16
+
17
+
Original file line number Diff line number Diff line change
1
+ ## Module Data.Profunctor.Cochoice
2
+
3
+ #### ` Cochoice `
4
+
5
+ ``` purescript
6
+ class (Profunctor p) <= Cochoice p where
7
+ unleft :: forall a b c. p (Either a c) (Either b c) -> p a b
8
+ unright :: forall a b c. p (Either a b) (Either a c) -> p b c
9
+ ```
10
+
11
+ The ` Cochoice ` class provides the dual operations of the ` Choice ` class.
12
+
13
+
Original file line number Diff line number Diff line change
1
+ ## Module Data.Profunctor.Costrong
2
+
3
+ #### ` Costrong `
4
+
5
+ ``` purescript
6
+ class (Profunctor p) <= Costrong p where
7
+ unfirst :: forall a b c. p (Tuple a c) (Tuple b c) -> p a b
8
+ unsecond :: forall a b c. p (Tuple a b) (Tuple a c) -> p b c
9
+ ```
10
+
11
+ The ` Costrong ` class provides the dual operations of the ` Strong ` class.
12
+
13
+
Original file line number Diff line number Diff line change
1
+ module Data.Profunctor.Closed where
2
+
3
+ import Prelude
4
+
5
+ import Data.Profunctor
6
+
7
+ -- | The `Closed` class extends the `Profunctor` class to work with functions.
8
+ class (Profunctor p ) <= Closed p where
9
+ closed :: forall a b x . p a b -> p (x -> a ) (x -> b )
10
+
11
+ instance closedFunction :: Closed Function where
12
+ closed = (<<<)
Original file line number Diff line number Diff line change
1
+ module Data.Profunctor.Cochoice where
2
+
3
+ import Prelude
4
+
5
+ import Data.Either (Either ())
6
+ import Data.Profunctor
7
+
8
+ -- | The `Cochoice` class provides the dual operations of the `Choice` class.
9
+ class (Profunctor p ) <= Cochoice p where
10
+ unleft :: forall a b c . p (Either a c ) (Either b c ) -> p a b
11
+ unright :: forall a b c . p (Either a b ) (Either a c ) -> p b c
Original file line number Diff line number Diff line change
1
+ module Data.Profunctor.Costrong where
2
+
3
+ import Prelude
4
+
5
+ import Data.Tuple (Tuple ())
6
+ import Data.Profunctor
7
+
8
+ -- | The `Costrong` class provides the dual operations of the `Strong` class.
9
+ class (Profunctor p ) <= Costrong p where
10
+ unfirst :: forall a b c . p (Tuple a c ) (Tuple b c ) -> p a b
11
+ unsecond :: forall a b c . p (Tuple a b ) (Tuple a c ) -> p b c
You can’t perform that action at this time.
0 commit comments