packages feed

list-zipper 0.0.4 → 0.0.5

raw patch · 3 files changed

+43/−14 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

+ Data.ListZipper: getLeft :: ListZipperOp a a
+ Data.ListZipper: getRight :: ListZipperOp a a
+ Data.ListZipper: liftListZipperOp :: Maybe b -> ListZipperOp a b

Files

changelog.md view
@@ -1,3 +1,7 @@+0.0.5++* more function+ 0.0.4  * lots more functions
list-zipper.cabal view
@@ -1,5 +1,5 @@ name:               list-zipper-version:            0.0.4+version:            0.0.5 license:            BSD3 license-file:       LICENCE author:             Queensland Functional Programming Lab <oᴉ˙ldɟb@llǝʞsɐɥ>
src/Data/ListZipper.hs view
@@ -32,7 +32,10 @@ , ListZipperOp' , HasListZipperOp(..) , AsListZipperOp(..)+, liftListZipperOp , getFocus+, getLeft+, getRight , getRightz , getLeftz , getList@@ -521,33 +524,59 @@        k z <!> (z & f () ^. _Wrapped)      ) +liftListZipperOp ::+  Maybe b+  -> ListZipperOp a b+liftListZipperOp m =+  ListZipperOp (\z ->+    (\b -> (z, b)) <$> m+  )+ getFocus ::   ListZipperOp a a getFocus =-  ListZipperOp (\z -> Just (z, z ^. focus))+  reader (^. focus) +getLeft ::+  ListZipperOp a a+getLeft =+  do  z <- get+      case z of+        ListZipper (l:_) _ _ ->+          pure l+        ListZipper [] _ _ ->+          mempty++getRight ::+  ListZipperOp a a+getRight =+  do  z <- get+      case z of+        ListZipper _ _ (r:_) ->+          pure r+        ListZipper _ _ [] ->+          mempty+ getRightz ::   ListZipperOp a [a] getRightz =-  ListZipperOp (\z -> Just (z, z ^. rightz))+  reader (^. rightz)  getLeftz ::   ListZipperOp a [a] getLeftz =-  ListZipperOp (\z -> Just (z, z ^. leftz))+  reader (^. leftz)  getList ::   ListZipperOp a [a] getList =-  ListZipperOp (\z -> Just (z, list z))+  reader list  mkListZipperOp ::    (ListZipper a -> Maybe b)   -> ListZipperOp a b mkListZipperOp f = -  ListZipperOp (\z ->-    (\a -> (z, a)) <$> f z-  )+  get >>= liftListZipperOp . f  (*>>) ::    (ListZipper a -> Maybe b)@@ -677,12 +706,8 @@   ListZipperOp a x   -> ListZipper a   -> [a]-execOpList' o z =-  case execOpList o z of-    Nothing ->-      []-    Just x ->-      x+execOpList' o =+  fromMaybe [] . execOpList o  ($$>) ::   ListZipperOp a x