// Generated by the protocol buffer compiler.  DO NOT EDIT!
// NO CHECKED-IN PROTOBUF GENCODE
// source: CoreDump.proto
// Protobuf C++ Version: 7.35.0

#include "CoreDump.pb.h"

#include <algorithm>
#include <type_traits>
#include "google/protobuf/io/coded_stream.h"
#include "google/protobuf/generated_message_tctable_impl.h"
#include "google/protobuf/internal_visibility.h"
#include "google/protobuf/extension_set.h"
#include "google/protobuf/generated_message_util.h"
#include "google/protobuf/wire_format_lite.h"
#include "google/protobuf/io/zero_copy_stream_impl_lite.h"
// @@protoc_insertion_point(includes)

// Must be included last.
#include "google/protobuf/port_def.inc"
PROTOBUF_PRAGMA_INIT_SEG
namespace _pb = ::google::protobuf;
namespace _pbi = ::google::protobuf::internal;
namespace _fl = ::google::protobuf::internal::field_layout;
namespace mozilla {
namespace devtools {
namespace protobuf {
class StackFrame::_Internal {
 public:
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::StackFrame, _impl_._oneof_case_);
};

constexpr StackFrame::ParseTableT_ StackFrame::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(StackFrame,
                            _impl_._cached_size_),  // no hasbits
      0, // no _extensions_
      2, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967292,  // skipmap
      offsetof(ParseTableT_, field_entries),
      2,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::StackFrame>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // .mozilla.devtools.protobuf.StackFrame.Data data = 1;
      {PROTOBUF_FIELD_OFFSET(StackFrame, _impl_.StackFrameType_.data_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kMessage | ::_fl::kTvTable)},
      // uint64 ref = 2;
      {PROTOBUF_FIELD_OFFSET(StackFrame, _impl_.StackFrameType_.ref_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::StackFrame_Data>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mozilla::devtools::protobuf::StackFrame_Data_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr StackFrame::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : StackFrameType_{},
        _cached_size_{0},
        _oneof_case_{} {}

template <typename>
constexpr StackFrame::StackFrame(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL StackFrame::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) StackFrame(arena);
}
constexpr auto StackFrame::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(StackFrame), alignof(StackFrame));
}
constexpr auto StackFrame::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &StackFrame::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<StackFrame>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &StackFrame::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<StackFrame>(), &StackFrame::ByteSizeLong,
              &StackFrame::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(StackFrame, _impl_._cached_size_),
          true,
      },
      "mozilla.devtools.protobuf.StackFrame",
  };
}
struct StackFrameGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr StackFrameGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 StackFrame_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(StackFrame::InternalGenerateClassData_(
            _default, &StackFrame_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<StackFrame>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~StackFrameGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) StackFrame _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<StackFrame>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(StackFrameGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST StackFrameGlobalsTypeInternal StackFrame_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* StackFrame_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return StackFrame_globals_.GetClassData();
#else
  return StackFrame_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class StackFrame_Data::_Internal {
 public:
  using HasBits = decltype(::std::declval<StackFrame_Data>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_._has_bits_);
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::StackFrame_Data, _impl_._oneof_case_);
};

constexpr StackFrame_Data::ParseTableT_ StackFrame_Data::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_._has_bits_),
      0, // no _extensions_
      10, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294966272,  // skipmap
      offsetof(ParseTableT_, field_entries),
      10,  // num_field_entries
      1,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::StackFrame_Data>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint64 id = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 1, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.id_)}},
      // optional .mozilla.devtools.protobuf.StackFrame parent = 2;
      {::_pbi::TcParser::FastMtS1,
       {18, 0, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.parent_)}},
      // optional uint32 line = 3;
      {::_pbi::TcParser::FastV32S1,
       {24, 2, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.line_)}},
      // optional uint32 column = 4;
      {::_pbi::TcParser::FastV32S1,
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.column_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional bool isSystem = 9;
      {::_pbi::TcParser::FastV8S1,
       {72, 4, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.issystem_)}},
      // optional bool isSelfHosted = 10;
      {::_pbi::TcParser::FastV8S1,
       {80, 5, 0,
        PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.isselfhosted_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint64 id = 1;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.id_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // optional .mozilla.devtools.protobuf.StackFrame parent = 2;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.parent_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional uint32 line = 3;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.line_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // optional uint32 column = 4;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.column_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // bytes source = 5;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.SourceOrRef_.source_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 sourceRef = 6;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.SourceOrRef_.sourceref_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
      // bytes functionDisplayName = 7;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.FunctionDisplayNameOrRef_.functiondisplayname_), _Internal::kOneofCaseOffset + 4, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 functionDisplayNameRef = 8;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.FunctionDisplayNameOrRef_.functiondisplaynameref_), _Internal::kOneofCaseOffset + 4, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
      // optional bool isSystem = 9;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.issystem_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
      // optional bool isSelfHosted = 10;
      {PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.isselfhosted_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kBool)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::StackFrame>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mozilla::devtools::protobuf::StackFrame_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr StackFrame_Data::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        parent_{nullptr},
        id_{::uint64_t{0u}},
        line_{0u},
        column_{0u},
        issystem_{false},
        isselfhosted_{false},
        SourceOrRef_{},
        FunctionDisplayNameOrRef_{},
        _oneof_case_{} {}

template <typename>
constexpr StackFrame_Data::StackFrame_Data(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL StackFrame_Data::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) StackFrame_Data(arena);
}
constexpr auto StackFrame_Data::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(StackFrame_Data), alignof(StackFrame_Data));
}
constexpr auto StackFrame_Data::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &StackFrame_Data::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<StackFrame_Data>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &StackFrame_Data::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<StackFrame_Data>(), &StackFrame_Data::ByteSizeLong,
              &StackFrame_Data::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_._cached_size_),
          true,
      },
      "mozilla.devtools.protobuf.StackFrame.Data",
  };
}
struct StackFrame_DataGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr StackFrame_DataGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 StackFrame_Data_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(StackFrame_Data::InternalGenerateClassData_(
            _default, &StackFrame_Data_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<StackFrame_Data>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~StackFrame_DataGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) StackFrame_Data _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<StackFrame_Data>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(StackFrame_DataGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST StackFrame_DataGlobalsTypeInternal StackFrame_Data_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* StackFrame_Data_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return StackFrame_Data_globals_.GetClassData();
#else
  return StackFrame_Data_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Metadata::_Internal {
 public:
  using HasBits = decltype(::std::declval<Metadata>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(Metadata, _impl_._has_bits_);
};

constexpr Metadata::ParseTableT_ Metadata::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Metadata, _impl_._has_bits_),
      0, // no _extensions_
      1, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967294,  // skipmap
      offsetof(ParseTableT_, field_entries),
      1,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::Metadata>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint64 timeStamp = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(Metadata, _impl_.timestamp_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint64 timeStamp = 1;
      {PROTOBUF_FIELD_OFFSET(Metadata, _impl_.timestamp_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr Metadata::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        timestamp_{::uint64_t{0u}} {}

template <typename>
constexpr Metadata::Metadata(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Metadata::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Metadata(arena);
}
constexpr auto Metadata::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(Metadata), alignof(Metadata));
}
constexpr auto Metadata::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &Metadata::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Metadata>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Metadata::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Metadata>(), &Metadata::ByteSizeLong,
              &Metadata::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Metadata, _impl_._cached_size_),
          true,
      },
      "mozilla.devtools.protobuf.Metadata",
  };
}
struct MetadataGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr MetadataGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Metadata_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Metadata::InternalGenerateClassData_(
            _default, &Metadata_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Metadata>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~MetadataGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Metadata _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Metadata>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(MetadataGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST MetadataGlobalsTypeInternal Metadata_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Metadata_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Metadata_globals_.GetClassData();
#else
  return Metadata_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Edge::_Internal {
 public:
  using HasBits = decltype(::std::declval<Edge>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(Edge, _impl_._has_bits_);
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::Edge, _impl_._oneof_case_);
};

constexpr Edge::ParseTableT_ Edge::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Edge, _impl_._has_bits_),
      0, // no _extensions_
      3, 0,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294967288,  // skipmap
      offsetof(ParseTableT_, field_entries),
      3,  // num_field_entries
      0,  // num_aux_entries
      offsetof(ParseTableT_, field_names),  // no aux_entries
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::Edge>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      // optional uint64 referent = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 0, 0,
        PROTOBUF_FIELD_OFFSET(Edge, _impl_.referent_)}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint64 referent = 1;
      {PROTOBUF_FIELD_OFFSET(Edge, _impl_.referent_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // bytes name = 2;
      {PROTOBUF_FIELD_OFFSET(Edge, _impl_.EdgeNameOrRef_.name_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 nameRef = 3;
      {PROTOBUF_FIELD_OFFSET(Edge, _impl_.EdgeNameOrRef_.nameref_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
    }},
    // no aux_entries
    {{
    }},
  };
}


inline constexpr Edge::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        referent_{::uint64_t{0u}},
        EdgeNameOrRef_{},
        _oneof_case_{} {}

template <typename>
constexpr Edge::Edge(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Edge::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Edge(arena);
}
constexpr auto Edge::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(Edge), alignof(Edge));
}
constexpr auto Edge::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &Edge::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Edge>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Edge::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Edge>(), &Edge::ByteSizeLong,
              &Edge::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Edge, _impl_._cached_size_),
          true,
      },
      "mozilla.devtools.protobuf.Edge",
  };
}
struct EdgeGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr EdgeGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Edge_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Edge::InternalGenerateClassData_(
            _default, &Edge_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Edge>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~EdgeGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Edge _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Edge>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(EdgeGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST EdgeGlobalsTypeInternal Edge_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Edge_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Edge_globals_.GetClassData();
#else
  return Edge_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
class Node::_Internal {
 public:
  using HasBits = decltype(::std::declval<Node>()._impl_._has_bits_);
  static constexpr ::int32_t kHasBitsOffset =
      8 * PROTOBUF_FIELD_OFFSET(Node, _impl_._has_bits_);
  static constexpr ::int32_t kOneofCaseOffset =
      PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::Node, _impl_._oneof_case_);
};

constexpr Node::ParseTableT_ Node::InternalGenerateParseTable_(const ::_pbi::ClassData* class_data) {
  return ParseTableT_{
    {
      PROTOBUF_FIELD_OFFSET(Node, _impl_._has_bits_),
      0, // no _extensions_
      13, 120,  // max_field_number, fast_idx_mask
      offsetof(ParseTableT_, field_lookup_table),
      4294959104,  // skipmap
      offsetof(ParseTableT_, field_entries),
      13,  // num_field_entries
      2,  // num_aux_entries
      offsetof(ParseTableT_, aux_entries),
      class_data,
      nullptr,  // post_loop_handler
      ::_pbi::TcParser::GenericFallbackLite,  // fallback
      #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
      ::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::Node>(),  // to_prefetch
      #endif  // PROTOBUF_PREFETCH_PARSE_TABLE
    }, {{
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint64 id = 1;
      {::_pbi::TcParser::FastV64S1,
       {8, 2, 0,
        PROTOBUF_FIELD_OFFSET(Node, _impl_.id_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint64 size = 4;
      {::_pbi::TcParser::FastV64S1,
       {32, 3, 0,
        PROTOBUF_FIELD_OFFSET(Node, _impl_.size_)}},
      // repeated .mozilla.devtools.protobuf.Edge edges = 5;
      {::_pbi::TcParser::FastMtR1,
       {42, 0, 0,
        PROTOBUF_FIELD_OFFSET(Node, _impl_.edges_)}},
      // optional .mozilla.devtools.protobuf.StackFrame allocationStack = 6;
      {::_pbi::TcParser::FastMtS1,
       {50, 1, 1,
        PROTOBUF_FIELD_OFFSET(Node, _impl_.allocationstack_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      // optional uint32 coarseType = 9 [default = 0];
      {::_pbi::TcParser::FastV32S1,
       {72, 4, 0,
        PROTOBUF_FIELD_OFFSET(Node, _impl_.coarsetype_)}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
      {::_pbi::TcParser::MiniParse, {}},
    }}, {{
      65535, 65535
    }}, {{
      // optional uint64 id = 1;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.id_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // bytes typeName = 2;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.TypeNameOrRef_.typename__), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 typeNameRef = 3;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.TypeNameOrRef_.typenameref_), _Internal::kOneofCaseOffset + 0, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
      // optional uint64 size = 4;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.size_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt64)},
      // repeated .mozilla.devtools.protobuf.Edge edges = 5;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.edges_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
      // optional .mozilla.devtools.protobuf.StackFrame allocationStack = 6;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.allocationstack_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
      // bytes jsObjectClassName = 7;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.JSObjectClassNameOrRef_.jsobjectclassname_), _Internal::kOneofCaseOffset + 4, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 jsObjectClassNameRef = 8;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.JSObjectClassNameOrRef_.jsobjectclassnameref_), _Internal::kOneofCaseOffset + 4, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
      // optional uint32 coarseType = 9 [default = 0];
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.coarsetype_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kUInt32)},
      // bytes scriptFilename = 10;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.ScriptFilenameOrRef_.scriptfilename_), _Internal::kOneofCaseOffset + 8, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 scriptFilenameRef = 11;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.ScriptFilenameOrRef_.scriptfilenameref_), _Internal::kOneofCaseOffset + 8, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
      // bytes descriptiveTypeName = 12;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.descriptiveTypeNameOrRef_.descriptivetypename_), _Internal::kOneofCaseOffset + 12, 0, (0 | ::_fl::kFcOneof | ::_fl::kBytes | ::_fl::kRepAString)},
      // uint64 descriptiveTypeNameRef = 13;
      {PROTOBUF_FIELD_OFFSET(Node, _impl_.descriptiveTypeNameOrRef_.descriptivetypenameref_), _Internal::kOneofCaseOffset + 12, 0, (0 | ::_fl::kFcOneof | ::_fl::kUInt64)},
    }},
    {{
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::Edge>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mozilla::devtools::protobuf::Edge_globals_},
        #endif
        #ifndef PROTOBUF_MESSAGE_GLOBALS
        {::_pbi::TcParser::GetTable<::mozilla::devtools::protobuf::StackFrame>()},
        #else
        {::_pbi::FieldAuxMessageGlobals(), &::mozilla::devtools::protobuf::StackFrame_globals_},
        #endif
    }},
    {{
    }},
  };
}


inline constexpr Node::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    ::_pbi::ConstantInitialized) noexcept
      : _cached_size_{0},
        edges_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mozilla::devtools::protobuf::Node,
            PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::Node, _impl_.edges_)>()
         }
        ,
        allocationstack_{nullptr},
        id_{::uint64_t{0u}},
        size_{::uint64_t{0u}},
        coarsetype_{0u},
        TypeNameOrRef_{},
        JSObjectClassNameOrRef_{},
        ScriptFilenameOrRef_{},
        descriptiveTypeNameOrRef_{},
        _oneof_case_{} {}

template <typename>
constexpr Node::Node(::_pbi::ConstantInitialized,
                       const ::_pbi::ClassData* PROTOBUF_NONNULL class_data)
    : ::google::protobuf::MessageLite(
#if defined(PROTOBUF_CUSTOM_VTABLE)
          class_data
#endif  // PROTOBUF_CUSTOM_VTABLE
          ),
      _impl_(internal_visibility(), ::_pbi::ConstantInitialized()) {
}
inline void* PROTOBUF_NONNULL Node::PlacementNew_(
    const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
  return ::new (mem) Node(arena);
}
constexpr auto Node::InternalNewImpl_() {
  return ::google::protobuf::internal::MessageCreator::CopyInit(sizeof(Node), alignof(Node));
}
constexpr auto Node::InternalGenerateClassData_(
    const MessageLite& prototype,
    const ::google::protobuf::internal::TcParseTableBase* tc_table) {
  return ::google::protobuf::internal::ClassDataLite{
      {
          &prototype,
#ifndef PROTOBUF_MESSAGE_GLOBALS
          &_table_.header,
#else
          tc_table,
#endif
          nullptr,  // IsInitialized
          &Node::MergeImpl,
          ::google::protobuf::MessageLite::GetNewImpl<Node>(),
#if defined(PROTOBUF_CUSTOM_VTABLE)
          &Node::SharedDtor,
          ::google::protobuf::MessageLite::GetClearImpl<Node>(), &Node::ByteSizeLong,
              &Node::_InternalSerialize,
#endif  // PROTOBUF_CUSTOM_VTABLE
          PROTOBUF_FIELD_OFFSET(Node, _impl_._cached_size_),
          true,
      },
      "mozilla.devtools.protobuf.Node",
  };
}
struct NodeGlobalsTypeInternal : ::_pbi::MessageGlobalsBase {
  constexpr NodeGlobalsTypeInternal()
      :
#ifndef PROTOBUF_MESSAGE_GLOBALS
        _default(::_pbi::ConstantInitialized{},
                 Node_class_data_.base())
#else   // !PROTOBUF_MESSAGE_GLOBALS
        MessageGlobalsBase(Node::InternalGenerateClassData_(
            _default, &Node_globals_._table.header)),
        _default(::_pbi::ConstantInitialized{}, GetClassData()),
        _table(::_pbi::PrivateAccess::GenerateParseTable<Node>(
            GetClassData()))
#endif  // PROTOBUF_MESSAGE_GLOBALS
  {
  }
  ~NodeGlobalsTypeInternal() {}
  union {
    alignas(::_pbi::kMaxMessageAlignment) Node _default;
  };
#ifdef PROTOBUF_MESSAGE_GLOBALS
  decltype(::_pbi::PrivateAccess::GenerateParseTable<Node>(
      ::std::declval<const ::_pbi::ClassData*>())) _table;
#endif
};
#ifdef PROTOBUF_MESSAGE_GLOBALS
static_assert(PROTOBUF_FIELD_OFFSET(NodeGlobalsTypeInternal, _default) ==
              ::_pbi::MessageGlobalsBase::OffsetToDefault());
#endif  // PROTOBUF_MESSAGE_GLOBALS

PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT
    PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PROTOBUF_MESSAGE_GLOBALS_CONST NodeGlobalsTypeInternal Node_globals_
        PROTOBUF_MESSAGE_GLOBALS_SECTION(.data.rel.ro);
#if defined(PROTOBUF_CUSTOM_VTABLE)
namespace {
const ::_pbi::ClassData* Node_get_class_data() {
#ifdef PROTOBUF_MESSAGE_GLOBALS
  return Node_globals_.GetClassData();
#else
  return Node_class_data_.base();
#endif  // PROTOBUF_MESSAGE_GLOBALS
}
}  // namespace
#endif  // PROTOBUF_CUSTOM_VTABLE
}  // namespace protobuf
}  // namespace devtools
}  // namespace mozilla
namespace mozilla {
namespace devtools {
namespace protobuf {
// ===================================================================

Metadata::Metadata(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Metadata_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mozilla.devtools.protobuf.Metadata)
}
Metadata::Metadata(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Metadata& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Metadata_get_class_data()),
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena),
#endif  // PROTOBUF_CUSTOM_VTABLE
      _impl_(from._impl_) {
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}
PROTOBUF_NDEBUG_INLINE Metadata::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0} {}

