classy-prelude 0.4.2 → 0.4.3
raw patch · 6 files changed
+15/−11 lines, 6 filesdep ~basic-preludePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: basic-prelude
API changes (from Hackage documentation)
+ ClassyPrelude.Classes: class CanDeleteVal c k | c -> k
+ ClassyPrelude.Classes: deleteVal :: CanDeleteVal c k => k -> c -> c
+ ClassyPrelude.Classes: instance (CanDeleteVal c' k, c ~ c') => CanDelete (k -> c -> c')
- ClassyPrelude: delete :: CanDelete c k => k -> c -> c
+ ClassyPrelude: delete :: CanDelete f => f
- ClassyPrelude.Classes: class CanDelete c k | c -> k
+ ClassyPrelude.Classes: class CanDelete f
- ClassyPrelude.Classes: delete :: CanDelete c k => k -> c -> c
+ ClassyPrelude.Classes: delete :: CanDelete f => f
Files
- ClassyPrelude/Classes.hs +6/−2
- ClassyPrelude/HashMap.hs +2/−2
- ClassyPrelude/List.hs +2/−2
- ClassyPrelude/Map.hs +2/−2
- classy-prelude.cabal +2/−2
- test/main.hs +1/−1
ClassyPrelude/Classes.hs view
@@ -78,8 +78,12 @@ instance (CanInsertVal c' k v, c ~ c') => CanInsert (k -> v -> c -> c') where insert = insertVal -class CanDelete c k | c -> k where- delete :: k -> c -> c+class CanDelete f where+ delete :: f+class CanDeleteVal c k | c -> k where+ deleteVal :: k -> c -> c+instance (CanDeleteVal c' k, c ~ c') => CanDelete (k -> c -> c') where+ delete = deleteVal class CanMember c k | c -> k where member :: k -> c -> Prelude.Bool
ClassyPrelude/HashMap.hs view
@@ -32,5 +32,5 @@ lookup = Map.lookup instance (Prelude.Eq k, Hashable k) => CanInsertVal (Map k v) k v where insertVal = Map.insert-instance (Prelude.Eq k, Hashable k) => CanDelete (Map k v) k where- delete = Map.delete+instance (Prelude.Eq k, Hashable k) => CanDeleteVal (Map k v) k where+ deleteVal = Map.delete
ClassyPrelude/List.hs view
@@ -35,8 +35,8 @@ lookup = Prelude.lookup instance Prelude.Eq k => CanInsertVal [(k, v)] k v where insertVal k v c = (k, v) : delete k c-instance Prelude.Eq k => CanDelete [(k, v)] k where- delete k = filter ((Prelude./= k) . Prelude.fst)+instance Prelude.Eq k => CanDeleteVal [(k, v)] k where+ deleteVal k = filter ((Prelude./= k) . Prelude.fst) instance Prelude.Eq x => CanMember [x] x where member x = Prelude.any (Prelude.== x) instance Prelude.Eq a => CanStripPrefix [a] where
ClassyPrelude/Map.hs view
@@ -29,5 +29,5 @@ lookup = Map.lookup instance Prelude.Ord k => CanInsertVal (Map k v) k v where insertVal = Map.insert-instance Prelude.Ord k => CanDelete (Map k v) k where- delete = Map.delete+instance Prelude.Ord k => CanDeleteVal (Map k v) k where+ deleteVal = Map.delete
classy-prelude.cabal view
@@ -1,5 +1,5 @@ name: classy-prelude-version: 0.4.2+version: 0.4.3 synopsis: A typeclass-based Prelude. description: Focuses on using common typeclasses when possible, and creating new ones to avoid name clashing. Exposes many recommended datastructures (Map, ByteString, etc) directly without requiring long import lists and qualified modules. homepage: https://github.com/snoyberg/classy-prelude@@ -26,7 +26,7 @@ ClassyPrelude.HashMap ClassyPrelude.HashSet build-depends: base >= 4 && < 5- , basic-prelude >= 0.3 && < 0.4+ , basic-prelude >= 0.3.2 && < 0.4 , system-filepath >= 0.4 && < 0.5 , transformers , containers >= 0.4.2
test/main.hs view
@@ -16,7 +16,7 @@ dictionaryProps :: ( CanInsertVal a Int Char- , CanDelete a Int+ , CanDeleteVal a Int , Show a , Eq a , Arbitrary a