1
Fork 0
mirror of https://git.cs.ou.nl/joshua.moerman/mealy-decompose.git synced 2025-04-29 17:57:44 +02:00
mealy-decompose/hs/app/CommonOptions.hs
2025-04-29 09:57:09 +02:00

23 lines
865 B
Haskell

-- | Copyright: (c) 2024-2025 Joshua Moerman, Open Universiteit
-- SPDX-License-Identifier: EUPL-1.2
module CommonOptions where
import Options.Applicative
data CommonOptions = CommonOptions
{ extraChecks :: Bool
, verbose :: Bool
, moreOutput :: Bool
, logDirectory :: FilePath
, resultsDirectory :: FilePath
}
deriving Show
commonOptionsParser :: Parser CommonOptions
commonOptionsParser =
CommonOptions
<$> switch (long "extra-checks" <> help "Enable extra validation checks")
<*> switch (long "verbose" <> short 'v' <> help "More out to the terminal")
<*> switch (long "more-output" <> help "More output to files")
<*> option str (long "log-directory" <> help "Directory for logging" <> showDefault <> value "log")
<*> option str (long "results-directory" <> help "Directory for outputs" <> showDefault <> value "results")