inline void Metadata::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.timestamp_ = {};
}
Metadata::~Metadata() {
  // @@protoc_insertion_point(destructor:mozilla.devtools.protobuf.Metadata)
  SharedDtor(*this);
}
inline void Metadata::SharedDtor(MessageLite& self) {
  Metadata& this_ = static_cast<Metadata&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  this_._impl_.~Impl_();
}

#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Metadata_class_data_ =
    Metadata::InternalGenerateClassData_(Metadata_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Metadata::GetClassData() const {
  return Metadata_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Metadata::GetClassData() const {
  return Metadata_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Metadata::ParseTableT_
    Metadata::_table_ =
        Metadata::InternalGenerateParseTable_(Metadata_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Metadata::Clear() {
// @@protoc_insertion_point(message_clear_start:mozilla.devtools.protobuf.Metadata)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.timestamp_ = ::uint64_t{0u};
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL Metadata::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const Metadata& this_ = static_cast<const Metadata&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL Metadata::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const Metadata& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:mozilla.devtools.protobuf.Metadata)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint64 timeStamp = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        1, this_._internal_timestamp(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mozilla.devtools.protobuf.Metadata)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Metadata::ByteSizeLong(const MessageLite& base) {
  const Metadata& this_ = static_cast<const Metadata&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Metadata::ByteSizeLong() const {
  const Metadata& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:mozilla.devtools.protobuf.Metadata)
  ::size_t total_size = 0;

  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void)cached_has_bits;

   {
    // optional uint64 timeStamp = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_timestamp());
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void Metadata::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Metadata*>(&to_msg);
  auto& from = static_cast<const Metadata&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(class_specific_merge_from_start:mozilla.devtools.protobuf.Metadata)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_impl_.timestamp_ = from._impl_.timestamp_;
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Metadata::CopyFrom(const Metadata& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:mozilla.devtools.protobuf.Metadata)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void Metadata::InternalSwap(Metadata* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.timestamp_, other->_impl_.timestamp_);
}

// ===================================================================

StackFrame_Data::StackFrame_Data(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, StackFrame_Data_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mozilla.devtools.protobuf.StackFrame.Data)
}
PROTOBUF_NDEBUG_INLINE StackFrame_Data::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mozilla::devtools::protobuf::StackFrame_Data& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        SourceOrRef_{},
        FunctionDisplayNameOrRef_{},
        _oneof_case_{from._oneof_case_[0], from._oneof_case_[1]} {}

StackFrame_Data::StackFrame_Data(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const StackFrame_Data& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, StackFrame_Data_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  StackFrame_Data* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.parent_ = (CheckHasBit(cached_has_bits, 0x00000001U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.parent_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, id_),
           offsetof(Impl_, isselfhosted_) -
               offsetof(Impl_, id_) +
               sizeof(Impl_::isselfhosted_));
  switch (SourceOrRef_case()) {
    case SOURCEORREF_NOT_SET:
      break;
      case kSource:
        new (&_impl_.SourceOrRef_.source_) decltype(_impl_.SourceOrRef_.source_){arena, from._impl_.SourceOrRef_.source_};
        break;
      case kSourceRef:
        _impl_.SourceOrRef_.sourceref_ = from._impl_.SourceOrRef_.sourceref_;
        break;
  }
  switch (FunctionDisplayNameOrRef_case()) {
    case FUNCTIONDISPLAYNAMEORREF_NOT_SET:
      break;
      case kFunctionDisplayName:
        new (&_impl_.FunctionDisplayNameOrRef_.functiondisplayname_) decltype(_impl_.FunctionDisplayNameOrRef_.functiondisplayname_){arena, from._impl_.FunctionDisplayNameOrRef_.functiondisplayname_};
        break;
      case kFunctionDisplayNameRef:
        _impl_.FunctionDisplayNameOrRef_.functiondisplaynameref_ = from._impl_.FunctionDisplayNameOrRef_.functiondisplaynameref_;
        break;
  }

  // @@protoc_insertion_point(copy_constructor:mozilla.devtools.protobuf.StackFrame.Data)
}
PROTOBUF_NDEBUG_INLINE StackFrame_Data::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        SourceOrRef_{},
        FunctionDisplayNameOrRef_{},
        _oneof_case_{} {}

inline void StackFrame_Data::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, parent_),
           0,
           offsetof(Impl_, isselfhosted_) -
               offsetof(Impl_, parent_) +
               sizeof(Impl_::isselfhosted_));
}
StackFrame_Data::~StackFrame_Data() {
  // @@protoc_insertion_point(destructor:mozilla.devtools.protobuf.StackFrame.Data)
  SharedDtor(*this);
}
inline void StackFrame_Data::SharedDtor(MessageLite& self) {
  StackFrame_Data& this_ = static_cast<StackFrame_Data&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.parent_;
  if (this_.has_SourceOrRef()) {
    this_.clear_SourceOrRef();
  }
  if (this_.has_FunctionDisplayNameOrRef()) {
    this_.clear_FunctionDisplayNameOrRef();
  }
  this_._impl_.~Impl_();
}

