curl-1.3.8: Haskell binding to libcurl
Copyright(c) Galois Inc 2007-2009
LicenseBSD3
MaintainerSigbjorn Finne <sof@galois.com>
Stabilityprovisional
Portabilityportable
Safe HaskellSafe-Inferred
LanguageHaskell98

Network.Curl.Types

Description

Basic set of types for the Haskell curl binding, including the Curl handle type which holds the C library stateful connection handle along with a set of cleanup actions tht should be performed upon shutting down the curl session.

Synopsis

Documentation

type CurlH = Ptr Curl_ #

type URLString = String #

type Port = Long #

type Long = Word32 #

type LLong = Word64 #

data Slist_ #

data Curl #

curlPrim :: Curl -> (IORef OptionMap -> CurlH -> IO a) -> IO a #

Execute a "primitve" curl operation. NOTE: See warnings about the use of withForeginPtr.

mkCurl :: CurlH -> IO Curl #

Allocates a Haskell handle from a C handle.

mkCurlWithCleanup :: CurlH -> OptionMap -> IO Curl #

Allocates a Haskell handle from a C handle.

type OptionMap = IntMap (IO ()) #

runCleanup :: IORef OptionMap -> IO () #

updateCleanup :: IORef OptionMap -> Int -> IO () -> IO () #