RefSerialize 0.3.1.4 → 0.4.0
raw patch · 2 files changed
+5/−6 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
- Data.RefSerialize: instance [incoherent] (Serialize a, Ord a, Serialize b) => Serialize (Map a b)
- Data.RefSerialize: instance [incoherent] (Serialize a, Serialize b) => Serialize (Either a b)
- Data.RefSerialize: instance [incoherent] (Serialize a, Serialize b) => Serialize (a, b)
- Data.RefSerialize: instance [incoherent] (Serialize a, Serialize b, Serialize c) => Serialize (a, b, c)
- Data.RefSerialize: instance [incoherent] (Serialize a, Serialize b, Serialize c, Serialize d) => Serialize (a, b, c, d)
- Data.RefSerialize: instance [incoherent] Serialize String
- Data.RefSerialize: instance [incoherent] Serialize a => Serialize (Maybe a)
- Data.RefSerialize: instance [incoherent] Serialize a => Serialize [a]
- Data.RefSerialize.Parser: instance Alternative STR
- Data.RefSerialize.Parser: instance Applicative STR
- Data.RefSerialize.Parser: instance Functor STR
- Data.RefSerialize.Parser: instance Monad STR
- Data.RefSerialize.Parser: instance MonadPlus STR
- Data.RefSerialize.Serialize: instance [overlap ok] Applicative STW
- Data.RefSerialize.Serialize: instance [overlap ok] Functor STW
- Data.RefSerialize.Serialize: instance [overlap ok] Monad STW
- Data.RefSerialize.Serialize: instance [overlap ok] Show ShowF
+ Data.RefSerialize: instance (Data.RefSerialize.Serialize a, Data.RefSerialize.Serialize b) => Data.RefSerialize.Serialize (Data.Either.Either a b)
+ Data.RefSerialize: instance (Data.RefSerialize.Serialize a, Data.RefSerialize.Serialize b) => Data.RefSerialize.Serialize (a, b)
+ Data.RefSerialize: instance (Data.RefSerialize.Serialize a, Data.RefSerialize.Serialize b, Data.RefSerialize.Serialize c) => Data.RefSerialize.Serialize (a, b, c)
+ Data.RefSerialize: instance (Data.RefSerialize.Serialize a, Data.RefSerialize.Serialize b, Data.RefSerialize.Serialize c, Data.RefSerialize.Serialize d) => Data.RefSerialize.Serialize (a, b, c, d)
+ Data.RefSerialize: instance (Data.RefSerialize.Serialize a, GHC.Classes.Ord a, Data.RefSerialize.Serialize b) => Data.RefSerialize.Serialize (Data.Map.Base.Map a b)
+ Data.RefSerialize: instance Data.RefSerialize.Serialize GHC.Base.String
+ Data.RefSerialize: instance Data.RefSerialize.Serialize a => Data.RefSerialize.Serialize (GHC.Base.Maybe a)
+ Data.RefSerialize: instance Data.RefSerialize.Serialize a => Data.RefSerialize.Serialize [a]
+ Data.RefSerialize.Parser: infix 0 <?>
+ Data.RefSerialize.Parser: infixr 1 <|>
+ Data.RefSerialize.Parser: instance GHC.Base.Alternative Data.RefSerialize.Parser.STR
+ Data.RefSerialize.Parser: instance GHC.Base.Applicative Data.RefSerialize.Parser.STR
+ Data.RefSerialize.Parser: instance GHC.Base.Functor Data.RefSerialize.Parser.STR
+ Data.RefSerialize.Parser: instance GHC.Base.Monad Data.RefSerialize.Parser.STR
+ Data.RefSerialize.Parser: instance GHC.Base.MonadPlus Data.RefSerialize.Parser.STR
+ Data.RefSerialize.Serialize: instance GHC.Base.Applicative Data.RefSerialize.Serialize.STW
+ Data.RefSerialize.Serialize: instance GHC.Base.Functor Data.RefSerialize.Serialize.STW
+ Data.RefSerialize.Serialize: instance GHC.Base.Monad Data.RefSerialize.Serialize.STW
+ Data.RefSerialize.Serialize: instance GHC.Show.Show Data.RefSerialize.Serialize.ShowF
- Data.RefSerialize: rshowps :: Serialize c => c -> STW ByteString
+ Data.RefSerialize: rshowps :: Serialize t => t -> STW ByteString
- Data.RefSerialize.Parser: between :: Monad m => m a -> m a1 -> m b -> m b
+ Data.RefSerialize.Parser: between :: Monad m => m a1 -> m a -> m b -> m b
- Data.RefSerialize.Parser: choice :: [STR a] -> STR a
+ Data.RefSerialize.Parser: choice :: Foldable t => t (STR a) -> STR a
- Data.RefSerialize.Parser: noneOf :: [Char] -> STR Char
+ Data.RefSerialize.Parser: noneOf :: Foldable t => t Char -> STR Char
- Data.RefSerialize.Parser: oneOf :: [Char] -> STR Char
+ Data.RefSerialize.Parser: oneOf :: Foldable t => t Char -> STR Char
- Data.RefSerialize.Serialize: assocs :: (HashTable h, Hashable a, Ord a) => IOHashTable h a b -> [(a, b)]
+ Data.RefSerialize.Serialize: assocs :: (Hashable a, HashTable h, Ord a) => h RealWorld a b -> [(a, b)]
- Data.RefSerialize.Serialize: delete :: (HashTable h, Hashable k, Eq k) => k -> IOHashTable h k v -> IOHashTable h k v
+ Data.RefSerialize.Serialize: delete :: (Hashable k, Eq k, HashTable h) => k -> h RealWorld k v -> h RealWorld k v
- Data.RefSerialize.Serialize: empty :: HashTable h => IO (IOHashTable h k v)
+ Data.RefSerialize.Serialize: empty :: HashTable h => IO (h RealWorld k v)
- Data.RefSerialize.Serialize: fromList :: (HashTable h, Hashable k, Eq k) => [(k, v)] -> IOHashTable h k v
+ Data.RefSerialize.Serialize: fromList :: (Hashable k, Eq k, HashTable h) => [(k, v)] -> h RealWorld k v
- Data.RefSerialize.Serialize: insert :: (HashTable h, Hashable k, Eq k) => k -> v -> IOHashTable h k v -> IOHashTable h k v
+ Data.RefSerialize.Serialize: insert :: (Hashable k, Eq k, HashTable h) => k -> v -> h RealWorld k v -> h RealWorld k v
- Data.RefSerialize.Serialize: lookup :: (HashTable h, Hashable k, Eq k) => k -> IOHashTable h k v -> Maybe v
+ Data.RefSerialize.Serialize: lookup :: (Hashable k, Eq k, HashTable h) => k -> h RealWorld k v -> Maybe v
- Data.RefSerialize.Serialize: toList :: (HashTable h, Hashable k, Eq k) => IOHashTable h k v -> [(k, v)]
+ Data.RefSerialize.Serialize: toList :: (Hashable k, Eq k, HashTable h) => h RealWorld k v -> [(k, v)]
- Data.RefSerialize.Serialize: varName :: a -> [Char]
+ Data.RefSerialize.Serialize: varName :: t -> [Char]
Files
- Data/RefSerialize/Serialize.hs +4/−5
- RefSerialize.cabal +1/−1
Data/RefSerialize/Serialize.hs view
@@ -1,5 +1,4 @@-{-# LANGUAGE OverlappingInstances - ,TypeSynonymInstances +{-# LANGUAGE TypeSynonymInstances ,FlexibleInstances ,UndecidableInstances ,OverloadedStrings @@ -58,14 +57,14 @@ data STW a= STW(StatW-> (StatW , a) ) instance Functor STW where - fmap f (STW stwx)= STW $ \s -> + fmap f (STW stwx)= STW $ \s -> let (s',x) = stwx s in (s', f x) instance Applicative STW where pure x = STW (\s -> (s, x)) - - STW g <*> STW f = STW (\s -> + + STW g <*> STW f = STW (\s -> let (s', x)= g s (s'',y)= f s'
RefSerialize.cabal view
@@ -1,5 +1,5 @@ name: RefSerialize -version: 0.3.1.4 +version: 0.4.0 synopsis: Write to and read from ByteStrings maintaining internal memory references description: Read, Show and Binary instances do not check for internal data references to the same address.