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 :: ByteString -> Text
- encodeBase64' :: ByteString -> ByteString
- decodeBase64 :: ByteString -> Either Text ByteString
- decodeBase64Lenient :: ByteString -> ByteString
- isBase64 :: ByteString -> Bool
- isValidBase64 :: ByteString -> Bool
Documentation
encodeBase64 :: ByteString -> Text Source #
Encode a ByteString
value as Base64 Text
with padding.
See: RFC-4648 section 4
encodeBase64' :: ByteString -> ByteString Source #
Encode a ByteString
value as a Base64 ByteString
value with padding.
See: RFC-4648 section 4
decodeBase64 :: ByteString -> Either Text ByteString Source #
Decode a padded Base64-encoded ByteString
value.
See: RFC-4648 section 4
Note: This function is not RFC compliant, and will add padding to an
unpadded Base64-encoded value for decoding. For strictly RFC-compliant decoding,
use decodeBase64Unpadded
.
decodeBase64Lenient :: ByteString -> ByteString Source #
Leniently decode an unpadded Base64-encoded ByteString
value. This function
will not generate parse errors. If input data contains padding chars,
then the input will be parsed up until the first pad character.
Note: This is not RFC 4648-compliant.
isBase64 :: ByteString -> Bool Source #
Tell whether a ByteString
value is base64 encoded.
isValidBase64 :: ByteString -> Bool Source #
Tell whether a ByteString
value is a valid Base64 format.
This will not tell you whether or not this is a correct Base64url representation,
only that it conforms to the correct shape. To check whether it is a true
Base64 encoded ByteString
value, use isBase64
.