mohws-0.2.1.5: Modular Haskell Web Server

Safe HaskellNone
LanguageHaskell98

Network.MoHWS.HTTP.Header

Contents

Synopsis

Documentation

group :: [T] -> Group Source #

setGroup :: HasHeaders x => x -> Group -> x Source #

list :: HasHeaders x => x -> [T] Source #

modifyMany :: HasHeaders x => ([T] -> [T]) -> x -> x Source #

type T = Header Source #

data Header :: * #

The Header data type pairs header names & values.

Constructors

Header HeaderName String 

Instances

data HeaderName :: * #

HTTP HeaderName type, a Haskell data constructor for each specification-defined header, prefixed with Hdr and CamelCased, (i.e., eliding the - in the process.) Should you require using a custom header, there's the HdrCustom constructor which takes a String argument.

Encoding HTTP header names differently, as Strings perhaps, is an equally fine choice..no decidedly clear winner, but let's stick with data constructors here.

class HasHeaders x #

HasHeaders is a type class for types containing HTTP headers, allowing you to write overloaded header manipulation functions for both Request and Response data types, for instance.

Minimal complete definition

getHeaders, setHeaders

Instances

HasHeaders Group # 

Methods

getHeaders :: Group -> [Header] #

setHeaders :: Group -> [Header] -> Group #

HasHeaders (Request a) 

Methods

getHeaders :: Request a -> [Header] #

setHeaders :: Request a -> [Header] -> Request a #

HasHeaders (Response a) 

Methods

getHeaders :: Response a -> [Header] #

setHeaders :: Response a -> [Header] -> Response a #

HasHeaders (T body) # 

Methods

getHeaders :: T body -> [Header] #

setHeaders :: T body -> [Header] -> T body #

HasHeaders (T body) # 

Methods

getHeaders :: T body -> [Header] #

setHeaders :: T body -> [Header] -> T body #

Header parsing

Header manipulation

insert :: HasHeaders a => Name -> String -> a -> a Source #

replace :: HasHeaders a => Name -> String -> a -> a Source #

insertMany :: HasHeaders a => [T] -> a -> a Source #

Constructing headers

Getting values of specific headers