BSD-3-Clause licensed by Emily Pillmore
Maintained by [email protected]
This version can be pinned in stack with:base32-lens-0.1.0.0@sha256:d54fe262e4fd2399c1b06f2c945c03f9a620bb1ead3371a8c3c0a3e778787081,1717

Module documentation for 0.1.0.0

Base32-lens

Build Status Hackage

This package provides optics and convenient pattern synonyms for the base32 library.

Patterns

The pattern synonyms provided in this library are:

pattern Base32 :: ByteString -> ByteString
pattern Base32Url :: ByteString -> ByteString
pattern Base32UrlUnpadded :: ByteString -> ByteString

-- and

pattern Base32 :: Text -> Text
pattern Base32Url :: Text -> Text
pattern Base32UrlUnpadded :: Text -> Text

These provide a convenient high level interface for passing Base32 encoded values.

Optics

Prisms for encoding and decoding Text and ByteString values are given as part of the library:

_Base32 :: Prism' ByteString ByteString
_Base32Url :: Prism' ByteString ByteString
_Base32UrlUnpadded :: Prism' ByteString ByteString

-- and

_Base32 :: Prism' Text Text
_Base32Url :: Prism' Text Text
_Base32UrlUnpadded :: Prism' Text Text

If a particular structure has a Lens into some Text or ByteString value they might want to encode (or decode), then composing such a Lens with these Prisms yields an affine Traversal, resulting in a structure which has the focus of its Lens encoded as or decoded from Base32(-url).

Changes

Revision history for base64-lens

0.1.0.0

  • First version. Released on an unsuspecting world.