Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-14 09:10:03

0001 // Generated by the protocol buffer compiler.  DO NOT EDIT!
0002 // NO CHECKED-IN PROTOBUF GENCODE
0003 // source: google/protobuf/cpp_features.proto
0004 // Protobuf C++ Version: 6.32.1
0005 
0006 #ifndef google_2fprotobuf_2fcpp_5ffeatures_2eproto_2epb_2eh
0007 #define google_2fprotobuf_2fcpp_5ffeatures_2eproto_2epb_2eh
0008 
0009 #include <limits>
0010 #include <string>
0011 #include <type_traits>
0012 #include <utility>
0013 
0014 #include "google/protobuf/runtime_version.h"
0015 #if PROTOBUF_VERSION != 6032001
0016 #error "Protobuf C++ gencode is built with an incompatible version of"
0017 #error "Protobuf C++ headers/runtime. See"
0018 #error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
0019 #endif
0020 #include "google/protobuf/io/coded_stream.h"
0021 #include "google/protobuf/arena.h"
0022 #include "google/protobuf/arenastring.h"
0023 #include "google/protobuf/generated_message_tctable_decl.h"
0024 #include "google/protobuf/generated_message_util.h"
0025 #include "google/protobuf/metadata_lite.h"
0026 #include "google/protobuf/generated_message_reflection.h"
0027 #include "google/protobuf/message.h"
0028 #include "google/protobuf/message_lite.h"
0029 #include "google/protobuf/repeated_field.h"  // IWYU pragma: export
0030 #include "google/protobuf/extension_set.h"  // IWYU pragma: export
0031 #include "google/protobuf/generated_enum_reflection.h"
0032 #include "google/protobuf/unknown_field_set.h"
0033 #include "google/protobuf/descriptor.pb.h"
0034 // @@protoc_insertion_point(includes)
0035 
0036 // Must be included last.
0037 #include "google/protobuf/port_def.inc"
0038 
0039 #define PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fcpp_5ffeatures_2eproto PROTOBUF_EXPORT
0040 
0041 namespace google {
0042 namespace protobuf {
0043 namespace internal {
0044 template <typename T>
0045 ::absl::string_view GetAnyMessageName();
0046 }  // namespace internal
0047 }  // namespace protobuf
0048 }  // namespace google
0049 
0050 // Internal implementation detail -- do not use these members.
0051 struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fcpp_5ffeatures_2eproto {
0052   static const ::uint32_t offsets[];
0053 };
0054 extern "C" {
0055 PROTOBUF_EXPORT extern const ::google::protobuf::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fcpp_5ffeatures_2eproto;
0056 }  // extern "C"
0057 namespace pb {
0058 enum CppFeatures_StringType : int;
0059 PROTOBUF_EXPORT extern const uint32_t CppFeatures_StringType_internal_data_[];
0060 class CppFeatures;
0061 struct CppFeaturesDefaultTypeInternal;
0062 PROTOBUF_EXPORT extern CppFeaturesDefaultTypeInternal _CppFeatures_default_instance_;
0063 PROTOBUF_EXPORT extern const ::google::protobuf::internal::ClassDataFull CppFeatures_class_data_;
0064 }  // namespace pb
0065 namespace google {
0066 namespace protobuf {
0067 template <>
0068 internal::EnumTraitsT<::pb::CppFeatures_StringType_internal_data_>
0069     internal::EnumTraitsImpl::value<::pb::CppFeatures_StringType>;
0070 }  // namespace protobuf
0071 }  // namespace google
0072 
0073 namespace pb {
0074 enum CppFeatures_StringType : int {
0075   CppFeatures_StringType_STRING_TYPE_UNKNOWN = 0,
0076   CppFeatures_StringType_VIEW = 1,
0077   CppFeatures_StringType_CORD = 2,
0078   CppFeatures_StringType_STRING = 3,
0079 };
0080 
0081 PROTOBUF_EXPORT extern const uint32_t CppFeatures_StringType_internal_data_[];
0082 inline constexpr CppFeatures_StringType CppFeatures_StringType_StringType_MIN =
0083     static_cast<CppFeatures_StringType>(0);
0084 inline constexpr CppFeatures_StringType CppFeatures_StringType_StringType_MAX =
0085     static_cast<CppFeatures_StringType>(3);
0086 inline bool CppFeatures_StringType_IsValid(int value) {
0087   return 0 <= value && value <= 3;
0088 }
0089 inline constexpr int CppFeatures_StringType_StringType_ARRAYSIZE = 3 + 1;
0090 PROTOBUF_EXPORT const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL CppFeatures_StringType_descriptor();
0091 template <typename T>
0092 const ::std::string& CppFeatures_StringType_Name(T value) {
0093   static_assert(::std::is_same<T, CppFeatures_StringType>::value ||
0094                     ::std::is_integral<T>::value,
0095                 "Incorrect type passed to StringType_Name().");
0096   return CppFeatures_StringType_Name(static_cast<CppFeatures_StringType>(value));
0097 }
0098 template <>
0099 inline const ::std::string& CppFeatures_StringType_Name(CppFeatures_StringType value) {
0100   return ::google::protobuf::internal::NameOfDenseEnum<CppFeatures_StringType_descriptor, 0, 3>(
0101       static_cast<int>(value));
0102 }
0103 inline bool CppFeatures_StringType_Parse(
0104     ::absl::string_view name, CppFeatures_StringType* PROTOBUF_NONNULL value) {
0105   return ::google::protobuf::internal::ParseNamedEnum<CppFeatures_StringType>(CppFeatures_StringType_descriptor(), name,
0106                                            value);
0107 }
0108 
0109 // ===================================================================
0110 
0111 
0112 // -------------------------------------------------------------------
0113 
0114 class PROTOBUF_EXPORT CppFeatures final : public ::google::protobuf::Message
0115 /* @@protoc_insertion_point(class_definition:pb.CppFeatures) */ {
0116  public:
0117   inline CppFeatures() : CppFeatures(nullptr) {}
0118   ~CppFeatures() PROTOBUF_FINAL;
0119 
0120 #if defined(PROTOBUF_CUSTOM_VTABLE)
0121   void operator delete(CppFeatures* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
0122     SharedDtor(*msg);
0123     ::google::protobuf::internal::SizedDelete(msg, sizeof(CppFeatures));
0124   }
0125 #endif
0126 
0127   template <typename = void>
0128   explicit PROTOBUF_CONSTEXPR CppFeatures(::google::protobuf::internal::ConstantInitialized);
0129 
0130   inline CppFeatures(const CppFeatures& from) : CppFeatures(nullptr, from) {}
0131   inline CppFeatures(CppFeatures&& from) noexcept
0132       : CppFeatures(nullptr, ::std::move(from)) {}
0133   inline CppFeatures& operator=(const CppFeatures& from) {
0134     CopyFrom(from);
0135     return *this;
0136   }
0137   inline CppFeatures& operator=(CppFeatures&& from) noexcept {
0138     if (this == &from) return *this;
0139     if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
0140       InternalSwap(&from);
0141     } else {
0142       CopyFrom(from);
0143     }
0144     return *this;
0145   }
0146 
0147   inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
0148       ABSL_ATTRIBUTE_LIFETIME_BOUND {
0149     return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
0150   }
0151   inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
0152       ABSL_ATTRIBUTE_LIFETIME_BOUND {
0153     return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
0154   }
0155 
0156   static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
0157     return GetDescriptor();
0158   }
0159   static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
0160     return default_instance().GetMetadata().descriptor;
0161   }
0162   static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
0163     return default_instance().GetMetadata().reflection;
0164   }
0165   static const CppFeatures& default_instance() {
0166     return *reinterpret_cast<const CppFeatures*>(
0167         &_CppFeatures_default_instance_);
0168   }
0169   static constexpr int kIndexInFileMessages = 0;
0170   friend void swap(CppFeatures& a, CppFeatures& b) { a.Swap(&b); }
0171   inline void Swap(CppFeatures* PROTOBUF_NONNULL other) {
0172     if (other == this) return;
0173     if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
0174       InternalSwap(other);
0175     } else {
0176       ::google::protobuf::internal::GenericSwap(this, other);
0177     }
0178   }
0179   void UnsafeArenaSwap(CppFeatures* PROTOBUF_NONNULL other) {
0180     if (other == this) return;
0181     ABSL_DCHECK(GetArena() == other->GetArena());
0182     InternalSwap(other);
0183   }
0184 
0185   // implements Message ----------------------------------------------
0186 
0187   CppFeatures* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
0188     return ::google::protobuf::Message::DefaultConstruct<CppFeatures>(arena);
0189   }
0190   using ::google::protobuf::Message::CopyFrom;
0191   void CopyFrom(const CppFeatures& from);
0192   using ::google::protobuf::Message::MergeFrom;
0193   void MergeFrom(const CppFeatures& from) { CppFeatures::MergeImpl(*this, from); }
0194 
0195   private:
0196   static void MergeImpl(::google::protobuf::MessageLite& to_msg,
0197                         const ::google::protobuf::MessageLite& from_msg);
0198 
0199   public:
0200   bool IsInitialized() const {
0201     return true;
0202   }
0203   ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
0204   #if defined(PROTOBUF_CUSTOM_VTABLE)
0205   private:
0206   static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
0207   static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
0208       const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
0209       ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
0210 
0211   public:
0212   ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
0213   ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
0214       ::uint8_t* PROTOBUF_NONNULL target,
0215       ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
0216     return _InternalSerialize(*this, target, stream);
0217   }
0218   #else   // PROTOBUF_CUSTOM_VTABLE
0219   ::size_t ByteSizeLong() const final;
0220   ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
0221       ::uint8_t* PROTOBUF_NONNULL target,
0222       ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
0223   #endif  // PROTOBUF_CUSTOM_VTABLE
0224   int GetCachedSize() const { return _impl_._cached_size_.Get(); }
0225 
0226   private:
0227   void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
0228   static void SharedDtor(MessageLite& self);
0229   void InternalSwap(CppFeatures* PROTOBUF_NONNULL other);
0230  private:
0231   template <typename T>
0232   friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
0233   static ::absl::string_view FullMessageName() { return "pb.CppFeatures"; }
0234 
0235  protected:
0236   explicit CppFeatures(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
0237   CppFeatures(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const CppFeatures& from);
0238   CppFeatures(
0239       ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, CppFeatures&& from) noexcept
0240       : CppFeatures(arena) {
0241     *this = ::std::move(from);
0242   }
0243   const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
0244   static void* PROTOBUF_NONNULL PlacementNew_(
0245       const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
0246       ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
0247   static constexpr auto InternalNewImpl_();
0248 
0249  public:
0250   static constexpr auto InternalGenerateClassData_();
0251 
0252   ::google::protobuf::Metadata GetMetadata() const;
0253   // nested types ----------------------------------------------------
0254   using StringType = CppFeatures_StringType;
0255   static constexpr StringType STRING_TYPE_UNKNOWN = CppFeatures_StringType_STRING_TYPE_UNKNOWN;
0256   static constexpr StringType VIEW = CppFeatures_StringType_VIEW;
0257   static constexpr StringType CORD = CppFeatures_StringType_CORD;
0258   static constexpr StringType STRING = CppFeatures_StringType_STRING;
0259   static inline bool StringType_IsValid(int value) {
0260     return CppFeatures_StringType_IsValid(value);
0261   }
0262   static constexpr StringType StringType_MIN = CppFeatures_StringType_StringType_MIN;
0263   static constexpr StringType StringType_MAX = CppFeatures_StringType_StringType_MAX;
0264   static constexpr int StringType_ARRAYSIZE = CppFeatures_StringType_StringType_ARRAYSIZE;
0265   static inline const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL StringType_descriptor() {
0266     return CppFeatures_StringType_descriptor();
0267   }
0268   template <typename T>
0269   static inline const ::std::string& StringType_Name(T value) {
0270     return CppFeatures_StringType_Name(value);
0271   }
0272   static inline bool StringType_Parse(
0273       ::absl::string_view name, StringType* PROTOBUF_NONNULL value) {
0274     return CppFeatures_StringType_Parse(name, value);
0275   }
0276 
0277   // accessors -------------------------------------------------------
0278   enum : int {
0279     kStringTypeFieldNumber = 2,
0280     kLegacyClosedEnumFieldNumber = 1,
0281     kEnumNameUsesStringViewFieldNumber = 3,
0282   };
0283   // optional .pb.CppFeatures.StringType string_type = 2 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_FIELD, targets = TARGET_TYPE_FILE, edition_defaults = {
0284   bool has_string_type() const;
0285   void clear_string_type() ;
0286   ::pb::CppFeatures_StringType string_type() const;
0287   void set_string_type(::pb::CppFeatures_StringType value);
0288 
0289   private:
0290   ::pb::CppFeatures_StringType _internal_string_type() const;
0291   void _internal_set_string_type(::pb::CppFeatures_StringType value);
0292 
0293   public:
0294   // optional bool legacy_closed_enum = 1 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_FIELD, targets = TARGET_TYPE_FILE, edition_defaults = {
0295   bool has_legacy_closed_enum() const;
0296   void clear_legacy_closed_enum() ;
0297   bool legacy_closed_enum() const;
0298   void set_legacy_closed_enum(bool value);
0299 
0300   private:
0301   bool _internal_legacy_closed_enum() const;
0302   void _internal_set_legacy_closed_enum(bool value);
0303 
0304   public:
0305   // optional bool enum_name_uses_string_view = 3 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_ENUM, targets = TARGET_TYPE_FILE, edition_defaults = {
0306   bool has_enum_name_uses_string_view() const;
0307   void clear_enum_name_uses_string_view() ;
0308   bool enum_name_uses_string_view() const;
0309   void set_enum_name_uses_string_view(bool value);
0310 
0311   private:
0312   bool _internal_enum_name_uses_string_view() const;
0313   void _internal_set_enum_name_uses_string_view(bool value);
0314 
0315   public:
0316   // @@protoc_insertion_point(class_scope:pb.CppFeatures)
0317  private:
0318   class _Internal;
0319   friend class ::google::protobuf::internal::TcParser;
0320   static const ::google::protobuf::internal::TcParseTable<2, 3,
0321                                    1, 0,
0322                                    2>
0323       _table_;
0324 
0325   friend class ::google::protobuf::MessageLite;
0326   friend class ::google::protobuf::Arena;
0327   template <typename T>
0328   friend class ::google::protobuf::Arena::InternalHelper;
0329   using InternalArenaConstructable_ = void;
0330   using DestructorSkippable_ = void;
0331   struct Impl_ {
0332     inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
0333     inline explicit Impl_(
0334         ::google::protobuf::internal::InternalVisibility visibility,
0335         ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
0336     inline explicit Impl_(
0337         ::google::protobuf::internal::InternalVisibility visibility,
0338         ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
0339         const CppFeatures& from_msg);
0340     ::google::protobuf::internal::HasBits<1> _has_bits_;
0341     ::google::protobuf::internal::CachedSize _cached_size_;
0342     int string_type_;
0343     bool legacy_closed_enum_;
0344     bool enum_name_uses_string_view_;
0345     PROTOBUF_TSAN_DECLARE_MEMBER
0346   };
0347   union { Impl_ _impl_; };
0348   friend struct ::TableStruct_google_2fprotobuf_2fcpp_5ffeatures_2eproto;
0349 };
0350 
0351 PROTOBUF_EXPORT extern const ::google::protobuf::internal::ClassDataFull CppFeatures_class_data_;
0352 
0353 // ===================================================================
0354 
0355 
0356 
0357 inline constexpr int kCppFieldNumber = 1000;
0358 PROTOBUF_EXPORT extern ::google::protobuf::internal::ExtensionIdentifier<
0359     ::google::protobuf::FeatureSet, ::google::protobuf::internal::MessageTypeTraits< ::pb::CppFeatures >, 11, false>
0360     cpp;
0361 
0362 // ===================================================================
0363 
0364 
0365 #ifdef __GNUC__
0366 #pragma GCC diagnostic push
0367 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
0368 #endif  // __GNUC__
0369 // -------------------------------------------------------------------
0370 
0371 // CppFeatures
0372 
0373 // optional bool legacy_closed_enum = 1 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_FIELD, targets = TARGET_TYPE_FILE, edition_defaults = {
0374 inline bool CppFeatures::has_legacy_closed_enum() const {
0375   bool value = (_impl_._has_bits_[0] & 0x00000002U) != 0;
0376   return value;
0377 }
0378 inline void CppFeatures::clear_legacy_closed_enum() {
0379   ::google::protobuf::internal::TSanWrite(&_impl_);
0380   _impl_.legacy_closed_enum_ = false;
0381   _impl_._has_bits_[0] &= ~0x00000002U;
0382 }
0383 inline bool CppFeatures::legacy_closed_enum() const {
0384   // @@protoc_insertion_point(field_get:pb.CppFeatures.legacy_closed_enum)
0385   return _internal_legacy_closed_enum();
0386 }
0387 inline void CppFeatures::set_legacy_closed_enum(bool value) {
0388   _internal_set_legacy_closed_enum(value);
0389   _impl_._has_bits_[0] |= 0x00000002U;
0390   // @@protoc_insertion_point(field_set:pb.CppFeatures.legacy_closed_enum)
0391 }
0392 inline bool CppFeatures::_internal_legacy_closed_enum() const {
0393   ::google::protobuf::internal::TSanRead(&_impl_);
0394   return _impl_.legacy_closed_enum_;
0395 }
0396 inline void CppFeatures::_internal_set_legacy_closed_enum(bool value) {
0397   ::google::protobuf::internal::TSanWrite(&_impl_);
0398   _impl_.legacy_closed_enum_ = value;
0399 }
0400 
0401 // optional .pb.CppFeatures.StringType string_type = 2 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_FIELD, targets = TARGET_TYPE_FILE, edition_defaults = {
0402 inline bool CppFeatures::has_string_type() const {
0403   bool value = (_impl_._has_bits_[0] & 0x00000001U) != 0;
0404   return value;
0405 }
0406 inline void CppFeatures::clear_string_type() {
0407   ::google::protobuf::internal::TSanWrite(&_impl_);
0408   _impl_.string_type_ = 0;
0409   _impl_._has_bits_[0] &= ~0x00000001U;
0410 }
0411 inline ::pb::CppFeatures_StringType CppFeatures::string_type() const {
0412   // @@protoc_insertion_point(field_get:pb.CppFeatures.string_type)
0413   return _internal_string_type();
0414 }
0415 inline void CppFeatures::set_string_type(::pb::CppFeatures_StringType value) {
0416   _internal_set_string_type(value);
0417   _impl_._has_bits_[0] |= 0x00000001U;
0418   // @@protoc_insertion_point(field_set:pb.CppFeatures.string_type)
0419 }
0420 inline ::pb::CppFeatures_StringType CppFeatures::_internal_string_type() const {
0421   ::google::protobuf::internal::TSanRead(&_impl_);
0422   return static_cast<::pb::CppFeatures_StringType>(_impl_.string_type_);
0423 }
0424 inline void CppFeatures::_internal_set_string_type(::pb::CppFeatures_StringType value) {
0425   ::google::protobuf::internal::TSanWrite(&_impl_);
0426 
0427                                           assert(::google::protobuf::internal::ValidateEnum(
0428                                               value, ::pb::CppFeatures_StringType_internal_data_));
0429                                           _impl_.string_type_ = value;
0430 }
0431 
0432 // optional bool enum_name_uses_string_view = 3 [retention = RETENTION_RUNTIME, targets = TARGET_TYPE_ENUM, targets = TARGET_TYPE_FILE, edition_defaults = {
0433 inline bool CppFeatures::has_enum_name_uses_string_view() const {
0434   bool value = (_impl_._has_bits_[0] & 0x00000004U) != 0;
0435   return value;
0436 }
0437 inline void CppFeatures::clear_enum_name_uses_string_view() {
0438   ::google::protobuf::internal::TSanWrite(&_impl_);
0439   _impl_.enum_name_uses_string_view_ = false;
0440   _impl_._has_bits_[0] &= ~0x00000004U;
0441 }
0442 inline bool CppFeatures::enum_name_uses_string_view() const {
0443   // @@protoc_insertion_point(field_get:pb.CppFeatures.enum_name_uses_string_view)
0444   return _internal_enum_name_uses_string_view();
0445 }
0446 inline void CppFeatures::set_enum_name_uses_string_view(bool value) {
0447   _internal_set_enum_name_uses_string_view(value);
0448   _impl_._has_bits_[0] |= 0x00000004U;
0449   // @@protoc_insertion_point(field_set:pb.CppFeatures.enum_name_uses_string_view)
0450 }
0451 inline bool CppFeatures::_internal_enum_name_uses_string_view() const {
0452   ::google::protobuf::internal::TSanRead(&_impl_);
0453   return _impl_.enum_name_uses_string_view_;
0454 }
0455 inline void CppFeatures::_internal_set_enum_name_uses_string_view(bool value) {
0456   ::google::protobuf::internal::TSanWrite(&_impl_);
0457   _impl_.enum_name_uses_string_view_ = value;
0458 }
0459 
0460 #ifdef __GNUC__
0461 #pragma GCC diagnostic pop
0462 #endif  // __GNUC__
0463 
0464 // @@protoc_insertion_point(namespace_scope)
0465 }  // namespace pb
0466 
0467 
0468 namespace google {
0469 namespace protobuf {
0470 
0471 template <>
0472 struct is_proto_enum<::pb::CppFeatures_StringType> : std::true_type {};
0473 template <>
0474 inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::pb::CppFeatures_StringType>() {
0475   return ::pb::CppFeatures_StringType_descriptor();
0476 }
0477 
0478 }  // namespace protobuf
0479 }  // namespace google
0480 
0481 // @@protoc_insertion_point(global_scope)
0482 
0483 #include "google/protobuf/port_undef.inc"
0484 
0485 #endif  // google_2fprotobuf_2fcpp_5ffeatures_2eproto_2epb_2eh