phoityne-vscode-0.0.1.0: app/Phoityne/IO/GUI/VSCode/TH/ScopesRequestJSON.hs
{-# LANGUAGE TemplateHaskell #-}
module Phoityne.IO.GUI.VSCode.TH.ScopesRequestJSON where
import Data.Aeson.TH
import Phoityne.Utility
import Phoityne.IO.GUI.VSCode.TH.ScopesArgumentsJSON
-- |
-- Scopes request; value of command field is "scopes".
-- The request returns the variable scopes for a given stackframe ID.
--
data ScopesRequest =
ScopesRequest {
seqScopesRequest :: Int -- Sequence number
, typeScopesRequest :: String -- One of "request", "response", or "event"
, commandScopesRequest :: String -- The command to execute
, argumentsScopesRequest :: ScopesArguments -- Arguments for "scopes" request.
} deriving (Show, Read, Eq)
$(deriveJSON defaultOptions { fieldLabelModifier = rdrop (length "ScopesRequest") } ''ScopesRequest)