module Database.TokyoCabinet.ADB.C where
import Data.Word
import Foreign.Ptr
import Foreign.C.Types
import Foreign.C.String
import Database.TokyoCabinet.List.C (LIST)
data ADB'
foreign import ccall safe "tcadbnew"
c_tcadbnew :: IO (Ptr ADB')
foreign import ccall safe "tcadbdel"
c_tcadbdel :: Ptr ADB' -> IO ()
foreign import ccall safe "&tcadbdel"
tcadbFinalizer :: FunPtr (Ptr ADB' -> IO ())
foreign import ccall safe "tcadbopen"
c_tcadbopen :: Ptr ADB' -> CString -> IO Bool
foreign import ccall safe "tcadbclose"
c_tcadbclose :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbput"
c_tcadbput :: Ptr ADB' -> Ptr Word8 -> CInt -> Ptr Word8 -> CInt -> IO Bool
foreign import ccall safe "tcadbput2"
c_tcadbput2 :: Ptr ADB' -> CString -> CString -> IO Bool
foreign import ccall safe "tcadbputkeep"
c_tcadbputkeep :: Ptr ADB' -> Ptr Word8 -> CInt -> Ptr Word8 -> CInt -> IO Bool
foreign import ccall safe "tcadbputkeep2"
c_tcadbputkeep2 :: Ptr ADB' -> CString -> CString -> IO Bool
foreign import ccall safe "tcadbputcat"
c_tcadbputcat :: Ptr ADB' -> Ptr Word8 -> CInt -> Ptr Word8 -> CInt -> IO Bool
foreign import ccall safe "tcadbputcat2"
c_tcadbputcat2 :: Ptr ADB' -> CString -> CString -> IO Bool
foreign import ccall safe "tcadbout"
c_tcadbout :: Ptr ADB' -> Ptr Word8 -> CInt -> IO Bool
foreign import ccall safe "tcadbout2"
c_tcadbout2 :: Ptr ADB' -> CString -> IO Bool
foreign import ccall safe "tcadbget"
c_tcadbget :: Ptr ADB' -> Ptr Word8 -> CInt -> Ptr CInt -> IO (Ptr Word8)
foreign import ccall safe "tcadbget2"
c_tcadbget2 :: Ptr ADB' -> CString -> IO CString
foreign import ccall safe "tcadbvsiz"
c_tcadbvsiz :: Ptr ADB' -> Ptr Word8 -> CInt -> IO CInt
foreign import ccall safe "tcadbvsiz2"
c_tcadbvsiz2 :: Ptr ADB' -> CString -> IO CInt
foreign import ccall safe "tcadbiterinit"
c_tcadbiterinit :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbiternext"
c_tcadbiternext :: Ptr ADB' -> Ptr CInt -> IO (Ptr Word8)
foreign import ccall safe "tcadbiternext2"
c_tcadbiternext2 :: Ptr ADB' -> IO CString
foreign import ccall safe "tcadbfwmkeys"
c_tcadbfwmkeys :: Ptr ADB' -> Ptr Word8 -> CInt -> CInt -> IO (Ptr LIST)
foreign import ccall safe "tcadbfwmkeys2"
c_tcadbfwmkeys2 :: Ptr ADB' -> CString -> CInt -> IO (Ptr LIST)
foreign import ccall safe "tcadbaddint"
c_tcadbaddint :: Ptr ADB' -> Ptr Word8 -> CInt -> CInt -> IO CInt
foreign import ccall safe "tcadbadddouble"
c_tcadbadddouble :: Ptr ADB' -> Ptr Word8 -> CInt -> CDouble -> IO CDouble
foreign import ccall safe "tcadbsync"
c_tcadbsync :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadboptimize"
c_tcadboptimize :: Ptr ADB' -> CString -> IO Bool
foreign import ccall safe "tcadbvanish"
c_tcadbvanish :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbcopy"
c_tcadbcopy :: Ptr ADB' -> CString -> IO Bool
foreign import ccall safe "tcadbtranbegin"
c_tcadbtranbegin :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbtrancommit"
c_tcadbtrancommit :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbtranabort"
c_tcadbtranabort :: Ptr ADB' -> IO Bool
foreign import ccall safe "tcadbpath"
c_tcadbpath :: Ptr ADB' -> IO CString
foreign import ccall safe "tcadbrnum"
c_tcadbrnum :: Ptr ADB' -> IO Word64
foreign import ccall safe "tcadbsize"
c_tcadbsize :: Ptr ADB' -> IO Word64
foreign import ccall safe "tcadbmisc"
c_tcadbmisc :: Ptr ADB' -> CString -> Ptr LIST -> IO (Ptr LIST)