void StackFrame_Data::clear_SourceOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.StackFrame.Data)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (SourceOrRef_case()) {
    case kSource: {
      _impl_.SourceOrRef_.source_.Destroy();
      break;
    }
    case kSourceRef: {
      // No need to clear
      break;
    }
    case SOURCEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = SOURCEORREF_NOT_SET;
}

void StackFrame_Data::clear_FunctionDisplayNameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.StackFrame.Data)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (FunctionDisplayNameOrRef_case()) {
    case kFunctionDisplayName: {
      _impl_.FunctionDisplayNameOrRef_.functiondisplayname_.Destroy();
      break;
    }
    case kFunctionDisplayNameRef: {
      // No need to clear
      break;
    }
    case FUNCTIONDISPLAYNAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[1] = FUNCTIONDISPLAYNAMEORREF_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite StackFrame_Data_class_data_ =
    StackFrame_Data::InternalGenerateClassData_(StackFrame_Data_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
StackFrame_Data::GetClassData() const {
  return StackFrame_Data_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
StackFrame_Data::GetClassData() const {
  return StackFrame_Data_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const StackFrame_Data::ParseTableT_
    StackFrame_Data::_table_ =
        StackFrame_Data::InternalGenerateParseTable_(StackFrame_Data_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void StackFrame_Data::Clear() {
// @@protoc_insertion_point(message_clear_start:mozilla.devtools.protobuf.StackFrame.Data)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    ABSL_DCHECK(_impl_.parent_ != nullptr);
    _impl_.parent_->Clear();
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000003eU)) {
    ::memset(&_impl_.id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.isselfhosted_) -
        reinterpret_cast<char*>(&_impl_.id_)) + sizeof(_impl_.isselfhosted_));
  }
  clear_SourceOrRef();
  clear_FunctionDisplayNameOrRef();
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL StackFrame_Data::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const StackFrame_Data& this_ = static_cast<const StackFrame_Data&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL StackFrame_Data::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const StackFrame_Data& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:mozilla.devtools.protobuf.StackFrame.Data)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint64 id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        1, this_._internal_id(), target);
  }

  // optional .mozilla.devtools.protobuf.StackFrame parent = 2;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        2, *this_._impl_.parent_, this_._impl_.parent_->GetCachedSize(), target,
        stream);
  }

  // optional uint32 line = 3;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        3, this_._internal_line(), target);
  }

  // optional uint32 column = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        4, this_._internal_column(), target);
  }

  switch (this_.SourceOrRef_case()) {
    case kSource: {
      const ::std::string& _s = this_._internal_source();
      target = stream->WriteBytesMaybeAliased(5, _s, target);
      break;
    }
    case kSourceRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          6, this_._internal_sourceref(), target);
      break;
    }
    default:
      break;
  }
  switch (this_.FunctionDisplayNameOrRef_case()) {
    case kFunctionDisplayName: {
      const ::std::string& _s = this_._internal_functiondisplayname();
      target = stream->WriteBytesMaybeAliased(7, _s, target);
      break;
    }
    case kFunctionDisplayNameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          8, this_._internal_functiondisplaynameref(), target);
      break;
    }
    default:
      break;
  }
  // optional bool isSystem = 9;
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        9, this_._internal_issystem(), target);
  }

  // optional bool isSelfHosted = 10;
  if (CheckHasBit(cached_has_bits, 0x00000020U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteBoolToArray(
        10, this_._internal_isselfhosted(), target);
  }

  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mozilla.devtools.protobuf.StackFrame.Data)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t StackFrame_Data::ByteSizeLong(const MessageLite& base) {
  const StackFrame_Data& this_ = static_cast<const StackFrame_Data&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t StackFrame_Data::ByteSizeLong() const {
  const StackFrame_Data& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:mozilla.devtools.protobuf.StackFrame.Data)
  ::size_t total_size = 0;

  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void)cached_has_bits;

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  total_size += ::absl::popcount(0x00000030U & cached_has_bits) * 2;
  if (BatchCheckHasBit(cached_has_bits, 0x0000000fU)) {
    // optional .mozilla.devtools.protobuf.StackFrame parent = 2;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.parent_);
    }
    // optional uint64 id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_id());
    }
    // optional uint32 line = 3;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_line());
    }
    // optional uint32 column = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_column());
    }
  }
  switch (this_.SourceOrRef_case()) {
    // bytes source = 5;
    case kSource: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_source());
      break;
    }
    // uint64 sourceRef = 6;
    case kSourceRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_sourceref());
      break;
    }
    case SOURCEORREF_NOT_SET: {
      break;
    }
  }
  switch (this_.FunctionDisplayNameOrRef_case()) {
    // bytes functionDisplayName = 7;
    case kFunctionDisplayName: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_functiondisplayname());
      break;
    }
    // uint64 functionDisplayNameRef = 8;
    case kFunctionDisplayNameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_functiondisplaynameref());
      break;
    }
    case FUNCTIONDISPLAYNAMEORREF_NOT_SET: {
      break;
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void StackFrame_Data::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<StackFrame_Data*>(&to_msg);
  auto& from = static_cast<const StackFrame_Data&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:mozilla.devtools.protobuf.StackFrame.Data)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      ABSL_DCHECK(from._impl_.parent_ != nullptr);
      if (_this->_impl_.parent_ == nullptr) {
        _this->_impl_.parent_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.parent_);
      } else {
        _this->_impl_.parent_->MergeFrom(*from._impl_.parent_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      _this->_impl_.id_ = from._impl_.id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.line_ = from._impl_.line_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.column_ = from._impl_.column_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.issystem_ = from._impl_.issystem_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000020U)) {
      _this->_impl_.isselfhosted_ = from._impl_.isselfhosted_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_SourceOrRef();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kSource: {
        if (oneof_needs_init) {
          _this->_impl_.SourceOrRef_.source_.InitDefault();
        }
        _this->_impl_.SourceOrRef_.source_.Set(from._internal_source(), arena);
        break;
      }
      case kSourceRef: {
        _this->_impl_.SourceOrRef_.sourceref_ = from._impl_.SourceOrRef_.sourceref_;
        break;
      }
      case SOURCEORREF_NOT_SET:
        break;
    }
  }
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[1]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[1];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_FunctionDisplayNameOrRef();
      }
      _this->_impl_._oneof_case_[1] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kFunctionDisplayName: {
        if (oneof_needs_init) {
          _this->_impl_.FunctionDisplayNameOrRef_.functiondisplayname_.InitDefault();
        }
        _this->_impl_.FunctionDisplayNameOrRef_.functiondisplayname_.Set(from._internal_functiondisplayname(), arena);
        break;
      }
      case kFunctionDisplayNameRef: {
        _this->_impl_.FunctionDisplayNameOrRef_.functiondisplaynameref_ = from._impl_.FunctionDisplayNameOrRef_.functiondisplaynameref_;
        break;
      }
      case FUNCTIONDISPLAYNAMEORREF_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void StackFrame_Data::CopyFrom(const StackFrame_Data& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:mozilla.devtools.protobuf.StackFrame.Data)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void StackFrame_Data::InternalSwap(StackFrame_Data* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.isselfhosted_)
      + sizeof(StackFrame_Data::_impl_.isselfhosted_)
      - PROTOBUF_FIELD_OFFSET(StackFrame_Data, _impl_.parent_)>(
          reinterpret_cast<char*>(&_impl_.parent_),
          reinterpret_cast<char*>(&other->_impl_.parent_));
  swap(_impl_.SourceOrRef_, other->_impl_.SourceOrRef_);
  swap(_impl_.FunctionDisplayNameOrRef_, other->_impl_.FunctionDisplayNameOrRef_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
  swap(_impl_._oneof_case_[1], other->_impl_._oneof_case_[1]);
}

