git.iko.soy/typeable/servant
on 98e02ea help sign in
62 lines 2.1 kB history raw
1module Servant.API (
3 -- * Combinators
4 -- | Type-level combinator for expressing subrouting: @':>'@
5 module Servant.API.Sub,
6 -- | Type-level combinator for alternative endpoints: @':<|>'@
7 module Servant.API.Alternative,
9 -- * Accessing information from the request
10 -- | Capturing parts of the url path as parsed values: @'Capture'@
11 module Servant.API.Capture,
12 -- | Retrieving specific headers from the request
13 module Servant.API.Header,
14 -- | Retrieving parameters from the query string of the 'URI': @'QueryParam'@
15 module Servant.API.QueryParam,
16 -- | Accessing the request body as a JSON-encoded type: @'ReqBody'@
17 module Servant.API.ReqBody,
18 -- | Retrieving matrix parameters from the 'URI' segment: @'MatrixParam'@
19 module Servant.API.MatrixParam,
21 -- * Actual endpoints, distinguished by HTTP method
22 -- | GET requests
23 module Servant.API.Get,
24 -- | POST requests
25 module Servant.API.Post,
26 -- | DELETE requests
27 module Servant.API.Delete,
28 -- | PUT requests
29 module Servant.API.Put,
30 -- | PATCH requests
31 module Servant.API.Patch,
33 -- * Content Types
34 module Servant.API.ContentTypes,
36 -- * Untyped endpoints
37 -- | Plugging in a wai 'Network.Wai.Application', serving directories
38 module Servant.API.Raw,
40 -- * Utilities
41 -- | QuasiQuotes for endpoints
42 module Servant.QQ,
43 -- | Type-safe internal URIs
44 module Servant.Utils.Links,
45 ) where
47import Servant.API.Alternative ( (:<|>)(..) )
48import Servant.API.Capture ( Capture )
49import Servant.API.ContentTypes ( HTML, XML, JSON, JavaScript, CSS, PlainText )
50import Servant.API.Delete ( Delete )
51import Servant.API.Get ( Get )
52import Servant.API.Header ( Header )
53import Servant.API.Post ( Post )
54import Servant.API.Put ( Put )
55import Servant.API.Patch ( Patch )
56import Servant.API.QueryParam ( QueryFlag, QueryParams, QueryParam )
57import Servant.API.MatrixParam ( MatrixFlag, MatrixParams, MatrixParam )
58import Servant.API.Raw ( Raw )
59import Servant.API.ReqBody ( ReqBody )
60import Servant.API.Sub ( (:>)(..) )
61import Servant.QQ ( sitemap )
62import Servant.Utils.Links ( safeLink, URI(..), IsElem, IsElem', HasLink(..) )