Repository : ssh://darcs.haskell.org//srv/darcs/packages/bytestring

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/abded1d6d891933b2d1afc849401c3025b95a0e6

>---------------------------------------------------------------

commit abded1d6d891933b2d1afc849401c3025b95a0e6
Author: Duncan Coutts <[email protected]>
Date:   Sun Nov 6 16:58:51 2011 +0000

    Add a proper Show and Read instance for lazy bytestrings
    Previous one was derived which was silly.

>---------------------------------------------------------------

 Data/ByteString/Lazy/Internal.hs |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/Data/ByteString/Lazy/Internal.hs b/Data/ByteString/Lazy/Internal.hs
index 0f77e47..356b670 100644
--- a/Data/ByteString/Lazy/Internal.hs
+++ b/Data/ByteString/Lazy/Internal.hs
@@ -62,16 +62,21 @@ import Data.Generics    (Data)
 -- Instances of Eq, Ord, Read, Show, Data, Typeable
 --
 data ByteString = Empty | Chunk {-# UNPACK #-} !S.ByteString ByteString
-    deriving (Show, Read
+
 #if defined(__GLASGOW_HASKELL__)
-                        ,Data, Typeable
+    deriving (Data, Typeable)
 #endif
-             )
 
 instance NFData ByteString where
     rnf Empty       = ()
     rnf (Chunk _ b) = rnf b
 
+instance Show ByteString where
+    showsPrec p ps r = showsPrec p (unpackChars ps) r
+
+instance Read ByteString where
+    readsPrec p str = [ (packChars x, y) | (x, y) <- readsPrec p str ]
+
 ------------------------------------------------------------------------
 -- Packing and unpacking from lists
 



_______________________________________________
Cvs-libraries mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-libraries

Reply via email to