// ===================================================================

void StackFrame::set_allocated_data(::mozilla::devtools::protobuf::StackFrame_Data* PROTOBUF_NULLABLE data) {
  ::google::protobuf::Arena* message_arena = GetArena();
  clear_StackFrameType();
  if (data) {
    ::google::protobuf::Arena* submessage_arena = data->GetArena();
    if (message_arena != submessage_arena) {
      data = ::google::protobuf::internal::GetOwnedMessage(message_arena, data, submessage_arena);
    }
    set_has_data();
    _impl_.StackFrameType_.data_ = data;
  }
  // @@protoc_insertion_point(field_set_allocated:mozilla.devtools.protobuf.StackFrame.data)
}
StackFrame::StackFrame(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, StackFrame_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mozilla.devtools.protobuf.StackFrame)
}
PROTOBUF_NDEBUG_INLINE StackFrame::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mozilla::devtools::protobuf::StackFrame& from_msg)
      : StackFrameType_{},
        _cached_size_{0},
        _oneof_case_{from._oneof_case_[0]} {}

StackFrame::StackFrame(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const StackFrame& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, StackFrame_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  StackFrame* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  switch (StackFrameType_case()) {
    case STACKFRAMETYPE_NOT_SET:
      break;
      case kData:
        _impl_.StackFrameType_.data_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.StackFrameType_.data_);
        break;
      case kRef:
        _impl_.StackFrameType_.ref_ = from._impl_.StackFrameType_.ref_;
        break;
  }

  // @@protoc_insertion_point(copy_constructor:mozilla.devtools.protobuf.StackFrame)
}
PROTOBUF_NDEBUG_INLINE StackFrame::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : StackFrameType_{},
        _cached_size_{0},
        _oneof_case_{} {}

