mono-traversable 1.0.2 → 1.0.2.1
raw patch · 5 files changed
+15/−6 lines, 5 files
Files
- ChangeLog.md +4/−0
- mono-traversable.cabal +1/−1
- src/Data/MonoTraversable.hs +2/−2
- src/Data/Sequences.hs +3/−3
- test/Spec.hs +5/−0
ChangeLog.md view
@@ -1,3 +1,7 @@+## 1.0.2.1++* Fix test suite for foldl 1.3+ ## 1.0.2 * `IsSequence` class: add `lengthIndex` [#127](https://github.com/snoyberg/mono-traversable/pull/127)
mono-traversable.cabal view
@@ -1,5 +1,5 @@ name: mono-traversable-version: 1.0.2+version: 1.0.2.1 synopsis: Type classes for mapping, folding, and traversing monomorphic containers description: Monomorphic variants of the Functor, Foldable, and Traversable typeclasses. If you understand Haskell's basic typeclasses, you understand mono-traversable. In addition to what you are used to, it adds on an IsSequence typeclass and has code for marking data structures as non-empty. homepage: https://github.com/snoyberg/mono-traversable
src/Data/MonoTraversable.hs view
@@ -845,10 +845,10 @@ {-# RULES "strict ByteString notElem" onotElem = S.notElem #-} {-# RULES "lazy ByteString elem" oelem = L.elem #-}-{-# RULES "lazy ByteString notElem" oelem = L.notElem #-}+{-# RULES "lazy ByteString notElem" onotElem = L.notElem #-} {-# RULES "Set elem" forall (k :: Ord k => k). oelem k = Set.member k #-}-{-# RULES "Set notElem" forall (k :: Ord k => k). oelem k = Set.notMember k #-}+{-# RULES "Set notElem" forall (k :: Ord k => k). onotElem k = Set.notMember k #-} -- | Get the minimum element of a monomorphic container. --
src/Data/Sequences.hs view
@@ -295,10 +295,10 @@ -- or 'Nothing' if the sequence is empty. -- -- @- -- > 'uncons' ('fromList' [1,2,3,4] :: 'Vector' 'Int')+ -- > 'unsnoc' ('fromList' [1,2,3,4] :: 'Vector' 'Int') -- 'Just' (fromList [1,2,3],4) --- -- > 'uncons' ([] :: ['Int'])+ -- > 'unsnoc' ([] :: ['Int']) -- 'Nothing' -- @ unsnoc :: seq -> Maybe (seq, Element seq)@@ -1222,7 +1222,7 @@ -- -- @ -- > 'stripPrefix' "foo" "foobar"--- 'Just' "foo"+-- 'Just' "bar" -- > 'stripPrefix' "abc" "foobar" -- 'Nothing' -- @
test/Spec.hs view
@@ -367,8 +367,13 @@ describe "Foldl Integration" $ do prop "vector" $ \xs -> do+#if MIN_VERSION_foldl(1,3,0)+ let x1 = Foldl.fold Foldl.vector (xs :: [Int])+ x2 = Foldl.purely ofoldlUnwrap Foldl.vector xs+#else x1 <- Foldl.foldM Foldl.vector (xs :: [Int]) x2 <- Foldl.impurely ofoldMUnwrap Foldl.vector xs+#endif x2 @?= (x1 :: V.Vector Int) prop "length" $ \xs -> do let x1 = Foldl.fold Foldl.length (xs :: [Int])