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

Safe HaskellSafe
LanguageHaskell2010

Servant.API.Sub

Synopsis
  • data (path :: k) :> (a :: *)

Documentation

data (path :: k) :> (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 sub => HasLink (HttpVersion :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (HttpVersion :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (HttpVersion :> sub) -> Link -> MkLink (HttpVersion :> sub) a Source #

HasLink sub => HasLink (Vault :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (Vault :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (Vault :> sub) -> Link -> MkLink (Vault :> sub) a Source #

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

Defined in Servant.Links

Associated Types

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

Methods

toLink :: (Link -> a0) -> Proxy (BasicAuth realm a :> sub) -> Link -> MkLink (BasicAuth realm a :> sub) a0 Source #

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

Defined in Servant.Links

Associated Types

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

Methods

toLink :: (Link -> a) -> Proxy (CaptureAll sym v :> sub) -> Link -> MkLink (CaptureAll sym v :> sub) a Source #

(ToHttpApiData v, HasLink sub) => HasLink (Capture' mods sym v :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (Capture' mods sym v :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (Capture' mods sym v :> sub) -> Link -> MkLink (Capture' mods sym v :> sub) a Source #

HasLink sub => HasLink (Description s :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (Description s :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (Description s :> sub) -> Link -> MkLink (Description s :> sub) a Source #

HasLink sub => HasLink (Summary s :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (Summary s :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (Summary s :> sub) -> Link -> MkLink (Summary s :> sub) a Source #

HasLink sub => HasLink (AuthProtect tag :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (AuthProtect tag :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (AuthProtect tag :> sub) -> Link -> MkLink (AuthProtect tag :> sub) a Source #

HasLink sub => HasLink (IsSecure :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (IsSecure :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (IsSecure :> sub) -> Link -> MkLink (IsSecure :> sub) a Source #

HasLink sub => HasLink (Header' mods sym a :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (Header' mods sym a :> sub) a :: * Source #

Methods

toLink :: (Link -> a0) -> Proxy (Header' mods sym a :> sub) -> Link -> MkLink (Header' mods sym a :> sub) a0 Source #

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

Defined in Servant.Links

Associated Types

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

Methods

toLink :: (Link -> a) -> Proxy (QueryFlag sym :> sub) -> Link -> MkLink (QueryFlag sym :> sub) a Source #

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

Defined in Servant.Links

Associated Types

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

Methods

toLink :: (Link -> a) -> Proxy (QueryParams sym v :> sub) -> Link -> MkLink (QueryParams sym v :> sub) a Source #

(KnownSymbol sym, ToHttpApiData v, HasLink sub, SBoolI (FoldRequired mods)) => HasLink (QueryParam' mods sym v :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (QueryParam' mods sym v :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (QueryParam' mods sym v :> sub) -> Link -> MkLink (QueryParam' mods sym v :> sub) a Source #

HasLink sub => HasLink (RemoteHost :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (RemoteHost :> sub) a :: * Source #

Methods

toLink :: (Link -> a) -> Proxy (RemoteHost :> sub) -> Link -> MkLink (RemoteHost :> sub) a Source #

HasLink sub => HasLink (ReqBody' mods ct a :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

type MkLink (ReqBody' mods ct a :> sub) a :: * Source #

Methods

toLink :: (Link -> a0) -> Proxy (ReqBody' mods ct a :> sub) -> Link -> MkLink (ReqBody' mods ct a :> sub) a0 Source #

(KnownSymbol sym, HasLink sub) => HasLink (sym :> sub :: *) Source # 
Instance details

Defined in Servant.Links

Associated Types

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

Methods

toLink :: (Link -> a) -> Proxy (sym :> sub) -> Link -> MkLink (sym :> sub) a Source #

type MkLink (HttpVersion :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (HttpVersion :> sub :: *) a = MkLink sub a
type MkLink (Vault :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (Vault :> sub :: *) a = MkLink sub a
type MkLink (BasicAuth realm a :> sub :: *) r Source # 
Instance details

Defined in Servant.Links

type MkLink (BasicAuth realm a :> sub :: *) r = MkLink sub r
type MkLink (CaptureAll sym v :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (CaptureAll sym v :> sub :: *) a = [v] -> MkLink sub a
type MkLink (Capture' mods sym v :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (Capture' mods sym v :> sub :: *) a = v -> MkLink sub a
type MkLink (Description s :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (Description s :> sub :: *) a = MkLink sub a
type MkLink (Summary s :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (Summary s :> sub :: *) a = MkLink sub a
type MkLink (AuthProtect tag :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (AuthProtect tag :> sub :: *) a = MkLink sub a
type MkLink (IsSecure :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (IsSecure :> sub :: *) a = MkLink sub a
type MkLink (Header' mods sym a :> sub :: *) r Source # 
Instance details

Defined in Servant.Links

type MkLink (Header' mods sym a :> sub :: *) r = MkLink sub r
type MkLink (QueryFlag sym :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (QueryFlag sym :> sub :: *) a = Bool -> MkLink sub a
type MkLink (QueryParams sym v :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (QueryParams sym v :> sub :: *) a = [v] -> MkLink sub a
type MkLink (QueryParam' mods sym v :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (QueryParam' mods sym v :> sub :: *) a = If (FoldRequired mods) v (Maybe v) -> MkLink sub a
type MkLink (RemoteHost :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (RemoteHost :> sub :: *) a = MkLink sub a
type MkLink (ReqBody' mods ct a :> sub :: *) r Source # 
Instance details

Defined in Servant.Links

type MkLink (ReqBody' mods ct a :> sub :: *) r = MkLink sub r
type MkLink (sym :> sub :: *) a Source # 
Instance details

Defined in Servant.Links

type MkLink (sym :> sub :: *) a = MkLink sub a