inline void StackFrame::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
}
StackFrame::~StackFrame() {
  // @@protoc_insertion_point(destructor:mozilla.devtools.protobuf.StackFrame)
  SharedDtor(*this);
}
inline void StackFrame::SharedDtor(MessageLite& self) {
  StackFrame& this_ = static_cast<StackFrame&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  if (this_.has_StackFrameType()) {
    this_.clear_StackFrameType();
  }
  this_._impl_.~Impl_();
}

void StackFrame::clear_StackFrameType() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.StackFrame)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (StackFrameType_case()) {
    case kData: {
      if (GetArena() == nullptr) {
        delete _impl_.StackFrameType_.data_;
      } else if (::google::protobuf::internal::DebugHardenClearOneofMessageOnArena()) {
        if (_impl_.StackFrameType_.data_ != nullptr) {
          _impl_.StackFrameType_.data_->Clear();
        }
      }
      break;
    }
    case kRef: {
      // No need to clear
      break;
    }
    case STACKFRAMETYPE_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = STACKFRAMETYPE_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite StackFrame_class_data_ =
    StackFrame::InternalGenerateClassData_(StackFrame_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
StackFrame::GetClassData() const {
  return StackFrame_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
StackFrame::GetClassData() const {
  return StackFrame_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const StackFrame::ParseTableT_
    StackFrame::_table_ =
        StackFrame::InternalGenerateParseTable_(StackFrame_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void StackFrame::Clear() {
// @@protoc_insertion_point(message_clear_start:mozilla.devtools.protobuf.StackFrame)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  clear_StackFrameType();
  _internal_metadata_.Clear<::std::string>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL StackFrame::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const StackFrame& this_ = static_cast<const StackFrame&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL StackFrame::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const StackFrame& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:mozilla.devtools.protobuf.StackFrame)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  switch (this_.StackFrameType_case()) {
    case kData: {
      target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
          1, *this_._impl_.StackFrameType_.data_, this_._impl_.StackFrameType_.data_->GetCachedSize(), target,
          stream);
      break;
    }
    case kRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          2, this_._internal_ref(), target);
      break;
    }
    default:
      break;
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mozilla.devtools.protobuf.StackFrame)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t StackFrame::ByteSizeLong(const MessageLite& base) {
  const StackFrame& this_ = static_cast<const StackFrame&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t StackFrame::ByteSizeLong() const {
  const StackFrame& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:mozilla.devtools.protobuf.StackFrame)
  ::size_t total_size = 0;

  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void)cached_has_bits;

  switch (this_.StackFrameType_case()) {
    // .mozilla.devtools.protobuf.StackFrame.Data data = 1;
    case kData: {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.StackFrameType_.data_);
      break;
    }
    // uint64 ref = 2;
    case kRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_ref());
      break;
    }
    case STACKFRAMETYPE_NOT_SET: {
      break;
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void StackFrame::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<StackFrame*>(&to_msg);
  auto& from = static_cast<const StackFrame&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:mozilla.devtools.protobuf.StackFrame)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_StackFrameType();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kData: {
        if (oneof_needs_init) {
          _this->_impl_.StackFrameType_.data_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.StackFrameType_.data_);
        } else {
          _this->_impl_.StackFrameType_.data_->MergeFrom(*from._impl_.StackFrameType_.data_);
        }
        break;
      }
      case kRef: {
        _this->_impl_.StackFrameType_.ref_ = from._impl_.StackFrameType_.ref_;
        break;
      }
      case STACKFRAMETYPE_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void StackFrame::CopyFrom(const StackFrame& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:mozilla.devtools.protobuf.StackFrame)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void StackFrame::InternalSwap(StackFrame* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_.StackFrameType_, other->_impl_.StackFrameType_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

// ===================================================================

Node::Node(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Node_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mozilla.devtools.protobuf.Node)
}
PROTOBUF_NDEBUG_INLINE Node::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mozilla::devtools::protobuf::Node& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        edges_ {
          visibility, ::_pbi::InternalMetadataOffset::Build<
              ::mozilla::devtools::protobuf::Node,
              PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::Node, _impl_.edges_)>()
          , from.edges_
        }
        ,
        TypeNameOrRef_{},
        JSObjectClassNameOrRef_{},
        ScriptFilenameOrRef_{},
        descriptiveTypeNameOrRef_{},
        _oneof_case_{from._oneof_case_[0], from._oneof_case_[1], from._oneof_case_[2], from._oneof_case_[3]} {}

Node::Node(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const Node& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Node_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  Node* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  ::uint32_t cached_has_bits = _impl_._has_bits_[0];
  _impl_.allocationstack_ = (CheckHasBit(cached_has_bits, 0x00000002U))
                ? ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.allocationstack_)
                : nullptr;
  ::memcpy(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, id_),
           reinterpret_cast<const char*>(&from._impl_) +
               offsetof(Impl_, id_),
           offsetof(Impl_, coarsetype_) -
               offsetof(Impl_, id_) +
               sizeof(Impl_::coarsetype_));
  switch (TypeNameOrRef_case()) {
    case TYPENAMEORREF_NOT_SET:
      break;
      case kTypeName:
        new (&_impl_.TypeNameOrRef_.typename__) decltype(_impl_.TypeNameOrRef_.typename__){arena, from._impl_.TypeNameOrRef_.typename__};
        break;
      case kTypeNameRef:
        _impl_.TypeNameOrRef_.typenameref_ = from._impl_.TypeNameOrRef_.typenameref_;
        break;
  }
  switch (JSObjectClassNameOrRef_case()) {
    case JSOBJECTCLASSNAMEORREF_NOT_SET:
      break;
      case kJsObjectClassName:
        new (&_impl_.JSObjectClassNameOrRef_.jsobjectclassname_) decltype(_impl_.JSObjectClassNameOrRef_.jsobjectclassname_){arena, from._impl_.JSObjectClassNameOrRef_.jsobjectclassname_};
        break;
      case kJsObjectClassNameRef:
        _impl_.JSObjectClassNameOrRef_.jsobjectclassnameref_ = from._impl_.JSObjectClassNameOrRef_.jsobjectclassnameref_;
        break;
  }
  switch (ScriptFilenameOrRef_case()) {
    case SCRIPTFILENAMEORREF_NOT_SET:
      break;
      case kScriptFilename:
        new (&_impl_.ScriptFilenameOrRef_.scriptfilename_) decltype(_impl_.ScriptFilenameOrRef_.scriptfilename_){arena, from._impl_.ScriptFilenameOrRef_.scriptfilename_};
        break;
      case kScriptFilenameRef:
        _impl_.ScriptFilenameOrRef_.scriptfilenameref_ = from._impl_.ScriptFilenameOrRef_.scriptfilenameref_;
        break;
  }
  switch (descriptiveTypeNameOrRef_case()) {
    case DESCRIPTIVETYPENAMEORREF_NOT_SET:
      break;
      case kDescriptiveTypeName:
        new (&_impl_.descriptiveTypeNameOrRef_.descriptivetypename_) decltype(_impl_.descriptiveTypeNameOrRef_.descriptivetypename_){arena, from._impl_.descriptiveTypeNameOrRef_.descriptivetypename_};
        break;
      case kDescriptiveTypeNameRef:
        _impl_.descriptiveTypeNameOrRef_.descriptivetypenameref_ = from._impl_.descriptiveTypeNameOrRef_.descriptivetypenameref_;
        break;
  }

  // @@protoc_insertion_point(copy_constructor:mozilla.devtools.protobuf.Node)
}
PROTOBUF_NDEBUG_INLINE Node::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        edges_ { visibility, ::_pbi::InternalMetadataOffset::Build<
            ::mozilla::devtools::protobuf::Node,
            PROTOBUF_FIELD_OFFSET(::mozilla::devtools::protobuf::Node, _impl_.edges_)>()
         }
        ,
        TypeNameOrRef_{},
        JSObjectClassNameOrRef_{},
        ScriptFilenameOrRef_{},
        descriptiveTypeNameOrRef_{},
        _oneof_case_{} {}

