simplest-sqlite 0.0.0.11 → 0.0.0.12
raw patch · 4 files changed
+569/−5 lines, 4 files
Files
- simplest-sqlite.cabal +5/−4
- src/Database/SmplstSQLite3.hs +1/−1
- src/Database/SmplstSQLite3/Exception.hs +118/−0
- src/Database/SmplstSQLite3/Exception/Internal.hs +445/−0
simplest-sqlite.cabal view
@@ -2,7 +2,7 @@ cabal-version: >= 1.8 name: simplest-sqlite-version: 0.0.0.11+version: 0.0.0.12 stability: Experimental author: YoshikuniJujo <PAF01143@nifty.ne.jp> maintainer: YoshikuniJujo <PAF01143@nifty.ne.jp>@@ -23,13 +23,14 @@ source-repository this type: git location: git://github.com/YoshikuniJujo/test_haskell- tag: simplest-sqlite-0.0.0.11+ tag: simplest-sqlite-0.0.0.12 library hs-source-dirs: src- exposed-modules: Database.SmplstSQLite3+ exposed-modules: Database.SmplstSQLite3, Database.SmplstSQLite3.Exception other-modules:- Database.SmplstSQLite3.Constants, Database.SmplstSQLite3.Templates+ Database.SmplstSQLite3.Constants, Database.SmplstSQLite3.Templates,+ Database.SmplstSQLite3.Exception.Internal build-depends: base == 4.*, bytestring == 0.10.*, text >= 1.1 && < 1.3, exception-hierarchy == 0.0.0.1, template-haskell == 2.9.*
src/Database/SmplstSQLite3.hs view
@@ -18,7 +18,7 @@ import Foreign.C.Types import Foreign.C.String -import Database.SmplstSQLite3.Exception+import Database.SmplstSQLite3.Exception.Internal import Database.SmplstSQLite3.Constants data SQLite = SQLite (Ptr SQLite) deriving Show
+ src/Database/SmplstSQLite3/Exception.hs view
@@ -0,0 +1,118 @@+module Database.SmplstSQLite3.Exception (+ SQLiteException(..),++ SQLITE_ERROR(..),+ SQLITE_INTERNAL(..),+ SQLITE_PERM(..),++ SQLITE_ABORT(..),+ SQLITE_ABORT_PLAIN(..),+ SQLITE_ABORT_ROLLBACK(..),++ SQLITE_BUSY(..),+ SQLITE_BUSY_PLAIN(..),+ SQLITE_BUSY_RECOVERY(..),+ SQLITE_BUSY_SNAPSHOT(..),++ SQLITE_LOCKED(..),+ SQLITE_LOCKED_PLAIN(..),+ SQLITE_LOCKED_SHAREDCACHE(..),++ SQLITE_NOMEM(..),++ SQLITE_READONLY(..),+ SQLITE_READONLY_PLAIN(..),+ SQLITE_READONLY_RECOVERY(..),+ SQLITE_READONLY_CANTLOCK(..),+ SQLITE_READONLY_ROLLBACK(..),+ SQLITE_READONLY_DBMOVED(..),++ SQLITE_INTERRUPT(..),++ SQLITE_IOERR(..),+ SQLITE_IOERR_PLAIN(..),+ SQLITE_IOERR_READ(..),+ SQLITE_IOERR_SHORT_READ(..),+ SQLITE_IOERR_WRITE(..),+ SQLITE_IOERR_FSYNC(..),+ SQLITE_IOERR_DIR_FSYNC(..),+ SQLITE_IOERR_TRUNCATE(..),+ SQLITE_IOERR_FSTAT(..),+ SQLITE_IOERR_UNLOCK(..),+ SQLITE_IOERR_RDLOCK(..),+ SQLITE_IOERR_DELETE(..),+ SQLITE_IOERR_BLOCKED(..),+ SQLITE_IOERR_NOMEM(..),+ SQLITE_IOERR_ACCESS(..),+ SQLITE_IOERR_CHECKRESERVEDLOCK(..),+ SQLITE_IOERR_LOCK(..),+ SQLITE_IOERR_CLOSE(..),+ SQLITE_IOERR_DIR_CLOSE(..),+ SQLITE_IOERR_SHMOPEN(..),+ SQLITE_IOERR_SHMSIZE(..),+ SQLITE_IOERR_SHMLOCK(..),+ SQLITE_IOERR_SHMMAP(..),+ SQLITE_IOERR_SEEK(..),+ SQLITE_IOERR_DELETE_NOENT(..),+ SQLITE_IOERR_MMAP(..),+ SQLITE_IOERR_GETTEMPPATH(..),+ SQLITE_IOERR_CONVPATH(..),++ SQLITE_CORRUPT(..),+ SQLITE_CORRUPT_PLAIN(..),+ SQLITE_CORRUPT_VTAB(..),++ SQLITE_NOTFOUND(..),+ SQLITE_FULL(..),++ SQLITE_CANTOPEN(..),+ SQLITE_CANTOPEN_PLAIN(..),+ SQLITE_CANTOPEN_NOTEMPDIR(..),+ SQLITE_CANTOPEN_ISDIR(..),+ SQLITE_CANTOPEN_FULLPATH(..),+ SQLITE_CANTOPEN_CONVPATH(..),++ SQLITE_PROTOCOL(..),+ SQLITE_EMPTY(..),+ SQLITE_SCHEMA(..),+ SQLITE_TOOBIG(..),++ SQLITE_CONSTRAINT(..),+ SQLITE_CONSTRAINT_PLAIN(..),+ SQLITE_CONSTRAINT_CHECK(..),+ SQLITE_CONSTRAINT_COMMITHOOK(..),+ SQLITE_CONSTRAINT_FOREIGNKEY(..),+ SQLITE_CONSTRAINT_FUNCTION(..),+ SQLITE_CONSTRAINT_NOTNULL(..),+ SQLITE_CONSTRAINT_PRIMARYKEY(..),+ SQLITE_CONSTRAINT_TRIGGER(..),+ SQLITE_CONSTRAINT_UNIQUE(..),+ SQLITE_CONSTRAINT_VTAB(..),+ SQLITE_CONSTRAINT_ROWID(..),++ SQLITE_MISMATCH(..),+ SQLITE_MISUSE(..),+ SQLITE_NOLFS(..),++ SQLITE_AUTH(..),+ SQLITE_AUTH_PLAIN(..),+ SQLITE_AUTH_USER(..),++ SQLITE_FORMAT(..),+ SQLITE_RANGE(..),+ SQLITE_NOTADB(..),++ SQLITE_NOTICE(..),+ SQLITE_NOTICE_PLAIN(..),+ SQLITE_NOTICE_RECOVER_WAL(..),+ SQLITE_NOTICE_RECOVER_ROLLBACK(..),++ SQLITE_WARNING(..),+ SQLITE_WARNING_PLAIN(..),+ SQLITE_WARNING_AUTOINDEX(..),++ SQLITE_BIND_ERROR(..),+ SQLITE_ERROR_OTHER(..),+ ) where++import Database.SmplstSQLite3.Exception.Internal
+ src/Database/SmplstSQLite3/Exception/Internal.hs view
@@ -0,0 +1,445 @@+{-# LANGUAGE TemplateHaskell, ExistentialQuantification, DeriveDataTypeable #-}++module Database.SmplstSQLite3.Exception.Internal (+ sqliteThrow, sqliteThrowBindError,++ SQLiteException(..),++ SQLITE_ERROR(..),+ SQLITE_INTERNAL(..),+ SQLITE_PERM(..),++ SQLITE_ABORT(..),+ SQLITE_ABORT_PLAIN(..),+ SQLITE_ABORT_ROLLBACK(..),++ SQLITE_BUSY(..),+ SQLITE_BUSY_PLAIN(..),+ SQLITE_BUSY_RECOVERY(..),+ SQLITE_BUSY_SNAPSHOT(..),++ SQLITE_LOCKED(..),+ SQLITE_LOCKED_PLAIN(..),+ SQLITE_LOCKED_SHAREDCACHE(..),++ SQLITE_NOMEM(..),++ SQLITE_READONLY(..),+ SQLITE_READONLY_PLAIN(..),+ SQLITE_READONLY_RECOVERY(..),+ SQLITE_READONLY_CANTLOCK(..),+ SQLITE_READONLY_ROLLBACK(..),+ SQLITE_READONLY_DBMOVED(..),++ SQLITE_INTERRUPT(..),++ SQLITE_IOERR(..),+ SQLITE_IOERR_PLAIN(..),+ SQLITE_IOERR_READ(..),+ SQLITE_IOERR_SHORT_READ(..),+ SQLITE_IOERR_WRITE(..),+ SQLITE_IOERR_FSYNC(..),+ SQLITE_IOERR_DIR_FSYNC(..),+ SQLITE_IOERR_TRUNCATE(..),+ SQLITE_IOERR_FSTAT(..),+ SQLITE_IOERR_UNLOCK(..),+ SQLITE_IOERR_RDLOCK(..),+ SQLITE_IOERR_DELETE(..),+ SQLITE_IOERR_BLOCKED(..),+ SQLITE_IOERR_NOMEM(..),+ SQLITE_IOERR_ACCESS(..),+ SQLITE_IOERR_CHECKRESERVEDLOCK(..),+ SQLITE_IOERR_LOCK(..),+ SQLITE_IOERR_CLOSE(..),+ SQLITE_IOERR_DIR_CLOSE(..),+ SQLITE_IOERR_SHMOPEN(..),+ SQLITE_IOERR_SHMSIZE(..),+ SQLITE_IOERR_SHMLOCK(..),+ SQLITE_IOERR_SHMMAP(..),+ SQLITE_IOERR_SEEK(..),+ SQLITE_IOERR_DELETE_NOENT(..),+ SQLITE_IOERR_MMAP(..),+ SQLITE_IOERR_GETTEMPPATH(..),+ SQLITE_IOERR_CONVPATH(..),++ SQLITE_CORRUPT(..),+ SQLITE_CORRUPT_PLAIN(..),+ SQLITE_CORRUPT_VTAB(..),++ SQLITE_NOTFOUND(..),+ SQLITE_FULL(..),++ SQLITE_CANTOPEN(..),+ SQLITE_CANTOPEN_PLAIN(..),+ SQLITE_CANTOPEN_NOTEMPDIR(..),+ SQLITE_CANTOPEN_ISDIR(..),+ SQLITE_CANTOPEN_FULLPATH(..),+ SQLITE_CANTOPEN_CONVPATH(..),++ SQLITE_PROTOCOL(..),+ SQLITE_EMPTY(..),+ SQLITE_SCHEMA(..),+ SQLITE_TOOBIG(..),++ SQLITE_CONSTRAINT(..),+ SQLITE_CONSTRAINT_PLAIN(..),+ SQLITE_CONSTRAINT_CHECK(..),+ SQLITE_CONSTRAINT_COMMITHOOK(..),+ SQLITE_CONSTRAINT_FOREIGNKEY(..),+ SQLITE_CONSTRAINT_FUNCTION(..),+ SQLITE_CONSTRAINT_NOTNULL(..),+ SQLITE_CONSTRAINT_PRIMARYKEY(..),+ SQLITE_CONSTRAINT_TRIGGER(..),+ SQLITE_CONSTRAINT_UNIQUE(..),+ SQLITE_CONSTRAINT_VTAB(..),+ SQLITE_CONSTRAINT_ROWID(..),++ SQLITE_MISMATCH(..),+ SQLITE_MISUSE(..),+ SQLITE_NOLFS(..),++ SQLITE_AUTH(..),+ SQLITE_AUTH_PLAIN(..),+ SQLITE_AUTH_USER(..),++ SQLITE_FORMAT(..),+ SQLITE_RANGE(..),+ SQLITE_NOTADB(..),++ SQLITE_NOTICE(..),+ SQLITE_NOTICE_PLAIN(..),+ SQLITE_NOTICE_RECOVER_WAL(..),+ SQLITE_NOTICE_RECOVER_ROLLBACK(..),++ SQLITE_WARNING(..),+ SQLITE_WARNING_PLAIN(..),+ SQLITE_WARNING_AUTOINDEX(..),++ SQLITE_BIND_ERROR(..),+ SQLITE_ERROR_OTHER(..) ) where++import Control.Exception+import Control.Exception.Hierarchy+import Data.Typeable+import Foreign.C.Types++import Database.SmplstSQLite3.Constants+import Database.SmplstSQLite3.Templates++mapM newException [+ "SQLITE_ERROR",+ "SQLITE_INTERNAL",+ "SQLITE_PERM",++ "SQLITE_ABORT_PLAIN",+ "SQLITE_ABORT_ROLLBACK",++ "SQLITE_BUSY_PLAIN",+ "SQLITE_BUSY_RECOVERY",+ "SQLITE_BUSY_SNAPSHOT",++ "SQLITE_LOCKED_PLAIN",+ "SQLITE_LOCKED_SHAREDCACHE",++ "SQLITE_NOMEM",++ "SQLITE_READONLY_PLAIN",+ "SQLITE_READONLY_RECOVERY",+ "SQLITE_READONLY_CANTLOCK",+ "SQLITE_READONLY_ROLLBACK",+ "SQLITE_READONLY_DBMOVED",++ "SQLITE_INTERRUPT",++ "SQLITE_IOERR_PLAIN",+ "SQLITE_IOERR_READ",+ "SQLITE_IOERR_SHORT_READ",+ "SQLITE_IOERR_WRITE",+ "SQLITE_IOERR_FSYNC",+ "SQLITE_IOERR_DIR_FSYNC",+ "SQLITE_IOERR_TRUNCATE",+ "SQLITE_IOERR_FSTAT",+ "SQLITE_IOERR_UNLOCK",+ "SQLITE_IOERR_RDLOCK",+ "SQLITE_IOERR_DELETE",+ "SQLITE_IOERR_BLOCKED",+ "SQLITE_IOERR_NOMEM",+ "SQLITE_IOERR_ACCESS",+ "SQLITE_IOERR_CHECKRESERVEDLOCK",+ "SQLITE_IOERR_LOCK",+ "SQLITE_IOERR_CLOSE",+ "SQLITE_IOERR_DIR_CLOSE",+ "SQLITE_IOERR_SHMOPEN",+ "SQLITE_IOERR_SHMSIZE",+ "SQLITE_IOERR_SHMLOCK",+ "SQLITE_IOERR_SHMMAP",+ "SQLITE_IOERR_SEEK",+ "SQLITE_IOERR_DELETE_NOENT",+ "SQLITE_IOERR_MMAP",+ "SQLITE_IOERR_GETTEMPPATH",+ "SQLITE_IOERR_CONVPATH",++ "SQLITE_CORRUPT_PLAIN",+ "SQLITE_CORRUPT_VTAB",++ "SQLITE_NOTFOUND",+ "SQLITE_FULL",++ "SQLITE_CANTOPEN_PLAIN",+ "SQLITE_CANTOPEN_NOTEMPDIR",+ "SQLITE_CANTOPEN_ISDIR",+ "SQLITE_CANTOPEN_FULLPATH",+ "SQLITE_CANTOPEN_CONVPATH",++ "SQLITE_PROTOCOL",+ "SQLITE_EMPTY",+ "SQLITE_SCHEMA",+ "SQLITE_TOOBIG",++ "SQLITE_CONSTRAINT_PLAIN",+ "SQLITE_CONSTRAINT_CHECK",+ "SQLITE_CONSTRAINT_COMMITHOOK",+ "SQLITE_CONSTRAINT_FOREIGNKEY",+ "SQLITE_CONSTRAINT_FUNCTION",+ "SQLITE_CONSTRAINT_NOTNULL",+ "SQLITE_CONSTRAINT_PRIMARYKEY",+ "SQLITE_CONSTRAINT_TRIGGER",+ "SQLITE_CONSTRAINT_UNIQUE",+ "SQLITE_CONSTRAINT_VTAB",+ "SQLITE_CONSTRAINT_ROWID",++ "SQLITE_MISMATCH",+ "SQLITE_MISUSE",+ "SQLITE_NOLFS",++ "SQLITE_AUTH_PLAIN",+ "SQLITE_AUTH_USER",++ "SQLITE_FORMAT",+ "SQLITE_RANGE",+ "SQLITE_NOTADB",++ "SQLITE_NOTICE_PLAIN",+ "SQLITE_NOTICE_RECOVER_WAL",+ "SQLITE_NOTICE_RECOVER_ROLLBACK",++ "SQLITE_WARNING_PLAIN",+ "SQLITE_WARNING_AUTOINDEX",++ "SQLITE_BIND_ERROR" ]+++data SQLITE_ERROR_OTHER = SQLITE_ERROR_OTHER CInt String deriving (Typeable, Show)++exceptionHierarchy Nothing $+ ExNode "SQLiteException" [+ ExType ''SQLITE_ERROR,+ ExType ''SQLITE_INTERNAL,+ ExType ''SQLITE_PERM,+ ExNode "SQLITE_ABORT" [+ ExType ''SQLITE_ABORT_PLAIN,+ ExType ''SQLITE_ABORT_ROLLBACK+ ],+ ExNode "SQLITE_BUSY" [+ ExType ''SQLITE_BUSY_PLAIN,+ ExType ''SQLITE_BUSY_RECOVERY,+ ExType ''SQLITE_BUSY_SNAPSHOT+ ],+ ExNode "SQLITE_LOCKED" [+ ExType ''SQLITE_LOCKED_PLAIN,+ ExType ''SQLITE_LOCKED_SHAREDCACHE+ ],+ ExType ''SQLITE_NOMEM,+ ExNode "SQLITE_READONLY" [+ ExType ''SQLITE_READONLY_PLAIN,+ ExType ''SQLITE_READONLY_RECOVERY,+ ExType ''SQLITE_READONLY_CANTLOCK,+ ExType ''SQLITE_READONLY_ROLLBACK,+ ExType ''SQLITE_READONLY_DBMOVED+ ],+ ExType ''SQLITE_INTERRUPT,+ ExNode "SQLITE_IOERR" [+ ExType ''SQLITE_IOERR_PLAIN,+ ExType ''SQLITE_IOERR_READ,+ ExType ''SQLITE_IOERR_SHORT_READ,+ ExType ''SQLITE_IOERR_WRITE,+ ExType ''SQLITE_IOERR_FSYNC,+ ExType ''SQLITE_IOERR_DIR_FSYNC,+ ExType ''SQLITE_IOERR_TRUNCATE,+ ExType ''SQLITE_IOERR_FSTAT,+ ExType ''SQLITE_IOERR_UNLOCK,+ ExType ''SQLITE_IOERR_RDLOCK,+ ExType ''SQLITE_IOERR_DELETE,+ ExType ''SQLITE_IOERR_BLOCKED,+ ExType ''SQLITE_IOERR_NOMEM,+ ExType ''SQLITE_IOERR_ACCESS,+ ExType ''SQLITE_IOERR_CHECKRESERVEDLOCK,+ ExType ''SQLITE_IOERR_LOCK,+ ExType ''SQLITE_IOERR_CLOSE,+ ExType ''SQLITE_IOERR_DIR_CLOSE,+ ExType ''SQLITE_IOERR_SHMOPEN,+ ExType ''SQLITE_IOERR_SHMSIZE,+ ExType ''SQLITE_IOERR_SHMLOCK,+ ExType ''SQLITE_IOERR_SHMMAP,+ ExType ''SQLITE_IOERR_SEEK,+ ExType ''SQLITE_IOERR_DELETE_NOENT,+ ExType ''SQLITE_IOERR_MMAP,+ ExType ''SQLITE_IOERR_GETTEMPPATH,+ ExType ''SQLITE_IOERR_CONVPATH+ ],+ ExNode "SQLITE_CORRUPT" [+ ExType ''SQLITE_CORRUPT_PLAIN,+ ExType ''SQLITE_CORRUPT_VTAB+ ],+ ExType ''SQLITE_NOTFOUND,+ ExType ''SQLITE_FULL,+ ExNode "SQLITE_CANTOPEN" [+ ExType ''SQLITE_CANTOPEN_PLAIN,+ ExType ''SQLITE_CANTOPEN_NOTEMPDIR,+ ExType ''SQLITE_CANTOPEN_ISDIR,+ ExType ''SQLITE_CANTOPEN_FULLPATH,+ ExType ''SQLITE_CANTOPEN_CONVPATH+ ],+ ExType ''SQLITE_PROTOCOL,+ ExType ''SQLITE_EMPTY,+ ExType ''SQLITE_SCHEMA,+ ExType ''SQLITE_TOOBIG,+ ExNode "SQLITE_CONSTRAINT" [+ ExType ''SQLITE_CONSTRAINT_PLAIN,+ ExType ''SQLITE_CONSTRAINT_CHECK,+ ExType ''SQLITE_CONSTRAINT_COMMITHOOK,+ ExType ''SQLITE_CONSTRAINT_FOREIGNKEY,+ ExType ''SQLITE_CONSTRAINT_FUNCTION,+ ExType ''SQLITE_CONSTRAINT_NOTNULL,+ ExType ''SQLITE_CONSTRAINT_PRIMARYKEY,+ ExType ''SQLITE_CONSTRAINT_TRIGGER,+ ExType ''SQLITE_CONSTRAINT_UNIQUE,+ ExType ''SQLITE_CONSTRAINT_VTAB,+ ExType ''SQLITE_CONSTRAINT_ROWID+ ],+ ExType ''SQLITE_MISMATCH,+ ExType ''SQLITE_MISUSE,+ ExType ''SQLITE_NOLFS,+ ExNode "SQLITE_AUTH" [+ ExType ''SQLITE_AUTH_PLAIN,+ ExType ''SQLITE_AUTH_USER+ ],+ ExType ''SQLITE_FORMAT,+ ExType ''SQLITE_RANGE,+ ExType ''SQLITE_NOTADB,+ ExNode "SQLITE_NOTICE" [+ ExType ''SQLITE_NOTICE_PLAIN,+ ExType ''SQLITE_NOTICE_RECOVER_WAL,+ ExType ''SQLITE_NOTICE_RECOVER_ROLLBACK+ ],+ ExNode "SQLITE_WARNING" [+ ExType ''SQLITE_WARNING_PLAIN,+ ExType ''SQLITE_WARNING_AUTOINDEX+ ],++ ExType ''SQLITE_BIND_ERROR,+ ExType ''SQLITE_ERROR_OTHER ]++mkSqliteThrow [+ 'SQLITE_ERROR,+ 'SQLITE_INTERNAL,+ 'SQLITE_PERM,++ 'SQLITE_ABORT_PLAIN,+ 'SQLITE_ABORT_ROLLBACK,++ 'SQLITE_BUSY_PLAIN,+ 'SQLITE_BUSY_RECOVERY,+ 'SQLITE_BUSY_SNAPSHOT,++ 'SQLITE_LOCKED_PLAIN,+ 'SQLITE_LOCKED_SHAREDCACHE,++ 'SQLITE_NOMEM,++ 'SQLITE_READONLY_PLAIN,+ 'SQLITE_READONLY_RECOVERY,+ 'SQLITE_READONLY_CANTLOCK,+ 'SQLITE_READONLY_ROLLBACK,+ 'SQLITE_READONLY_DBMOVED,++ 'SQLITE_INTERRUPT,++ 'SQLITE_IOERR_PLAIN,+ 'SQLITE_IOERR_READ,+ 'SQLITE_IOERR_SHORT_READ,+ 'SQLITE_IOERR_WRITE,+ 'SQLITE_IOERR_FSYNC,+ 'SQLITE_IOERR_DIR_FSYNC,+ 'SQLITE_IOERR_TRUNCATE,+ 'SQLITE_IOERR_FSTAT,+ 'SQLITE_IOERR_UNLOCK,+ 'SQLITE_IOERR_RDLOCK,+ 'SQLITE_IOERR_DELETE,+ 'SQLITE_IOERR_BLOCKED,+ 'SQLITE_IOERR_NOMEM,+ 'SQLITE_IOERR_ACCESS,+ 'SQLITE_IOERR_CHECKRESERVEDLOCK,+ 'SQLITE_IOERR_LOCK,+ 'SQLITE_IOERR_CLOSE,+ 'SQLITE_IOERR_DIR_CLOSE,+ 'SQLITE_IOERR_SHMOPEN,+ 'SQLITE_IOERR_SHMSIZE,+ 'SQLITE_IOERR_SHMLOCK,+ 'SQLITE_IOERR_SHMMAP,+ 'SQLITE_IOERR_SEEK,+ 'SQLITE_IOERR_DELETE_NOENT,+ 'SQLITE_IOERR_MMAP,+ 'SQLITE_IOERR_GETTEMPPATH,+ 'SQLITE_IOERR_CONVPATH,++ 'SQLITE_CORRUPT_PLAIN,+ 'SQLITE_CORRUPT_VTAB,++ 'SQLITE_NOTFOUND,+ 'SQLITE_FULL,++ 'SQLITE_CANTOPEN_PLAIN,+ 'SQLITE_CANTOPEN_NOTEMPDIR,+ 'SQLITE_CANTOPEN_ISDIR,+ 'SQLITE_CANTOPEN_FULLPATH,+ 'SQLITE_CANTOPEN_CONVPATH,++ 'SQLITE_PROTOCOL,+ 'SQLITE_EMPTY,+ 'SQLITE_SCHEMA,+ 'SQLITE_TOOBIG,++ 'SQLITE_CONSTRAINT_PLAIN,+ 'SQLITE_CONSTRAINT_CHECK,+ 'SQLITE_CONSTRAINT_COMMITHOOK,+ 'SQLITE_CONSTRAINT_FOREIGNKEY,+ 'SQLITE_CONSTRAINT_FUNCTION,+ 'SQLITE_CONSTRAINT_NOTNULL,+ 'SQLITE_CONSTRAINT_PRIMARYKEY,+ 'SQLITE_CONSTRAINT_TRIGGER,+ 'SQLITE_CONSTRAINT_UNIQUE,+ 'SQLITE_CONSTRAINT_VTAB,+ 'SQLITE_CONSTRAINT_ROWID,++ 'SQLITE_MISMATCH,+ 'SQLITE_MISUSE,+ 'SQLITE_NOLFS,++ 'SQLITE_AUTH_PLAIN,+ 'SQLITE_AUTH_USER,++ 'SQLITE_FORMAT,+ 'SQLITE_RANGE,+ 'SQLITE_NOTADB,++ 'SQLITE_NOTICE_PLAIN,+ 'SQLITE_NOTICE_RECOVER_WAL,+ 'SQLITE_NOTICE_RECOVER_ROLLBACK,++ 'SQLITE_WARNING_PLAIN,+ 'SQLITE_WARNING_AUTOINDEX+ ]++sqliteThrowBindError :: String -> IO a+sqliteThrowBindError em = throw $ SQLITE_BIND_ERROR em