{-# LINE 1 "DB/HSQL/SQLite3/Functions.hsc" #-}
module DB.HSQL.SQLite3.Functions where
{-# LINE 2 "DB/HSQL/SQLite3/Functions.hsc" #-}

import Foreign(Ptr,FunPtr)
import Foreign.C(CString,CInt)


{-# LINE 7 "DB/HSQL/SQLite3/Functions.hsc" #-}

{-# LINE 8 "DB/HSQL/SQLite3/Functions.hsc" #-}

type SQLite3 = Ptr ()

foreign import ccall 
  sqlite3_open :: CString -> (Ptr SQLite3) -> IO Int

foreign import ccall
  sqlite3_errmsg :: SQLite3 -> IO CString

foreign import ccall
  sqlite3_close :: SQLite3 -> IO ()

foreign import ccall
  sqlite3_exec :: SQLite3 -> CString -> FunPtr () -> Ptr () -> Ptr CString -> IO CInt

foreign import ccall
  sqlite3_get_table ::   SQLite3 -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CInt -> Ptr CString -> IO CInt

foreign import ccall
 sqlite3_free_table :: Ptr CString -> IO ()

foreign import ccall
  sqlite3_free :: CString -> IO ()

-- |
foreign import ccall "strlen"
  strlen :: CString -> IO CInt

-- |
sqliteOk:: Int
sqliteOk = 0
{-# LINE 39 "DB/HSQL/SQLite3/Functions.hsc" #-}

oRdOnly = 0
{-# LINE 41 "DB/HSQL/SQLite3/Functions.hsc" #-}

oWrOnly = 1
{-# LINE 43 "DB/HSQL/SQLite3/Functions.hsc" #-}

oRdWr = 2
{-# LINE 45 "DB/HSQL/SQLite3/Functions.hsc" #-}

oAppend = 1024