X-Git-Url: http://gitweb.michael.orlitzky.com/?p=haeredes.git;a=blobdiff_plain;f=src%2FCommandLine.hs;h=42fcd616a4766ce4950063783ed492d2282663fa;hp=699ea97aceea436ce6abecbace894d43542984eb;hb=75977adcec5c187204b95f3870544040c52398fd;hpb=825753e2731b8491d93d9f2d66b457fe31b1c763 diff --git a/src/CommandLine.hs b/src/CommandLine.hs index 699ea97..42fcd61 100644 --- a/src/CommandLine.hs +++ b/src/CommandLine.hs @@ -2,15 +2,32 @@ module CommandLine ( Args(..), - Delegates(..), get_args ) where -import System.Console.CmdArgs +import System.Console.CmdArgs ( + Data, + Typeable, + (&=), + args, + auto, + cmdArgs, + def, + details, + explicit, + groupname, + help, + helpArg, + modes, + name, + program, + summary, + typ, + versionArg ) -- Get the version from Cabal. -import Paths_haeres (version) +import Paths_haeredes (version) import Data.Version (showVersion) ns_description :: String @@ -22,7 +39,7 @@ mx_description :: String mx_description = "Confirm delegation of MX records." program_name :: String -program_name = "haeres" +program_name = "haeredes" my_summary :: String my_summary = program_name ++ "-" ++ (showVersion version) @@ -32,16 +49,9 @@ server_help = "IP address of server to query " ++ "(will use resolv.conf if not specified)" -newtype Delegates = - Delegates { get_delegates :: [String] } - deriving (Data, Show, Typeable) - -instance Default Delegates where - def = Delegates [] - data Args = - NS { server :: Maybe String, delegates :: Delegates } | - MX { server :: Maybe String, delegates :: Delegates } + NS { server :: Maybe String, delegates :: [String] } | + MX { server :: Maybe String, delegates :: [String] } deriving (Data, Show, Typeable) arg_spec :: Args @@ -63,13 +73,13 @@ arg_spec = ns :: Args ns = NS { server = def - &= groupname "Common flags" - &= typ "IP" - &= help server_help, + &= groupname "Common flags" + &= typ "IP" + &= help server_help, delegates = def - &= args - &= typ "DELEGATES" } + &= args + &= typ "DELEGATES" } &= details [ns_description]