hw-bits 0.5.0.2 → 0.5.0.3
raw patch · 3 files changed
+26/−18 lines, 3 filesPVP: minor bump suggested
API additions: PVP suggests at least a minor version bump
API changes (from Hackage documentation)
+ HaskellWorks.Data.Bits.BitShow: instance HaskellWorks.Data.Bits.BitShow.BitShow Data.ByteString.Lazy.Internal.ByteString
+ HaskellWorks.Data.Bits.BitShown: [unBitShown] :: BitShown a -> a
Files
- hw-bits.cabal +1/−1
- src/HaskellWorks/Data/Bits/BitShow.hs +15/−8
- src/HaskellWorks/Data/Bits/BitShown.hs +10/−9
hw-bits.cabal view
@@ -1,5 +1,5 @@ name: hw-bits-version: 0.5.0.2+version: 0.5.0.3 synopsis: Bit manipulation description: Please see README.md homepage: http://github.com/haskell-works/hw-bits#readme
src/HaskellWorks/Data/Bits/BitShow.hs view
@@ -11,14 +11,16 @@ , bitShow ) where -import qualified Data.ByteString as BS-import qualified Data.Vector as DV-import qualified Data.Vector.Storable as DVS-import Data.Word-import GHC.Exts-import HaskellWorks.Data.Bits.BitWise-import HaskellWorks.Data.Bits.Word+import Data.Word+import GHC.Exts+import HaskellWorks.Data.Bits.BitWise+import HaskellWorks.Data.Bits.Word +import qualified Data.ByteString as BS+import qualified Data.ByteString.Lazy as BSL+import qualified Data.Vector as DV+import qualified Data.Vector.Storable as DVS+ -- | Shower of a value as a bit string class BitShow a where -- | Show a value as a bit string@@ -57,7 +59,12 @@ instance BitShow BS.ByteString where bitShows bs | BS.length bs == 0 = id bitShows bs | BS.length bs == 1 = bitShows (BS.head bs)- bitShows bs = bitShows (BS.head bs) . (' ':) . bitShows (BS.tail bs)+ bitShows bs = bitShows (BS.head bs) . (' ':) . bitShows (BS.tail bs)++instance BitShow BSL.ByteString where+ bitShows bs | BSL.length bs == 0 = id+ bitShows bs | BSL.length bs == 1 = bitShows (BSL.head bs)+ bitShows bs = bitShows (BSL.head bs) . (' ':) . bitShows (BSL.tail bs) instance BitShow [Word8] where bitShows [] = id
src/HaskellWorks/Data/Bits/BitShown.hs view
@@ -8,17 +8,18 @@ , bitShown ) where -import qualified Data.ByteString as BS-import Data.Maybe-import Data.String-import Data.Word-import HaskellWorks.Data.Bits.BitRead-import HaskellWorks.Data.Bits.BitShow-import HaskellWorks.Data.Bits.BitWise-import HaskellWorks.Data.FromByteString+import Data.Maybe+import Data.String+import Data.Word+import HaskellWorks.Data.Bits.BitRead+import HaskellWorks.Data.Bits.BitShow+import HaskellWorks.Data.Bits.BitWise+import HaskellWorks.Data.FromByteString +import qualified Data.ByteString as BS+ -- | Tag for a value describe the value as being able to be shown as a bit string-newtype BitShown a = BitShown a deriving (Eq, BitRead, BitShow)+newtype BitShown a = BitShown { unBitShown :: a } deriving (Eq, BitRead, BitShow) deriving instance Functor BitShown