Go to the documentation of this file.
19 #ifndef GRPC_CORE_LIB_TRANSPORT_TRANSPORT_H
20 #define GRPC_CORE_LIB_TRANSPORT_TRANSPORT_H
31 #include "absl/status/status.h"
32 #include "absl/strings/string_view.h"
33 #include "absl/types/optional.h"
66 #define GRPC_PROTOCOL_VERSION_MAX_MAJOR 2
67 #define GRPC_PROTOCOL_VERSION_MAX_MINOR 1
68 #define GRPC_PROTOCOL_VERSION_MIN_MAJOR 2
69 #define GRPC_PROTOCOL_VERSION_MIN_MINOR 1
71 #define GRPC_ARG_TRANSPORT "grpc.internal.transport"
75 #define GRPC_WRITE_INTERNAL_COMPRESS (0x80000000u)
79 #define GRPC_WRITE_INTERNAL_TEST_ONLY_WAS_COMPRESSED (0x40000000u)
81 #define GRPC_WRITE_INTERNAL_USED_MASK \
82 (GRPC_WRITE_INTERNAL_COMPRESS | GRPC_WRITE_INTERNAL_TEST_ONLY_WAS_COMPRESSED)
86 namespace promise_filter_detail {
102 other.handle_ =
nullptr;
106 other.handle_ =
nullptr;
111 handle_ = GetContext<Arena>()->New<
T>(GetContext<Arena>());
165 std::function<ArenaPromise<ServerMetadataHandle>(
CallArgs)>;
189 const char* object_type);
190 #define GRPC_STREAM_REF_INIT(rc, ir, cb, cb_arg, objtype) \
191 grpc_stream_ref_init(rc, ir, cb, cb_arg, objtype)
195 #define GRPC_STREAM_REF_INIT(rc, ir, cb, cb_arg, objtype) \
197 grpc_stream_ref_init(rc, ir, cb, cb_arg); \
204 const char* reason) {
221 const char* reason) {
475 const void* server_data) =
nullptr;
483 const void* server_data) =
nullptr;
523 const void* server_data,
599 "grpc.internal.keepalive_throttling";
ClientMetadataHandle client_initial_metadata
grpc_core::DebugOnlyTraceFlag grpc_trace_stream_refcount
grpc_handler_private_op_data handler_private
void(* set_make_promise_fn)(void *user_data, grpc_transport *transport, const void *server_data)
void grpc_transport_perform_stream_op(grpc_transport *transport, grpc_stream *stream, grpc_transport_stream_op_batch *op)
grpc_transport_stream_op_batch_payload(grpc_call_context_element *context)
return memset(p, 0, total)
grpc_pollset_set * bind_pollset_set
struct grpc_stream_refcount grpc_stream_refcount
void grpc_transport_stream_op_batch_finish_with_failure(grpc_transport_stream_op_batch *batch, grpc_error_handle error, grpc_core::CallCombiner *call_combiner)
void grpc_transport_goaway(grpc_transport *transport, grpc_status_code status, grpc_slice debug_data)
constexpr const char * kKeepaliveThrottlingKey
void grpc_transport_ping(grpc_transport *transport, grpc_closure *cb)
grpc_closure * on_complete
struct grpc_pollset_set grpc_pollset_set
void grpc_transport_destroy(grpc_transport *transport)
grpc_transport_one_way_stats outgoing
bool IsStatusOk(const absl::Status &status)
void * set_accept_stream_user_data
grpc_metadata_batch * send_initial_metadata
grpc_error_handle disconnect_with_error
grpc_transport_stream_stats * collect_stats
void grpc_stream_destroy(grpc_stream_refcount *refcount)
grpc_handler_private_op_data()
#define T(upbtypeconst, upbtype, ctype, default_value)
void * set_make_promise_user_data
grpc_error_handle goaway_error
Latch< ServerMetadata * > * server_initial_metadata
grpc_core::ScopedArenaPtr arena
void grpc_stream_ref_init(grpc_stream_refcount *refcount, int initial_refs, grpc_iomgr_cb_func cb, void *cb_arg, const char *object_type)
grpc_core::OrphanablePtr< grpc_core::ConnectivityStateWatcherInterface > start_connectivity_watch
grpc_closure * recv_initial_metadata_ready
void grpc_transport_perform_op(grpc_transport *transport, grpc_transport_op *op)
grpc_closure * on_initiate
static Slice FromCopiedString(const char *s)
size_t grpc_transport_stream_size(grpc_transport *transport)
grpc_handler_private_op_data handler_private
void grpc_transport_stream_op_batch_queue_finish_with_failure(grpc_transport_stream_op_batch *batch, grpc_error_handle error, grpc_core::CallCombinerClosureList *closures)
std::function< ArenaPromise< ServerMetadataHandle >(CallArgs)> NextPromiseFactory
grpc_closure * recv_message_ready
void grpc_transport_set_pops(grpc_transport *transport, grpc_stream *stream, grpc_polling_entity *pollent)
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
uint32_t send_initial_metadata_flags
absl::string_view message() const
grpc_error_handle cancel_error
unsigned __int64 uint64_t
bool reset_connect_backoff
struct grpc_transport_op::@47 send_ping
grpc_transport_stream_op_batch_payload * payload
grpc_metadata_batch * send_trailing_metadata
void grpc_stream_ref(grpc_stream_refcount *refcount, const char *reason)
grpc_connectivity_state start_connectivity_watch_state
grpc_transport_stream_op_batch * batch
grpc_core::ConnectivityStateWatcherInterface * stop_connectivity_watch
grpc_transport_one_way_stats incoming
void grpc_transport_destroy_stream(grpc_transport *transport, grpc_stream *stream, grpc_closure *then_schedule_closure)
grpc_transport_op * grpc_make_transport_op(grpc_closure *on_complete)
bool recv_initial_metadata
std::string grpc_transport_stream_op_batch_string(grpc_transport_stream_op_batch *op)
bool send_trailing_metadata
grpc_transport_stream_op_batch * grpc_make_transport_stream_op(grpc_closure *on_complete)
bool * trailing_metadata_available
grpc_slice grpc_slice_from_stream_owned_buffer(grpc_stream_refcount *refcount, void *buffer, size_t length)
struct grpc_transport_op grpc_transport_op
std::string grpc_transport_op_string(grpc_transport_op *op)
bool * call_failed_before_recv_message
std::unique_ptr< T, Deleter > OrphanablePtr
void(* grpc_iomgr_cb_func)(void *arg, grpc_error_handle error)
grpc_core::SliceBuffer * send_message
grpc_metadata_batch * recv_initial_metadata
bool send_initial_metadata
absl::optional< grpc_core::SliceBuffer > * recv_message
grpc_call_context_element * context
void(* set_accept_stream_fn)(void *user_data, grpc_transport *transport, const void *server_data)
ABSL_MUST_USE_RESULT bool ok() const
grpc_endpoint * grpc_transport_get_endpoint(grpc_transport *transport)
grpc_closure * on_consumed
grpc_transport_stream_op_batch()
struct grpc_stream grpc_stream
bool recv_trailing_metadata
grpc_metadata_batch * recv_trailing_metadata
absl::StatusCode code() const
int grpc_transport_init_stream(grpc_transport *transport, grpc_stream *stream, grpc_stream_refcount *refcount, const void *server_data, grpc_core::Arena *arena)
void grpc_transport_move_stats(grpc_transport_stream_stats *from, grpc_transport_stream_stats *to)
void grpc_stream_unref(grpc_stream_refcount *refcount, const char *reason)
void grpc_transport_move_one_way_stats(grpc_transport_one_way_stats *from, grpc_transport_one_way_stats *to)
OPENSSL_EXPORT pem_password_cb * cb
grpc_pollset * bind_pollset
struct grpc_transport_stream_op_batch_payload::@46 cancel_stream
grpc_closure * recv_trailing_metadata_ready
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:40