GRPC C++  1.39.1
Functions
error_utils.cc File Reference
#include <grpc/support/port_platform.h>
#include "src/core/lib/transport/error_utils.h"
#include <grpc/support/string_util.h>
#include "src/core/lib/iomgr/error_internal.h"
#include "src/core/lib/slice/slice_internal.h"
#include "src/core/lib/transport/status_conversion.h"

Functions

void grpc_error_get_status (grpc_error_handle error, grpc_millis deadline, grpc_status_code *code, grpc_slice *slice, grpc_http2_error_code *http_error, const char **error_string)
 A utility function to get the status code and message to be returned to the application. More...
 
absl::Status grpc_error_to_absl_status (grpc_error_handle error)
 Utility Function to convert a grpc_error_handle error to an absl::Status. More...
 
grpc_error_handle absl_status_to_grpc_error (absl::Status status)
 Utility function to convert an absl::Status status to grpc_error. More...
 
bool grpc_error_has_clear_grpc_status (grpc_error_handle error)
 A utility function to check whether there is a clear status code that doesn't need to be guessed in error. More...
 

Function Documentation

◆ absl_status_to_grpc_error()

grpc_error_handle absl_status_to_grpc_error ( absl::Status  status)

Utility function to convert an absl::Status status to grpc_error.

Note that this method does not return "special case" errors such as GRPC_ERROR_CANCELLED, with the exception of GRPC_ERROR_NONE returned for absl::OkStatus().

◆ grpc_error_get_status()

void grpc_error_get_status ( grpc_error_handle  error,
grpc_millis  deadline,
grpc_status_code code,
grpc_slice slice,
grpc_http2_error_code http_error,
const char **  error_string 
)

A utility function to get the status code and message to be returned to the application.

If not set in the top-level message, looks through child errors until it finds the first one with these attributes. All attributes are pulled from the same child error. error_string will be populated with the entire error string. If any of the attributes (code, msg, http_status, error_string) are unneeded, they can be passed as NULL.

If no grpc-status exists, retry through the tree to find a http2 error code

◆ grpc_error_has_clear_grpc_status()

bool grpc_error_has_clear_grpc_status ( grpc_error_handle  error)

A utility function to check whether there is a clear status code that doesn't need to be guessed in error.

This means that error or some child has GRPC_ERROR_INT_GRPC_STATUS set, or that it is GRPC_ERROR_NONE or GRPC_ERROR_CANCELLED

◆ grpc_error_to_absl_status()

absl::Status grpc_error_to_absl_status ( grpc_error_handle  error)

Utility Function to convert a grpc_error_handle error to an absl::Status.

Does NOT consume a ref to grpc_error.