witch/source/library/Witch/Encoding.hs
Taylor Fausak 7e7cd448cf
Add aliases for encodings (#104)
* Add aliases for encodings

* Use shorter aliases for encodings
2024-10-22 10:51:03 -05:00

62 lines
2.1 KiB
Haskell

{-# LANGUAGE DataKinds #-}
module Witch.Encoding where
import qualified Data.ByteString as ByteString
import qualified Data.ByteString.Lazy as LazyByteString
import qualified Data.Tagged as Tagged
-- | <https://en.wikipedia.org/wiki/ISO/IEC_8859-1>
type ISO_8859_1 = Tagged.Tagged "ISO-8859-1"
-- | The 'ISO_8859_1' encoding for strict 'ByteString.ByteString's.
type Latin1S = ISO_8859_1 ByteString.ByteString
-- | The 'ISO_8859_1' encoding for lazy 'LazyByteString.ByteString's.
type Latin1L = ISO_8859_1 LazyByteString.ByteString
-- | <https://en.wikipedia.org/wiki/UTF-8>
type UTF_8 = Tagged.Tagged "UTF-8"
-- | The 'UTF_8' encoding for strict 'ByteString.ByteString's.
type Utf8S = UTF_8 ByteString.ByteString
-- | The 'UTF_8' encoding for lazy 'LazyByteString.ByteString's.
type Utf8L = UTF_8 LazyByteString.ByteString
-- | <https://en.wikipedia.org/wiki/UTF-16>
type UTF_16LE = Tagged.Tagged "UTF-16LE"
-- | The 'UTF_16LE' encoding for strict 'ByteString.ByteString's.
type Utf16LS = UTF_16LE ByteString.ByteString
-- | The 'UTF_16LE' encoding for lazy 'LazyByteString.ByteString's.
type Utf16LL = UTF_16LE LazyByteString.ByteString
-- | <https://en.wikipedia.org/wiki/UTF-16>
type UTF_16BE = Tagged.Tagged "UTF-16BE"
-- | The 'UTF_16BE' encoding for strict 'ByteString.ByteString's.
type Utf16BS = UTF_16BE ByteString.ByteString
-- | The 'UTF_16BE' encoding for lazy 'LazyByteString.ByteString's.
type Utf16BL = UTF_16BE LazyByteString.ByteString
-- | <https://en.wikipedia.org/wiki/UTF-32>
type UTF_32LE = Tagged.Tagged "UTF-32LE"
-- | The 'UTF_32LE' encoding for strict 'ByteString.ByteString's.
type Utf32LS = UTF_32LE ByteString.ByteString
-- | The 'UTF_32LE' encoding for lazy 'LazyByteString.ByteString's.
type Utf32LL = UTF_32LE LazyByteString.ByteString
-- | <https://en.wikipedia.org/wiki/UTF-32>
type UTF_32BE = Tagged.Tagged "UTF-32BE"
-- | The 'UTF_32BE' encoding for strict 'ByteString.ByteString's.
type Utf32BS = UTF_32BE ByteString.ByteString
-- | The 'UTF_32BE' encoding for lazy 'LazyByteString.ByteString's.
type Utf32BL = UTF_32BE LazyByteString.ByteString