module Data.Connect.OrphanInstances where import Control.Monad (mzero) import Data.Aeson import qualified Data.Text as T import qualified Network.URI as NU instance FromJSON NU.URI where parseJSON :: Value -> Parser URI parseJSON (String Text uriString) = forall b a. b -> (a -> b) -> Maybe a -> b maybe forall (m :: * -> *) a. MonadPlus m => m a mzero forall (m :: * -> *) a. Monad m => a -> m a return (String -> Maybe URI NU.parseURI forall b c a. (b -> c) -> (a -> b) -> a -> c . Text -> String T.unpack forall a b. (a -> b) -> a -> b $ Text uriString) parseJSON Value _ = forall (m :: * -> *) a. MonadPlus m => m a mzero instance ToJSON NU.URI where toJSON :: URI -> Value toJSON = Text -> Value String forall b c a. (b -> c) -> (a -> b) -> a -> c . String -> Text T.pack forall b c a. (b -> c) -> (a -> b) -> a -> c . forall a. Show a => a -> String show