arrow-extras 0.1.0.0 → 0.1.0.1
raw patch · 2 files changed
+13/−9 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Control.Arrow.Extras: (<<^=) :: Arrow a => a c d -> c -> a x d
- Control.Arrow.Extras: (=^<<) :: Arrow a => d -> a b c -> a b d
- Control.Arrow.Extras: (=^>>) :: Arrow a => c -> a c d -> a x d
- Control.Arrow.Extras: (>>^=) :: Arrow a => a b c -> d -> a b d
+ Control.Arrow.Extras: ($<<) :: Arrow a => d -> a b c -> a b d
+ Control.Arrow.Extras: ($>>) :: Arrow a => c -> a c d -> a x d
+ Control.Arrow.Extras: (<<$) :: Arrow a => a c d -> c -> a x d
+ Control.Arrow.Extras: (>>$) :: Arrow a => a b c -> d -> a b d
+ Control.Arrow.Extras: infixl 0 >*>
+ Control.Arrow.Extras: infixr 1 $>>
Files
- arrow-extras.cabal +1/−1
- src/Control/Arrow/Extras.hs +12/−8
arrow-extras.cabal view
@@ -1,5 +1,5 @@ name: arrow-extras-version: 0.1.0.0+version: 0.1.0.1 synopsis: Extra functions for Control.Arrow description: Extra functions for Control.Arrow homepage: https://github.com/louispan/arrow-extras#readme
src/Control/Arrow/Extras.hs view
@@ -2,6 +2,10 @@ import Control.Arrow +infixl 0 >*>+infixr 1 $>>, >>$+infixr 1 $<<, <<$+ -- | Feed the output of second arrow into the output of the first arrow. -- Can be used to emulate Applicative <*> like usage: --@@ -22,17 +26,17 @@ af >*> ab = af &&& ab >>^ (fst <*> snd) -- | precomposition with a pure value-(<<^=) :: Arrow a => a c d -> c -> a x d-p <<^= v = p <<^ const v+(<<$) :: Arrow a => a c d -> c -> a x d+p <<$ v = p <<^ const v -- | postcomposition with a pure value-(>>^=) :: Arrow a => a b c -> d -> a b d-p >>^= v = p >>^ const v+(>>$) :: Arrow a => a b c -> d -> a b d+p >>$ v = p >>^ const v -- | postcomposition with a pure value (right-to-left variant)-(=^<<) :: Arrow a => d -> a b c -> a b d-v =^<< p = const v ^<< p+($<<) :: Arrow a => d -> a b c -> a b d+v $<< p = const v ^<< p -- | precomposition with a pure value (right-to-left variant)-(=^>>) :: Arrow a => c -> a c d -> a x d-v =^>> p = const v ^>> p+($>>) :: Arrow a => c -> a c d -> a x d+v $>> p = const v ^>> p