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),
20 strlen(
reinterpret_cast<const char*
>(key)),
21 strlen(
reinterpret_cast<const char*
>(value)),
22 NGHTTP2_NV_FLAG_NONE};
25 static inline nghttp2_nv make_nv(
const char* key,
const char* value)
28 reinterpret_cast<const uint8_t*
>(key),
29 reinterpret_cast<const uint8_t*
>(value));
32 static inline AbstractParser* get_parser(
void* user_data)
34 return reinterpret_cast<AbstractParser*
>(user_data);
37 static inline std::optional<std::string> make_trailer_header_value(
48 auto trailer_header_val = fmt::format(
51 HeaderKeysIt(trailers.begin()), HeaderKeysIt(trailers.end()),
","));
53 return trailer_header_val;
56 static inline StreamData* get_stream_data(
57 nghttp2_session* session,
StreamId stream_id)
59 return reinterpret_cast<StreamData*
>(
60 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:80
Definition http2_callbacks.h:12
int32_t StreamId
Definition http2_types.h:20