GRPC C++
1.26.0
|
#include <grpc/support/port_platform.h>
#include <grpc/impl/codegen/log.h>
#include <grpc/grpc.h>
#include <grpc/slice.h>
#include "src/core/lib/debug/trace.h"
#include "src/core/lib/gpr/useful.h"
#include "src/core/lib/gprpp/atomic.h"
#include "src/core/lib/gprpp/sync.h"
#include "src/core/lib/slice/slice_utils.h"
Go to the source code of this file.
Data Structures | |
struct | grpc_mdelem_data |
struct | grpc_mdelem |
struct | grpc_core::UserData |
class | grpc_core::StaticMetadata |
class | grpc_core::RefcountedMdBase |
class | grpc_core::InternedMetadata |
struct | grpc_core::InternedMetadata::NoRefKey |
struct | grpc_core::InternedMetadata::BucketLink |
class | grpc_core::AllocatedMetadata |
struct | grpc_core::AllocatedMetadata::NoRefKey |
Namespaces | |
grpc_core | |
Internal thread interface. | |
Macros | |
#define | GRPC_MDELEM_STORAGE_INTERNED_BIT 1 |
#define | GRPC_MDELEM_DATA(md) ((grpc_mdelem_data*)((md).payload & ~(uintptr_t)3)) |
#define | GRPC_MDELEM_STORAGE(md) ((grpc_mdelem_data_storage)((md).payload & (uintptr_t)3)) |
#define | GRPC_MAKE_MDELEM(data, storage) ((grpc_mdelem){((uintptr_t)(data)) | ((uintptr_t)storage)}) |
#define | GRPC_MDELEM_IS_INTERNED(md) |
#define | GRPC_MDKEY(md) (GRPC_MDELEM_DATA(md)->key) |
#define | GRPC_MDVALUE(md) (GRPC_MDELEM_DATA(md)->value) |
#define | GRPC_MDISNULL(md) (GRPC_MDELEM_DATA(md) == NULL) |
#define | GRPC_MDELEM_REF(s) grpc_mdelem_ref((s), __FILE__, __LINE__) |
#define | GRPC_MDELEM_UNREF(s) grpc_mdelem_unref((s), __FILE__, __LINE__) |
#define | GRPC_MDNULL GRPC_MAKE_MDELEM(NULL, GRPC_MDELEM_STORAGE_EXTERNAL) |
#define | GRPC_MDELEM_LENGTH(e) |
#define | GRPC_MDSTR_KV_HASH(k_hash, v_hash) (GPR_ROTL((k_hash), 2) ^ (v_hash)) |
Typedefs | |
typedef struct grpc_mdelem | grpc_mdelem |
typedef struct grpc_mdelem_data | grpc_mdelem_data |
typedef void(* | grpc_core::destroy_user_data_func) (void *data) |
Enumerations | |
enum | grpc_mdelem_data_storage { GRPC_MDELEM_STORAGE_EXTERNAL = 0 , GRPC_MDELEM_STORAGE_STATIC = 1 , GRPC_MDELEM_STORAGE_ALLOCATED = 2 , GRPC_MDELEM_STORAGE_INTERNED = 2 | 1 } |
Variables | |
grpc_core::DebugOnlyTraceFlag | grpc_trace_metadata |
#define GRPC_MAKE_MDELEM | ( | data, | |
storage | |||
) | ((grpc_mdelem){((uintptr_t)(data)) | ((uintptr_t)storage)}) |
#define GRPC_MDELEM_DATA | ( | md | ) | ((grpc_mdelem_data*)((md).payload & ~(uintptr_t)3)) |
#define GRPC_MDELEM_IS_INTERNED | ( | md | ) |
#define GRPC_MDELEM_LENGTH | ( | e | ) |
#define GRPC_MDELEM_REF | ( | s | ) | grpc_mdelem_ref((s), __FILE__, __LINE__) |
#define GRPC_MDELEM_STORAGE | ( | md | ) | ((grpc_mdelem_data_storage)((md).payload & (uintptr_t)3)) |
#define GRPC_MDELEM_STORAGE_INTERNED_BIT 1 |
#define GRPC_MDELEM_UNREF | ( | s | ) | grpc_mdelem_unref((s), __FILE__, __LINE__) |
#define GRPC_MDISNULL | ( | md | ) | (GRPC_MDELEM_DATA(md) == NULL) |
#define GRPC_MDKEY | ( | md | ) | (GRPC_MDELEM_DATA(md)->key) |
#define GRPC_MDNULL GRPC_MAKE_MDELEM(NULL, GRPC_MDELEM_STORAGE_EXTERNAL) |
#define GRPC_MDSTR_KV_HASH | ( | k_hash, | |
v_hash | |||
) | (GPR_ROTL((k_hash), 2) ^ (v_hash)) |
#define GRPC_MDVALUE | ( | md | ) | (GRPC_MDELEM_DATA(md)->value) |
typedef struct grpc_mdelem grpc_mdelem |
typedef struct grpc_mdelem_data grpc_mdelem_data |
void grpc_mdctx_global_init | ( | void | ) |
void grpc_mdctx_global_shutdown | ( | ) |
|
inline |
grpc_mdelem grpc_mdelem_create | ( | const grpc_core::StaticMetadataSlice & | key, |
const grpc_slice & | value, | ||
grpc_mdelem_data * | compatible_external_backing_store | ||
) |
grpc_mdelem grpc_mdelem_create | ( | const grpc_slice & | key, |
const grpc_slice & | value, | ||
grpc_mdelem_data * | compatible_external_backing_store | ||
) |
bool grpc_mdelem_eq | ( | grpc_mdelem | a, |
grpc_mdelem | b | ||
) |
grpc_mdelem grpc_mdelem_from_grpc_metadata | ( | grpc_metadata * | metadata | ) |
|
inline |
grpc_mdelem grpc_mdelem_from_slices | ( | const grpc_core::ManagedMemorySlice & | key, |
const grpc_core::ManagedMemorySlice & | value | ||
) |
|
inline |
grpc_mdelem grpc_mdelem_from_slices | ( | const grpc_core::StaticMetadataSlice & | key, |
const grpc_core::ManagedMemorySlice & | value | ||
) |
grpc_mdelem grpc_mdelem_from_slices | ( | const grpc_core::StaticMetadataSlice & | key, |
const grpc_core::StaticMetadataSlice & | value | ||
) |
|
inline |
grpc_mdelem grpc_mdelem_from_slices | ( | const grpc_core::StaticMetadataSlice & | key, |
const grpc_slice & | value | ||
) |
grpc_mdelem grpc_mdelem_from_slices | ( | const grpc_slice & | key, |
const grpc_slice & | value | ||
) |
void* grpc_mdelem_get_user_data | ( | grpc_mdelem | md, |
void(*)(void *) | if_destroy_func | ||
) |
void grpc_mdelem_on_final_unref | ( | grpc_mdelem_data_storage | storage, |
void * | ptr, | ||
uint32_t | hash, | ||
const char * | file, | ||
int | line | ||
) |
|
inline |
void* grpc_mdelem_set_user_data | ( | grpc_mdelem | md, |
void(*)(void *) | destroy_func, | ||
void * | data | ||
) |
|
inline |
void grpc_mdelem_trace_ref | ( | void * | md, |
const grpc_slice & | key, | ||
const grpc_slice & | value, | ||
intptr_t | refcnt, | ||
const char * | file, | ||
int | line | ||
) |
void grpc_mdelem_trace_unref | ( | void * | md, |
const grpc_slice & | key, | ||
const grpc_slice & | value, | ||
intptr_t | refcnt, | ||
const char * | file, | ||
int | line | ||
) |
|
inline |
|
extern |