-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | RFC 4648-compliant padded and unpadded base64 and base64url encodings -- -- RFC 4648-compliant padded and unpadded base64 and base64url encoding -- and decoding. @package base64 @version 0.1.0.0 -- | This module contains the combinators implementing the RFC 4648 -- specification for the Base64 encoding including unpadded and lenient -- variants module Data.ByteString.Base64 -- | Encode a ByteString in base64 with padding. -- -- See: RFC-4648 section 4 encodeBase64 :: ByteString -> ByteString -- | Decode a padded base64-encoded ByteString -- -- See: RFC-4648 section 4 decodeBase64 :: ByteString -> Either Text ByteString -- | Encode a ByteString 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 bytestring is divisible by -- 3, this function will be the same as encodeBase64 with padding, -- however, if not, you may see garbage appended to your bytestring in -- the form of "NUL". -- -- Only call unpadded variants when you can make assumptions about the -- length of your input data. -- -- See: RFC-4648 section 3.2 encodeBase64Unpadded :: ByteString -> ByteString -- | Decode an unpadded base64-encoded ByteString -- -- See: RFC-4648 section 3.2 decodeBase64Unpadded :: ByteString -> Either Text ByteString -- | This module contains the combinators implementing the RFC 4648 -- specification for the Base64-URL encoding including unpadded and -- lenient variants module Data.ByteString.Base64.URL -- | Encode a ByteString in base64-url with padding. -- -- See: RFC-4648 section 5 encodeBase64 :: ByteString -> ByteString -- | Decode a padded base64-url encoded ByteString -- -- See: RFC-4648 section 4 decodeBase64 :: ByteString -> Either Text ByteString -- | Encode a ByteString in base64-url without padding. -- -- Note: in some circumstances, the use of padding ("=") in base-encoded -- data is not required or used. If you are absolutely sure the length of -- your input data is divisible by 3, this function will be the same as -- encodeBase64 with padding. However, if not, you may see garbage -- appended to output in the form of "NUL". -- -- Only call unpadded variants when you can make assumptions about the -- length of your input data. -- -- See: RFC-4648 section 3.2 encodeBase64Unpadded :: ByteString -> ByteString -- | Decode an unpadded base64-url encoded ByteString -- -- See: RFC-4648 section 4 decodeBase64Unpadded :: ByteString -> Either Text ByteString -- | This module contains Prisms Base64-encoding and decoding -- ByteString values. module Data.ByteString.Base64.Lens -- | A Prism into the Base64 encoding of a ByteString value -- --
-- >>> _Base64 # "Sun" -- "UV3u" ---- --
-- >>> "UV3u" ^? _Base64 -- Just "Sun" --_Base64 :: Prism' ByteString ByteString -- | A Prism into the Base64-url encoding of a ByteString -- value -- --
-- >>> _Base64Url # "Sun" -- "UV3u" ---- --
-- >>> "PDw_Pz8-Pg==" ^? _Base64Url -- Just "<<???>>" --_Base64Url :: Prism' ByteString ByteString -- | A Prism into the unpadded Base64 encoding of a -- ByteString value -- -- Please note that unpadded variants should only be used when -- assumptions about the data can be made. In particular, if the length -- of the input is divisible by 3, then this is a safe function to call. -- --
-- >>> _Base64Unpadded # "Sun" -- "UV3u" ---- --
-- >>> "UV3u" ^? _Base64Unpadded -- Just "Sun" --_Base64Unpadded :: Prism' ByteString ByteString -- | A Prism into the Base64-url encoding of a ByteString -- value -- -- Please note that unpadded variants should only be used when -- assumptions about the data can be made. In particular, if the length -- of the input is divisible by 3, then this is a safe function to call. -- --
-- >>> _Base64UrlUnpadded # "<<??>>" -- "PDw_Pz4-" ---- --
-- >>> "PDw_Pz4-" ^? _Base64UrlUnpadded -- Just "<<??>>" --_Base64UrlUnpadded :: Prism' ByteString ByteString -- | Unidirectional pattern synonym for base64-encoded ByteString -- values. pattern Base64 :: ByteString -> ByteString -- | Unidirectional pattern synonym for base64url-encoded ByteString -- values. pattern Base64Url :: ByteString -> ByteString -- | Unidirectional pattern synonym for unpadded base64-encoded -- ByteString values. pattern Base64Unpadded :: ByteString -> ByteString -- | Unidirectional pattern synonym for unpadded base64url-encoded -- ByteString values. pattern Base64UrlUnpadded :: ByteString -> ByteString -- | This module contains the combinators implementing the RFC 4648 -- specification for the Base64 encoding including unpadded and lenient -- variants module Data.Text.Encoding.Base64 -- | Encode Text in base64 with padding. -- -- See: RFC-4648 section 4 encodeBase64 :: Text -> Text -- | Decode a padded base64 encoded Text value -- -- See: RFC-4648 section 4 decodeBase64 :: Text -> Either Text Text -- | Encode a Text in base64 without padding. -- -- Note: in some circumstances, the use of padding ("=") in base-encoded -- data is not required or used. If you are absolutely sure the length of -- your input data is divisible by 3, this function will be the same as -- encodeBase64 with padding. However, if not, you may see garbage -- appended to output in the form of "NUL". -- -- Only call unpadded variants when you can make assumptions about the -- length of your input data. -- -- See: RFC-4648 section 3.2 encodeBase64Unpadded :: Text -> Text -- | Decode an unpadded base64 encoded Text -- -- See: RFC-4648 section 3.2 decodeBase64Unpadded :: Text -> Either Text Text -- | This module contains the combinators implementing the RFC 4648 -- specification for the Base64-URL encoding including unpadded and -- lenient variants module Data.Text.Encoding.Base64.URL -- | Encode a Text in base64-url with padding. -- -- See: RFC-4648 section 5 encodeBase64 :: Text -> Text -- | Decode a padded base64-url encoded Text -- -- See: RFC-4648 section 4 decodeBase64 :: Text -> Either Text Text -- | Encode a Text value in base64-url without padding. -- -- Note: in some circumstances, the use of padding ("=") in -- base-encoded data is not required or used. If you are absolutely sure -- the length of your input data is divisible by 3, this function will be -- the same as encodeBase64 with padding. However, if not, you may -- see garbage appended to output in the form of "NUL". -- -- Only call unpadded variants when you can make assumptions about the -- length of your input data. -- -- See: RFC-4648 section 3.2 encodeBase64Unpadded :: Text -> Text -- | Decode an unpadded base64-url encoded Text value -- -- See: RFC-4648 section 4 decodeBase64Unpadded :: Text -> Either Text Text -- | This module contains Prisms Base64-encoding and decoding -- Text values. module Data.Text.Encoding.Base64.Lens -- | A Prism into the Base64 encoding of a Text value. -- --
-- >>> _Base64 # "Sun" -- "UV3u" ---- --
-- >>> "UV3u" ^? _Base64 -- Just "Sun" --_Base64 :: Prism' Text Text -- | A Prism into the Base64-url encoding of a Text value. -- --
-- >>> _Base64Url # "Sun" -- "UV3u" ---- --
-- >>> "PDw_Pz8-Pg==" ^? _Base64Url -- Just "<<???>>" --_Base64Url :: Prism' Text Text -- | A Prism into the unpadded Base64 encoding of a Text -- value. -- -- Please note that unpadded variants should only be used when -- assumptions about the data can be made. In particular, if the length -- of the input is divisible by 3, then this is a safe function to call. -- --
-- >>> _Base64Unpadded # "Sun" -- "UV3u" ---- --
-- >>> "UV3u" ^? _Base64Unpadded -- Just "Sun" --_Base64Unpadded :: Prism' Text Text -- | A Prism into the Base64-url encoding of a Text value. -- -- Please note that unpadded variants should only be used when -- assumptions about the data can be made. In particular, if the length -- of the input is divisible by 3, then this is a safe function to call. -- --
-- >>> _Base64UrlUnpadded # "<<??>>" -- "PDw_Pz4-" ---- --
-- >>> "PDw_Pz4-" ^? _Base64UrlUnpadded -- Just "<<??>>" --_Base64UrlUnpadded :: Prism' Text Text -- | Unidirectional pattern synonym for base64-encoded Text values. pattern Base64 :: Text -> Text -- | Unidirectional pattern synonym for base64url-encoded Text -- values. pattern Base64Url :: Text -> Text -- | Unidirectional pattern synonym for unpadded base64-encoded Text -- values. pattern Base64Unpadded :: Text -> Text -- | Unidirectional pattern synonym for unpadded base64url-encoded -- Text values. pattern Base64UrlUnpadded :: Text -> Text