servant-0.12: A family of combinators for defining webservices APIs

Safe HaskellSafe
LanguageHaskell2010

Servant.API.Sub

Synopsis

Documentation

data path :> a infixr 4 Source #

The contained API (second argument) can be found under ("/" ++ path) (path being the first argument).

Example:

>>> -- GET /hello/world
>>> -- returning a JSON encoded World value
>>> type MyApi = "hello" :> "world" :> Get '[JSON] World

Instances

HasLink k1 sub => HasLink * ((:>) k1 * (AuthProtect k tag) sub) Source # 

Associated Types

type MkLink ((:>) k1 * (AuthProtect k tag) sub) (endpoint :: (:>) k1 * (AuthProtect k tag) sub) :: * Source #

Methods

toLink :: Proxy ((k1 :> *) (AuthProtect k tag) sub) endpoint -> Link -> MkLink ((k1 :> *) (AuthProtect k tag) sub) endpoint Source #

HasLink k sub => HasLink * ((:>) k * (BasicAuth realm a) sub) Source # 

Associated Types

type MkLink ((:>) k * (BasicAuth realm a) sub) (endpoint :: (:>) k * (BasicAuth realm a) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (BasicAuth realm a) sub) endpoint -> Link -> MkLink ((k :> *) (BasicAuth realm a) sub) endpoint Source #

HasLink k sub => HasLink * ((:>) k * RemoteHost sub) Source # 

Associated Types

type MkLink ((:>) k * RemoteHost sub) (endpoint :: (:>) k * RemoteHost sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) RemoteHost sub) endpoint -> Link -> MkLink ((k :> *) RemoteHost sub) endpoint Source #

HasLink k sub => HasLink * ((:>) k * (Header sym a) sub) Source # 

Associated Types

type MkLink ((:>) k * (Header sym a) sub) (endpoint :: (:>) k * (Header sym a) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (Header sym a) sub) endpoint -> Link -> MkLink ((k :> *) (Header sym a) sub) endpoint Source #

(ToHttpApiData v, HasLink k sub) => HasLink * ((:>) k * (CaptureAll * sym v) sub) Source # 

Associated Types

type MkLink ((:>) k * (CaptureAll * sym v) sub) (endpoint :: (:>) k * (CaptureAll * sym v) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (CaptureAll * sym v) sub) endpoint -> Link -> MkLink ((k :> *) (CaptureAll * sym v) sub) endpoint Source #

(ToHttpApiData v, HasLink k sub) => HasLink * ((:>) k * (Capture * sym v) sub) Source # 

Associated Types

type MkLink ((:>) k * (Capture * sym v) sub) (endpoint :: (:>) k * (Capture * sym v) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (Capture * sym v) sub) endpoint -> Link -> MkLink ((k :> *) (Capture * sym v) sub) endpoint Source #

HasLink k1 sub => HasLink * ((:>) k1 * (ReqBody k ct a) sub) Source # 

Associated Types

type MkLink ((:>) k1 * (ReqBody k ct a) sub) (endpoint :: (:>) k1 * (ReqBody k ct a) sub) :: * Source #

Methods

toLink :: Proxy ((k1 :> *) (ReqBody k ct a) sub) endpoint -> Link -> MkLink ((k1 :> *) (ReqBody k ct a) sub) endpoint Source #

(KnownSymbol sym, HasLink k sub) => HasLink * ((:>) k * (QueryFlag sym) sub) Source # 

Associated Types

type MkLink ((:>) k * (QueryFlag sym) sub) (endpoint :: (:>) k * (QueryFlag sym) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (QueryFlag sym) sub) endpoint -> Link -> MkLink ((k :> *) (QueryFlag sym) sub) endpoint Source #

(KnownSymbol sym, ToHttpApiData v, HasLink k sub) => HasLink * ((:>) k * (QueryParams * sym v) sub) Source # 

Associated Types

type MkLink ((:>) k * (QueryParams * sym v) sub) (endpoint :: (:>) k * (QueryParams * sym v) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (QueryParams * sym v) sub) endpoint -> Link -> MkLink ((k :> *) (QueryParams * sym v) sub) endpoint Source #

(KnownSymbol sym, ToHttpApiData v, HasLink k sub) => HasLink * ((:>) k * (QueryParam * sym v) sub) Source # 

Associated Types

type MkLink ((:>) k * (QueryParam * sym v) sub) (endpoint :: (:>) k * (QueryParam * sym v) sub) :: * Source #

Methods

toLink :: Proxy ((k :> *) (QueryParam * sym v) sub) endpoint -> Link -> MkLink ((k :> *) (QueryParam * sym v) sub) endpoint Source #

(KnownSymbol sym, HasLink k sub) => HasLink * ((:>) k Symbol sym sub) Source # 

Associated Types

type MkLink ((:>) k Symbol sym sub) (endpoint :: (:>) k Symbol sym sub) :: * Source #

Methods

toLink :: Proxy ((k :> Symbol) sym sub) endpoint -> Link -> MkLink ((k :> Symbol) sym sub) endpoint Source #

type MkLink * ((:>) k * (AuthProtect k1 tag) sub) Source # 
type MkLink * ((:>) k * (AuthProtect k1 tag) sub) = MkLink k sub
type MkLink * ((:>) k * (BasicAuth realm a) sub) Source # 
type MkLink * ((:>) k * (BasicAuth realm a) sub) = MkLink k sub
type MkLink * ((:>) k * RemoteHost sub) Source # 
type MkLink * ((:>) k * RemoteHost sub) = MkLink k sub
type MkLink * ((:>) k * (Header sym a) sub) Source # 
type MkLink * ((:>) k * (Header sym a) sub) = MkLink k sub
type MkLink * ((:>) k * (CaptureAll * sym v) sub) Source # 
type MkLink * ((:>) k * (CaptureAll * sym v) sub) = [v] -> MkLink k sub
type MkLink * ((:>) k * (Capture * sym v) sub) Source # 
type MkLink * ((:>) k * (Capture * sym v) sub) = v -> MkLink k sub
type MkLink * ((:>) k * (ReqBody k1 ct a) sub) Source # 
type MkLink * ((:>) k * (ReqBody k1 ct a) sub) = MkLink k sub
type MkLink * ((:>) k * (QueryFlag sym) sub) Source # 
type MkLink * ((:>) k * (QueryFlag sym) sub) = Bool -> MkLink k sub
type MkLink * ((:>) k * (QueryParams * sym v) sub) Source # 
type MkLink * ((:>) k * (QueryParams * sym v) sub) = [v] -> MkLink k sub
type MkLink * ((:>) k * (QueryParam * sym v) sub) Source # 
type MkLink * ((:>) k * (QueryParam * sym v) sub) = Maybe v -> MkLink k sub
type MkLink * ((:>) k Symbol sym sub) Source # 
type MkLink * ((:>) k Symbol sym sub) = MkLink k sub