Replace dataenc with sandi.

The library dataenc is unmaintained and has been superseded by sandi.

Signed-off-by: Magnus Therning <magnus@therning.org>
This commit is contained in:
Magnus Therning 2013-08-06 11:00:52 +02:00 committed by Joey Hess
parent c89d64d396
commit 8ab56a5cf2
2 changed files with 7 additions and 8 deletions

View file

@ -1,23 +1,22 @@
{- Simple Base64 encoding of Strings
-
- Copyright 2011 Joey Hess <id@joeyh.name>
- Copyright 2011, 2015 Joey Hess <id@joeyh.name>
-
- License: BSD-2-clause
-}
module Utility.Base64 (toB64, fromB64Maybe, fromB64, prop_b64_roundtrips) where
import qualified "dataenc" Codec.Binary.Base64 as B64
import Control.Applicative
import qualified "sandi" Codec.Binary.Base64 as B64
import Data.Maybe
import qualified Data.ByteString.Lazy as L
import Data.ByteString.Lazy.UTF8 (fromString, toString)
import Data.ByteString.UTF8 (fromString, toString)
toB64 :: String -> String
toB64 = B64.encode . L.unpack . fromString
toB64 = toString . B64.encode . fromString
fromB64Maybe :: String -> Maybe String
fromB64Maybe s = toString . L.pack <$> B64.decode s
fromB64Maybe s = either (const Nothing) (Just . toString)
(B64.decode $ fromString s)
fromB64 :: String -> String
fromB64 = fromMaybe bad . fromB64Maybe