JSON instances for ConnectionRequestUri (#276)

This commit is contained in:
Evgeny Poberezkin
2022-01-11 07:21:53 +00:00
committed by GitHub
parent 14afa24a0a
commit b5cb5618c1
+15
View File
@@ -107,6 +107,7 @@ where
import Control.Applicative (optional, (<|>))
import Control.Monad.IO.Class
import Data.Aeson (FromJSON (..), ToJSON (..))
import Data.Attoparsec.ByteString.Char8 (Parser)
import qualified Data.Attoparsec.ByteString.Char8 as A
import Data.ByteString.Base64
@@ -438,6 +439,20 @@ instance StrEncoding AConnectionRequestUri where
where
crModeP = "invitation" $> CMInvitation <|> "contact" $> CMContact
instance ConnectionModeI m => FromJSON (ConnectionRequestUri m) where
parseJSON = strParseJSON "ConnectionRequestUri"
instance ConnectionModeI m => ToJSON (ConnectionRequestUri m) where
toJSON = strToJSON
toEncoding = strToJEncoding
instance FromJSON AConnectionRequestUri where
parseJSON = strParseJSON "ConnectionRequestUri"
instance ToJSON AConnectionRequestUri where
toJSON = strToJSON
toEncoding = strToJEncoding
-- debug :: Show a => String -> a -> a
-- debug name value = unsafePerformIO (putStrLn $ name <> ": " <> show value) `seq` value
-- {-# INLINE debug #-}