Classes | Public Member Functions | Static Public Attributes | Private Attributes | Static Private Attributes | List of all members
grpc_core::HPackCompressor Class Reference

#include <hpack_encoder.h>

Classes

struct  EncodeHeaderOptions
 
class  Framer
 
struct  PreviousTimeout
 
class  SliceIndex
 

Public Member Functions

template<typename HeaderSet >
void EncodeHeaders (const EncodeHeaderOptions &options, const HeaderSet &headers, grpc_slice_buffer *output)
 
 HPackCompressor ()=default
 
void SetMaxTableSize (uint32_t max_table_size)
 
void SetMaxUsableSize (uint32_t max_table_size)
 
uint32_t test_only_table_size () const
 
 ~HPackCompressor ()=default
 

Static Public Attributes

static constexpr uint32_t kMaxTableSize = 1024 * 1024
 

Private Attributes

bool advertise_table_size_change_ = false
 
SliceIndex authority_index_
 
uint32_t cached_grpc_encoding_ [GRPC_COMPRESS_ALGORITHMS_COUNT] = {}
 
uint32_t cached_grpc_status_ [kNumCachedGrpcStatusValues] = {}
 
uint32_t content_type_index_ = 0
 
CompressionAlgorithmSet grpc_accept_encoding_
 
uint32_t grpc_accept_encoding_index_ = 0
 
uint32_t grpc_tags_bin_index_ = 0
 
uint32_t grpc_trace_bin_index_ = 0
 
uint32_t max_usable_size_ = hpack_constants::kInitialTableSize
 
SliceIndex path_index_
 
std::vector< PreviousTimeoutprevious_timeouts_
 
HPackEncoderTable table_
 
uint32_t te_index_ = 0
 
Slice user_agent_
 
uint32_t user_agent_index_ = 0
 

Static Private Attributes

static constexpr uint32_t kNumCachedGrpcStatusValues = 16
 
static constexpr size_t kNumFilterValues = 64
 

Detailed Description

Definition at line 51 of file hpack_encoder.h.

Constructor & Destructor Documentation

◆ HPackCompressor()

grpc_core::HPackCompressor::HPackCompressor ( )
default

◆ ~HPackCompressor()

grpc_core::HPackCompressor::~HPackCompressor ( )
default

Member Function Documentation

◆ EncodeHeaders()

template<typename HeaderSet >
void grpc_core::HPackCompressor::EncodeHeaders ( const EncodeHeaderOptions options,
const HeaderSet &  headers,
grpc_slice_buffer output 
)
inline

Definition at line 77 of file hpack_encoder.h.

◆ SetMaxTableSize()

void grpc_core::HPackCompressor::SetMaxTableSize ( uint32_t  max_table_size)

Definition at line 643 of file hpack_encoder.cc.

◆ SetMaxUsableSize()

void grpc_core::HPackCompressor::SetMaxUsableSize ( uint32_t  max_table_size)

Definition at line 638 of file hpack_encoder.cc.

◆ test_only_table_size()

uint32_t grpc_core::HPackCompressor::test_only_table_size ( ) const
inline

Definition at line 64 of file hpack_encoder.h.

Member Data Documentation

◆ advertise_table_size_change_

bool grpc_core::HPackCompressor::advertise_table_size_change_ = false
private

Definition at line 183 of file hpack_encoder.h.

◆ authority_index_

SliceIndex grpc_core::HPackCompressor::authority_index_
private

Definition at line 226 of file hpack_encoder.h.

◆ cached_grpc_encoding_

uint32_t grpc_core::HPackCompressor::cached_grpc_encoding_[GRPC_COMPRESS_ALGORITHMS_COUNT] = {}
private

Definition at line 214 of file hpack_encoder.h.

◆ cached_grpc_status_

uint32_t grpc_core::HPackCompressor::cached_grpc_status_[kNumCachedGrpcStatusValues] = {}
private

Definition at line 212 of file hpack_encoder.h.

◆ content_type_index_

uint32_t grpc_core::HPackCompressor::content_type_index_ = 0
private

Definition at line 208 of file hpack_encoder.h.

◆ grpc_accept_encoding_

CompressionAlgorithmSet grpc_core::HPackCompressor::grpc_accept_encoding_
private

Definition at line 218 of file hpack_encoder.h.

◆ grpc_accept_encoding_index_

uint32_t grpc_core::HPackCompressor::grpc_accept_encoding_index_ = 0
private

Definition at line 216 of file hpack_encoder.h.

◆ grpc_tags_bin_index_

uint32_t grpc_core::HPackCompressor::grpc_tags_bin_index_ = 0
private

Definition at line 220 of file hpack_encoder.h.

◆ grpc_trace_bin_index_

uint32_t grpc_core::HPackCompressor::grpc_trace_bin_index_ = 0
private

Definition at line 222 of file hpack_encoder.h.

◆ kMaxTableSize

constexpr uint32_t grpc_core::HPackCompressor::kMaxTableSize = 1024 * 1024
staticconstexpr

Definition at line 59 of file hpack_encoder.h.

◆ kNumCachedGrpcStatusValues

constexpr uint32_t grpc_core::HPackCompressor::kNumCachedGrpcStatusValues = 16
staticconstexprprivate

Definition at line 176 of file hpack_encoder.h.

◆ kNumFilterValues

constexpr size_t grpc_core::HPackCompressor::kNumFilterValues = 64
staticconstexprprivate

Definition at line 175 of file hpack_encoder.h.

◆ max_usable_size_

uint32_t grpc_core::HPackCompressor::max_usable_size_ = hpack_constants::kInitialTableSize
private

Definition at line 180 of file hpack_encoder.h.

◆ path_index_

SliceIndex grpc_core::HPackCompressor::path_index_
private

Definition at line 225 of file hpack_encoder.h.

◆ previous_timeouts_

std::vector<PreviousTimeout> grpc_core::HPackCompressor::previous_timeouts_
private

Definition at line 227 of file hpack_encoder.h.

◆ table_

HPackEncoderTable grpc_core::HPackCompressor::table_
private

Definition at line 184 of file hpack_encoder.h.

◆ te_index_

uint32_t grpc_core::HPackCompressor::te_index_ = 0
private

Definition at line 206 of file hpack_encoder.h.

◆ user_agent_

Slice grpc_core::HPackCompressor::user_agent_
private

Definition at line 224 of file hpack_encoder.h.

◆ user_agent_index_

uint32_t grpc_core::HPackCompressor::user_agent_index_ = 0
private

Definition at line 210 of file hpack_encoder.h.


The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:36