#include <google/protobuf/util/internal/datapiece.h>
#include <cmath>
#include <cstdint>
#include <limits>
#include <google/protobuf/struct.pb.h>
#include <google/protobuf/type.pb.h>
#include <google/protobuf/descriptor.h>
#include <google/protobuf/stubs/status.h>
#include <google/protobuf/stubs/strutil.h>
#include <google/protobuf/util/internal/utility.h>
#include <google/protobuf/stubs/mathutil.h>
namespace google {
namespace protobuf {
namespace util {
namespace converter {
Status;
namespace {
template <typename To, typename From>
util::StatusOr<To> ValidateNumberConversion(To after, From before) { … }
template <typename To, typename From>
util::StatusOr<To> NumberConvertAndCheck(From before) { … }
template <typename To, typename From>
util::StatusOr<To> FloatingPointToIntConvertAndCheck(From before) { … }
util::StatusOr<double> FloatToDouble(float before) { … }
util::StatusOr<float> DoubleToFloat(double before) { … }
}
util::StatusOr<int32_t> DataPiece::ToInt32() const { … }
util::StatusOr<uint32_t> DataPiece::ToUint32() const { … }
util::StatusOr<int64_t> DataPiece::ToInt64() const { … }
util::StatusOr<uint64_t> DataPiece::ToUint64() const { … }
util::StatusOr<double> DataPiece::ToDouble() const { … }
util::StatusOr<float> DataPiece::ToFloat() const { … }
util::StatusOr<bool> DataPiece::ToBool() const { … }
util::StatusOr<std::string> DataPiece::ToString() const { … }
std::string DataPiece::ValueAsStringOrDefault(
StringPiece default_string) const { … }
util::StatusOr<std::string> DataPiece::ToBytes() const { … }
util::StatusOr<int> DataPiece::ToEnum(const google::protobuf::Enum* enum_type,
bool use_lower_camel_for_enums,
bool case_insensitive_enum_parsing,
bool ignore_unknown_enum_values,
bool* is_unknown_enum_value) const { … }
template <typename To>
util::StatusOr<To> DataPiece::GenericConvert() const { … }
template <typename To>
util::StatusOr<To> DataPiece::StringToNumber(bool (*func)(StringPiece,
To*)) const { … }
bool DataPiece::DecodeBase64(StringPiece src, std::string* dest) const { … }
void DataPiece::InternalCopy(const DataPiece& other) { … }
}
}
}
}