getHeaders :: a -> Headers
setHeaders :: a -> Headers -> a
- getHeader :: a -> String -> Maybe String
- getHeader a key
+ getHeader :: String -> a -> Maybe String
+ getHeader key a
= fmap snd $ find (noCaseEq key . fst) (getHeaders a)
- deleteHeader :: a -> String -> a
- deleteHeader a key
+ deleteHeader :: String -> a -> a
+ deleteHeader key a
= setHeaders a $ filter (not . noCaseEq key . fst) (getHeaders a)
- addHeader :: a -> String -> String -> a
- addHeader a key val
+ addHeader :: String -> String -> a -> a
+ addHeader key val a
= setHeaders a $ (getHeaders a) ++ [(key, val)]
- setHeader :: a -> String -> String -> a
- setHeader a key val
+ setHeader :: String -> String -> a -> a
+ setHeader key val a
= let list = getHeaders a
deleted = filter (not . noCaseEq key . fst) list
added = deleted ++ [(key, val)]