servant-client-core: Core functionality and class for client function generation for servant APIs

[ bsd3, library, web ] [ Propose Tags ]

This library provides backend-agnostic generation of client functions. For more information, see the README.


[Skip to Readme]
Versions 0.12, 0.13, 0.13.0.1
Change log CHANGELOG.md
Dependencies base (>=4.7 && <4.12), base-compat (>=0.9.3 && <0.11), base64-bytestring (>=1.0.0.1 && <1.1), bytestring (>=0.10.4.0 && <0.11), containers (>=0.5.5.1 && <0.6), exceptions (>=0.8.3 && <0.11), generics-sop (>=0.3.1.0 && <0.4), http-api-data (>=0.3.7.1 && <0.4), http-media (>=0.7.0 && <0.8), http-types (==0.12.*), mtl (>=2.1 && <2.3), network-uri (>=2.6.1.0 && <2.7), safe (>=0.3.15 && <0.4), semigroups (>=0.18.3 && <0.19), servant (==0.13.*), text (>=1.2.3.0 && <1.3) [details]
License BSD-3-Clause
Copyright 2014-2016 Zalora South East Asia Pte Ltd, 2016-2017 Servant Contributors
Author Servant Contributors
Maintainer haskell-servant-maintainers@googlegroups.com
Category Web
Home page http://haskell-servant.readthedocs.org/
Bug tracker http://github.com/haskell-servant/servant/issues
Source repo head: git clone http://github.com/haskell-servant/servant.git
Uploaded by phadej at Wed Apr 11 08:13:18 UTC 2018
Distributions Fedora:0.12, LTSHaskell:0.13.0.1, NixOS:0.13.0.1, Stackage:0.13.0.1, openSUSE:0.13.0.1
Downloads 635 total (66 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2018-04-13 [all 1 reports]
Hackage Matrix CI

Modules

[Index]

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for servant-client-core-0.13.0.1

[back to package description]

servant-client-core

servant

HTTP-client-agnostic client functions for servant APIs.

This library should mainly be of interest to backend- and combinator-writers.

For backend-writers

If you are creating a new backend, you'll need to:

  1. Define a RunClient instance for your datatype (call it MyMonad)
  2. Define a ClientLike instance. This will look like:
instance ClientLike (MyMonad a) (MyMonad a) where
  mkClient = id
  1. Re-export the module Servant.Client.Core.Reexport so that your end-users can be blissfully unaware of 'servant-client-core', and so each backend-package comes closer to the warm hearth of the drop-in-replacement equivalence class.

For combinator-writers

You'll need to define a new HasClient instance for your combinator. There are plenty of examples to guide you in the HasClient module.