@@ -50,8 +50,9 @@ import Servant.API
50 MimeUnrender (mimeUnrender), NoContent (NoContent), QueryFlag,
50 MimeUnrender (mimeUnrender), NoContent (NoContent), QueryFlag,
51 QueryParam', QueryParams, Raw, ReflectMethod (..), RemoteHost,
51 QueryParam', QueryParams, Raw, ReflectMethod (..), RemoteHost,
52 ReqBody', SBoolI, Stream, StreamBody', Summary, ToHttpApiData,
52 ReqBody', SBoolI, Stream, StreamBody', Summary, ToHttpApiData,
53− ToSourceIO (..), Vault, Verb, WithNamedContext, contentType,
53+ ToSourceIO (..), Vault, Verb, NoContentVerb, WithNamedContext,
54− getHeadersHList, getResponse, toQueryParam, toUrlPiece)
54+ contentType, getHeadersHList, getResponse, toQueryParam,
55import Servant.API.ContentTypes
56import Servant.API.ContentTypes
56 (contentTypes)
57 (contentTypes)
57import Servant.API.Modifiers
58import Servant.API.Modifiers
@@ -241,6 +242,18 @@ instance {-# OVERLAPPING #-}
242 hoistClientMonad _ _ f ma = f ma
243 hoistClientMonad _ _ f ma = f ma
245+instance {-# OVERLAPPING #-}
246+ ( RunClient m, ReflectMethod method
247+ ) => HasClient m (NoContentVerb method) where
248+ type Client m (NoContentVerb method)
250+ clientWithRoute _pm Proxy req = do
251+ _response <- runRequest req { requestMethod = method }
253+ where method = reflectMethod (Proxy :: Proxy method)
255+ hoistClientMonad _ _ f ma = f ma
244instance {-# OVERLAPPING #-}
257instance {-# OVERLAPPING #-}
245 -- Note [Non-Empty Content Types]
258 -- Note [Non-Empty Content Types]
246 ( RunClient m, MimeUnrender ct a, BuildHeadersTo ls
259 ( RunClient m, MimeUnrender ct a, BuildHeadersTo ls