[use utf8-string routines in PackedString
John Meacham <john@repetae.net>**20090811165405
 Ignore-this: ea852d2e75ba0cc13fe2c92723024565
] hunk ./src/PackedString.hs 38
-	consPS,      -- :: Char -> PackedString -> PackedString
+--	consPS,      -- :: Char -> PackedString -> PackedString
hunk ./src/PackedString.hs 56
+import Data.List
hunk ./src/PackedString.hs 58
+import qualified Data.ByteString.UTF8 as BSU
hunk ./src/PackedString.hs 92
-consPS :: Char -> PackedString -> PackedString
-consPS c cs = packString (c : (unpackPS cs)) -- ToDo:better
+--consPS :: Char -> PackedString -> PackedString
+--consPS c cs = packString (c : (unpackPS cs)) -- ToDo:better
hunk ./src/PackedString.hs 97
-packString str = PS $ (BS.pack $ toUTF str)
+packString str = PS (BSU.fromString str)
hunk ./src/PackedString.hs 105
-unpackPS (PS bs) = fromUTF (BS.unpack bs)
---unpackPS (PS (UArray _ (I# e) ba)) = unpackFoldrUtf8# (ba) (e +# 1#) f [] where
---    f ch r = C# ch : r
+unpackPS (PS bs) = BSU.toString bs
hunk ./src/PackedString.hs 109
---showsPS  (PS (UArray _ (I# e) ba)) xs = unpackFoldrUtf8# (ba) (e +# 1#) f xs where
---    f ch r = C# ch : r
hunk ./src/PackedString.hs 246
-concatPS pss = packString (concat (map unpackPS pss))
+concatPS pss = PS $ BS.concat [ x | PS x <- pss ]
hunk ./src/PackedString.hs 254
-joinPS filler pss = concatPS (splice pss)
- where
-  splice []  = []
-  splice [x] = [x]
-  splice (x:y:xs) = x:filler:splice (y:xs)
+joinPS filler pss = concatPS (intersperse filler pss)
hunk ./src/PackedString.hs 353
--}
hunk ./src/PackedString.hs 388
+-}
hunk ./src/PackedString.hs 437
--}
-
-{-