Copyright | (c) 2019 Emily Pillmore |
---|---|
License | BSD-style |
Maintainer | Emily Pillmore <emilypi@cohomolo.gy> |
Stability | Experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
This module contains the combinators implementing the RFC 4648 specification for the Base64 encoding including unpadded and lenient variants
Synopsis
- encodeBase64 :: Text -> Text
- decodeBase64 :: Text -> Either Text Text
- encodeBase64Unpadded :: Text -> Text
- decodeBase64Unpadded :: Text -> Either Text Text
- decodeBase64Lenient :: Text -> Text
- isBase64 :: Text -> Bool
- isValidBase64 :: Text -> Bool
Documentation
encodeBase64 :: Text -> Text Source #
Encode a Text
value in Base64 with padding.
See: RFC-4648 section 4
decodeBase64 :: Text -> Either Text Text Source #
Decode a padded Base64-encoded Text
value
See: RFC-4648 section 4
encodeBase64Unpadded :: Text -> Text Source #
Encode a Text
value in Base64 without padding.
Note: in some circumstances, the use of padding ("=") in base-encoded data
is not required or used. This is not one of them. If you are absolutely sure
the length of your text is divisible by 3, this function will be the same
as encodeBase64
with padding, however, if not, you may see garbage appended to
your text.
Only call unpadded variants when you can make assumptions about the length of your input data.
See: RFC-4648 section 3.2
decodeBase64Unpadded :: Text -> Either Text Text Source #
Decode an unpadded Base64-encoded Text
See: RFC-4648 section 3.2