inline void Node::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  ::memset(reinterpret_cast<char*>(&_impl_) +
               offsetof(Impl_, allocationstack_),
           0,
           offsetof(Impl_, coarsetype_) -
               offsetof(Impl_, allocationstack_) +
               sizeof(Impl_::coarsetype_));
}
Node::~Node() {
  // @@protoc_insertion_point(destructor:mozilla.devtools.protobuf.Node)
  SharedDtor(*this);
}
inline void Node::SharedDtor(MessageLite& self) {
  Node& this_ = static_cast<Node&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  delete this_._impl_.allocationstack_;
  if (this_.has_TypeNameOrRef()) {
    this_.clear_TypeNameOrRef();
  }
  if (this_.has_JSObjectClassNameOrRef()) {
    this_.clear_JSObjectClassNameOrRef();
  }
  if (this_.has_ScriptFilenameOrRef()) {
    this_.clear_ScriptFilenameOrRef();
  }
  if (this_.has_descriptiveTypeNameOrRef()) {
    this_.clear_descriptiveTypeNameOrRef();
  }
  this_._impl_.~Impl_();
}

void Node::clear_TypeNameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.Node)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (TypeNameOrRef_case()) {
    case kTypeName: {
      _impl_.TypeNameOrRef_.typename__.Destroy();
      break;
    }
    case kTypeNameRef: {
      // No need to clear
      break;
    }
    case TYPENAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = TYPENAMEORREF_NOT_SET;
}

void Node::clear_JSObjectClassNameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.Node)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (JSObjectClassNameOrRef_case()) {
    case kJsObjectClassName: {
      _impl_.JSObjectClassNameOrRef_.jsobjectclassname_.Destroy();
      break;
    }
    case kJsObjectClassNameRef: {
      // No need to clear
      break;
    }
    case JSOBJECTCLASSNAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[1] = JSOBJECTCLASSNAMEORREF_NOT_SET;
}

void Node::clear_ScriptFilenameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.Node)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (ScriptFilenameOrRef_case()) {
    case kScriptFilename: {
      _impl_.ScriptFilenameOrRef_.scriptfilename_.Destroy();
      break;
    }
    case kScriptFilenameRef: {
      // No need to clear
      break;
    }
    case SCRIPTFILENAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[2] = SCRIPTFILENAMEORREF_NOT_SET;
}

