diff options
Diffstat (limited to 'Utility/Base64.hs')
-rw-r--r-- | Utility/Base64.hs | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/Utility/Base64.hs b/Utility/Base64.hs index 80cc122a1..6ab3c984f 100644 --- a/Utility/Base64.hs +++ b/Utility/Base64.hs @@ -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 |