free-http-0.1.0.2: free-http.cabal
name: free-http
version: 0.1.0.2
synopsis: An HTTP Client based on Free Monads.
description: `free-http` is an http-client based on Free Monads.
`free-http` exposes a Free Monad to express standard http
verbs as well as several backends to interpet programs
written in the free monad using various http clients
(currently: a pure client, an `http-client`-backed client,
and a random client).
To use free-http, simply:
1. Import Network.HTTP.Client.Free to use the library.
2. Choose your base request type by defining your own
instance of the `RequestType` type family or importing
one from an interpreter. E.g.
data MyClient
type instance RequestType MyClient = Request
(or)
import Network.HTTP.Free.Client.HttpClient (HttpClient)
3. Choose your base response type by defining your own
instance of the `ResponseTYpe` type family or importing
one from an interpreter. E.g.
type instance ResponseType MyClient = Response ByteString
(or)
import Network.HTTP.Free.Client.HttpClient (HttpClient)
4. Write a program in the 'FreeHttp MyClient m a' free monad.
5. Import an interpreter, such as 'HttpClient'
import Network.HTTP.Free.Client.HttpClient
6. Run your program against the interpreter:
runHttp (myProgram :: FreeHttp MyClient IO String)
homepage: https://github.com/aaronlevin/free-http
license: MIT
license-file: LICENSE
author: Aaron Levin
maintainer: vilevin@gmail.com
category: Network
build-type: Simple
extra-source-files: README.md
, LICENSE
cabal-version: >=1.10
source-repository head
type: git
location: git://github.com/aaronlevin/free-http.git
library
exposed-modules: Network.HTTP.Client.Free
Network.HTTP.Client.Free.ArbitraryClient
Network.HTTP.Client.Free.HttpClient
Network.HTTP.Client.Free.PureClient
Network.HTTP.Client.Free.Types
Network.HTTP.Client.Free.Util
other-modules: Network.HTTP.Client.Free.Examples
-- other-extensions:
build-depends: base > 4.6 && < 4.9
, bytestring >= 0.10.0.0
, free >= 4.0
, http-client >= 0.4.0
, http-types >= 0.8.0
, mtl >= 2.0.0.0
, QuickCheck >= 2.7
, text >= 1.0.0.0
, time >= 1.4.0.1
, transformers >= 0.4.0.0
hs-source-dirs: src
default-language: Haskell2010