packages feed

threadscope-0.1: Options.hs

module Options
where

-------------------------------------------------------------------------------

data Option
  = Debug
  | Filename String
  | TestTrace String
    deriving Eq

-------------------------------------------------------------------------------

parseOptions :: [String] -> [Option]
parseOptions [] = []
parseOptions ("--debug":rest)
  = Debug : parseOptions rest
parseOptions ("--test":rest)
  = if rest == [] then
      error ("--test needs an argument")
    else
      TestTrace (head rest) : parseOptions (tail rest)
parseOptions (filename:rest)
  = Filename filename : parseOptions rest

-----------------------------------------------------------------------------