module Network.HPACK.Builder where newtype Builder a = Builder ([a] -> [a]) (<<) :: Builder a -> a -> Builder a Builder b << entry = Builder $ b . (entry :) empty :: Builder a empty = Builder id singleton :: a -> Builder a singleton x = Builder (x :) run :: Builder a -> [a] run (Builder b) = b []