mirror of
https://github.com/msgpack/msgpack-python.git
synced 2026-02-07 02:09:59 +00:00
28 lines
671 B
Haskell
28 lines
671 B
Haskell
module Data.MessagePack.Internal.Utf8 (
|
|
encodeUtf8,
|
|
decodeUtf8,
|
|
skipChar,
|
|
toLBS,
|
|
fromLBS,
|
|
) where
|
|
|
|
import qualified Data.ByteString as B
|
|
import qualified Data.ByteString.Lazy as BL
|
|
import qualified Data.Text as T
|
|
import qualified Data.Text.Encoding as T
|
|
import qualified Data.Text.Encoding.Error as T
|
|
|
|
encodeUtf8 :: String -> B.ByteString
|
|
encodeUtf8 = T.encodeUtf8 . T.pack
|
|
|
|
decodeUtf8 :: B.ByteString -> String
|
|
decodeUtf8 = T.unpack . T.decodeUtf8With skipChar
|
|
|
|
skipChar :: T.OnDecodeError
|
|
skipChar _ _ = Nothing
|
|
|
|
toLBS :: B.ByteString -> BL.ByteString
|
|
toLBS bs = BL.fromChunks [bs]
|
|
|
|
fromLBS :: BL.ByteString -> B.ByteString
|
|
fromLBS = B.concat . BL.toChunks
|