]> gitweb.michael.orlitzky.com - hath.git/blobdiff - src/CommandLine.hs
Added the 'Dupe' mode of operation.
[hath.git] / src / CommandLine.hs
index f15a786c9089de96d7655bac2270dc1270aae26c..31ca768cfaa043b872168313bc5153548bc37a5f 100644 (file)
@@ -21,11 +21,11 @@ lowercase :: String -> String
 lowercase = map toLower
 
 
--- The application currently has two modes. The default, Regex, will
+-- The application currently has three modes. The default, Regex, will
 -- compute a regular expression matching the input CIDRs. Reduce, on
 -- the other hand, will combine any redundant/adjacent CIDR blocks
--- into one.
-data Mode = Regex | Reduce
+-- into one. Dupe will show you what would be removed by Reduce.
+data Mode = Regex | Reduce | Dupe
 
 
 -- A record containing values for all available options.
@@ -71,7 +71,7 @@ set_input arg opts = do
 
 -- The usage header
 usage :: String
-usage = "Usage: hath [regexed|reduced] [-h] [-i FILE]"
+usage = "Usage: hath [regexed|reduced|duplicated] [-h] [-i FILE]"
 
 
 -- The usage header, and all available flags (as generated by GetOpt)
@@ -106,10 +106,12 @@ parse_mode = do
     else do
       -- Some non-option was given, but were any of them modes?
       case (lowercase (non_options !! 0)) of
-        "regex"   -> return Regex
-        "regexed" -> return Regex
-        "reduce"  -> return Reduce
-        "reduced" -> return Reduce
+        "regex"      -> return Regex
+        "regexed"    -> return Regex
+        "reduce"     -> return Reduce
+        "reduced"    -> return Reduce
+        "dupe"       -> return Dupe
+        "duplicated" -> return Dupe
         _         -> return Regex