on master help sign in
Move Utf* modules into Data.Text.Encoding

--HG-- extra : convert_revision : 9c17f649ac992fe759e0ab4693e9ec48687283ba

commit74eaa00aa3044793a1048cd51441b6c5bb83832f authorBryan O'Sullivan <bos@serpentine.com> dateTue 24 Feb 2009, 06:21 (18 years ago) parent2bc2994
9 files changed+15−33
Data/Text.hs+1−1 Data/Text/Encoding.hs−7 Data/Text/Encoding/Fusion.hs+3−14 Data/Text/Utf16.hs → Data/Text/Encoding/Utf16.hs+2−2 Data/Text/Utf32.hs → Data/Text/Encoding/Utf32.hs+2−2 Data/Text/Utf8.hs → Data/Text/Encoding/Utf8.hs+2−2 Data/Text/Fusion.hs+1−1 Data/Text/Unsafe.hs+1−1 text.cabal+3−3
Data/Text.hs+1−1
@@ -163,7 +163,7 @@ import Data.Text.Internal (Text(..), empty, text)
163163import qualified Prelude as P
164164import Data.Text.Unsafe (iter, iter_, unsafeHead, unsafeTail)
165165import Data.Text.UnsafeChar (unsafeChr)
166−import qualified Data.Text.Utf16 as U16
166+import qualified Data.Text.Encoding.Utf16 as U16
167167
168168-- $fusion
169169--
Data/Text/Encoding.hs−7
@@ -24,7 +24,6 @@ module Data.Text.Encoding
2424 , decodeUtf32BE
2525
2626 -- * Encoding Text to ByteStrings
27− , encodeASCII
2827 , encodeUtf8
2928 , encodeUtf16LE
3029 , encodeUtf16BE
@@ -47,12 +46,6 @@ decodeUtf8 :: ByteString -> Text
4746decodeUtf8 bs = F.unstream (E.streamUtf8 bs)
4847{-# INLINE decodeUtf8 #-}
4948
50−-- | Encode text using a 7-bit ASCII representation. /Note/: non-ASCII
51−-- characters in the input 'Text' will be /truncated/.
52−encodeASCII :: Text -> ByteString
53−encodeASCII txt = E.unstream (E.restreamASCII (F.stream txt))
54−{-# INLINE encodeASCII #-}
55−
5649-- | Encode text using UTF-8 encoding.
5750encodeUtf8 :: Text -> ByteString
5851encodeUtf8 txt = E.unstream (E.restreamUtf8 (F.stream txt))
Data/Text/Encoding/Fusion.hs+3−14
@@ -31,7 +31,6 @@ module Data.Text.Encoding.Fusion
3131 -- * Restreaming
3232 -- Restreaming is the act of converting from one 'Stream'
3333 -- representation to another.
34− , restreamASCII
3534 , restreamUtf8
3635 , restreamUtf16LE
3736 , restreamUtf16BE
@@ -52,9 +51,9 @@ import Foreign.Storable (pokeByteOff)
5251import System.IO.Unsafe (unsafePerformIO)
5352import qualified Data.ByteString as B
5453import qualified Data.ByteString.Unsafe as B
55−import qualified Data.Text.Utf16 as U16
56−import qualified Data.Text.Utf32 as U32
57−import qualified Data.Text.Utf8 as U8
54+import qualified Data.Text.Encoding.Utf8 as U8
55+import qualified Data.Text.Encoding.Utf16 as U16
56+import qualified Data.Text.Encoding.Utf32 as U32
5857
5958-- Specialised, strict Maybe-like type.
6059data M = N
@@ -175,16 +174,6 @@ streamUtf32LE bs = Stream next 0 l
175174 idx = fromIntegral . B.unsafeIndex bs :: Int -> Word32
176175{-# INLINE [0] streamUtf32LE #-}
177176
178−restreamASCII :: Stream Char -> Stream Word8
179−restreamASCII (Stream next0 s0 len) = Stream next s0 (len*2)
180− where
181− next !s = case next0 s of
182− Done -> Done
183− Skip s' -> Skip s'
184− Yield x xs -> Yield x' xs
185− where x' = fromIntegral (ord x) :: Word8
186−{-# INLINE restreamASCII #-}
187−
188177-- | /O(n)/ Convert a Stream Char into a UTF-8 encoded Stream Word8.
189178restreamUtf8 :: Stream Char -> Stream Word8
190179restreamUtf8 (Stream next0 s0 len) =
Data/Text/Utf16.hs → Data/Text/Encoding/Utf16.hsrenamed+2−2
@@ -1,7 +1,7 @@
11{-# LANGUAGE MagicHash #-}
22
33-- |
4−-- Module : Data.Text.Utf16
4+-- Module : Data.Text.Encoding.Utf16
55-- Copyright : (c) Tom Harper 2008-2009,
66-- (c) Bryan O'Sullivan 2009,
77-- (c) Duncan Coutts 2009
@@ -13,7 +13,7 @@
1313-- Portability : GHC
1414--
1515-- Basic UTF-16 validation and character manipulation.
16−module Data.Text.Utf16
16+module Data.Text.Encoding.Utf16
1717 (
1818 chr2
1919 , validate1
Data/Text/Utf32.hs → Data/Text/Encoding/Utf32.hsrenamed+2−2
@@ -1,5 +1,5 @@
11-- |
2−-- Module : Data.Text.Utf16
2+-- Module : Data.Text.Encoding.Utf16
33-- Copyright : (c) Tom Harper 2008-2009,
44-- (c) Bryan O'Sullivan 2009,
55-- (c) Duncan Coutts 2009
@@ -11,7 +11,7 @@
1111-- Portability : portable
1212--
1313-- Basic UTF-32 validation.
14−module Data.Text.Utf32
14+module Data.Text.Encoding.Utf32
1515 (
1616 validate
1717 ) where
Data/Text/Utf8.hs → Data/Text/Encoding/Utf8.hsrenamed+2−2
@@ -1,7 +1,7 @@
11{-# LANGUAGE MagicHash #-}
22
33-- |
4−-- Module : Data.Text.Utf16
4+-- Module : Data.Text.Encoding.Utf16
55-- Copyright : (c) Tom Harper 2008-2009,
66-- (c) Bryan O'Sullivan 2009,
77-- (c) Duncan Coutts 2009
@@ -13,7 +13,7 @@
1313-- Portability : GHC
1414--
1515-- Basic UTF-8 validation and character manipulation.
16−module Data.Text.Utf8
16+module Data.Text.Encoding.Utf8
1717 (
1818 -- Decomposition
1919 ord2
Data/Text/Fusion.hs+1−1
@@ -115,7 +115,7 @@ import Data.Text.Internal (Text(..))
115115import Data.Text.UnsafeChar (unsafeChr, unsafeWrite, unsafeWriteRev)
116116import qualified Data.Text.Array as A
117117import qualified Data.Text.Internal as I
118−import qualified Data.Text.Utf16 as U16
118+import qualified Data.Text.Encoding.Utf16 as U16
119119import qualified Prelude as P
120120
121121default(Int)
Data/Text/Unsafe.hs+1−1
@@ -20,7 +20,7 @@ module Data.Text.Unsafe
2020import Control.Exception (assert)
2121import Data.Text.Internal (Text(..))
2222import Data.Text.UnsafeChar (unsafeChr)
23−import Data.Text.Utf16 (chr2)
23+import Data.Text.Encoding.Utf16 (chr2)
2424import qualified Data.Text.Array as A
2525
2626-- | /O(1)/ A variant of 'head' for non-empty 'Text'. 'unsafeHead'
text.cabal+3−3
@@ -24,9 +24,9 @@ library
2424 Data.Text.Internal
2525 Data.Text.Unsafe
2626 Data.Text.UnsafeChar
27− Data.Text.Utf8
28− Data.Text.Utf32
29− Data.Text.Utf16
27+ Data.Text.Encoding.Utf8
28+ Data.Text.Encoding.Utf16
29+ Data.Text.Encoding.Utf32
3030
3131 build-depends:
3232 base < 5,