{-# LANGUAGE TypeFamilies #-}
{-# LANGUAGE DataKinds #-}
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE PolyKinds #-}
module Data.TypedEncoding.Conv.ByteString.Lazy.Char8 where
import qualified Data.ByteString.Lazy.Char8 as BL8
import qualified Data.TypedEncoding.Common.Util.TypeLits as Knds
import Data.TypedEncoding.Instances.Support
pack :: (
Knds.UnSnoc xs ~ '(,) ys y
, Superset "r-CHAR8" y
, encs ~ RemoveRs ys
, AllEncodeInto "r-CHAR8" encs
) => Enc xs c String -> Enc xs c BL8.ByteString
pack :: Enc @[Symbol] xs c String -> Enc @[Symbol] xs c ByteString
pack = (String -> ByteString)
-> Enc @[Symbol] xs c String -> Enc @[Symbol] xs c ByteString
forall k s1 s2 (e :: k) c.
(s1 -> s2) -> Enc @k e c s1 -> Enc @k e c s2
unsafeChangePayload String -> ByteString
BL8.pack
unpack :: (
Knds.UnSnoc xs ~ '(,) ys y
, Superset "r-CHAR8" y
, encs ~ RemoveRs ys
, AllEncodeInto "r-CHAR8" encs
) => Enc xs c BL8.ByteString -> Enc xs c String
unpack :: Enc @[Symbol] xs c ByteString -> Enc @[Symbol] xs c String
unpack = (ByteString -> String)
-> Enc @[Symbol] xs c ByteString -> Enc @[Symbol] xs c String
forall k s1 s2 (e :: k) c.
(s1 -> s2) -> Enc @k e c s1 -> Enc @k e c s2
unsafeChangePayload ByteString -> String
BL8.unpack
pack'' :: (
Knds.UnSnoc xs ~ '(,) ys y
, EncodingAnn y
, encs ~ RemoveRs ys
, AllEncodeInto "r-CHAR8" encs
) => Enc xs c String -> Enc xs c BL8.ByteString
pack'' :: Enc @[Symbol] xs c String -> Enc @[Symbol] xs c ByteString
pack'' = (String -> ByteString)
-> Enc @[Symbol] xs c String -> Enc @[Symbol] xs c ByteString
forall k s1 s2 (e :: k) c.
(s1 -> s2) -> Enc @k e c s1 -> Enc @k e c s2
unsafeChangePayload String -> ByteString
BL8.pack
unpack'' :: (
Knds.UnSnoc xs ~ '(,) ys y
, EncodingAnn y
, encs ~ RemoveRs ys
, AllEncodeInto "r-CHAR8" encs
) => Enc xs c BL8.ByteString -> Enc xs c String
unpack'' :: Enc @[Symbol] xs c ByteString -> Enc @[Symbol] xs c String
unpack'' = (ByteString -> String)
-> Enc @[Symbol] xs c ByteString -> Enc @[Symbol] xs c String
forall k s1 s2 (e :: k) c.
(s1 -> s2) -> Enc @k e c s1 -> Enc @k e c s2
unsafeChangePayload ByteString -> String
BL8.unpack