rob-0.0.1: app/Main.hs
module Main where
import System.Environment
import System.Exit
import System.Console.CmdArgs (cmdArgsRun)
import System.Console.CmdArgs.Explicit(helpText, HelpFormat(..))
import Rob.Types (Task(..))
import Rob.Tasks (mode)
import qualified Rob.Actions.Add
import qualified Rob.Actions.New
import qualified Rob.Actions.List
import qualified Rob.Actions.Remove
main :: IO()
main = do
args <- getArgs
if null args then exitWithHelp
else parse =<< cmdArgsRun mode
parse :: Task -> IO ()
parse Add {name = n, path = p} = Rob.Actions.Add.main n p
parse New = Rob.Actions.New.main
parse List = Rob.Actions.List.main
parse Remove = Rob.Actions.Remove.main
exitWithHelp :: IO a
exitWithHelp = do
putStr $ show $ helpText [] HelpFormatOne mode
exitSuccess