]> gitweb @ CieloNegro.org - Lucu.git/blobdiff - Network/HTTP/Lucu/ETag.hs
Haddock overhaul
[Lucu.git] / Network / HTTP / Lucu / ETag.hs
index f7ef8387c7044d02acc1451a7fa0e140c3197c60..d4a157fa2eabeb66d133afe1b25c3393a59f2946 100644 (file)
@@ -2,7 +2,7 @@
     OverloadedStrings
   , UnicodeSyntax
   #-}
--- |Manipulation of entity tags.
+-- |Entity tags
 module Network.HTTP.Lucu.ETag
     ( ETag(..)
     , parseETag
@@ -24,17 +24,18 @@ import Network.HTTP.Lucu.Parser.Http hiding (token)
 import Network.HTTP.Lucu.Utils
 import Prelude.Unicode
 
--- |An entity tag is made of a weakness flag and a opaque string.
+-- |An entity tag consists of a weakness flag and an opaque string.
 data ETag = ETag {
       -- |The weakness flag. Weak tags looks like W\/\"blahblah\" and
-      -- strong tags are like \"blahblah\".
+      -- strong tags are like \"blahblah\". See:
+      -- <http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.3.3>
       etagIsWeak ∷ !Bool
       -- |An opaque string. Only characters from 0x20 (sp) to 0x7e (~)
       -- are allowed.
     , etagToken  ∷ !Ascii
     } deriving (Eq, Show)
 
--- |Convert an 'ETag' to 'AsciiBuilder'.
+-- |Convert an 'ETag' to an 'AsciiBuilder'.
 printETag ∷ ETag → AsciiBuilder
 {-# INLINEABLE printETag #-}
 printETag et
@@ -61,24 +62,26 @@ parseETag str
              endOfInput
              return et
 
--- |This is equivalent to @'ETag' 'Prelude.False'@. If you want to
--- generate an ETag from a file, try using
+-- |This is equivalent to @'ETag' 'False'@. If you want to generate an
+-- ETag from a file, try using
 -- 'Network.HTTP.Lucu.StaticFile.generateETagFromFile'.
 strongETag ∷ Ascii → ETag
 {-# INLINE strongETag #-}
 strongETag = ETag False
 
--- |This is equivalent to @'ETag' 'Prelude.True'@.
+-- |This is equivalent to @'ETag' 'True'@.
 weakETag ∷ Ascii → ETag
 {-# INLINE weakETag #-}
 weakETag = ETag True
 
+-- |'Parser' for an 'ETag'.
 eTagP ∷ Parser ETag
 {-# INLINEABLE eTagP #-}
 eTagP = do isWeak ← option False (string "W/" *> return True)
            str    ← quotedStr
            return $ ETag isWeak str
 
+-- |'Parser' for a list of 'ETag's.
 eTagListP ∷ Parser [ETag]
 {-# INLINEABLE eTagListP #-}
 eTagListP = do xs ← listOf eTagP