--- |'Parser' for a 'Request'.
-request ∷ Parser Request
-request = do skipMany crlf
- (meth, u, ver) ← requestLine
- hdrs ← headers
- return Request {
- reqMethod = meth
- , reqURI = u
- , reqVersion = ver
- , reqHeaders = hdrs
- }
+instance Parsable ByteString Request where
+ {-# INLINEABLE parser #-}
+ parser = do skipMany crlf
+ (meth, u, ver) ← requestLine
+ hdrs ← parser
+ return Request {
+ reqMethod = meth
+ , reqURI = u
+ , reqVersion = ver
+ , reqHeaders = hdrs
+ }