hset 0.1.2 → 1.0.0
raw patch · 3 files changed
+12/−7 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.HSet: type Contains els e = HGet els e (Index e els)
+ Data.HSet: type HGetable els e = HGet els e (Index e els)
- Data.HSet: hask :: (MonadReader (HSet els) m, Contains els e) => m e
+ Data.HSet: hask :: (MonadReader (HSet els) m, HGetable els e) => m e
- Data.HSet: haskLabeled :: (Contains els (Labeled label e), MonadReader (HSet els) m, Applicative m) => proxy label -> m e
+ Data.HSet: haskLabeled :: (HGetable els (Labeled label e), MonadReader (HSet els) m, Applicative m) => proxy label -> m e
- Data.HSet: hgetLabeled :: Contains els (Labeled label e) => proxy label -> HSet els -> e
+ Data.HSet: hgetLabeled :: HGetable els (Labeled label e) => proxy label -> HSet els -> e
Files
- CHANGELOG.md +5/−0
- hset.cabal +1/−1
- src/Data/HSet.hs +6/−6
CHANGELOG.md view
@@ -1,5 +1,10 @@ # CHANGELOG +## 1.0.0+### Changed+* type family `Contains` renamed to `HGetable` to not clash names with+ lens+ ## 0.1.2 ### Added * Facepalm `Applicative` constraint
hset.cabal view
@@ -1,5 +1,5 @@ name: hset-version: 0.1.2+version: 1.0.0 synopsis: Primitive heterogenous read-only set license: BSD3 license-file: LICENSE
src/Data/HSet.hs view
@@ -1,7 +1,7 @@ module Data.HSet ( HSet(..) , HGet(..)- , Contains+ , HGetable , hask -- * Work with 'Labeled' elements , hgetLabeled@@ -75,9 +75,9 @@ -- | Helper typefamily to derive that second argument contained in -- list of first argument and we can perform 'hget' from set.-type Contains els e = HGet els e (Index e els)+type HGetable els e = HGet els e (Index e els) -hask :: (MonadReader (HSet els) m, Contains els e) => m e+hask :: (MonadReader (HSet els) m, HGetable els e) => m e hask = do h <- ask return $ hget h@@ -97,7 +97,7 @@ -} hgetLabeled :: forall proxy label e els.- (Contains els (Labeled label e))+ (HGetable els (Labeled label e)) => proxy label -> HSet els -> e hgetLabeled _ hset = let x = hget hset@@ -105,9 +105,9 @@ haskLabeled :: forall proxy label e els m. #if MIN_VERSION_base(4, 8, 0)- (Contains els (Labeled label e), MonadReader (HSet els) m)+ (HGetable els (Labeled label e), MonadReader (HSet els) m) #else- (Contains els (Labeled label e), MonadReader (HSet els) m, Applicative m)+ (HGetable els (Labeled label e), MonadReader (HSet els) m, Applicative m) #endif => proxy label -> m e haskLabeled p = hgetLabeled p <$> ask