base-encoding-0.2.0.0: Binary-to-text encodings (e.g. base64)

Safe HaskellTrustworthy
LanguageHaskell2010

Codec.Base64Url

Description

This module provides access to the padded "base64url" binary-to-text encoding as defined by RFC 4648. See also Codec.Base64Url.Unpadded for the unpadded encoding variant.

This module is intended to be imported qualified, e.g.

import qualified Codec.Base64Url as B64

If you want to explictly specify which Encode and Decode typeclass instance is used, you can use plain Haskell2010 type-signature annotations, e.g.

>>> (B64.encode :: ByteString -> Text) "\x00\x00"
"AAA="
>>> (B64.decode :: Text -> Either String ShortByteString) "NDoyMA=="
Right "4:20"

Alternatively, starting with GHC 8.0.1, you can also use the TypeApplications language extension:

>>> B64.encode @ShortByteString @Text "\xFF\239"
"_-8="
>>> B64.decode @Text @ShortByteString "_-8="
Right "\255\239"

Since: 0.1.0.0

Synopsis

Documentation

class Encode bin txt where Source #

Typeclass representing types for which a binary-to-text padded base64url encoding is defined

Methods

encode :: bin -> txt Source #

Encode binary data using padded base64url text encoding

Instances
Encode ShortByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode ShortByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode ByteString Text Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder Builder Source # 
Instance details

Defined in Codec.Base64Url

Encode Builder Text Source # 
Instance details

Defined in Codec.Base64Url

Methods

encode :: Builder -> Text Source #

Encode Builder Text Source # 
Instance details

Defined in Codec.Base64Url

Methods

encode :: Builder -> Text Source #

class Decode txt bin where Source #

Typeclass representing types for which a text-to-binary padded base64url decoding is defined

Methods

decode :: txt -> Either String bin Source #

Decode binary data encoded textually as padded base64url

Instances
Decode ShortByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ShortByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ShortByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ShortByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode ByteString Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Builder Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text Builder Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ShortByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text ByteString Source # 
Instance details

Defined in Codec.Base64Url

Decode Text Builder Source # 
Instance details

Defined in Codec.Base64Url