module Network.Colchis.Protocol.JSONRPC20.Response
(
Response(..)
, ErrorObject(..)
) where
import Data.Aeson
import Data.Aeson.Types
import Data.Text
import GHC.Generics
data ErrorObject = ErrorObject
{ _code :: Int
, _message :: Text
, _data :: Maybe Value
} deriving (Generic,Show)
data Response = Response
{ _jsonrpc :: Text
, _result :: Maybe Value
, _error :: Maybe ErrorObject
, _id :: Value
} deriving (Generic,Show)
options = defaultOptions { fieldLabelModifier = Prelude.tail , omitNothingFields = True }
instance FromJSON Response where
parseJSON = genericParseJSON options
instance FromJSON ErrorObject where
parseJSON = genericParseJSON options