Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
HPack Namespace Reference

Classes

class  BitIStream
 
class  BitOStream
 
struct  BitPattern
 
struct  CodeEntry
 
class  Decoder
 
class  Encoder
 
class  FieldLookupTable
 
struct  HeaderField
 
class  HuffmanDecoder
 
struct  PrefixTable
 
struct  PrefixTableEntry
 

Typedefs

using HttpHeader = std::vector< HeaderField >
 
using HeaderSize = QPair< bool, quint32 >
 

Functions

HeaderSize header_size (const HttpHeader &header)
 
bool operator== (const BitPattern &lhs, const BitPattern &rhs)
 
HeaderSize entry_size (QByteArrayView name, QByteArrayView value)
 
HeaderSize entry_size (const HeaderField &entry)
 
quint64 huffman_encoded_bit_length (QByteArrayView inputData)
 
void huffman_encode_string (QByteArrayView inputData, BitOStream &outputStream)
 
static constexpr bool padding_is_valid (quint32 chunk, quint32 nBits)
 
bool huffman_decode_string (BitIStream &inputStream, QByteArray *outputBuffer)
 

Typedef Documentation

◆ HeaderSize

using HPack::HeaderSize = typedef QPair<bool, quint32>

Definition at line 53 of file hpacktable_p.h.

◆ HttpHeader

using HPack::HttpHeader = typedef std::vector<HeaderField>

Definition at line 31 of file hpack_p.h.

Function Documentation

◆ entry_size() [1/2]

HeaderSize HPack::entry_size ( const HeaderField entry)
inline

Definition at line 57 of file hpacktable_p.h.

References entry_size().

+ Here is the call graph for this function:

◆ entry_size() [2/2]

HeaderSize HPack::entry_size ( QByteArrayView  name,
QByteArrayView  value 
)

Definition at line 19 of file hpacktable.cpp.

References sum.

Referenced by entry_size(), HPack::FieldLookupTable::evictEntry(), header_size(), and HPack::FieldLookupTable::prependField().

+ Here is the caller graph for this function:

◆ header_size()

HeaderSize HPack::header_size ( const HttpHeader header)

Definition at line 17 of file hpack.cpp.

References entry_size(), and header().

+ Here is the call graph for this function:

◆ huffman_decode_string()

bool HPack::huffman_decode_string ( BitIStream inputStream,
QByteArray outputBuffer 
)

Definition at line 530 of file huffman.cpp.

References HPack::HuffmanDecoder::decodeStream(), and Q_ASSERT.

Referenced by HPack::BitIStream::read().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ huffman_encode_string()

void HPack::huffman_encode_string ( QByteArrayView  inputData,
BitOStream outputStream 
)

Definition at line 357 of file huffman.cpp.

References HPack::BitOStream::bitLength(), e, i, QByteArrayView::size(), and HPack::BitOStream::writeBits().

Referenced by HPack::BitOStream::write().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ huffman_encoded_bit_length()

quint64 HPack::huffman_encoded_bit_length ( QByteArrayView  inputData)

Definition at line 348 of file huffman.cpp.

References e, i, and QByteArrayView::size().

Referenced by HPack::BitOStream::write().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator==()

bool HPack::operator== ( const BitPattern lhs,
const BitPattern rhs 
)

Definition at line 38 of file hpack.cpp.

References HPack::BitPattern::bitLength, and HPack::BitPattern::value.

◆ padding_is_valid()

static constexpr bool HPack::padding_is_valid ( quint32  chunk,
quint32  nBits 
)
staticconstexpr

Definition at line 370 of file huffman.cpp.

References Q_ASSERT.

Referenced by HPack::HuffmanDecoder::decodeStream().

+ Here is the caller graph for this function: