// Generated by the proto_extras plugin. DO NOT EDIT!
// source: components/optimization_guide/proto/model_quality_metadata.proto

#include "components/optimization_guide/proto/model_quality_metadata.ostream.h"

#include <ostream>


#include "base/values.h"
#include "components/optimization_guide/proto/model_quality_metadata.to_value.h"


namespace optimization_guide {
namespace proto {
std::ostream& operator<<(std::ostream& out, const LoggingMetadata& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceSystemProfile& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const ModelExecutionInfo& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceModelExecutionInfo& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceModelVersions& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceModelServiceVersion& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const InternalOnDeviceModelExecutionInfo& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const InternalOnDeviceRequest& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const InternalOnDeviceResponse& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceModelServiceRequest& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const OnDeviceModelServiceResponse& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const TextSafetyModelRequest& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
std::ostream& operator<<(std::ostream& out, const TextSafetyModelResponse& message) {
  // This relies on ToValue() from *.to_value.h.
  return out << ToValue(message).DebugString();
}
}  // namespace proto
}  // namespace optimization_guide

