packages feed

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

{-# LANGUAGE TemplateHaskell     #-}


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

import Data.Aeson.TH

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

-- |
--   Pause request; value of command field is "pause".
--   The request suspenses the debuggee.
--   penDebug will respond with a StoppedEvent (event type 'pause') after a successful 'pause' command.
--
data PauseRequest =
  PauseRequest {
    seqPauseRequest       :: Int             -- Sequence number
  , typePauseRequest      :: String          -- One of "request", "response", or "event"
  , commandPauseRequest   :: String          -- The command to execute
  , argumentsPauseRequest :: PauseArguments  -- Arguments for "pause" request.
  } deriving (Show, Read, Eq)

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