X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Network%2FHTTP%2FLucu%2FResponse.hs;h=35c168fb38cde77ea2227cb2b808d00c9da79322;hb=b1fac0a2cb1cafa008c0efa8ae4e14afbee0927f;hp=e2b76fa94617ebe0560394cb011d7eab24f85e6b;hpb=f402841101b4b84f263eea1a43c848f81c48ff93;p=Lucu.git diff --git a/Network/HTTP/Lucu/Response.hs b/Network/HTTP/Lucu/Response.hs index e2b76fa..35c168f 100644 --- a/Network/HTTP/Lucu/Response.hs +++ b/Network/HTTP/Lucu/Response.hs @@ -23,8 +23,6 @@ module Network.HTTP.Lucu.Response , isError , isClientError , isServerError - - , statusCode ) where import Data.Ascii (Ascii, AsciiBuilder) @@ -37,8 +35,8 @@ import Network.HTTP.Lucu.Utils import Prelude.Unicode -- |This is the definition of HTTP status code. --- 'Network.HTTP.Lucu.Resource.setStatus' accepts these named statuses --- so you don't have to memorize, for instance, that \"Gateway +-- 'Network.HTTP.Lucu.Resource.setStatus' accepts these named status +-- codes so you don't have to memorize, for instance, that \"Gateway -- Timeout\" is 504. data StatusCode = Continue | SwitchingProtocols @@ -92,7 +90,7 @@ data StatusCode = Continue | InsufficientStorage deriving (Eq, Show, Typeable) --- |Convert a 'StatusCode' to 'AsciiBuilder'. +-- |Convert a 'StatusCode' to an 'AsciiBuilder'. printStatusCode ∷ StatusCode → AsciiBuilder {-# INLINEABLE printStatusCode #-} printStatusCode (statusCode → (# num, msg #)) @@ -101,6 +99,7 @@ printStatusCode (statusCode → (# num, msg #)) A.toAsciiBuilder msg ) +-- |This is the definition of an HTTP response. data Response = Response { resVersion ∷ !HttpVersion , resStatus ∷ !StatusCode @@ -175,8 +174,6 @@ satisfy ∷ (Int → Bool) → StatusCode → Bool {-# INLINE satisfy #-} satisfy p (statusCode → (# num, _ #)) = p num --- |@'statusCode' sc@ returns an unboxed tuple of numeric and textual --- representation of @sc@. statusCode ∷ StatusCode → (# Int, Ascii #) {-# INLINEABLE statusCode #-} @@ -230,3 +227,5 @@ statusCode ServiceUnavailable = (# 503, "Service Unavailable" statusCode GatewayTimeout = (# 504, "Gateway Timeout" #) statusCode HttpVersionNotSupported = (# 505, "HTTP Version Not Supported" #) statusCode InsufficientStorage = (# 507, "Insufficient Storage" #) +-- FIXME: Textual representations should also include numbers. +-- FIXME: StatusCode should be a type class rather than a type.