@@ -75,17 +75,27 @@ instance NFData ServantError where
75 rnf (InvalidContentTypeHeader res) = rnf res
75 rnf (InvalidContentTypeHeader res) = rnf res
76 rnf (ConnectionError err) = rnf err
76 rnf (ConnectionError err) = rnf err
78−data RequestF a = Request
78+data RequestF body path = Request
79− { requestPath :: a
79+ { requestPath :: path
80 , requestQueryString :: Seq.Seq QueryItem
80 , requestQueryString :: Seq.Seq QueryItem
81− , requestBody :: Maybe (RequestBody, MediaType)
81+ , requestBody :: Maybe (body, MediaType)
82 , requestAccept :: Seq.Seq MediaType
82 , requestAccept :: Seq.Seq MediaType
83 , requestHeaders :: Seq.Seq Header
83 , requestHeaders :: Seq.Seq Header
84 , requestHttpVersion :: HttpVersion
84 , requestHttpVersion :: HttpVersion
85 , requestMethod :: Method
85 , requestMethod :: Method
86 } deriving (Generic, Typeable)
86 } deriving (Generic, Typeable)
88+instance (NFData path, NFData body) => NFData (Request body path) where
91+ `seq` rnf (requestQueryString r)
92+ `seq` rnf (requestBody r)
93+ `seq` rnf (requestAccept r)
94+ `seq` rnf (requestHeaders r)
95+ `seq` rnf (requestHttpVersion r)
96+ `seq` rnf (requestMethod r)
88−type Request = RequestF Builder.Builder
98+type Request = RequestF RequestBody Builder.Builder
90-- | The request body. A replica of the @http-client@ @RequestBody@.
100-- | The request body. A replica of the @http-client@ @RequestBody@.
91data RequestBody
101data RequestBody