packages feed

hs-cdb 0.1.1 → 0.1.2

raw patch · 4 files changed

+9/−9 lines, 4 filesdep +mmapdep −bytestring-mmapdep ~arrayPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: mmap

Dependencies removed: bytestring-mmap

Dependency ranges changed: array

API changes (from Hackage documentation)

- Database.CDB.Packable: instance Packable (UArray Word32 Word32)
- Database.CDB.Packable: instance Packable ByteString
- Database.CDB.Packable: instance Packable Word32
- Database.CDB.Packable: instance Packable [Char]
- Database.CDB.Packable: instance Packable [Word8]
- Database.CDB.Packable: instance Unpackable ByteString
- Database.CDB.Packable: instance Unpackable [Char]
- Database.CDB.Packable: instance Unpackable [Word8]
+ Database.CDB.Packable: instance Database.CDB.Packable.Packable (Data.Array.Base.UArray GHC.Word.Word32 GHC.Word.Word32)
+ Database.CDB.Packable: instance Database.CDB.Packable.Packable Data.ByteString.Internal.ByteString
+ Database.CDB.Packable: instance Database.CDB.Packable.Packable GHC.Word.Word32
+ Database.CDB.Packable: instance Database.CDB.Packable.Packable [GHC.Types.Char]
+ Database.CDB.Packable: instance Database.CDB.Packable.Packable [GHC.Word.Word8]
+ Database.CDB.Packable: instance Database.CDB.Packable.Unpackable Data.ByteString.Internal.ByteString
+ Database.CDB.Packable: instance Database.CDB.Packable.Unpackable [GHC.Types.Char]
+ Database.CDB.Packable: instance Database.CDB.Packable.Unpackable [GHC.Word.Word8]

Files

Database/CDB/Read.hs view
@@ -14,14 +14,14 @@ import Data.Word import Database.CDB.Packable import Database.CDB.Util-import System.IO.Posix.MMap+import System.IO.MMap  -- |Internal representation of a CDB file on disk. data CDB = CDB { cdbMem :: ByteString }  -- |Loads a CDB from a file. cdbInit :: FilePath -> IO CDB-cdbInit f = liftM CDB $ unsafeMMapFile f +cdbInit f = liftM CDB $ mmapFileByteString f Nothing  -- |Finds the first entry associated with a key in a CDB. cdbGet :: (Packable k, Unpackable v) => CDB -> k -> Maybe v
Database/CDB/Util.hs view
@@ -3,11 +3,9 @@ import qualified Data.ByteString as ByteString import Data.ByteString (ByteString) import Data.Bits-import Data.List import Data.Word  -- gets the hash value for a key cdbHash :: ByteString -> Word32 cdbHash =-  foldl' (\h c -> ((h `shiftL` 5) + h) `xor` fromIntegral c) 5381 .-  ByteString.unpack+  ByteString.foldl' (\h c -> ((h `shiftL` 5) + h) `xor` fromIntegral c) 5381
Database/CDB/Write.hs view
@@ -10,6 +10,7 @@ import Control.Monad.State import Data.Array.IO import Data.Array.Unboxed+import Data.Array.Unsafe (unsafeFreeze) import qualified Data.ByteString as ByteString import Data.ByteString (ByteString) import Data.IORef
hs-cdb.cabal view
@@ -1,5 +1,5 @@ name:hs-cdb-version:0.1.1+version:0.1.2 License:BSD3 License-File:LICENSE Author:Adam Smith@@ -18,18 +18,19 @@     For more information on the CDB file format, please see:         <http://cr.yp.to/cdb.html>     -cabal-version: >= 1.6+cabal-version: >= 1.10 build-type:Simple  Library-  Build-Depends:array, base >= 4 && < 5, bytestring, bytestring-mmap, directory,-                filepath, mtl+  Build-Depends: array >= 0.4.0, base >= 4 && < 5, bytestring, mmap,+    directory, filepath, mtl   Exposed-modules:     Database.CDB     Database.CDB.Packable     Database.CDB.Read     Database.CDB.Util     Database.CDB.Write+  default-language: Haskell98  source-repository head   type: git