8#include <nghttp2/nghttp2.h>
14 static nghttp2_nv make_nv(
const uint8_t* key,
const uint8_t* value)
18 const_cast<uint8_t*
>(
key),
19 const_cast<uint8_t*
>(value),
22 NGHTTP2_NV_FLAG_NONE};
25 static inline nghttp2_nv make_nv(
const char* key,
const char* value)
27 return make_nv((uint8_t*)key, (uint8_t*)value);
30 static inline AbstractParser* get_parser(
void* user_data)
32 return reinterpret_cast<AbstractParser*
>(user_data);
35 static inline std::optional<std::string> make_trailer_header_value(
46 const auto trailer_header_val = fmt::format(
49 HeaderKeysIt(trailers.begin()), HeaderKeysIt(trailers.end()),
","));
51 return trailer_header_val;
54 static inline StreamData* get_stream_data(
55 nghttp2_session* session,
StreamId stream_id)
57 return reinterpret_cast<StreamData*
>(
58 nghttp2_session_get_stream_user_data(session, stream_id));
std::map< std::string, std::string, std::less<> > HeaderMap
Definition http_header_map.h:10
uint8_t * key
Definition kv_helpers.h:78
Definition http2_callbacks.h:12
int32_t StreamId
Definition http2_types.h:21