From 062cd0415af4d5365d314d345a7604a10b650b7a Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Sun, 24 Feb 2008 12:15:39 +0000 Subject: [PATCH] Added a simple (-h/--help) option for printing the Tock help --- Main.hs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Main.hs b/Main.hs index bb151c1..35995a1 100644 --- a/Main.hs +++ b/Main.hs @@ -58,6 +58,7 @@ options = [ Option [] ["mode"] (ReqArg optMode "MODE") "select mode (options: flowgraph, parse, compile, post-c, full)" , Option [] ["backend"] (ReqArg optBackend "BACKEND") "code-generating backend (options: c, cppcsp, dumpast)" , Option [] ["frontend"] (ReqArg optFrontend "FRONTEND") "language frontend (options: occam, rain)" + , Option ['h'] ["help"] (NoArg optPrintHelp) "print this help" , Option ['v'] ["verbose"] (NoArg $ optVerbose) "be more verbose (use multiple times for more detail)" , Option ['o'] ["output"] (ReqArg optOutput "FILE") "output file (default \"-\")" , Option [] ["usage-checking"] (ReqArg optUsageChecking "SETTING") "usage checking (EXPERIMENTAL) (options: on, off)" @@ -98,6 +99,9 @@ optVerbose ps = return $ ps { csVerboseLevel = csVerboseLevel ps + 1 } optOutput :: String -> OptFunc optOutput s ps = return $ ps { csOutputFile = s } +optPrintHelp :: OptFunc +optPrintHelp _ = dieIO (Nothing, usageInfo "Usage: tock [OPTION...] SOURCEFILE" options) + optUsageChecking :: String -> OptFunc optUsageChecking s ps = do usageCheck <- case s of