packages feed

deferred-folds 0.9.17 → 0.9.18

raw patch · 2 files changed

+8/−3 lines, 2 filesdep ~transformersPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: transformers

API changes (from Hackage documentation)

+ DeferredFolds.Unfoldr: zipWith :: (a -> b -> c) -> Unfoldr a -> Unfoldr b -> Unfoldr c

Files

deferred-folds.cabal view
@@ -1,5 +1,5 @@ name: deferred-folds-version: 0.9.17+version: 0.9.18 category: Folding synopsis: Abstractions over deferred folds description:@@ -45,7 +45,7 @@     hashable >=1 && <2,     primitive >=0.6.4 && <0.8,     text >=1.2 && <1.3,-    transformers >=0.5 && <0.6,+    transformers >=0.5 && <0.7,     unordered-containers >=0.2 && <0.3,     vector >=0.12 && <0.13 
library/DeferredFolds/Defs/Unfoldr.hs view
@@ -3,6 +3,7 @@  import DeferredFolds.Prelude hiding (fold, reverse) import DeferredFolds.Types+import qualified DeferredFolds.Prelude as Prelude import qualified Data.Map.Strict as Map import qualified Data.IntMap.Strict as IntMap import qualified Data.IntSet as IntSet@@ -54,7 +55,7 @@  instance Traversable Unfoldr where   traverse f (Unfoldr unfoldr) =-    unfoldr (\a next -> cons <$> f a <*> next) (pure mempty)+    unfoldr (\a next -> liftA2 cons (f a) next) (pure mempty)  instance Eq a => Eq (Unfoldr a) where   (==) left right = toList left == toList right@@ -276,6 +277,10 @@ -} reverse :: Unfoldr a -> Unfoldr a reverse (Unfoldr unfoldr) = Unfoldr $ \ step -> unfoldr (\ a f -> f . step a) id++zipWith :: (a -> b -> c) -> Unfoldr a -> Unfoldr b -> Unfoldr c+zipWith f l r =+  Prelude.zipWith f (toList l) (toList r) & foldable  {-| Lift into an unfold, which produces pairs with index.