{-# LANGUAGE DerivingStrategies #-}
module Libjwt.JsonByteString
( JsonByteString(..)
, jsonFromStrict
, toJsonStrict
, toJsonBuilder
)
where
import Data.ByteString ( ByteString )
import Data.ByteString.Builder ( Builder
, lazyByteString
)
import qualified Data.ByteString.Lazy as Lazy
newtype JsonByteString = Json { JsonByteString -> ByteString
toJson :: Lazy.ByteString }
deriving stock (Int -> JsonByteString -> ShowS
[JsonByteString] -> ShowS
JsonByteString -> String
(Int -> JsonByteString -> ShowS)
-> (JsonByteString -> String)
-> ([JsonByteString] -> ShowS)
-> Show JsonByteString
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
showList :: [JsonByteString] -> ShowS
$cshowList :: [JsonByteString] -> ShowS
show :: JsonByteString -> String
$cshow :: JsonByteString -> String
showsPrec :: Int -> JsonByteString -> ShowS
$cshowsPrec :: Int -> JsonByteString -> ShowS
Show, JsonByteString -> JsonByteString -> Bool
(JsonByteString -> JsonByteString -> Bool)
-> (JsonByteString -> JsonByteString -> Bool) -> Eq JsonByteString
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: JsonByteString -> JsonByteString -> Bool
$c/= :: JsonByteString -> JsonByteString -> Bool
== :: JsonByteString -> JsonByteString -> Bool
$c== :: JsonByteString -> JsonByteString -> Bool
Eq)
jsonFromStrict :: ByteString -> JsonByteString
jsonFromStrict :: ByteString -> JsonByteString
jsonFromStrict = ByteString -> JsonByteString
Json (ByteString -> JsonByteString)
-> (ByteString -> ByteString) -> ByteString -> JsonByteString
forall b c a. (b -> c) -> (a -> b) -> a -> c
. ByteString -> ByteString
Lazy.fromStrict
toJsonStrict :: JsonByteString -> ByteString
toJsonStrict :: JsonByteString -> ByteString
toJsonStrict = ByteString -> ByteString
Lazy.toStrict (ByteString -> ByteString)
-> (JsonByteString -> ByteString) -> JsonByteString -> ByteString
forall b c a. (b -> c) -> (a -> b) -> a -> c
. JsonByteString -> ByteString
toJson
toJsonBuilder :: JsonByteString -> Builder
toJsonBuilder :: JsonByteString -> Builder
toJsonBuilder = ByteString -> Builder
lazyByteString (ByteString -> Builder)
-> (JsonByteString -> ByteString) -> JsonByteString -> Builder
forall b c a. (b -> c) -> (a -> b) -> a -> c
. JsonByteString -> ByteString
toJson