]> gitweb.michael.orlitzky.com - hath.git/commitdiff
Added the decrement function for Maskbits.
authorMichael Orlitzky <michael@orlitzky.com>
Sun, 9 May 2010 17:40:46 +0000 (13:40 -0400)
committerMichael Orlitzky <michael@orlitzky.com>
Sun, 9 May 2010 17:40:46 +0000 (13:40 -0400)
src/Maskbits.hs

index fcf57bdb379760ba2349bf2815e13aa62425085b..ed358b9dfa64e43ac5b125383679e0db2cd04dd8 100644 (file)
@@ -1,5 +1,6 @@
 module Maskbits
 ( Maskbits(..),
+  decrement,
   maskbits_from_string
 ) where
 
@@ -123,3 +124,41 @@ maskbits_from_string s =
     case (reads s :: [(Int, String)]) of
       []   -> None
       x:_ -> maskbits_from_int (fst x)
+
+
+
+decrement :: Maskbits -> Maskbits
+decrement None = None
+decrement Zero = None
+decrement One = Zero
+decrement Two = One
+decrement Three = Two
+decrement Four = Three
+decrement Five = Four
+decrement Six = Five
+decrement Seven = Six
+decrement Eight = Seven
+decrement Nine = Eight
+decrement Ten = Nine
+decrement Eleven = Ten
+decrement Twelve = Eleven
+decrement Thirteen = Twelve
+decrement Fourteen = Thirteen
+decrement Fifteen = Fourteen
+decrement Sixteen = Fifteen
+decrement Seventeen = Sixteen
+decrement Eighteen = Seventeen
+decrement Nineteen = Eighteen
+decrement Twenty = Nineteen
+decrement TwentyOne = Twenty
+decrement TwentyTwo = TwentyOne
+decrement TwentyThree = TwentyTwo
+decrement TwentyFour = TwentyThree
+decrement TwentyFive = TwentyFour
+decrement TwentySix = TwentyFive
+decrement TwentySeven = TwentySix
+decrement TwentyEight = TwentySeven
+decrement TwentyNine = TwentyEight
+decrement Thirty = TwentyNine
+decrement ThirtyOne = Thirty
+decrement ThirtyTwo = ThirtyOne