#include <grpc/support/port_platform.h>
#include "src/core/ext/filters/client_channel/backend_metric.h"
#include <string.h>
#include <map>
#include "absl/strings/string_view.h"
#include "upb/upb.h"
#include "upb/upb.hpp"
#include "xds/data/orca/v3/orca_load_report.upb.h"
namespace grpc_core {
namespace {
template <typename EntryType>
std::map<absl::string_view, double> ParseMap(
xds_data_orca_v3_OrcaLoadReport* msg,
const EntryType* (*entry_func)(const xds_data_orca_v3_OrcaLoadReport*,
size_t*),
upb_StringView (*key_func)(const EntryType*),
double (*value_func)(const EntryType*),
BackendMetricAllocatorInterface* allocator) { … }
}
const BackendMetricData* ParseBackendMetricData(
absl::string_view serialized_load_report,
BackendMetricAllocatorInterface* allocator) { … }
}