-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Haskell implementation of a HandlerSocket client (API).
--
-- This package implemets API for a HandlerSocket client.
@package HandlerSocketClient
@version 0.0.2
-- | Haskell implementation of a HandlerSocket client (API). HandlerSocket
-- is a MySQL plugin with better performance then SQL. HandlerSocket
-- site:
-- https:github.comahigutiHandlerSocket-Plugin-for-MySQL
module Database.HandlerSocket.HSClient
-- | basic data structure for one Socket and one Handle (or Index).
data HandSock
HandSock :: Socket -> Int -> HandSock
getSocket :: HandSock -> Socket
getHandle :: HandSock -> Int
-- | Connect to specific address & port with a given handle-id (or
-- index). Returns the HandSock for later request or close.
connectTo :: String -> String -> Int -> IO HandSock
-- | Close the connection.
closeHS :: HandSock -> IO ()
-- | Do Generic Request with given Strings. Return True or False,
-- discarding all other messages.
runReqNoRespData :: HandSock -> [String] -> IO Bool
-- | Do Generic Request, Returns all values received, "0" in the head means
-- SUCCESS.
runReqGeneric :: HandSock -> [String] -> IO [String]
-- | Do 'open_index' request.
runReqOpen :: HandSock -> String -> String -> String -> String -> IO Bool
-- | Do 'find' request. Returns
runReqFind :: Integral a => HandSock -> String -> String -> a -> IO [[String]]
-- | Do 'insert' request, insert one record at a time.
runReqInsert :: HandSock -> [String] -> IO Bool
-- | Do 'update' request, give one value to be compared with the KEY, then
-- provide the new data. Only ONE record will be updated.
runReqUpdate :: HandSock -> String -> [String] -> IO Bool
-- | Do 'delete' request, give one value to be compared with the KEY. Only
-- one record will be deleted.
runReqDelete :: HandSock -> String -> IO Bool