packages feed

simplest-sqlite 0.1.0.8 → 0.1.0.9

raw patch · 3 files changed

+18/−9 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

simplest-sqlite.cabal view
@@ -2,7 +2,7 @@ cabal-version: >= 1.10  name: simplest-sqlite-version: 0.1.0.8+version: 0.1.0.9 stability: Experimental author: YoshikuniJujo <PAF01143@nifty.ne.jp> maintainer: YoshikuniJujo <PAF01143@nifty.ne.jp>
src/Database/SmplstSQLite3.hs view
@@ -107,6 +107,8 @@ 	c_sqlite3_column_text :: Ptr Stmt -> CInt -> IO CString foreign import ccall unsafe "sqlite3.h sqlite3_column_blob" 	c_sqlite3_column_blob :: Ptr Stmt -> CInt -> IO CString+foreign import ccall unsafe "sqlite3.h sqlite3_column_bytes"+	c_sqlite3_column_bytes :: Ptr Stmt -> CInt -> IO CInt  class SQLiteDataList a where 	bindNList :: Stmt -> Int -> [a] -> IO ()@@ -158,8 +160,10 @@  instance SQLiteData BS.ByteString where 	bindN = sqlite3BindBlob-	column (Stmt sm) i = packCString' "ByteString column"-		=<< c_sqlite3_column_blob sm (fromIntegral i)+	column (Stmt sm) i = do+		ln <- c_sqlite3_column_bytes sm (fromIntegral i)+		cs <- c_sqlite3_column_blob sm (fromIntegral i)+		packCStringLen' "ByteString column" (cs, fromIntegral ln)  instance SQLiteData T.Text where 	bindN sm i = sqlite3BindByteString sm i . T.encodeUtf8@@ -176,6 +180,11 @@ 	| cstr == nullPtr = nullPointerException em 	| otherwise = BS.packCString cstr +packCStringLen' :: String -> CStringLen -> IO BS.ByteString+packCStringLen' em csln@(cstr, _)+	| cstr == nullPtr = nullPointerException em+	| otherwise = BS.packCStringLen csln+ foreign import ccall unsafe "sqlite3.h sqlite3_bind_null" 	c_sqlite3_bind_null :: Ptr Stmt -> CInt -> IO CInt foreign import ccall unsafe "sqlite3.h sqlite3_bind_int"@@ -223,8 +232,9 @@ 	when (ret /= sQLITE_OK) $ sqliteThrow "Cannot bind text" ret  sqlite3BindBlob :: Stmt -> Int -> BS.ByteString -> IO ()-sqlite3BindBlob (Stmt sm) i s = BS.useAsCString s $ \cs -> do-	ret <- c_sqlite3_bind_blob sm (fromIntegral i) cs (- 1) nullPtr+sqlite3BindBlob (Stmt sm) i s = BS.useAsCStringLen s $ \(cs, n) -> do+	ret <- c_sqlite3_bind_blob+		sm (fromIntegral i) cs (fromIntegral n) nullPtr 	when (ret /= sQLITE_OK) $ sqliteThrow "Cannot bind text" ret  foreign import ccall unsafe "sqlite3.h sqlite3_bind_parameter_index"
src/Database/SmplstSQLite3/Exception/Internal.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE TemplateHaskell, ExistentialQuantification, DeriveDataTypeable #-}+{-# LANGUAGE TemplateHaskell, ExistentialQuantification #-}  module Database.SmplstSQLite3.Exception.Internal ( 	sqliteThrow, sqliteThrowBindError,@@ -124,7 +124,6 @@  import Control.Exception import Control.Exception.Hierarchy-import Data.Typeable import Foreign.C.Types  import Database.SmplstSQLite3.Constants@@ -233,7 +232,7 @@ 	"SQLITE_BIND_ERROR" ]  -data SQLITE_ERROR_OTHER = SQLITE_ERROR_OTHER CInt String deriving (Typeable, Show)+data SQLITE_ERROR_OTHER = SQLITE_ERROR_OTHER CInt String deriving Show  exceptionHierarchy Nothing $ 	ExNode "SQLiteException" [@@ -449,7 +448,7 @@ sqliteThrowBindError em = throw $ SQLITE_BIND_ERROR em  newtype NullPointerException = NullPointerException String-	deriving (Typeable, Show)+	deriving Show  exceptionHierarchy Nothing (ExType ''NullPointerException)