Safe Haskell | None |
---|---|
Language | Haskell2010 |
- data QueryFlag (sym :: Symbol)
- type QueryParam = QueryParam' '[Optional, Strict]
- data QueryParam' (mods :: [*]) (sym :: Symbol) (a :: *)
- data QueryParams (sym :: Symbol) (a :: *)
Documentation
data QueryFlag (sym :: Symbol) Source #
Lookup a potentially value-less query string parameter
with boolean semantics. If the param sym
is there without any value,
or if it's there with value "true" or "1", it's interpreted as True
.
Otherwise, it's interpreted as False
.
Example:
>>>
-- /books?published
>>>
type MyApi = "books" :> QueryFlag "published" :> Get '[JSON] [Book]
type QueryParam = QueryParam' '[Optional, Strict] Source #
Lookup the value associated to the sym
query string parameter
and try to extract it as a value of type a
.
Example:
>>>
-- /books?author=<author name>
>>>
type MyApi = "books" :> QueryParam "author" Text :> Get '[JSON] [Book]
data QueryParam' (mods :: [*]) (sym :: Symbol) (a :: *) Source #
QueryParam
which can be Required
, Lenient
, or modified otherwise.
(KnownSymbol sym, ToHttpApiData v, HasLink * sub, SBoolI (FoldRequired mods)) => HasLink * ((:>) * (QueryParam' mods sym v) sub) Source # | |
type MkLink * ((:>) * (QueryParam' mods sym v) sub) a Source # | |
data QueryParams (sym :: Symbol) (a :: *) Source #
Lookup the values associated to the sym
query string parameter
and try to extract it as a value of type [a]
. This is typically
meant to support query string parameters of the form
param[]=val1¶m[]=val2
and so on. Note that servant doesn't actually
require the []
s and will fetch the values just fine with
param=val1¶m=val2
, too.
Example:
>>>
-- /books?authors[]=<author1>&authors[]=<author2>&...
>>>
type MyApi = "books" :> QueryParams "authors" Text :> Get '[JSON] [Book]
(KnownSymbol sym, ToHttpApiData v, HasLink * sub) => HasLink * ((:>) * (QueryParams sym v) sub) Source # | |
type MkLink * ((:>) * (QueryParams sym v) sub) a Source # | |