#include <grpc/support/port_platform.h>
#include <inttypes.h>
#include <stdlib.h>
#include <algorithm>
#include <initializer_list>
#include <map>
#include <string>
#include <utility>
#include <vector>
#include "absl/base/attributes.h"
#include "absl/status/status.h"
#include "absl/status/statusor.h"
#include "absl/strings/str_cat.h"
#include "absl/strings/str_format.h"
#include "absl/strings/str_join.h"
#include "absl/strings/string_view.h"
#include <grpc/support/log.h>
#include "src/core/lib/json/json.h"
#define GRPC_JSON_MAX_DEPTH …
#define GRPC_JSON_MAX_ERRORS …
namespace grpc_core {
namespace {
class JsonReader { … };
bool JsonReader::StringAddChar(uint32_t c) { … }
bool JsonReader::StringAddUtf32(uint32_t c) { … }
uint32_t JsonReader::ReadChar() { … }
Json* JsonReader::CreateAndLinkValue() { … }
bool JsonReader::StartContainer(Json::Type type) { … }
void JsonReader::EndContainer() { … }
void JsonReader::SetKey() { … }
void JsonReader::SetString() { … }
bool JsonReader::SetNumber() { … }
void JsonReader::SetTrue() { … }
void JsonReader::SetFalse() { … }
void JsonReader::SetNull() { … }
bool JsonReader::IsComplete() { … }
JsonReader::Status JsonReader::Run() { … }
absl::StatusOr<Json> JsonReader::Parse(absl::string_view input) { … }
}
absl::StatusOr<Json> Json::Parse(absl::string_view json_str) { … }
}