-- 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.3
-- | 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.HandlerSocketClient
-- | basic data structure for one Socket and one Handle (or Index).
data HandSock
HandSock :: Socket -> String -> String -> HandSock
getSocket :: HandSock -> Socket
getHost :: HandSock -> String
getPort :: HandSock -> String
-- | Connect to specific address & port. Returns the HandSock
-- for later request or close.
connectTo :: String -> String -> 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 at most lim results.
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