void Node::clear_descriptiveTypeNameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.Node)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (descriptiveTypeNameOrRef_case()) {
    case kDescriptiveTypeName: {
      _impl_.descriptiveTypeNameOrRef_.descriptivetypename_.Destroy();
      break;
    }
    case kDescriptiveTypeNameRef: {
      // No need to clear
      break;
    }
    case DESCRIPTIVETYPENAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[3] = DESCRIPTIVETYPENAMEORREF_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Node_class_data_ =
    Node::InternalGenerateClassData_(Node_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Node::GetClassData() const {
  return Node_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Node::GetClassData() const {
  return Node_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Node::ParseTableT_
    Node::_table_ =
        Node::InternalGenerateParseTable_(Node_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Node::Clear() {
// @@protoc_insertion_point(message_clear_start:mozilla.devtools.protobuf.Node)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  cached_has_bits = _impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _impl_.edges_.Clear();
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(_impl_.allocationstack_ != nullptr);
      _impl_.allocationstack_->Clear();
    }
  }
  if (BatchCheckHasBit(cached_has_bits, 0x0000001cU)) {
    ::memset(&_impl_.id_, 0, static_cast<::size_t>(
        reinterpret_cast<char*>(&_impl_.coarsetype_) -
        reinterpret_cast<char*>(&_impl_.id_)) + sizeof(_impl_.coarsetype_));
  }
  clear_TypeNameOrRef();
  clear_JSObjectClassNameOrRef();
  clear_ScriptFilenameOrRef();
  clear_descriptiveTypeNameOrRef();
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL Node::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const Node& this_ = static_cast<const Node&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL Node::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const Node& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:mozilla.devtools.protobuf.Node)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint64 id = 1;
  if (CheckHasBit(cached_has_bits, 0x00000004U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        1, this_._internal_id(), target);
  }

  switch (this_.TypeNameOrRef_case()) {
    case kTypeName: {
      const ::std::string& _s = this_._internal_typename_();
      target = stream->WriteBytesMaybeAliased(2, _s, target);
      break;
    }
    case kTypeNameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          3, this_._internal_typenameref(), target);
      break;
    }
    default:
      break;
  }
  // optional uint64 size = 4;
  if (CheckHasBit(cached_has_bits, 0x00000008U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        4, this_._internal_size(), target);
  }

  // repeated .mozilla.devtools.protobuf.Edge edges = 5;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    for (unsigned i = 0, n = static_cast<unsigned>(
                             this_._internal_edges_size());
         i < n; i++) {
      const auto& repfield = this_._internal_edges().Get(i);
      target =
          ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
              5, repfield, repfield.GetCachedSize(),
              target, stream);
    }
  }

  // optional .mozilla.devtools.protobuf.StackFrame allocationStack = 6;
  if (CheckHasBit(cached_has_bits, 0x00000002U)) {
    target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
        6, *this_._impl_.allocationstack_, this_._impl_.allocationstack_->GetCachedSize(), target,
        stream);
  }

  switch (this_.JSObjectClassNameOrRef_case()) {
    case kJsObjectClassName: {
      const ::std::string& _s = this_._internal_jsobjectclassname();
      target = stream->WriteBytesMaybeAliased(7, _s, target);
      break;
    }
    case kJsObjectClassNameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          8, this_._internal_jsobjectclassnameref(), target);
      break;
    }
    default:
      break;
  }
  // optional uint32 coarseType = 9 [default = 0];
  if (CheckHasBit(cached_has_bits, 0x00000010U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt32ToArray(
        9, this_._internal_coarsetype(), target);
  }

  switch (this_.ScriptFilenameOrRef_case()) {
    case kScriptFilename: {
      const ::std::string& _s = this_._internal_scriptfilename();
      target = stream->WriteBytesMaybeAliased(10, _s, target);
      break;
    }
    case kScriptFilenameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          11, this_._internal_scriptfilenameref(), target);
      break;
    }
    default:
      break;
  }
  switch (this_.descriptiveTypeNameOrRef_case()) {
    case kDescriptiveTypeName: {
      const ::std::string& _s = this_._internal_descriptivetypename();
      target = stream->WriteBytesMaybeAliased(12, _s, target);
      break;
    }
    case kDescriptiveTypeNameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          13, this_._internal_descriptivetypenameref(), target);
      break;
    }
    default:
      break;
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mozilla.devtools.protobuf.Node)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Node::ByteSizeLong(const MessageLite& base) {
  const Node& this_ = static_cast<const Node&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Node::ByteSizeLong() const {
  const Node& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:mozilla.devtools.protobuf.Node)
  ::size_t total_size = 0;

  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void)cached_has_bits;

  ::_pbi::Prefetch5LinesFrom7Lines(&this_);
  cached_has_bits = this_._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    // repeated .mozilla.devtools.protobuf.Edge edges = 5;
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += 1UL * this_._internal_edges_size();
      for (const auto& msg : this_._internal_edges()) {
        total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
      }
    }
    // optional .mozilla.devtools.protobuf.StackFrame allocationStack = 6;
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      total_size += 1 +
                    ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.allocationstack_);
    }
    // optional uint64 id = 1;
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_id());
    }
    // optional uint64 size = 4;
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_size());
    }
    // optional uint32 coarseType = 9 [default = 0];
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      total_size += ::_pbi::WireFormatLite::UInt32SizePlusOne(
          this_._internal_coarsetype());
    }
  }
  switch (this_.TypeNameOrRef_case()) {
    // bytes typeName = 2;
    case kTypeName: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_typename_());
      break;
    }
    // uint64 typeNameRef = 3;
    case kTypeNameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_typenameref());
      break;
    }
    case TYPENAMEORREF_NOT_SET: {
      break;
    }
  }
  switch (this_.JSObjectClassNameOrRef_case()) {
    // bytes jsObjectClassName = 7;
    case kJsObjectClassName: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_jsobjectclassname());
      break;
    }
    // uint64 jsObjectClassNameRef = 8;
    case kJsObjectClassNameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_jsobjectclassnameref());
      break;
    }
    case JSOBJECTCLASSNAMEORREF_NOT_SET: {
      break;
    }
  }
  switch (this_.ScriptFilenameOrRef_case()) {
    // bytes scriptFilename = 10;
    case kScriptFilename: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_scriptfilename());
      break;
    }
    // uint64 scriptFilenameRef = 11;
    case kScriptFilenameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_scriptfilenameref());
      break;
    }
    case SCRIPTFILENAMEORREF_NOT_SET: {
      break;
    }
  }
  switch (this_.descriptiveTypeNameOrRef_case()) {
    // bytes descriptiveTypeName = 12;
    case kDescriptiveTypeName: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_descriptivetypename());
      break;
    }
    // uint64 descriptiveTypeNameRef = 13;
    case kDescriptiveTypeNameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_descriptivetypenameref());
      break;
    }
    case DESCRIPTIVETYPENAMEORREF_NOT_SET: {
      break;
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void Node::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Node*>(&to_msg);
  auto& from = static_cast<const Node&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:mozilla.devtools.protobuf.Node)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      _this->_internal_mutable_edges()->InternalMergeFromWithArena(
          ::google::protobuf::MessageLite::internal_visibility(), arena,
          from._internal_edges());
    }
    if (CheckHasBit(cached_has_bits, 0x00000002U)) {
      ABSL_DCHECK(from._impl_.allocationstack_ != nullptr);
      if (_this->_impl_.allocationstack_ == nullptr) {
        _this->_impl_.allocationstack_ = ::google::protobuf::MessageLite::CopyConstruct(arena, *from._impl_.allocationstack_);
      } else {
        _this->_impl_.allocationstack_->MergeFrom(*from._impl_.allocationstack_);
      }
    }
    if (CheckHasBit(cached_has_bits, 0x00000004U)) {
      _this->_impl_.id_ = from._impl_.id_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000008U)) {
      _this->_impl_.size_ = from._impl_.size_;
    }
    if (CheckHasBit(cached_has_bits, 0x00000010U)) {
      _this->_impl_.coarsetype_ = from._impl_.coarsetype_;
    }
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_TypeNameOrRef();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kTypeName: {
        if (oneof_needs_init) {
          _this->_impl_.TypeNameOrRef_.typename__.InitDefault();
        }
        _this->_impl_.TypeNameOrRef_.typename__.Set(from._internal_typename_(), arena);
        break;
      }
      case kTypeNameRef: {
        _this->_impl_.TypeNameOrRef_.typenameref_ = from._impl_.TypeNameOrRef_.typenameref_;
        break;
      }
      case TYPENAMEORREF_NOT_SET:
        break;
    }
  }
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[1]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[1];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_JSObjectClassNameOrRef();
      }
      _this->_impl_._oneof_case_[1] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kJsObjectClassName: {
        if (oneof_needs_init) {
          _this->_impl_.JSObjectClassNameOrRef_.jsobjectclassname_.InitDefault();
        }
        _this->_impl_.JSObjectClassNameOrRef_.jsobjectclassname_.Set(from._internal_jsobjectclassname(), arena);
        break;
      }
      case kJsObjectClassNameRef: {
        _this->_impl_.JSObjectClassNameOrRef_.jsobjectclassnameref_ = from._impl_.JSObjectClassNameOrRef_.jsobjectclassnameref_;
        break;
      }
      case JSOBJECTCLASSNAMEORREF_NOT_SET:
        break;
    }
  }
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[2]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[2];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_ScriptFilenameOrRef();
      }
      _this->_impl_._oneof_case_[2] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kScriptFilename: {
        if (oneof_needs_init) {
          _this->_impl_.ScriptFilenameOrRef_.scriptfilename_.InitDefault();
        }
        _this->_impl_.ScriptFilenameOrRef_.scriptfilename_.Set(from._internal_scriptfilename(), arena);
        break;
      }
      case kScriptFilenameRef: {
        _this->_impl_.ScriptFilenameOrRef_.scriptfilenameref_ = from._impl_.ScriptFilenameOrRef_.scriptfilenameref_;
        break;
      }
      case SCRIPTFILENAMEORREF_NOT_SET:
        break;
    }
  }
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[3]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[3];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_descriptiveTypeNameOrRef();
      }
      _this->_impl_._oneof_case_[3] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kDescriptiveTypeName: {
        if (oneof_needs_init) {
          _this->_impl_.descriptiveTypeNameOrRef_.descriptivetypename_.InitDefault();
        }
        _this->_impl_.descriptiveTypeNameOrRef_.descriptivetypename_.Set(from._internal_descriptivetypename(), arena);
        break;
      }
      case kDescriptiveTypeNameRef: {
        _this->_impl_.descriptiveTypeNameOrRef_.descriptivetypenameref_ = from._impl_.descriptiveTypeNameOrRef_.descriptivetypenameref_;
        break;
      }
      case DESCRIPTIVETYPENAMEORREF_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Node::CopyFrom(const Node& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:mozilla.devtools.protobuf.Node)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void Node::InternalSwap(Node* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  _impl_.edges_.InternalSwap(&other->_impl_.edges_);
  ::google::protobuf::internal::memswap<
      PROTOBUF_FIELD_OFFSET(Node, _impl_.coarsetype_)
      + sizeof(Node::_impl_.coarsetype_)
      - PROTOBUF_FIELD_OFFSET(Node, _impl_.allocationstack_)>(
          reinterpret_cast<char*>(&_impl_.allocationstack_),
          reinterpret_cast<char*>(&other->_impl_.allocationstack_));
  swap(_impl_.TypeNameOrRef_, other->_impl_.TypeNameOrRef_);
  swap(_impl_.JSObjectClassNameOrRef_, other->_impl_.JSObjectClassNameOrRef_);
  swap(_impl_.ScriptFilenameOrRef_, other->_impl_.ScriptFilenameOrRef_);
  swap(_impl_.descriptiveTypeNameOrRef_, other->_impl_.descriptiveTypeNameOrRef_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
  swap(_impl_._oneof_case_[1], other->_impl_._oneof_case_[1]);
  swap(_impl_._oneof_case_[2], other->_impl_._oneof_case_[2]);
  swap(_impl_._oneof_case_[3], other->_impl_._oneof_case_[3]);
}

// ===================================================================

Edge::Edge(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Edge_get_class_data()) {
#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  SharedCtor(arena);
  // @@protoc_insertion_point(arena_constructor:mozilla.devtools.protobuf.Edge)
}
PROTOBUF_NDEBUG_INLINE Edge::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
    [[maybe_unused]] const ::mozilla::devtools::protobuf::Edge& from_msg)
      : _has_bits_{from._has_bits_},
        _cached_size_{0},
        EdgeNameOrRef_{},
        _oneof_case_{from._oneof_case_[0]} {}

Edge::Edge(
    ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
    const Edge& from)
