chromium/out/Default/gen/chrome/browser/resource_coordinator/lifecycle_unit_state.mojom-shared.h

// chrome/browser/resource_coordinator/lifecycle_unit_state.mojom-shared.h is auto generated by mojom_bindings_generator.py, do not edit

// Copyright 2016 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_STATE_MOJOM_SHARED_H_
#define CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_STATE_MOJOM_SHARED_H_

#include <stdint.h>

#include <functional>
#include <iosfwd>
#include <type_traits>
#include <utility>

#include "third_party/perfetto/include/perfetto/tracing/traced_value_forward.h"

#include "chrome/browser/resource_coordinator/lifecycle_unit_state.mojom-shared-internal.h"







namespace mojom {


}  // mojom

namespace mojo {
namespace internal {

}  // namespace internal
}  // namespace mojo


namespace mojom {


enum class LifecycleUnitState : int32_t {};

 std::ostream& operator<<(std::ostream& os, LifecycleUnitState value);
inline bool IsKnownEnumValue(LifecycleUnitState value) {}


enum class LifecycleUnitLoadingState : int32_t {};

 std::ostream& operator<<(std::ostream& os, LifecycleUnitLoadingState value);
inline bool IsKnownEnumValue(LifecycleUnitLoadingState value) {}


enum class LifecycleUnitStateChangeReason : int32_t {};

 std::ostream& operator<<(std::ostream& os, LifecycleUnitStateChangeReason value);
inline bool IsKnownEnumValue(LifecycleUnitStateChangeReason value) {}


enum class LifecycleUnitDiscardReason : int32_t {};

 std::ostream& operator<<(std::ostream& os, LifecycleUnitDiscardReason value);
inline bool IsKnownEnumValue(LifecycleUnitDiscardReason value) {}


}  // mojom

namespace std {

template <>
struct hash<::mojom::LifecycleUnitState>
    : public mojo::internal::EnumHashImpl<::mojom::LifecycleUnitState> {};

template <>
struct hash<::mojom::LifecycleUnitLoadingState>
    : public mojo::internal::EnumHashImpl<::mojom::LifecycleUnitLoadingState> {};

template <>
struct hash<::mojom::LifecycleUnitStateChangeReason>
    : public mojo::internal::EnumHashImpl<::mojom::LifecycleUnitStateChangeReason> {};

template <>
struct hash<::mojom::LifecycleUnitDiscardReason>
    : public mojo::internal::EnumHashImpl<::mojom::LifecycleUnitDiscardReason> {};

}  // namespace std

namespace mojo {


namespace internal {

Serializer< ::mojom::LifecycleUnitState, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::mojom::LifecycleUnitLoadingState, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::mojom::LifecycleUnitStateChangeReason, MaybeConstUserType>;

}  // namespace internal


namespace internal {

Serializer< ::mojom::LifecycleUnitDiscardReason, MaybeConstUserType>;

}  // namespace internal

}  // namespace mojo


namespace mojom {


}  // mojom

// Declare TraceFormatTraits for enums, which should be defined in ::perfetto
// namespace.

namespace perfetto {

template <>
struct  TraceFormatTraits<::mojom::LifecycleUnitState> {};

} // namespace perfetto

namespace perfetto {

template <>
struct  TraceFormatTraits<::mojom::LifecycleUnitLoadingState> {};

} // namespace perfetto

namespace perfetto {

template <>
struct  TraceFormatTraits<::mojom::LifecycleUnitStateChangeReason> {};

} // namespace perfetto

namespace perfetto {

template <>
struct  TraceFormatTraits<::mojom::LifecycleUnitDiscardReason> {};

} // namespace perfetto

#endif  // CHROME_BROWSER_RESOURCE_COORDINATOR_LIFECYCLE_UNIT_STATE_MOJOM_SHARED_H_