on master help sign in
No ResponseLBS, instead responseBuilder and responseLBS
commit9bc88825eed321fb182074fd8fb496d279d8639f authorMichael Snoyman <michael@snoyman.com> dateTue 21 Dec 2010, 00:08 (16 years ago) parent115e1fb
1 file changed+9−3
Network/Wai.hs+9−3
Network/Wai.hs+9−3
@@ -66,6 +66,9 @@ module Network.Wai
6666 , responseEnumerator
6767 , Application
6868 , Middleware
69+ -- * Response body smart constructors
70+ , responseBuilder
71+ , responseLBS
6972 ) where
7073
7174import qualified Data.ByteString as B
@@ -217,7 +220,6 @@ data Request = Request
217220
218221data Response
219222 = ResponseFile Status ResponseHeaders FilePath
220− | ResponseLBS Status ResponseHeaders L.ByteString
221223 | ResponseEnumerator (forall a. ResponseEnumerator a)
222224
223225type ResponseEnumerator a =
@@ -227,8 +229,12 @@ responseEnumerator :: Response -> ResponseEnumerator a
227229responseEnumerator (ResponseEnumerator e) f = e f
228230responseEnumerator (ResponseFile s h fp) f =
229231 run_ $ enumFile fp $$ joinI $ E.map fromByteString $$ f s h
230−responseEnumerator (ResponseLBS s h lbs) f =
231− run_ $ enumList 1 [fromLazyByteString lbs] $$ f s h
232+
233+responseBuilder :: Status -> ResponseHeaders -> Builder -> Response
234+responseBuilder s h b = ResponseEnumerator $ \f -> run_ $ enumList 1 [b] $$ f s h
235+
236+responseLBS :: Status -> ResponseHeaders -> L.ByteString -> Response
237+responseLBS s h = responseBuilder s h . fromLazyByteString
232238
233239type Application = Request -> IO Response
234240