#if defined(PROTOBUF_CUSTOM_VTABLE)
    : ::google::protobuf::MessageLite(arena, Edge_get_class_data()) {

#else   // PROTOBUF_CUSTOM_VTABLE
    : ::google::protobuf::MessageLite(arena) {
#endif  // PROTOBUF_CUSTOM_VTABLE
  Edge* const _this = this;
  (void)_this;
  _internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
  new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
  _impl_.referent_ = from._impl_.referent_;
  switch (EdgeNameOrRef_case()) {
    case EDGENAMEORREF_NOT_SET:
      break;
      case kName:
        new (&_impl_.EdgeNameOrRef_.name_) decltype(_impl_.EdgeNameOrRef_.name_){arena, from._impl_.EdgeNameOrRef_.name_};
        break;
      case kNameRef:
        _impl_.EdgeNameOrRef_.nameref_ = from._impl_.EdgeNameOrRef_.nameref_;
        break;
  }

  // @@protoc_insertion_point(copy_constructor:mozilla.devtools.protobuf.Edge)
}
PROTOBUF_NDEBUG_INLINE Edge::Impl_::Impl_(
    [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
    [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
      : _cached_size_{0},
        EdgeNameOrRef_{},
        _oneof_case_{} {}

inline void Edge::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
  new (&_impl_) Impl_(internal_visibility(), arena);
  _impl_.referent_ = {};
}
Edge::~Edge() {
  // @@protoc_insertion_point(destructor:mozilla.devtools.protobuf.Edge)
  SharedDtor(*this);
}
inline void Edge::SharedDtor(MessageLite& self) {
  Edge& this_ = static_cast<Edge&>(self);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  this_._internal_metadata_.Delete<::std::string>();
  ABSL_DCHECK(this_.GetArena() == nullptr);
  if (this_.has_EdgeNameOrRef()) {
    this_.clear_EdgeNameOrRef();
  }
  this_._impl_.~Impl_();
}

void Edge::clear_EdgeNameOrRef() {
// @@protoc_insertion_point(one_of_clear_start:mozilla.devtools.protobuf.Edge)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  switch (EdgeNameOrRef_case()) {
    case kName: {
      _impl_.EdgeNameOrRef_.name_.Destroy();
      break;
    }
    case kNameRef: {
      // No need to clear
      break;
    }
    case EDGENAMEORREF_NOT_SET: {
      break;
    }
  }
  _impl_._oneof_case_[0] = EDGENAMEORREF_NOT_SET;
}


#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
const ::google::protobuf::internal::ClassDataLite Edge_class_data_ =
    Edge::InternalGenerateClassData_(Edge_globals_._default);

PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Edge::GetClassData() const {
  return Edge_class_data_.base();
}
#else
PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
Edge::GetClassData() const {
  return Edge_globals_.GetClassData();
}
#endif  // !PROTOBUF_MESSAGE_GLOBALS
#ifndef PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_CONSTINIT
PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const Edge::ParseTableT_
    Edge::_table_ =
        Edge::InternalGenerateParseTable_(Edge_class_data_.base());
#endif  // !PROTOBUF_MESSAGE_GLOBALS
PROTOBUF_NOINLINE void Edge::Clear() {
// @@protoc_insertion_point(message_clear_start:mozilla.devtools.protobuf.Edge)
  ::google::protobuf::internal::TSanWrite(&_impl_);
  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void) cached_has_bits;

  _impl_.referent_ = ::uint64_t{0u};
  clear_EdgeNameOrRef();
  _impl_._has_bits_.Clear();
  _internal_metadata_.Clear<::std::string>();
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::uint8_t* PROTOBUF_NONNULL Edge::_InternalSerialize(
    const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
  const Edge& this_ = static_cast<const Edge&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::uint8_t* PROTOBUF_NONNULL Edge::_InternalSerialize(
    ::uint8_t* PROTOBUF_NONNULL target,
    ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
  const Edge& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    this_.CheckHasBitConsistency();
  }
  // @@protoc_insertion_point(serialize_to_array_start:mozilla.devtools.protobuf.Edge)
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = this_._impl_._has_bits_[0];
  // optional uint64 referent = 1;
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    target = stream->EnsureSpace(target);
    target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
        1, this_._internal_referent(), target);
  }

  switch (this_.EdgeNameOrRef_case()) {
    case kName: {
      const ::std::string& _s = this_._internal_name();
      target = stream->WriteBytesMaybeAliased(2, _s, target);
      break;
    }
    case kNameRef: {
      target = stream->EnsureSpace(target);
      target = ::_pbi::WireFormatLite::WriteUInt64ToArray(
          3, this_._internal_nameref(), target);
      break;
    }
    default:
      break;
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    target = stream->WriteRaw(
        this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).data(),
        static_cast<int>(this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size()), target);
  }
  // @@protoc_insertion_point(serialize_to_array_end:mozilla.devtools.protobuf.Edge)
  return target;
}

#if defined(PROTOBUF_CUSTOM_VTABLE)
::size_t Edge::ByteSizeLong(const MessageLite& base) {
  const Edge& this_ = static_cast<const Edge&>(base);
#else   // PROTOBUF_CUSTOM_VTABLE
::size_t Edge::ByteSizeLong() const {
  const Edge& this_ = *this;
#endif  // PROTOBUF_CUSTOM_VTABLE
  // @@protoc_insertion_point(message_byte_size_start:mozilla.devtools.protobuf.Edge)
  ::size_t total_size = 0;

  ::uint32_t cached_has_bits = 0;
  // Prevent compiler warnings about cached_has_bits being unused
  (void)cached_has_bits;

   {
    // optional uint64 referent = 1;
    cached_has_bits = this_._impl_._has_bits_[0];
    if (CheckHasBit(cached_has_bits, 0x00000001U)) {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_referent());
    }
  }
  switch (this_.EdgeNameOrRef_case()) {
    // bytes name = 2;
    case kName: {
      total_size += 1 + ::google::protobuf::internal::WireFormatLite::BytesSize(
                                      this_._internal_name());
      break;
    }
    // uint64 nameRef = 3;
    case kNameRef: {
      total_size += ::_pbi::WireFormatLite::UInt64SizePlusOne(
          this_._internal_nameref());
      break;
    }
    case EDGENAMEORREF_NOT_SET: {
      break;
    }
  }
  if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
    total_size += this_._internal_metadata_.unknown_fields<::std::string>(::google::protobuf::internal::GetEmptyString).size();
  }
  this_._impl_._cached_size_.Set(::_pbi::ToCachedSize(total_size));
  return total_size;
}

void Edge::MergeImpl(::google::protobuf::MessageLite& to_msg,
                      const ::google::protobuf::MessageLite& from_msg) {
   auto* const _this = static_cast<Edge*>(&to_msg);
  auto& from = static_cast<const Edge&>(from_msg);
  if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
    from.CheckHasBitConsistency();
  }
  ::google::protobuf::Arena* arena = _this->GetArena();
  // @@protoc_insertion_point(class_specific_merge_from_start:mozilla.devtools.protobuf.Edge)
  ABSL_DCHECK_NE(&from, _this);
  ::uint32_t cached_has_bits = 0;
  (void)cached_has_bits;

  cached_has_bits = from._impl_._has_bits_[0];
  if (CheckHasBit(cached_has_bits, 0x00000001U)) {
    _this->_impl_.referent_ = from._impl_.referent_;
  }
  _this->_impl_._has_bits_[0] |= cached_has_bits;
  if (const uint32_t oneof_from_case =
          from._impl_._oneof_case_[0]) {
    const uint32_t oneof_to_case = _this->_impl_._oneof_case_[0];
    const bool oneof_needs_init = oneof_to_case != oneof_from_case;
    if (oneof_needs_init) {
      if (oneof_to_case != 0) {
        _this->clear_EdgeNameOrRef();
      }
      _this->_impl_._oneof_case_[0] = oneof_from_case;
    }

    switch (oneof_from_case) {
      case kName: {
        if (oneof_needs_init) {
          _this->_impl_.EdgeNameOrRef_.name_.InitDefault();
        }
        _this->_impl_.EdgeNameOrRef_.name_.Set(from._internal_name(), arena);
        break;
      }
      case kNameRef: {
        _this->_impl_.EdgeNameOrRef_.nameref_ = from._impl_.EdgeNameOrRef_.nameref_;
        break;
      }
      case EDGENAMEORREF_NOT_SET:
        break;
    }
  }
  _this->_internal_metadata_.MergeFrom<::std::string>(
      from._internal_metadata_);
}

void Edge::CopyFrom(const Edge& from) {
  // @@protoc_insertion_point(class_specific_copy_from_start:mozilla.devtools.protobuf.Edge)
  if (&from == this) return;
  Clear();
  MergeFrom(from);
}


void Edge::InternalSwap(Edge* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
  using ::std::swap;
  _internal_metadata_.InternalSwap(&other->_internal_metadata_);
  swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
  swap(_impl_.referent_, other->_impl_.referent_);
  swap(_impl_.EdgeNameOrRef_, other->_impl_.EdgeNameOrRef_);
  swap(_impl_._oneof_case_[0], other->_impl_._oneof_case_[0]);
}

// @@protoc_insertion_point(namespace_scope)
}  // namespace protobuf
}  // namespace devtools
}  // namespace mozilla
namespace google {
namespace protobuf {
}  // namespace protobuf
}  // namespace google
// @@protoc_insertion_point(global_scope)
#include "google/protobuf/port_undef.inc"
