-- | The Bit module contains the Bit data type, which is essentially a
-- renamed Boolean, and some convenience functions.
-module Bit
+module Bit (
+ Bit(..)
+ )
where
-import Test.QuickCheck (
+import Test.Tasty.QuickCheck (
Arbitrary,
arbitrary,
- elements
- )
+ elements )
data Bit = Zero | One
instance Bounded Bit where
minBound = Zero
maxBound = One
-
-
--- | Convert a Bit to an Int.
-bit_to_int :: Bit -> Int
-bit_to_int Zero = 0
-bit_to_int One = 1
-
--- | If we are passed a '0' or '1', convert it
--- appropriately. Otherwise, return Nothing.
-bit_from_char :: Char -> Maybe Bit
-bit_from_char '0' = Just Zero
-bit_from_char '1' = Just One
-bit_from_char _ = Nothing