X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=Network%2FHTTP%2FLucu%2FHeaders.hs;h=e83aa34fdc181022584693abf28578a91b9360b9;hb=b495d6b8b7647b719eceef2f3e50d5bf87c430cf;hp=2ee9cbb8ce60e39311b496aa2b8ebfe7666e9cbc;hpb=19763f7de78daf2d4c794f4010039f70c7f73994;p=Lucu.git diff --git a/Network/HTTP/Lucu/Headers.hs b/Network/HTTP/Lucu/Headers.hs index 2ee9cbb..e83aa34 100644 --- a/Network/HTTP/Lucu/Headers.hs +++ b/Network/HTTP/Lucu/Headers.hs @@ -23,7 +23,7 @@ import Data.Ascii (Ascii, AsciiBuilder, CIAscii) import qualified Data.Ascii as A import Data.Attoparsec.Char8 as P import Data.List (intersperse) -import qualified Data.Map as M +import qualified Data.Map as M (Map) import Data.Collections import Data.Collections.BaseInstances () import Data.Monoid @@ -77,8 +77,8 @@ instance Unfoldable Headers (CIAscii, Ascii) where empty = Headers empty {-# INLINE singleton #-} - singleton v - = Headers $ singleton v + singleton p + = Headers $ singleton p {-# INLINE insertMany #-} insertMany f (Headers m) = Headers $ insertMany f m @@ -87,6 +87,10 @@ instance Unfoldable Headers (CIAscii, Ascii) where = Headers $ insertManySorted f m instance Foldable Headers (CIAscii, Ascii) where + {-# INLINE null #-} + null (Headers m) = null m + {-# INLINE size #-} + size (Headers m) = size m {-# INLINE foldr #-} foldr f b (Headers m) = foldr f b m @@ -109,6 +113,7 @@ instance Monoid Headers where mappend (Headers α) (Headers β) = Headers $ insertManySorted β α +-- FIXME: override every methods instance Map Headers CIAscii Ascii where {-# INLINE lookup #-} lookup k (Headers m) = lookup k m