http2-0.0.0: Network/HPACK/HeaderBlock/HeaderField.hs
module Network.HPACK.HeaderBlock.HeaderField (
-- * Type
HeaderBlock
, emptyHeaderBlock
, HeaderField(..)
, HeaderName -- re-exporting
, HeaderValue -- re-exporting
, Index -- re-exporting
, Indexing(..)
, Naming(..)
) where
import Network.HPACK.Types
----------------------------------------------------------------
-- | Type for header block.
type HeaderBlock = [HeaderField]
-- | Empty header block.
emptyHeaderBlock :: HeaderBlock
emptyHeaderBlock = []
-- | Type for representation.
data HeaderField = Indexed Index
| Literal Indexing Naming HeaderValue
deriving (Eq,Show)
-- | Whether or not adding to a table.
data Indexing = Add | NotAdd deriving (Eq,Show)
-- | Index or literal.
data Naming = Idx Index | Lit HeaderName deriving (Eq,Show)