OddWord 1.0.0.1 → 1.0.0.2
raw patch · 4 files changed
+44/−7 lines, 4 filesdep ~QuickCheckPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: QuickCheck
API changes (from Hackage documentation)
- Data.Word.Odd: type Word10 = OddWord Word16 (One (Zero (Zero (Zero ()))))
+ Data.Word.Odd: type Word10 = OddWord Word16 (One (Zero (One (Zero ()))))
- Data.Word.Odd: type Word12 = OddWord Word16 (One (Zero (One (Zero ()))))
+ Data.Word.Odd: type Word12 = OddWord Word16 (One (One (Zero (Zero ()))))
- Data.Word.Odd: type Word14 = OddWord Word16 (One (One (Zero (Zero ()))))
+ Data.Word.Odd: type Word14 = OddWord Word16 (One (One (One (Zero ()))))
Files
- NEWS +7/−1
- OddWord.cabal +3/−3
- src/Data/Word/Odd.hs +3/−3
- test/Main.hs +31/−0
NEWS view
@@ -1,9 +1,15 @@ OddWord - Release History +release-1.0.0.2 - 2013.05.14++ * Fixed misdefinition of type synonyms for Word10, Word12, and Word14,+ and extended test suite. (Thanks to Benno Fünfstück)+ release-1.0.0.1 - 2012.12.30 * Fixed compilation with base-4.6 (GHC 7.6).- * Fixed bug in Read instance and extended test suite.+ * Fixed bug in Read instance and extended test suite. (Thanks to Tikhon+ Jelvis) release-1.0.0 - 2011.07.21
OddWord.cabal view
@@ -1,8 +1,8 @@ name: OddWord-version: 1.0.0.1+version: 1.0.0.2 license: BSD3 license-file: LICENSE-copyright: (c) 2011-2012 Robin KAY+copyright: (c) 2011-2013 Robin KAY author: Robin KAY maintainer: Robin KAY <komadori@gekkou.co.uk> synopsis: Provides a wrapper for deriving word types with fewer bits.@@ -33,7 +33,7 @@ other-extensions: ScopedTypeVariables build-depends: base >= 4.5 && < 5,- QuickCheck >= 2.4 && < 2.6,+ QuickCheck >= 2.4 && < 2.7, OddWord >= 1.0 && < 1.1 Source-repository head
src/Data/Word/Odd.hs view
@@ -159,11 +159,11 @@ type Word7 = OddWord Word8 (One (One (One ()))) --type Word8 type Word9 = OddWord Word16 (One (Zero (Zero (One ()))))-type Word10 = OddWord Word16 (One (Zero (Zero (Zero ()))))+type Word10 = OddWord Word16 (One (Zero (One (Zero ())))) type Word11 = OddWord Word16 (One (Zero (One (One ()))))-type Word12 = OddWord Word16 (One (Zero (One (Zero ()))))+type Word12 = OddWord Word16 (One (One (Zero (Zero ())))) type Word13 = OddWord Word16 (One (One (Zero (One ()))))-type Word14 = OddWord Word16 (One (One (Zero (Zero ()))))+type Word14 = OddWord Word16 (One (One (One (Zero ())))) type Word15 = OddWord Word16 (One (One (One (One ())))) --type Word16 type Word17 = OddWord Word32 (One (Zero (Zero (Zero (One ())))))
test/Main.hs view
@@ -99,8 +99,39 @@ tstFn = foldr (.) id $ map fromUFunc us :: TestWord16 -> TestWord16 in toInteger (refFn 0) == toInteger (tstFn 0) +preDefWordLengths :: [Int]+preDefWordLengths = [+ bitSize (0 :: Word1), bitSize (0 :: Word2), bitSize (0 :: Word3),+ bitSize (0 :: Word4), bitSize (0 :: Word5), bitSize (0 :: Word6),+ bitSize (0 :: Word7), bitSize (0 :: Word8), bitSize (0 :: Word9),+ bitSize (0 :: Word10), bitSize (0 :: Word11), bitSize (0 :: Word12),+ bitSize (0 :: Word13), bitSize (0 :: Word14), bitSize (0 :: Word15),+ bitSize (0 :: Word16), bitSize (0 :: Word17), bitSize (0 :: Word18),+ bitSize (0 :: Word19), bitSize (0 :: Word20), bitSize (0 :: Word21),+ bitSize (0 :: Word22), bitSize (0 :: Word23), bitSize (0 :: Word24),+ bitSize (0 :: Word25), bitSize (0 :: Word26), bitSize (0 :: Word27),+ bitSize (0 :: Word28), bitSize (0 :: Word29), bitSize (0 :: Word30),+ bitSize (0 :: Word31), bitSize (0 :: Word32), bitSize (0 :: Word33),+ bitSize (0 :: Word34), bitSize (0 :: Word35), bitSize (0 :: Word36),+ bitSize (0 :: Word37), bitSize (0 :: Word38), bitSize (0 :: Word39),+ bitSize (0 :: Word40), bitSize (0 :: Word41), bitSize (0 :: Word42),+ bitSize (0 :: Word43), bitSize (0 :: Word44), bitSize (0 :: Word45),+ bitSize (0 :: Word46), bitSize (0 :: Word47), bitSize (0 :: Word48),+ bitSize (0 :: Word49), bitSize (0 :: Word50), bitSize (0 :: Word51),+ bitSize (0 :: Word52), bitSize (0 :: Word53), bitSize (0 :: Word54),+ bitSize (0 :: Word55), bitSize (0 :: Word56), bitSize (0 :: Word57),+ bitSize (0 :: Word58), bitSize (0 :: Word59), bitSize (0 :: Word60),+ bitSize (0 :: Word61), bitSize (0 :: Word62), bitSize (0 :: Word63)]+ main :: IO () main = do+ -- Verify lengths of predefined odd word synonyms+ mapM_ (\(u,v) -> putStrLn (+ showString "Error: Word" . shows u . showString " has length " $+ shows v ".") >> exitFailure) $+ map fst $ filter snd $ map (\t -> (t,uncurry (/=) t)) $+ zip [1..] preDefWordLengths+ -- Verify correctness of operations on a test word type r <- quickCheckWithResult stdArgs {maxSuccess = 1000} verifyTestWord16 case r of Success _ _ _ -> exitSuccess