packages feed

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

{-# LANGUAGE TemplateHaskell     #-}


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

import Data.Aeson.TH

import Phoityne.Utility

-- |
--   Arguments for "launch" request.
--
data LaunchRequestArguments =
  LaunchRequestArguments {
    noDebugLaunchRequestArguments :: Bool      --  If noDebug is true the launch request should launch the program without enabling debugging.
  , nameLaunchRequestArguments    :: String    -- Phoityne specific argument.
  , typeLaunchRequestArguments    :: String    -- Phoityne specific argument.
  , requestLaunchRequestArguments :: String    -- Phoityne specific argument. must be "request"
  , startupLaunchRequestArguments :: String    -- Phoityne specific argument.
  , workspaceLaunchRequestArguments :: String  -- Phoityne specific argument.
  } deriving (Show, Read, Eq)


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