servant
Safe HaskellNone
LanguageHaskell2010

Servant.API.Capture

Synopsis

Documentation

type Capture = Capture' ('[] :: [Type]) Source #

Capture a value from the request path under a certain type a.

Example:

>>> -- GET /books/:isbn
>>> type MyApi = "books" :> Capture "isbn" Text :> Get '[JSON] Book

data Capture' (mods :: [Type]) (sym :: Symbol) a Source #

Capture which can be modified. For example with Description.

Instances

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

Defined in Servant.Links

Methods

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

type MkLink (Capture' mods sym v :> sub :: Type) a Source # 
Instance details

Defined in Servant.Links

type MkLink (Capture' mods sym v :> sub :: Type) a = v -> MkLink sub a

data CaptureAll (sym :: Symbol) a Source #

Capture all remaining values from the request path under a certain type a.

Example:

>>> -- GET /src/*
>>> type MyAPI = "src" :> CaptureAll "segments" Text :> Get '[JSON] SourceFile

Instances

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

Defined in Servant.Links

Methods

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

type MkLink (CaptureAll sym v :> sub :: Type) a Source # 
Instance details

Defined in Servant.Links

type MkLink (CaptureAll sym v :> sub :: Type) a = [v] -> MkLink sub a