Module: HTTP::HPACK
- Defined in:
- lib/http/hpack/context.rb,
lib/http/hpack/huffman.rb,
lib/http/hpack/version.rb,
lib/http/hpack/compressor.rb,
lib/http/hpack/decompressor.rb,
lib/http/hpack/huffman/machine.rb
Overview
Implementation of header compression for HTTP 2.0 (HPACK) format adapted to efficiently represent HTTP headers in the context of HTTP 2.0.
Defined Under Namespace
Classes: CompressionError, Compressor, Context, Decompressor, Huffman
Constant Summary collapse
- HEADER_REPRESENTATION =
Header representation as defined by the spec.
{ indexed: {prefix: 7, pattern: 0x80}, incremental: {prefix: 6, pattern: 0x40}, noindex: {prefix: 4, pattern: 0x00}, neverindexed: {prefix: 4, pattern: 0x10}, changetablesize: {prefix: 5, pattern: 0x20}, }
- VERSION =
"0.1.1"
- NAIVE =
Predefined options set for Compressor mew.org/~kazu/material/2014-hpack.pdf
{index: :never, huffman: :never}
- LINEAR =
{index: :all, huffman: :never}
- STATIC =
{index: :static, huffman: :never}
- SHORTER =
{index: :all, huffman: :never}
- NAIVE_HUFFMAN =
{index: :never, huffman: :always}
- LINEAR_HUFFMAN =
{index: :all, huffman: :always}
- STATIC_HUFFMAN =
{index: :static, huffman: :always}
- SHORTER_HUFFMAN =
{index: :all, huffman: :shorter}
- MODES =
{ naive: NAIVE, linear: LINEAR, static: STATIC, shorter: SHORTER, naive_huffman: NAIVE_HUFFMAN, linear_huffman: NAIVE_HUFFMAN, static_huffman: NAIVE_HUFFMAN, shorter_huffman: NAIVE_HUFFMAN, }