packages feed

phoityne-vscode-0.0.1.0: app/Phoityne/IO/GUI/VSCode/TH/ErrorResponseBodyJSON.hs

{-# LANGUAGE TemplateHaskell     #-}


module Phoityne.IO.GUI.VSCode.TH.ErrorResponseBodyJSON where

import Data.Aeson
import Data.Aeson.TH

import Phoityne.Utility
import Phoityne.IO.GUI.VSCode.TH.MessageJSON

-- |
--    On error that is whenever 'success' is false, the body can provide more details. 
--
data ErrorResponseBody =
  ErrorResponseBody {
    errorErrorResponseBody :: Message  -- An optional, structured error message.
  } deriving (Show, Read, Eq)


$(deriveJSON defaultOptions { fieldLabelModifier = rdrop (length "ErrorResponseBody") } ''ErrorResponseBody)

-- |
--
defaultErrorResponseBody :: ErrorResponseBody
defaultErrorResponseBody = ErrorResponseBody defaultMessage