diff --git a/conformance/failure_list_ruby.txt b/conformance/failure_list_ruby.txt index 651cb55f57..9b5ba7f14f 100644 --- a/conformance/failure_list_ruby.txt +++ b/conformance/failure_list_ruby.txt @@ -65,3 +65,4 @@ Required.Proto3.JsonInput.IgnoreUnknownJsonNumber.ProtobufOutput Required.Proto3.JsonInput.IgnoreUnknownJsonObject.ProtobufOutput Required.Proto3.JsonInput.IgnoreUnknownJsonString.ProtobufOutput Required.Proto3.JsonInput.IgnoreUnknownJsonTrue.ProtobufOutput +Required.Proto3.JsonInput.EmptyFieldMask.JsonOutput diff --git a/conformance/failure_list_ruby_mac.txt b/conformance/failure_list_ruby_mac.txt index 3114cba878..86a5da183d 100644 --- a/conformance/failure_list_ruby_mac.txt +++ b/conformance/failure_list_ruby_mac.txt @@ -70,3 +70,4 @@ Required.Proto3.JsonInput.IgnoreUnknownJsonObject.ProtobufOutput Required.Proto3.JsonInput.IgnoreUnknownJsonString.ProtobufOutput Required.Proto3.JsonInput.IgnoreUnknownJsonTrue.ProtobufOutput Recommended.Proto3.JsonInput.FieldMaskInvalidCharacter +Required.Proto3.JsonInput.EmptyFieldMask.JsonOutput diff --git a/src/google/protobuf/any.pb.cc b/src/google/protobuf/any.pb.cc index 3ee260860b..815d20a4cc 100644 --- a/src/google/protobuf/any.pb.cc +++ b/src/google/protobuf/any.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class AnyDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _Any_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsAny_google_2fprotobuf_2fany_2eproto() { +static void InitDefaultsscc_info_Any_google_2fprotobuf_2fany_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsAny_google_2fprotobuf_2fany_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Any_google_2fprotobuf_2fany_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsAny_google_2fprotobuf_2fany_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Any_google_2fprotobuf_2fany_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fany_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fany_2eproto = nullptr; @@ -65,24 +64,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2fany_2eproto[] = "\003GPB\252\002\036Google.Protobuf.WellKnownTypesb\006p" "roto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fany_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fany_2eproto_sccs[1] = { + &scc_info_Any_google_2fprotobuf_2fany_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fany_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fany_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fany_2eproto, "google/protobuf/any.proto", 205, - &descriptor_table_google_2fprotobuf_2fany_2eproto_once, AddDescriptors_google_2fprotobuf_2fany_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fany_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fany_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fany_2eproto = { + &descriptor_table_google_2fprotobuf_2fany_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fany_2eproto, "google/protobuf/any.proto", 205, + &descriptor_table_google_2fprotobuf_2fany_2eproto_once, descriptor_table_google_2fprotobuf_2fany_2eproto_sccs, descriptor_table_google_2fprotobuf_2fany_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fany_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fany_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2fany_2eproto, file_level_service_descriptors_google_2fprotobuf_2fany_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fany_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Any_google_2fprotobuf_2fany_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fany_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fany_2eproto = []() { AddDescriptors_google_2fprotobuf_2fany_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fany_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fany_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -145,8 +142,7 @@ Any::Any(const Any& from) } void Any::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_Any_google_2fprotobuf_2fany_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Any_google_2fprotobuf_2fany_2eproto.base); type_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); } @@ -437,8 +433,7 @@ void Any::InternalSwap(Any* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Any::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fany_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fany_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/any.pb.h b/src/google/protobuf/any.pb.h index d23cf6d942..214d521c4d 100644 --- a/src/google/protobuf/any.pb.h +++ b/src/google/protobuf/any.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -53,7 +54,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fany_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fany_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fany_2eproto; PROTOBUF_NAMESPACE_OPEN class Any; class AnyDefaultTypeInternal; @@ -92,7 +93,13 @@ class PROTOBUF_EXPORT Any : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Any& default_instance(); @@ -172,6 +179,13 @@ class PROTOBUF_EXPORT Any : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fany_2eproto); + return ::descriptor_table_google_2fprotobuf_2fany_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/api.pb.cc b/src/google/protobuf/api.pb.cc index fdd155fc12..52a2e423f6 100644 --- a/src/google/protobuf/api.pb.cc +++ b/src/google/protobuf/api.pb.cc @@ -15,11 +15,10 @@ #include // @@protoc_insertion_point(includes) #include - -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fapi_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Mixin_google_2fprotobuf_2fapi_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fapi_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Method_google_2fprotobuf_2fapi_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fsource_5fcontext_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fapi_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Mixin_google_2fprotobuf_2fapi_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftype_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Option_google_2fprotobuf_2ftype_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fsource_5fcontext_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto; PROTOBUF_NAMESPACE_OPEN class ApiDefaultTypeInternal { public: @@ -34,7 +33,7 @@ class MixinDefaultTypeInternal { ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _Mixin_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsApi_google_2fprotobuf_2fapi_2eproto() { +static void InitDefaultsscc_info_Api_google_2fprotobuf_2fapi_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -46,13 +45,13 @@ static void InitDefaultsApi_google_2fprotobuf_2fapi_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<4> scc_info_Api_google_2fprotobuf_2fapi_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 4, InitDefaultsApi_google_2fprotobuf_2fapi_2eproto}, { + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 4, InitDefaultsscc_info_Api_google_2fprotobuf_2fapi_2eproto}, { &scc_info_Method_google_2fprotobuf_2fapi_2eproto.base, &scc_info_Option_google_2fprotobuf_2ftype_2eproto.base, &scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto.base, &scc_info_Mixin_google_2fprotobuf_2fapi_2eproto.base,}}; -static void InitDefaultsMethod_google_2fprotobuf_2fapi_2eproto() { +static void InitDefaultsscc_info_Method_google_2fprotobuf_2fapi_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -64,10 +63,10 @@ static void InitDefaultsMethod_google_2fprotobuf_2fapi_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Method_google_2fprotobuf_2fapi_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsMethod_google_2fprotobuf_2fapi_2eproto}, { + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_Method_google_2fprotobuf_2fapi_2eproto}, { &scc_info_Option_google_2fprotobuf_2ftype_2eproto.base,}}; -static void InitDefaultsMixin_google_2fprotobuf_2fapi_2eproto() { +static void InitDefaultsscc_info_Mixin_google_2fprotobuf_2fapi_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -79,7 +78,7 @@ static void InitDefaultsMixin_google_2fprotobuf_2fapi_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Mixin_google_2fprotobuf_2fapi_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsMixin_google_2fprotobuf_2fapi_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Mixin_google_2fprotobuf_2fapi_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fapi_2eproto[3]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fapi_2eproto = nullptr; @@ -151,28 +150,26 @@ const char descriptor_table_protodef_google_2fprotobuf_2fapi_2eproto[] = "nproto/protobuf/api;api\242\002\003GPB\252\002\036Google.P" "rotobuf.WellKnownTypesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fapi_2eproto_deps[2] = { + &::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto, + &::descriptor_table_google_2fprotobuf_2ftype_2eproto, +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fapi_2eproto_sccs[3] = { + &scc_info_Api_google_2fprotobuf_2fapi_2eproto.base, + &scc_info_Method_google_2fprotobuf_2fapi_2eproto.base, + &scc_info_Mixin_google_2fprotobuf_2fapi_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fapi_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fapi_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fapi_2eproto, "google/protobuf/api.proto", 750, - &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, AddDescriptors_google_2fprotobuf_2fapi_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fapi_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fapi_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fapi_2eproto = { + &descriptor_table_google_2fprotobuf_2fapi_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fapi_2eproto, "google/protobuf/api.proto", 750, + &descriptor_table_google_2fprotobuf_2fapi_2eproto_once, descriptor_table_google_2fprotobuf_2fapi_2eproto_sccs, descriptor_table_google_2fprotobuf_2fapi_2eproto_deps, 3, 2, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fapi_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fapi_2eproto, 3, file_level_enum_descriptors_google_2fprotobuf_2fapi_2eproto, file_level_service_descriptors_google_2fprotobuf_2fapi_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fapi_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[2] = - { - ::AddDescriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, - ::AddDescriptors_google_2fprotobuf_2ftype_2eproto, - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Api_google_2fprotobuf_2fapi_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Method_google_2fprotobuf_2fapi_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Mixin_google_2fprotobuf_2fapi_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fapi_2eproto, deps, 2); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fapi_2eproto = []() { AddDescriptors_google_2fprotobuf_2fapi_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fapi_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fapi_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -239,8 +236,7 @@ Api::Api(const Api& from) } void Api::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_Api_google_2fprotobuf_2fapi_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Api_google_2fprotobuf_2fapi_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); version_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); ::memset(&source_context_, 0, static_cast( @@ -800,8 +796,7 @@ void Api::InternalSwap(Api* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Api::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fapi_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -855,8 +850,7 @@ Method::Method(const Method& from) } void Method::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_Method_google_2fprotobuf_2fapi_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Method_google_2fprotobuf_2fapi_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); request_type_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); response_type_url_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -1400,8 +1394,7 @@ void Method::InternalSwap(Method* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Method::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fapi_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -1439,8 +1432,7 @@ Mixin::Mixin(const Mixin& from) } void Mixin::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_Mixin_google_2fprotobuf_2fapi_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Mixin_google_2fprotobuf_2fapi_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); root_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); } @@ -1743,8 +1735,7 @@ void Mixin::InternalSwap(Mixin* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Mixin::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fapi_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/api.pb.h b/src/google/protobuf/api.pb.h index 7cb4b5d570..4853593bae 100644 --- a/src/google/protobuf/api.pb.h +++ b/src/google/protobuf/api.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -54,7 +55,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fapi_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fapi_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fapi_2eproto; PROTOBUF_NAMESPACE_OPEN class Api; class ApiDefaultTypeInternal; @@ -101,7 +102,13 @@ class PROTOBUF_EXPORT Api : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Api& default_instance(); @@ -166,6 +173,13 @@ class PROTOBUF_EXPORT Api : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); + return ::descriptor_table_google_2fprotobuf_2fapi_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -289,7 +303,13 @@ class PROTOBUF_EXPORT Method : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Method& default_instance(); @@ -354,6 +374,13 @@ class PROTOBUF_EXPORT Method : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); + return ::descriptor_table_google_2fprotobuf_2fapi_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -468,7 +495,13 @@ class PROTOBUF_EXPORT Mixin : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Mixin& default_instance(); @@ -533,6 +566,13 @@ class PROTOBUF_EXPORT Mixin : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fapi_2eproto); + return ::descriptor_table_google_2fprotobuf_2fapi_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/compiler/cpp/cpp_file.cc b/src/google/protobuf/compiler/cpp/cpp_file.cc index 479d5b3686..08b9f2887a 100644 --- a/src/google/protobuf/compiler/cpp/cpp_file.cc +++ b/src/google/protobuf/compiler/cpp/cpp_file.cc @@ -58,6 +58,39 @@ namespace protobuf { namespace compiler { namespace cpp { +namespace { + +// When we forward-declare things, we want to create a sorted order so our +// output is deterministic and minimizes namespace changes. +template +std::string GetSortKey(const T& val) { + return val.full_name(); +} + +template <> +std::string GetSortKey(const FileDescriptor& val) { + return val.name(); +} + +template <> +std::string GetSortKey(const SCC& val) { + return val.GetRepresentative()->full_name(); +} + +template +bool CompareSortKeys(const T* a, const T* b) { + return GetSortKey(*a) < GetSortKey(*b); +} + +template +std::vector Sorted(const std::unordered_set& vals) { + std::vector sorted(vals.begin(), vals.end()); + std::sort(sorted.begin(), sorted.end(), CompareSortKeys); + return sorted; +} + +} // namespace + FileGenerator::FileGenerator(const FileDescriptor* file, const Options& options) : file_(file), options_(options), scc_analyzer_(options) { // These variables are the same on a file level @@ -66,12 +99,11 @@ FileGenerator::FileGenerator(const FileDescriptor* file, const Options& options) variables_["tablename"] = UniqueName("TableStruct", file_, options_); variables_["file_level_metadata"] = UniqueName("file_level_metadata", file_, options_); - variables_["desc_table"] = UniqueName("descriptor_table", file_, options_), + variables_["desc_table"] = DescriptorTableName(file_, options_); variables_["file_level_enum_descriptors"] = UniqueName("file_level_enum_descriptors", file_, options_); variables_["file_level_service_descriptors"] = UniqueName("file_level_service_descriptors", file_, options_); - variables_["add_descriptors"] = UniqueName("AddDescriptors", file_, options_); variables_["filename"] = file_->name(); variables_["package_ns"] = Namespace(file_, options); @@ -105,6 +137,13 @@ FileGenerator::FileGenerator(const FileDescriptor* file, const Options& options) for (int i = 0; i < file->weak_dependency_count(); ++i) { weak_deps_.insert(file->weak_dependency(i)); } + for (int i = 0; i < message_generators_.size(); i++) { + if (IsSCCRepresentative(message_generators_[i]->descriptor_)) { + sccs_.push_back(GetSCC(message_generators_[i]->descriptor_)); + } + } + + std::sort(sccs_.begin(), sccs_.end(), CompareSortKeys); } FileGenerator::~FileGenerator() = default; @@ -145,8 +184,7 @@ void FileGenerator::GenerateHeader(io::Printer* printer) { // port_def.inc must be included after all other includes. IncludeFile("net/proto2/public/port_def.inc", printer); - format("#define $1$$ dllexport_decl$\n", - UniqueName("PROTOBUF_INTERNAL_EXPORT", file_, options_)); + format("#define $1$$ dllexport_decl$\n", FileDllExport(file_, options_)); GenerateMacroUndefs(printer); // For Any support with lite protos, we need to friend AnyMetadata, so we @@ -405,72 +443,99 @@ void FileGenerator::GenerateSourceDefaultInstance(int idx, io::Printer* printer) { Formatter format(printer, variables_); format( - "class $1$DefaultTypeInternal {\n" + "class $1$ {\n" " public:\n" - " ::$proto_ns$::internal::ExplicitlyConstructed<$1$> _instance;\n", + " ::$proto_ns$::internal::ExplicitlyConstructed<$2$> _instance;\n", + DefaultInstanceType(message_generators_[idx]->descriptor_, options_), message_generators_[idx]->classname_); format.Indent(); message_generators_[idx]->GenerateExtraDefaultFields(printer); format.Outdent(); - format("} _$1$_default_instance_;\n", message_generators_[idx]->classname_); + format("} $1$;\n", + DefaultInstanceName(message_generators_[idx]->descriptor_, options_)); } -// Generates weak symbol declarations for types that are to be considered weakly -// referenced. -void FileGenerator::GenerateInternalForwardDeclarations( - const std::vector& fields, const Options& options, - MessageSCCAnalyzer* scc_analyzer, io::Printer* printer) { - Formatter format(printer); - // To ensure determinism and minimize the number of namespace statements, - // we output the forward declarations sorted on namespace and type / function - // name. - std::set global_namespace_decls; - // weak defaults - std::set > messages; - for (int i = 0; i < fields.size(); ++i) { - const FieldDescriptor* field = fields[i]; - const Descriptor* msg = field->message_type(); - if (msg == nullptr) continue; - bool is_weak = IsImplicitWeakField(field, options, scc_analyzer); - if (field->options().weak()) { - GOOGLE_CHECK(!options_.opensource_runtime); - is_weak = true; - } - std::string weak_attr; - if (is_weak) { - global_namespace_decls.insert( - "void " + UniqueName("AddDescriptors", msg, options_) + - "() __attribute__((weak))"); - messages.insert(std::make_pair(Namespace(msg, options_), ClassName(msg))); - weak_attr = " __attribute__((weak))"; - } - std::string dllexport = - UniqueName("PROTOBUF_INTERNAL_EXPORT", msg, options_); - if (IsWeak(field, options_)) { - dllexport = ""; +// A list of things defined in one .pb.cc file that we need to reference from +// another .pb.cc file. +struct FileGenerator::CrossFileReferences { + // Populated if we are referencing from messages or files. + std::unordered_set strong_sccs; + std::unordered_set weak_sccs; + std::unordered_set weak_default_instances; + + // Only if we are referencing from files. + std::unordered_set strong_reflection_files; + std::unordered_set weak_reflection_files; +}; + +void FileGenerator::GetCrossFileReferencesForField(const FieldDescriptor* field, + CrossFileReferences* refs) { + const Descriptor* msg = field->message_type(); + if (msg == nullptr) return; + const SCC* scc = GetSCC(msg); + + if (IsImplicitWeakField(field, options_, &scc_analyzer_) || + IsWeak(field, options_)) { + refs->weak_sccs.insert(scc); + refs->weak_default_instances.insert(msg); + } else { + refs->strong_sccs.insert(scc); + // We don't need to declare default instances, because it is declared in the + // .proto.h file we imported. + } +} + +void FileGenerator::GetCrossFileReferencesForFile(const FileDescriptor* file, + CrossFileReferences* refs) { + ForEachField(file, [this, refs](const FieldDescriptor* field) { + GetCrossFileReferencesForField(field, refs); + }); + + if (!HasDescriptorMethods(file, options_)) return; + + for (int i = 0; i < file->dependency_count(); i++) { + const FileDescriptor* dep = file->dependency(i); + if (IsDepWeak(dep)) { + refs->weak_reflection_files.insert(dep); + } else { + refs->strong_reflection_files.insert(dep); } - auto scc = scc_analyzer->GetSCC(msg); - std::string repr = - UniqueName(ClassName(scc->GetRepresentative()), msg, options_); - global_namespace_decls.insert(StrCat( - "extern ", dllexport, weak_attr, " ::", ProtobufNamespace(options), - "::internal::SCCInfo<", scc->children.size(), "> scc_info_", repr)); } +} - format("\n"); +// Generates references to variables defined in other files. +void FileGenerator::GenerateInternalForwardDeclarations( + const CrossFileReferences& refs, io::Printer* printer) { + Formatter format(printer, variables_); + + for (auto scc : Sorted(refs.strong_sccs)) { + format("extern $1$ ::$proto_ns$::internal::SCCInfo<$2$> $3$;\n", + FileDllExport(scc->GetFile(), options_), scc->children.size(), + SccInfoSymbol(scc, options_)); + } + + for (auto scc : Sorted(refs.weak_sccs)) { + format( + "extern __attribute__((weak)) ::$proto_ns$::internal::SCCInfo<$1$> " + "$2$;\n", + scc->children.size(), SccInfoSymbol(scc, options_)); + } - for (const std::string& decl : global_namespace_decls) { - format("$1$;\n", decl); + { + NamespaceOpener ns(format); + for (auto instance : Sorted(refs.weak_default_instances)) { + ns.ChangeTo(Namespace(instance, options_)); + format("extern __attribute__((weak)) $1$ $2$;\n", + DefaultInstanceType(instance, options_), + DefaultInstanceName(instance, options_)); + } } - // Weak external fields - NamespaceOpener ns(format); - for (const auto& pair : messages) { - ns.ChangeTo(pair.first); + for (auto file : Sorted(refs.weak_reflection_files)) { format( - "extern __attribute__((weak)) $1$DefaultTypeInternal " - "_$1$_default_instance_;\n", - pair.second); + "extern __attribute__((weak)) const " + "::$proto_ns$::internal::DescriptorTable $1$;\n", + DescriptorTableName(file, options_)); } } @@ -481,14 +546,15 @@ void FileGenerator::GenerateSourceForMessage(int idx, io::Printer* printer) { // Generate weak declarations. We do this for the whole strongly-connected // component (SCC), because we have a single InitDefaults* function for the // SCC. - std::vector fields; + CrossFileReferences refs; for (const Descriptor* message : scc_analyzer_.GetSCC(message_generators_[idx]->descriptor_) ->descriptors) { - ListAllFields(message, &fields); + ForEachField(message, [this, &refs](const FieldDescriptor* field) { + GetCrossFileReferencesForField(field, &refs); + }); } - GenerateInternalForwardDeclarations(fields, options_, &scc_analyzer_, - printer); + GenerateInternalForwardDeclarations(refs, printer); if (IsSCCRepresentative(message_generators_[idx]->descriptor_)) { GenerateInitForSCC(GetSCC(message_generators_[idx]->descriptor_), printer); @@ -563,10 +629,9 @@ void FileGenerator::GenerateGlobalSource(io::Printer* printer) { void FileGenerator::GenerateSource(io::Printer* printer) { Formatter format(printer, variables_); GenerateSourceIncludes(printer); - std::vector fields; - ListAllFields(file_, &fields); - GenerateInternalForwardDeclarations(fields, options_, &scc_analyzer_, - printer); + CrossFileReferences refs; + GetCrossFileReferencesForFile(file_, &refs); + GenerateInternalForwardDeclarations(refs, printer); { NamespaceOpener ns(Namespace(file_, options_), format); @@ -585,11 +650,8 @@ void FileGenerator::GenerateSource(io::Printer* printer) { GenerateTables(printer); // Now generate the InitDefaults for each SCC. - for (int i = 0; i < message_generators_.size(); i++) { - if (IsSCCRepresentative(message_generators_[i]->descriptor_)) { - GenerateInitForSCC(GetSCC(message_generators_[i]->descriptor_), - printer); - } + for (auto scc : sccs_) { + GenerateInitForSCC(scc, printer); } if (HasDescriptorMethods(file_, options_)) { @@ -654,18 +716,6 @@ void FileGenerator::GenerateSource(io::Printer* printer) { void FileGenerator::GenerateReflectionInitializationCode(io::Printer* printer) { Formatter format(printer, variables_); - // AddDescriptors() is a file-level procedure which adds the encoded - // FileDescriptorProto for this .proto file to the global DescriptorPool for - // generated files (DescriptorPool::generated_pool()). It ordinarily runs at - // static initialization time, but is not used at all in LITE_RUNTIME mode. - // - // Its sibling, AssignDescriptors(), actually pulls the compiled - // FileDescriptor from the DescriptorPool and uses it to populate all of - // the global variables which store pointers to the descriptor objects. - // It also constructs the reflection objects. It is called the first time - // anyone calls descriptor() or GetReflection() on one of the types defined - // in the file. - if (!message_generators_.empty()) { format("static ::$proto_ns$::Metadata $file_level_metadata$[$1$];\n", message_generators_.size()); @@ -796,58 +846,64 @@ void FileGenerator::GenerateReflectionInitializationCode(io::Printer* printer) { } format.Outdent(); - int num_deps = file_->dependency_count(); + CrossFileReferences refs; + GetCrossFileReferencesForFile(file_, &refs); + int num_deps = + refs.strong_reflection_files.size() + refs.weak_reflection_files.size(); - // Now generate the AddDescriptors() function. - // We have to make the once flag separate on account of MSVC 2015, which - // does not linker-initialize constexpr constructors. :( + // Build array of DescriptorTable deps. format( - "static ::$proto_ns$::internal::once_flag $desc_table$_once;\n" - "static " - "::$proto_ns$::internal::DescriptorTable $desc_table$ = {\n" - " false, $1$, \"$filename$\", $2$,\n" - " &$desc_table$_once, $add_descriptors$, schemas,\n" - " file_default_instances, $tablename$::offsets,\n" - " $file_level_metadata$, $3$, $file_level_enum_descriptors$, " - "$file_level_service_descriptors$,\n" - "};\n\n" - "void $add_descriptors$() {\n" - " static constexpr ::$proto_ns$::internal::InitFunc deps[$4$] =\n" - " {\n", - protodef_name, file_data.size(), message_generators_.size(), + "static const ::$proto_ns$::internal::DescriptorTable*const " + "$desc_table$_deps[$1$] = {\n", std::max(num_deps, 1)); - for (int i = 0; i < num_deps; i++) { - const FileDescriptor* dependency = file_->dependency(i); - format(" ::$1$,\n", UniqueName("AddDescriptors", dependency, options_)); + + for (auto dep : Sorted(refs.strong_reflection_files)) { + format(" &::$1$,\n", DescriptorTableName(dep, options_)); } - format(" };\n"); - // Reflection referes to the default instances so make sure they are - // initialized. - for (int i = 0; i < message_generators_.size(); i++) { - if (!IsSCCRepresentative(message_generators_[i]->descriptor_)) continue; - std::string scc_name = - UniqueName(ClassName(message_generators_[i]->descriptor_), - message_generators_[i]->descriptor_, options_); - format(" ::$proto_ns$::internal::InitSCC(&scc_info_$1$.base);\n", - scc_name); + for (auto dep : Sorted(refs.weak_reflection_files)) { + format(" &::$1$,\n", DescriptorTableName(dep, options_)); + } + + format("};\n"); + + // Build array of SCCs from this file. + format( + "static ::$proto_ns$::internal::SCCInfoBase*const " + "$desc_table$_sccs[$1$] = {\n", + std::max(sccs_.size(), 1)); + + for (auto scc : sccs_) { + format(" &$1$.base,\n", SccInfoSymbol(scc, options_)); } + + format("};\n"); + + // The DescriptorTable itself. format( - " ::$proto_ns$::internal::AddDescriptors(&$desc_table$, deps, $1$);\n" - "}\n\n", - num_deps); // 1 + "static ::$proto_ns$::internal::once_flag $desc_table$_once;\n" + "static bool $desc_table$_initialized = false;\n" + "const ::$proto_ns$::internal::DescriptorTable $desc_table$ = {\n" + " &$desc_table$_initialized, $1$, \"$filename$\", $2$,\n" + " &$desc_table$_once, $desc_table$_sccs, $desc_table$_deps, $3$, $4$,\n" + " schemas, file_default_instances, $tablename$::offsets,\n" + " $file_level_metadata$, $5$, $file_level_enum_descriptors$, " + "$file_level_service_descriptors$,\n" + "};\n\n", + protodef_name, file_data.size(), sccs_.size(), num_deps, + message_generators_.size()); + format( "// Force running AddDescriptors() at dynamic initialization time.\n" - "static bool $1$ = []() { $add_descriptors$(); return true; }();\n", + "static bool $1$ = (" + " ::$proto_ns$::internal::AddDescriptors(&$desc_table$), true);\n", UniqueName("dynamic_init_dummy", file_, options_)); } void FileGenerator::GenerateInitForSCC(const SCC* scc, io::Printer* printer) { Formatter format(printer, variables_); - const std::string scc_name = ClassName(scc->GetRepresentative()); // We use static and not anonymous namespace because symbol names are // substantially shorter. - format("static void InitDefaults$1$() {\n", - UniqueName(scc_name, scc->GetRepresentative(), options_)); + format("static void InitDefaults$1$() {\n", SccInfoSymbol(scc, options_)); if (options_.opensource_runtime) { format(" GOOGLE_PROTOBUF_VERIFY_VERSION;\n\n"); @@ -867,7 +923,8 @@ void FileGenerator::GenerateInitForSCC(const SCC* scc, io::Printer* printer) { "{\n" " void* ptr = &$1$;\n" " new (ptr) $2$();\n", - DefaultInstanceName(message_generators_[i]->descriptor_, options_), + QualifiedDefaultInstanceName(message_generators_[i]->descriptor_, + options_), QualifiedClassName(message_generators_[i]->descriptor_, options_)); if (options_.opensource_runtime && !IsMapEntryMessage(message_generators_[i]->descriptor_)) { @@ -893,18 +950,14 @@ void FileGenerator::GenerateInitForSCC(const SCC* scc, io::Printer* printer) { format("}\n\n"); format( - "$dllexport_decl $::$proto_ns$::internal::SCCInfo<$1$> " - "scc_info_$2$ =\n" + "$dllexport_decl $::$proto_ns$::internal::SCCInfo<$1$> $2$ =\n" " " "{{ATOMIC_VAR_INIT(::$proto_ns$::internal::SCCInfoBase::kUninitialized), " "$1$, InitDefaults$2$}, {", scc->children.size(), // 1 - UniqueName(ClassName(scc->GetRepresentative()), scc->GetRepresentative(), - options_)); + SccInfoSymbol(scc, options_)); for (const SCC* child : scc->children) { - auto repr = child->GetRepresentative(); - format("\n &scc_info_$1$.base,", - UniqueName(ClassName(repr), repr, options_)); + format("\n &$1$.base,", SccInfoSymbol(child, options_)); } format("}};\n\n"); } @@ -1038,10 +1091,10 @@ class FileGenerator::ForwardDeclarations { const Descriptor* class_desc = p.second; format( "class ${1$$2$$}$;\n" - "class $2$DefaultTypeInternal;\n" - "$dllexport_decl $extern " - "$2$DefaultTypeInternal _$2$_default_instance_;\n", - class_desc, classname); + "class $3$;\n" + "$dllexport_decl $extern $3$ $4$;\n", + class_desc, classname, DefaultInstanceType(class_desc, options), + DefaultInstanceName(class_desc, options)); if (options.lite_implicit_weak_fields) { format("void $1$_ReferenceStrong();\n", classname); } @@ -1194,6 +1247,7 @@ void FileGenerator::GenerateLibraryIncludes(io::Printer* printer) { if (HasDescriptorMethods(file_, options_)) { IncludeFile("net/proto2/public/metadata.h", printer); + IncludeFile("net/proto2/public/generated_message_reflection.h", printer); } else { IncludeFile("net/proto2/public/metadata_lite.h", printer); } @@ -1291,8 +1345,8 @@ void FileGenerator::GenerateDependencyIncludes(io::Printer* printer) { void FileGenerator::GenerateGlobalStateFunctionDeclarations( io::Printer* printer) { Formatter format(printer, variables_); - // Forward-declare the AddDescriptors, InitDefaults because these are called - // by .pb.cc files depending on this file. + // Forward-declare the DescriptorTable because this is referenced by .pb.cc + // files depending on this file. // // The TableStruct is also outputted in weak_message_field.cc, because the // weak fields must refer to table struct but cannot include the header. @@ -1317,7 +1371,9 @@ void FileGenerator::GenerateGlobalStateFunctionDeclarations( "};\n", std::max(size_t(1), message_generators_.size())); if (HasDescriptorMethods(file_, options_)) { - format("void $dllexport_decl $$add_descriptors$();\n"); + format( + "extern $dllexport_decl $const ::$proto_ns$::internal::DescriptorTable " + "$desc_table$;\n"); } } diff --git a/src/google/protobuf/compiler/cpp/cpp_file.h b/src/google/protobuf/compiler/cpp/cpp_file.h index ca9067297c..33734c5418 100644 --- a/src/google/protobuf/compiler/cpp/cpp_file.h +++ b/src/google/protobuf/compiler/cpp/cpp_file.h @@ -90,6 +90,7 @@ class FileGenerator { private: // Internal type used by GenerateForwardDeclarations (defined in file.cc). class ForwardDeclarations; + struct CrossFileReferences; void IncludeFile(const std::string& google3_name, io::Printer* printer) { DoIncludeFile(google3_name, false, printer); @@ -103,9 +104,12 @@ class FileGenerator { std::string CreateHeaderInclude(const std::string& basename, const FileDescriptor* file); - void GenerateInternalForwardDeclarations( - const std::vector& fields, const Options& options, - MessageSCCAnalyzer* scc_analyzer, io::Printer* printer); + void GetCrossFileReferencesForField(const FieldDescriptor* field, + CrossFileReferences* refs); + void GetCrossFileReferencesForFile(const FileDescriptor* file, + CrossFileReferences* refs); + void GenerateInternalForwardDeclarations(const CrossFileReferences& refs, + io::Printer* printer); void GenerateSourceIncludes(io::Printer* printer); void GenerateSourceDefaultInstance(int idx, io::Printer* printer); @@ -174,6 +178,7 @@ class FileGenerator { } std::set weak_deps_; + std::vector sccs_; const FileDescriptor* file_; const Options options_; diff --git a/src/google/protobuf/compiler/cpp/cpp_helpers.cc b/src/google/protobuf/compiler/cpp/cpp_helpers.cc index ef787234b8..17476f1a86 100644 --- a/src/google/protobuf/compiler/cpp/cpp_helpers.cc +++ b/src/google/protobuf/compiler/cpp/cpp_helpers.cc @@ -376,11 +376,29 @@ std::string Namespace(const EnumDescriptor* d, const Options& options) { return Namespace(d->file(), options); } +std::string DefaultInstanceType(const Descriptor* descriptor, + const Options& options) { + return ClassName(descriptor) + "DefaultTypeInternal"; +} + std::string DefaultInstanceName(const Descriptor* descriptor, const Options& options) { + return "_" + ClassName(descriptor, false) + "_default_instance_"; +} + +std::string QualifiedDefaultInstanceName(const Descriptor* descriptor, + const Options& options) { return QualifiedFileLevelSymbol( - descriptor->file(), - "_" + ClassName(descriptor, false) + "_default_instance_", options); + descriptor->file(), DefaultInstanceName(descriptor, options), options); +} + +std::string DescriptorTableName(const FileDescriptor* file, + const Options& options) { + return UniqueName("descriptor_table", file, options); +} + +std::string FileDllExport(const FileDescriptor* file, const Options& options) { + return UniqueName("PROTOBUF_INTERNAL_EXPORT", file, options); } std::string ReferenceFunctionName(const Descriptor* descriptor, diff --git a/src/google/protobuf/compiler/cpp/cpp_helpers.h b/src/google/protobuf/compiler/cpp/cpp_helpers.h index f4cf005cd3..7b994ef858 100644 --- a/src/google/protobuf/compiler/cpp/cpp_helpers.h +++ b/src/google/protobuf/compiler/cpp/cpp_helpers.h @@ -125,10 +125,26 @@ inline std::string ClassName(const EnumDescriptor* descriptor, bool qualified) { : ClassName(descriptor); } -// Fully qualified name of the default_instance of this message. +// Type name of default instance. +std::string DefaultInstanceType(const Descriptor* descriptor, + const Options& options); + +// Non-qualified name of the default_instance of this message. std::string DefaultInstanceName(const Descriptor* descriptor, const Options& options); +// Fully qualified name of the default_instance of this message. +std::string QualifiedDefaultInstanceName(const Descriptor* descriptor, + const Options& options); + +// DescriptorTable variable name. +std::string DescriptorTableName(const FileDescriptor* file, + const Options& options); + +// When declaring symbol externs from another file, this macro will supply the +// dllexport needed for the target file, if any. +std::string FileDllExport(const FileDescriptor* file, const Options& options); + // Returns the name of a no-op function that we can call to introduce a linker // dependency on the given message type. This is used to implement implicit weak // fields. @@ -536,10 +552,39 @@ class PROTOC_EXPORT MessageSCCAnalyzer { std::map analysis_cache_; }; +inline std::string SccInfoSymbol(const SCC* scc, const Options& options) { + return UniqueName("scc_info_" + ClassName(scc->GetRepresentative()), + scc->GetRepresentative(), options); +} + void ListAllFields(const Descriptor* d, std::vector* fields); void ListAllFields(const FileDescriptor* d, std::vector* fields); + +template +void ForEachField(const Descriptor* d, T&& func) { + for (int i = 0; i < d->nested_type_count(); i++) { + ForEachField(d->nested_type(i), std::forward(func)); + } + for (int i = 0; i < d->extension_count(); i++) { + func(d->extension(i)); + } + for (int i = 0; i < d->field_count(); i++) { + func(d->field(i)); + } +} + +template +void ForEachField(const FileDescriptor* d, T&& func) { + for (int i = 0; i < d->message_type_count(); i++) { + ForEachField(d->message_type(i), std::forward(func)); + } + for (int i = 0; i < d->extension_count(); i++) { + func(d->extension(i)); + } +} + void ListAllTypesForServices(const FileDescriptor* fd, std::vector* types); diff --git a/src/google/protobuf/compiler/cpp/cpp_message.cc b/src/google/protobuf/compiler/cpp/cpp_message.cc index e8e74c9354..d68c0f7664 100644 --- a/src/google/protobuf/compiler/cpp/cpp_message.cc +++ b/src/google/protobuf/compiler/cpp/cpp_message.cc @@ -523,10 +523,11 @@ const double kColdRatio = 0.005; bool ColdChunkSkipper::IsColdChunk(int chunk) { // Mark this variable as used until it is actually used - (void) cold_threshold_; + (void)cold_threshold_; return false; } + void ColdChunkSkipper::OnStartChunk(int chunk, int cached_has_bit_index, const std::string& from, io::Printer* printer) { @@ -617,9 +618,8 @@ MessageGenerator::MessageGenerator( // Variables that apply to this class variables_["classname"] = classname_; variables_["classtype"] = QualifiedClassName(descriptor_, options); - std::string scc_name = - ClassName(scc_analyzer_->GetSCC(descriptor_)->GetRepresentative()); - variables_["scc_name"] = UniqueName(scc_name, descriptor_, options_); + variables_["scc_info"] = + SccInfoSymbol(scc_analyzer_->GetSCC(descriptor_), options_); variables_["full_name"] = descriptor_->full_name(); variables_["superclass"] = SuperClassName(descriptor_, options_); @@ -1008,8 +1008,16 @@ void MessageGenerator::GenerateClassDefinition(io::Printer* printer) { if (HasDescriptorMethods(descriptor_->file(), options_)) { format( " void MergeFrom(const ::$proto_ns$::Message& other) final;\n" - " ::$proto_ns$::Metadata GetMetadata() const;\n" - "};\n"); + " ::$proto_ns$::Metadata GetMetadata() const final;\n" + " private:\n" + " static ::$proto_ns$::Metadata GetMetadataStatic() {\n" + " ::$proto_ns$::internal::AssignDescriptors(&::$desc_table$);\n" + " return ::$desc_table$.file_level_metadata[$1$];\n" + " }\n" + "\n" + " public:\n" + "};\n", + index_in_file_messages_); } else { format("};\n"); } @@ -1090,7 +1098,25 @@ void MessageGenerator::GenerateClassDefinition(io::Printer* printer) { !descriptor_->options().no_standard_descriptor_accessor()) { format( "static const ::$proto_ns$::Descriptor* descriptor() {\n" - " return default_instance().GetDescriptor();\n" + " return GetDescriptor();\n" + "}\n"); + } + + if (HasDescriptorMethods(descriptor_->file(), options_)) { + // These shadow non-static methods of the same names in Message. We + // redefine them here because calls directly on the generated class can be + // statically analyzed -- we know what descriptor types are being requested. + // It also avoids a vtable dispatch. + // + // We would eventually like to eliminate the methods in Message, and having + // this separate also lets us track calls to the base class methods + // separately. + format( + "static const ::$proto_ns$::Descriptor* GetDescriptor() {\n" + " return GetMetadataStatic().descriptor;\n" + "}\n" + "static const ::$proto_ns$::Reflection* GetReflection() {\n" + " return GetMetadataStatic().reflection;\n" "}\n"); } @@ -1301,6 +1327,13 @@ void MessageGenerator::GenerateClassDefinition(io::Printer* printer) { if (HasDescriptorMethods(descriptor_->file(), options_)) { format( "::$proto_ns$::Metadata GetMetadata() const final;\n" + "private:\n" + "static ::$proto_ns$::Metadata GetMetadataStatic() {\n" + " ::$proto_ns$::internal::AssignDescriptors(&::$desc_table$);\n" + " return ::$desc_table$.file_level_metadata[kIndexInFileMessages];\n" + "}\n" + "\n" + "public:\n" "\n"); } else { format( @@ -1870,7 +1903,8 @@ void MessageGenerator::GenerateDefaultInstanceInitializer( " $package_ns$::$name$_ = " "::$proto_ns$::Empty::internal_default_instance();\n" "}\n", - DefaultInstanceName(field->message_type(), options_)); // 1 + QualifiedDefaultInstanceName(field->message_type(), + options_)); // 1 continue; } format( @@ -1897,11 +1931,8 @@ void MessageGenerator::GenerateClassMethods(io::Printer* printer) { if (HasDescriptorMethods(descriptor_->file(), options_)) { format( "::$proto_ns$::Metadata $classname$::GetMetadata() const {\n" - " " - "::$proto_ns$::internal::AssignDescriptors(&::$desc_table$);\n" - " return ::$file_level_metadata$[$1$];\n" - "}\n", - index_in_file_messages_); + " return GetMetadataStatic();\n" + "}\n"); format( "void $classname$::MergeFrom(\n" " const ::$proto_ns$::Message& other) {\n" @@ -2053,8 +2084,7 @@ void MessageGenerator::GenerateClassMethods(io::Printer* printer) { if (HasDescriptorMethods(descriptor_->file(), options_)) { format( "::$proto_ns$::Metadata $classname$::GetMetadata() const {\n" - " ::$proto_ns$::internal::AssignDescriptors(&::$desc_table$);\n" - " return ::$file_level_metadata$[kIndexInFileMessages];\n" + " return GetMetadataStatic();\n" "}\n" "\n"); } else { @@ -2222,8 +2252,8 @@ size_t MessageGenerator::GenerateParseAuxTable(io::Printer* printer) { break; } format.Set("field_classname", ClassName(field->message_type(), false)); - format.Set("default_instance", - DefaultInstanceName(field->message_type(), options_)); + format.Set("default_instance", QualifiedDefaultInstanceName( + field->message_type(), options_)); format( "{::$proto_ns$::internal::AuxillaryParseTableField::message_aux{\n" @@ -2337,9 +2367,7 @@ void MessageGenerator::GenerateSharedConstructorCode(io::Printer* printer) { format("void $classname$::SharedCtor() {\n"); if (scc_analyzer_->GetSCCAnalysis(scc_analyzer_->GetSCC(descriptor_)) .constructor_requires_initialization) { - format( - " ::$proto_ns$::internal::InitSCC(\n" - " &scc_info_$scc_name$.base);\n"); + format(" ::$proto_ns$::internal::InitSCC(&$scc_info$.base);\n"); } format.Indent(); @@ -2696,7 +2724,7 @@ void MessageGenerator::GenerateStructors(io::Printer* printer) { format( "const $classname$& $classname$::default_instance() {\n" " " - "::$proto_ns$::internal::InitSCC(&::scc_info_$scc_name$.base)" + "::$proto_ns$::internal::InitSCC(&::$scc_info$.base)" ";\n" " return *internal_default_instance();\n" "}\n\n"); diff --git a/src/google/protobuf/compiler/cpp/cpp_message_field.cc b/src/google/protobuf/compiler/cpp/cpp_message_field.cc index aba36efad5..8ba8c5690c 100644 --- a/src/google/protobuf/compiler/cpp/cpp_message_field.cc +++ b/src/google/protobuf/compiler/cpp/cpp_message_field.cc @@ -62,7 +62,7 @@ void SetMessageVariables(const FieldDescriptor* descriptor, (*variables)["casted_member"] = ReinterpretCast( (*variables)["type"] + "*", (*variables)["name"] + "_", implicit_weak); (*variables)["type_default_instance"] = - DefaultInstanceName(descriptor->message_type(), options); + QualifiedDefaultInstanceName(descriptor->message_type(), options); (*variables)["type_reference_function"] = implicit_weak ? (" " + ReferenceFunctionName(descriptor->message_type(), options) + diff --git a/src/google/protobuf/compiler/parser.cc b/src/google/protobuf/compiler/parser.cc index c96fc174a2..235c10249b 100644 --- a/src/google/protobuf/compiler/parser.cc +++ b/src/google/protobuf/compiler/parser.cc @@ -114,6 +114,49 @@ std::string MapEntryName(const std::string& field_name) { return result; } +bool IsUppercase(char c) { return c >= 'A' && c <= 'Z'; } + +bool IsLowercase(char c) { return c >= 'a' && c <= 'z'; } + +bool IsNumber(char c) { return c >= '0' && c <= '9'; } + +bool IsUpperCamelCase(const string& name) { + if (name.empty()) { + return true; + } + // Name must start with an upper case character. + if (!IsUppercase(name[0])) { + return false; + } + // Must not contains underscore. + for (int i = 1; i < name.length(); i++) { + if (name[i] == '_') { + return false; + } + } + return true; +} + +bool IsUpperUnderscore(const string& name) { + for (int i = 0; i < name.length(); i++) { + const char c = name[i]; + if (!IsUppercase(c) && c != '_' && !IsNumber(c)) { + return false; + } + } + return true; +} + +bool IsLowerUnderscore(const string& name) { + for (int i = 0; i < name.length(); i++) { + const char c = name[i]; + if (!IsLowercase(c) && c != '_' && !IsNumber(c)) { + return false; + } + } + return true; +} + } // anonymous namespace // Makes code slightly more readable. The meaning of "DO(foo)" is @@ -335,6 +378,13 @@ void Parser::AddError(const std::string& error) { AddError(input_->current().line, input_->current().column, error); } +void Parser::AddWarning(const string& warning) { + if (error_collector_ != nullptr) { + error_collector_->AddWarning(input_->current().line, + input_->current().column, warning); + } +} + // ------------------------------------------------------------------- Parser::LocationRecorder::LocationRecorder(Parser* parser) @@ -516,7 +566,7 @@ bool Parser::ValidateEnum(const EnumDescriptorProto* proto) { std::set used_values; bool has_duplicates = false; for (int i = 0; i < proto->value_size(); ++i) { - const EnumValueDescriptorProto enum_value = proto->value(i); + const EnumValueDescriptorProto& enum_value = proto->value(i); if (used_values.find(enum_value.number()) != used_values.end()) { has_duplicates = true; break; @@ -536,6 +586,19 @@ bool Parser::ValidateEnum(const EnumDescriptorProto* proto) { return false; } + // Enforce that enum constants must be UPPER_CASE except in case of + // enum_alias. + if (!allow_alias) { + for (const auto& enum_value : proto->value()) { + if (!IsUpperUnderscore(enum_value.name())) { + AddWarning( + "Enum constant should be in UPPER_CASE. Found: " + + enum_value.name() + + ". See https://developers.google.com/protocol-buffers/docs/style"); + } + } + } + return true; } @@ -685,6 +748,12 @@ bool Parser::ParseMessageDefinition( location.RecordLegacyLocation(message, DescriptorPool::ErrorCollector::NAME); DO(ConsumeIdentifier(message->mutable_name(), "Expected message name.")); + if (!IsUpperCamelCase(message->name())) { + AddWarning( + "Message name should be in UpperCamelCase. Found: " + + message->name() + + ". See https://developers.google.com/protocol-buffers/docs/style"); + } } DO(ParseMessageBlock(message, message_location, containing_file)); return true; @@ -929,6 +998,12 @@ bool Parser::ParseMessageFieldNoLabel( FieldDescriptorProto::kNameFieldNumber); location.RecordLegacyLocation(field, DescriptorPool::ErrorCollector::NAME); DO(ConsumeIdentifier(field->mutable_name(), "Expected field name.")); + + if (!IsLowerUnderscore(field->name())) { + AddWarning( + "Field name should be lowercase. Found: " + field->name() + + ". See: https://developers.google.com/protocol-buffers/docs/style"); + } } DO(Consume("=", "Missing field number.")); diff --git a/src/google/protobuf/compiler/parser.h b/src/google/protobuf/compiler/parser.h index 6ec19a1f19..9e2dc5f532 100644 --- a/src/google/protobuf/compiler/parser.h +++ b/src/google/protobuf/compiler/parser.h @@ -206,6 +206,10 @@ class PROTOBUF_EXPORT Parser { // of the current token. void AddError(const std::string& error); + // Invokes error_collector_->AddWarning() with the line and column number + // of the current token. + void AddWarning(const string& warning); + // Records a location in the SourceCodeInfo.location table (see // descriptor.proto). We use RAII to ensure that the start and end locations // are recorded -- the constructor records the start location and the diff --git a/src/google/protobuf/compiler/plugin.pb.cc b/src/google/protobuf/compiler/plugin.pb.cc index bdda945adc..33c5ec16d2 100644 --- a/src/google/protobuf/compiler/plugin.pb.cc +++ b/src/google/protobuf/compiler/plugin.pb.cc @@ -15,10 +15,9 @@ #include // @@protoc_insertion_point(includes) #include - +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fcompiler_2fplugin_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fcompiler_2fplugin_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; PROTOBUF_NAMESPACE_OPEN namespace compiler { class VersionDefaultTypeInternal { @@ -39,37 +38,38 @@ class CodeGeneratorResponseDefaultTypeInternal { } _CodeGeneratorResponse_default_instance_; } // namespace compiler PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsVersion_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { +static void InitDefaultsscc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_Version_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::compiler::Version(); + void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_CodeGeneratorRequest_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorRequest(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::compiler::Version::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorRequest::InitAsDefaultInstance(); } -PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsVersion_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, {}}; +PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsscc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, { + &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base,}}; -static void InitDefaultsCodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { +static void InitDefaultsscc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_CodeGeneratorRequest_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorRequest(); + void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_CodeGeneratorResponse_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorRequest::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse::InitAsDefaultInstance(); } -PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsCodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, { - &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base,}}; +PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, { + &scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base,}}; -static void InitDefaultsCodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { +static void InitDefaultsscc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -81,22 +81,21 @@ static void InitDefaultsCodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_ } PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsCodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, {}}; -static void InitDefaultsCodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { +static void InitDefaultsscc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_CodeGeneratorResponse_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse(); + void* ptr = &PROTOBUF_NAMESPACE_ID::compiler::_Version_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::compiler::Version(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::compiler::CodeGeneratorResponse::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::compiler::Version::InitAsDefaultInstance(); } -PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsCodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, { - &scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base,}}; +PROTOC_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto[4]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto = nullptr; @@ -182,28 +181,26 @@ const char descriptor_table_protodef_google_2fprotobuf_2fcompiler_2fplugin_2epro "pilerB\014PluginProtosZ9github.com/golang/p" "rotobuf/protoc-gen-go/plugin;plugin_go" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_deps[1] = { + &::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto, +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_sccs[4] = { + &scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base, + &scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base, + &scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base, + &scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fcompiler_2fplugin_2eproto, "google/protobuf/compiler/plugin.proto", 638, - &descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_once, AddDescriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto = { + &descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fcompiler_2fplugin_2eproto, "google/protobuf/compiler/plugin.proto", 638, + &descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_once, descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_sccs, descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto_deps, 4, 1, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto, 4, file_level_enum_descriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto, file_level_service_descriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - ::AddDescriptors_google_2fprotobuf_2fdescriptor_2eproto, - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto, deps, 1); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fcompiler_2fplugin_2eproto = []() { AddDescriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fcompiler_2fplugin_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto), true); PROTOBUF_NAMESPACE_OPEN namespace compiler { @@ -256,8 +253,7 @@ Version::Version(const Version& from) } void Version::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Version_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); suffix_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); ::memset(&major_, 0, static_cast( reinterpret_cast(&patch_) - @@ -651,8 +647,7 @@ void Version::InternalSwap(Version* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Version::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -713,8 +708,7 @@ CodeGeneratorRequest::CodeGeneratorRequest(const CodeGeneratorRequest& from) } void CodeGeneratorRequest::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorRequest_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); parameter_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); compiler_version_ = nullptr; } @@ -1137,8 +1131,7 @@ void CodeGeneratorRequest::InternalSwap(CodeGeneratorRequest* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata CodeGeneratorRequest::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -1192,8 +1185,7 @@ CodeGeneratorResponse_File::CodeGeneratorResponse_File(const CodeGeneratorRespon } void CodeGeneratorResponse_File::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorResponse_File_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); insertion_point_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); content_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -1576,8 +1568,7 @@ void CodeGeneratorResponse_File::InternalSwap(CodeGeneratorResponse_File* other) } ::PROTOBUF_NAMESPACE_ID::Metadata CodeGeneratorResponse_File::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -1617,8 +1608,7 @@ CodeGeneratorResponse::CodeGeneratorResponse(const CodeGeneratorResponse& from) } void CodeGeneratorResponse::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_CodeGeneratorResponse_google_2fprotobuf_2fcompiler_2fplugin_2eproto.base); error_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); } @@ -1926,8 +1916,7 @@ void CodeGeneratorResponse::InternalSwap(CodeGeneratorResponse* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata CodeGeneratorResponse::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fcompiler_2fplugin_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/compiler/plugin.pb.h b/src/google/protobuf/compiler/plugin.pb.h index ce56e96e02..9ebd29e13a 100644 --- a/src/google/protobuf/compiler/plugin.pb.h +++ b/src/google/protobuf/compiler/plugin.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -59,7 +60,7 @@ struct PROTOC_EXPORT TableStruct_google_2fprotobuf_2fcompiler_2fplugin_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOC_EXPORT AddDescriptors_google_2fprotobuf_2fcompiler_2fplugin_2eproto(); +extern PROTOC_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto; PROTOBUF_NAMESPACE_OPEN namespace compiler { class CodeGeneratorRequest; @@ -120,7 +121,13 @@ class PROTOC_EXPORT Version : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Version& default_instance(); @@ -185,6 +192,13 @@ class PROTOC_EXPORT Version : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); + return ::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -272,7 +286,13 @@ class PROTOC_EXPORT CodeGeneratorRequest : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const CodeGeneratorRequest& default_instance(); @@ -337,6 +357,13 @@ class PROTOC_EXPORT CodeGeneratorRequest : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); + return ::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -442,7 +469,13 @@ class PROTOC_EXPORT CodeGeneratorResponse_File : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const CodeGeneratorResponse_File& default_instance(); @@ -507,6 +540,13 @@ class PROTOC_EXPORT CodeGeneratorResponse_File : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); + return ::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -598,7 +638,13 @@ class PROTOC_EXPORT CodeGeneratorResponse : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const CodeGeneratorResponse& default_instance(); @@ -663,6 +709,13 @@ class PROTOC_EXPORT CodeGeneratorResponse : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto); + return ::descriptor_table_google_2fprotobuf_2fcompiler_2fplugin_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/compiler/scc.h b/src/google/protobuf/compiler/scc.h index 6243048f03..a1394602f7 100644 --- a/src/google/protobuf/compiler/scc.h +++ b/src/google/protobuf/compiler/scc.h @@ -51,6 +51,9 @@ struct SCC { std::vector children; const Descriptor* GetRepresentative() const { return descriptors[0]; } + + // All messages must necessarily be in the same file. + const FileDescriptor* GetFile() const { return descriptors[0]->file(); } }; // This class is used for analyzing the SCC for each message, to ensure linear diff --git a/src/google/protobuf/descriptor.pb.cc b/src/google/protobuf/descriptor.pb.cc index c7bd3a13d6..1564ebc869 100644 --- a/src/google/protobuf/descriptor.pb.cc +++ b/src/google/protobuf/descriptor.pb.cc @@ -15,32 +15,31 @@ #include // @@protoc_insertion_point(includes) #include - +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fdescriptor_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto; PROTOBUF_NAMESPACE_OPEN class FileDescriptorSetDefaultTypeInternal { public: @@ -151,42 +150,27 @@ class GeneratedCodeInfoDefaultTypeInternal { ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _GeneratedCodeInfo_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsFileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto() { - GOOGLE_PROTOBUF_VERIFY_VERSION; - - { - void* ptr = &PROTOBUF_NAMESPACE_ID::_FileDescriptorSet_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::FileDescriptorSet(); - ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); - } - PROTOBUF_NAMESPACE_ID::FileDescriptorSet::InitAsDefaultInstance(); -} - -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base,}}; - -static void InitDefaultsFileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_FileDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::FileDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_DescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::DescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::FileDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::DescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 6, InitDefaultsFileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 6, InitDefaultsscc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base,}}; + &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsDescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -198,10 +182,10 @@ static void InitDefaultsDescriptorProto_ExtensionRange_google_2fprotobuf_2fdescr } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsDescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto}, { + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsDescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -213,151 +197,165 @@ static void InitDefaultsDescriptorProto_ReservedRange_google_2fprotobuf_2fdescri } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsDescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto}, {}}; -static void InitDefaultsDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_DescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::DescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::EnumDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::DescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 6, InitDefaultsDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsscc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_ExtensionRangeOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumDescriptorProto_EnumReservedRange_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto}, { +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto}, {}}; + +static void InitDefaultsscc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + + { + void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::EnumOptions(); + ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); + } + PROTOBUF_NAMESPACE_ID::EnumOptions::InitAsDefaultInstance(); +} + +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsFieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_FieldDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::FieldDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumValueDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::FieldDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsOneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_OneofDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::OneofDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumValueOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::EnumValueOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::OneofDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::EnumValueOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsOneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsEnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumDescriptorProto_EnumReservedRange_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_ExtensionRangeOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::EnumDescriptorProto_EnumReservedRange::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::ExtensionRangeOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsEnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto}, {}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsEnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::EnumDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_FieldDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::FieldDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::EnumDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::FieldDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<3> scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 3, InitDefaultsEnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsEnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumValueDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_FieldOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::FieldOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::EnumValueDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::FieldOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsEnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_ServiceDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_FileDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::FileDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::FileDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, - &scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<6> scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 6, InitDefaultsscc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsMethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_MethodDescriptorProto_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::MethodDescriptorProto(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_FileDescriptorSet_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::FileDescriptorSet(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::MethodDescriptorProto::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::FileDescriptorSet::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsMethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsFileOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -369,200 +367,201 @@ static void InitDefaultsFileOptions_google_2fprotobuf_2fdescriptor_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFileOptions_google_2fprotobuf_2fdescriptor_2eproto}, { + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsMessageOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_MessageOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::MessageOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_GeneratedCodeInfo_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::MessageOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsMessageOptions_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsFieldOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_FieldOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::FieldOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_GeneratedCodeInfo_Annotation_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::FieldOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsFieldOptions_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto}, {}}; -static void InitDefaultsOneofOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_OneofOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::OneofOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_MessageOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::MessageOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::OneofOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::MessageOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsOneofOptions_google_2fprotobuf_2fdescriptor_2eproto}, { +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsEnumOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::EnumOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_MethodDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::MethodDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::EnumOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::MethodDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsEnumOptions_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsEnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_EnumValueOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::EnumValueOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_MethodOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::MethodOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::EnumValueOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::MethodOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsEnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto}, { +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsServiceOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_ServiceOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::ServiceOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_OneofDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::OneofDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::ServiceOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::OneofDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsServiceOptions_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsMethodOptions_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_MethodOptions_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::MethodOptions(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_OneofOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::OneofOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::MethodOptions::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::OneofOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsMethodOptions_google_2fprotobuf_2fdescriptor_2eproto}, { +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto}, { &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsUninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_UninterpretedOption_NamePart_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_ServiceDescriptorProto_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::ServiceDescriptorProto::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsUninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto}, {}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<2> scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 2, InitDefaultsscc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsUninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_UninterpretedOption_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::UninterpretedOption(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_ServiceOptions_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::ServiceOptions(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::UninterpretedOption::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::ServiceOptions::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsUninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsSourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_SourceCodeInfo_Location_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_SourceCodeInfo_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::SourceCodeInfo(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::SourceCodeInfo::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsSourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto}, {}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsSourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_SourceCodeInfo_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::SourceCodeInfo(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_SourceCodeInfo_Location_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::SourceCodeInfo::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::SourceCodeInfo_Location::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsSourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto}, {}}; -static void InitDefaultsGeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_GeneratedCodeInfo_Annotation_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_UninterpretedOption_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::UninterpretedOption(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo_Annotation::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsGeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto}, {}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsscc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto}, { + &scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base,}}; -static void InitDefaultsGeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto() { +static void InitDefaultsscc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { - void* ptr = &PROTOBUF_NAMESPACE_ID::_GeneratedCodeInfo_default_instance_; - new (ptr) PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo(); + void* ptr = &PROTOBUF_NAMESPACE_ID::_UninterpretedOption_NamePart_default_instance_; + new (ptr) PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart(); ::PROTOBUF_NAMESPACE_ID::internal::OnShutdownDestroyMessage(ptr); } - PROTOBUF_NAMESPACE_ID::GeneratedCodeInfo::InitAsDefaultInstance(); + PROTOBUF_NAMESPACE_ID::UninterpretedOption_NamePart::InitAsDefaultInstance(); } -PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 1, InitDefaultsGeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto}, { - &scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base,}}; +PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto = + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[27]; static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_google_2fprotobuf_2fdescriptor_2eproto[6]; @@ -1166,50 +1165,48 @@ const char descriptor_table_protodef_google_2fprotobuf_2fdescriptor_2eproto[] = "go/descriptor;descriptor\370\001\001\242\002\003GPB\252\002\032Goog" "le.Protobuf.Reflection" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_sccs[27] = { + &scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base, + &scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fdescriptor_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fdescriptor_2eproto, "google/protobuf/descriptor.proto", 6022, - &descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_once, AddDescriptors_google_2fprotobuf_2fdescriptor_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fdescriptor_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fdescriptor_2eproto = { + &descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fdescriptor_2eproto, "google/protobuf/descriptor.proto", 6022, + &descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_once, descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_sccs, descriptor_table_google_2fprotobuf_2fdescriptor_2eproto_deps, 27, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fdescriptor_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto, 27, file_level_enum_descriptors_google_2fprotobuf_2fdescriptor_2eproto, file_level_service_descriptors_google_2fprotobuf_2fdescriptor_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fdescriptor_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DescriptorProto_ReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumDescriptorProto_EnumReservedRange_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fdescriptor_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fdescriptor_2eproto = []() { AddDescriptors_google_2fprotobuf_2fdescriptor_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fdescriptor_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fdescriptor_2eproto), true); PROTOBUF_NAMESPACE_OPEN const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FieldDescriptorProto_Type_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); @@ -1416,8 +1413,7 @@ FileDescriptorSet::FileDescriptorSet(const FileDescriptorSet& from) } void FileDescriptorSet::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileDescriptorSet_google_2fprotobuf_2fdescriptor_2eproto.base); } FileDescriptorSet::~FileDescriptorSet() { @@ -1682,8 +1678,7 @@ void FileDescriptorSet::InternalSwap(FileDescriptorSet* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FileDescriptorSet::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -1826,8 +1821,7 @@ FileDescriptorProto::FileDescriptorProto(const FileDescriptorProto& from) } void FileDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); package_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); syntax_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -2717,8 +2711,7 @@ void FileDescriptorProto::InternalSwap(FileDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FileDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -2795,8 +2788,7 @@ DescriptorProto_ExtensionRange::DescriptorProto_ExtensionRange(const DescriptorP } void DescriptorProto_ExtensionRange::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DescriptorProto_ExtensionRange_google_2fprotobuf_2fdescriptor_2eproto.base); ::memset(&options_, 0, static_cast( reinterpret_cast(&end_) - reinterpret_cast(&options_)) + sizeof(end_)); @@ -3160,8 +3152,7 @@ void DescriptorProto_ExtensionRange::InternalSwap(DescriptorProto_ExtensionRange } ::PROTOBUF_NAMESPACE_ID::Metadata DescriptorProto_ExtensionRange::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -3522,8 +3513,7 @@ void DescriptorProto_ReservedRange::InternalSwap(DescriptorProto_ReservedRange* } ::PROTOBUF_NAMESPACE_ID::Metadata DescriptorProto_ReservedRange::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -3622,8 +3612,7 @@ DescriptorProto::DescriptorProto(const DescriptorProto& from) } void DescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_DescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); options_ = nullptr; } @@ -4400,8 +4389,7 @@ void DescriptorProto::InternalSwap(DescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata DescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -4443,8 +4431,7 @@ ExtensionRangeOptions::ExtensionRangeOptions(const ExtensionRangeOptions& from) } void ExtensionRangeOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ExtensionRangeOptions_google_2fprotobuf_2fdescriptor_2eproto.base); } ExtensionRangeOptions::~ExtensionRangeOptions() { @@ -4737,8 +4724,7 @@ void ExtensionRangeOptions::InternalSwap(ExtensionRangeOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata ExtensionRangeOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -4868,8 +4854,7 @@ FieldDescriptorProto::FieldDescriptorProto(const FieldDescriptorProto& from) } void FieldDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); extendee_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); type_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -5652,8 +5637,7 @@ void FieldDescriptorProto::InternalSwap(FieldDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FieldDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -5728,8 +5712,7 @@ OneofDescriptorProto::OneofDescriptorProto(const OneofDescriptorProto& from) } void OneofDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OneofDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); options_ = nullptr; } @@ -6063,8 +6046,7 @@ void OneofDescriptorProto::InternalSwap(OneofDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata OneofDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -6425,8 +6407,7 @@ void EnumDescriptorProto_EnumReservedRange::InternalSwap(EnumDescriptorProto_Enu } ::PROTOBUF_NAMESPACE_ID::Metadata EnumDescriptorProto_EnumReservedRange::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -6510,8 +6491,7 @@ EnumDescriptorProto::EnumDescriptorProto(const EnumDescriptorProto& from) } void EnumDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); options_ = nullptr; } @@ -7013,8 +6993,7 @@ void EnumDescriptorProto::InternalSwap(EnumDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata EnumDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -7094,8 +7073,7 @@ EnumValueDescriptorProto::EnumValueDescriptorProto(const EnumValueDescriptorProt } void EnumValueDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumValueDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); ::memset(&options_, 0, static_cast( reinterpret_cast(&number_) - @@ -7475,8 +7453,7 @@ void EnumValueDescriptorProto::InternalSwap(EnumValueDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata EnumValueDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -7554,8 +7531,7 @@ ServiceDescriptorProto::ServiceDescriptorProto(const ServiceDescriptorProto& fro } void ServiceDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ServiceDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); options_ = nullptr; } @@ -7944,8 +7920,7 @@ void ServiceDescriptorProto::InternalSwap(ServiceDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata ServiceDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -8049,8 +8024,7 @@ MethodDescriptorProto::MethodDescriptorProto(const MethodDescriptorProto& from) } void MethodDescriptorProto::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MethodDescriptorProto_google_2fprotobuf_2fdescriptor_2eproto.base); name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); input_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); output_type_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -8590,8 +8564,7 @@ void MethodDescriptorProto::InternalSwap(MethodDescriptorProto* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata MethodDescriptorProto::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -8766,8 +8739,7 @@ FileOptions::FileOptions(const FileOptions& from) } void FileOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FileOptions_google_2fprotobuf_2fdescriptor_2eproto.base); java_package_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); java_outer_classname_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); go_package_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -10113,8 +10085,7 @@ void FileOptions::InternalSwap(FileOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FileOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -10175,8 +10146,7 @@ MessageOptions::MessageOptions(const MessageOptions& from) } void MessageOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MessageOptions_google_2fprotobuf_2fdescriptor_2eproto.base); ::memset(&message_set_wire_format_, 0, static_cast( reinterpret_cast(&map_entry_) - reinterpret_cast(&message_set_wire_format_)) + sizeof(map_entry_)); @@ -10646,8 +10616,7 @@ void MessageOptions::InternalSwap(MessageOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata MessageOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -10716,8 +10685,7 @@ FieldOptions::FieldOptions(const FieldOptions& from) } void FieldOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldOptions_google_2fprotobuf_2fdescriptor_2eproto.base); ::memset(&ctype_, 0, static_cast( reinterpret_cast(&jstype_) - reinterpret_cast(&ctype_)) + sizeof(jstype_)); @@ -11296,8 +11264,7 @@ void FieldOptions::InternalSwap(FieldOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FieldOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -11339,8 +11306,7 @@ OneofOptions::OneofOptions(const OneofOptions& from) } void OneofOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_OneofOptions_google_2fprotobuf_2fdescriptor_2eproto.base); } OneofOptions::~OneofOptions() { @@ -11633,8 +11599,7 @@ void OneofOptions::InternalSwap(OneofOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata OneofOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -11687,8 +11652,7 @@ EnumOptions::EnumOptions(const EnumOptions& from) } void EnumOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumOptions_google_2fprotobuf_2fdescriptor_2eproto.base); ::memset(&allow_alias_, 0, static_cast( reinterpret_cast(&deprecated_) - reinterpret_cast(&allow_alias_)) + sizeof(deprecated_)); @@ -12078,8 +12042,7 @@ void EnumOptions::InternalSwap(EnumOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata EnumOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -12126,8 +12089,7 @@ EnumValueOptions::EnumValueOptions(const EnumValueOptions& from) } void EnumValueOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_EnumValueOptions_google_2fprotobuf_2fdescriptor_2eproto.base); deprecated_ = false; } @@ -12467,8 +12429,7 @@ void EnumValueOptions::InternalSwap(EnumValueOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata EnumValueOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -12515,8 +12476,7 @@ ServiceOptions::ServiceOptions(const ServiceOptions& from) } void ServiceOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ServiceOptions_google_2fprotobuf_2fdescriptor_2eproto.base); deprecated_ = false; } @@ -12856,8 +12816,7 @@ void ServiceOptions::InternalSwap(ServiceOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata ServiceOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -12910,8 +12869,7 @@ MethodOptions::MethodOptions(const MethodOptions& from) } void MethodOptions::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_MethodOptions_google_2fprotobuf_2fdescriptor_2eproto.base); ::memset(&deprecated_, 0, static_cast( reinterpret_cast(&idempotency_level_) - reinterpret_cast(&deprecated_)) + sizeof(idempotency_level_)); @@ -13317,8 +13275,7 @@ void MethodOptions::InternalSwap(MethodOptions* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata MethodOptions::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -13369,8 +13326,7 @@ UninterpretedOption_NamePart::UninterpretedOption_NamePart(const UninterpretedOp } void UninterpretedOption_NamePart::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UninterpretedOption_NamePart_google_2fprotobuf_2fdescriptor_2eproto.base); name_part_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); is_extension_ = false; } @@ -13710,8 +13666,7 @@ void UninterpretedOption_NamePart::InternalSwap(UninterpretedOption_NamePart* ot } ::PROTOBUF_NAMESPACE_ID::Metadata UninterpretedOption_NamePart::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -13793,8 +13748,7 @@ UninterpretedOption::UninterpretedOption(const UninterpretedOption& from) } void UninterpretedOption::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_UninterpretedOption_google_2fprotobuf_2fdescriptor_2eproto.base); identifier_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); string_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); aggregate_value_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); @@ -14373,8 +14327,7 @@ void UninterpretedOption::InternalSwap(UninterpretedOption* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata UninterpretedOption::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -14438,8 +14391,7 @@ SourceCodeInfo_Location::SourceCodeInfo_Location(const SourceCodeInfo_Location& } void SourceCodeInfo_Location::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceCodeInfo_Location_google_2fprotobuf_2fdescriptor_2eproto.base); leading_comments_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); trailing_comments_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); } @@ -14989,8 +14941,7 @@ void SourceCodeInfo_Location::InternalSwap(SourceCodeInfo_Location* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata SourceCodeInfo_Location::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -15030,8 +14981,7 @@ SourceCodeInfo::SourceCodeInfo(const SourceCodeInfo& from) } void SourceCodeInfo::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); } SourceCodeInfo::~SourceCodeInfo() { @@ -15295,8 +15245,7 @@ void SourceCodeInfo::InternalSwap(SourceCodeInfo* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata SourceCodeInfo::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -15356,8 +15305,7 @@ GeneratedCodeInfo_Annotation::GeneratedCodeInfo_Annotation(const GeneratedCodeIn } void GeneratedCodeInfo_Annotation::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GeneratedCodeInfo_Annotation_google_2fprotobuf_2fdescriptor_2eproto.base); source_file_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); ::memset(&begin_, 0, static_cast( reinterpret_cast(&end_) - @@ -15805,8 +15753,7 @@ void GeneratedCodeInfo_Annotation::InternalSwap(GeneratedCodeInfo_Annotation* ot } ::PROTOBUF_NAMESPACE_ID::Metadata GeneratedCodeInfo_Annotation::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -15846,8 +15793,7 @@ GeneratedCodeInfo::GeneratedCodeInfo(const GeneratedCodeInfo& from) } void GeneratedCodeInfo::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_GeneratedCodeInfo_google_2fprotobuf_2fdescriptor_2eproto.base); } GeneratedCodeInfo::~GeneratedCodeInfo() { @@ -16111,8 +16057,7 @@ void GeneratedCodeInfo::InternalSwap(GeneratedCodeInfo* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata GeneratedCodeInfo::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fdescriptor_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/descriptor.pb.h b/src/google/protobuf/descriptor.pb.h index 49834cd39f..0920d4196b 100644 --- a/src/google/protobuf/descriptor.pb.h +++ b/src/google/protobuf/descriptor.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -53,7 +54,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fdescriptor_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fdescriptor_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fdescriptor_2eproto; PROTOBUF_NAMESPACE_OPEN class DescriptorProto; class DescriptorProtoDefaultTypeInternal; @@ -368,7 +369,13 @@ class PROTOBUF_EXPORT FileDescriptorSet : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FileDescriptorSet& default_instance(); @@ -439,6 +446,13 @@ class PROTOBUF_EXPORT FileDescriptorSet : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -510,7 +524,13 @@ class PROTOBUF_EXPORT FileDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FileDescriptorProto& default_instance(); @@ -581,6 +601,13 @@ class PROTOBUF_EXPORT FileDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -831,7 +858,13 @@ class PROTOBUF_EXPORT DescriptorProto_ExtensionRange : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const DescriptorProto_ExtensionRange& default_instance(); @@ -902,6 +935,13 @@ class PROTOBUF_EXPORT DescriptorProto_ExtensionRange : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -989,7 +1029,13 @@ class PROTOBUF_EXPORT DescriptorProto_ReservedRange : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const DescriptorProto_ReservedRange& default_instance(); @@ -1060,6 +1106,13 @@ class PROTOBUF_EXPORT DescriptorProto_ReservedRange : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -1134,7 +1187,13 @@ class PROTOBUF_EXPORT DescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const DescriptorProto& default_instance(); @@ -1205,6 +1264,13 @@ class PROTOBUF_EXPORT DescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -1412,7 +1478,13 @@ class PROTOBUF_EXPORT ExtensionRangeOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const ExtensionRangeOptions& default_instance(); @@ -1483,6 +1555,13 @@ class PROTOBUF_EXPORT ExtensionRangeOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -1557,7 +1636,13 @@ class PROTOBUF_EXPORT FieldDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FieldDescriptorProto& default_instance(); @@ -1628,6 +1713,13 @@ class PROTOBUF_EXPORT FieldDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -1940,7 +2032,13 @@ class PROTOBUF_EXPORT OneofDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const OneofDescriptorProto& default_instance(); @@ -2011,6 +2109,13 @@ class PROTOBUF_EXPORT OneofDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -2105,7 +2210,13 @@ class PROTOBUF_EXPORT EnumDescriptorProto_EnumReservedRange : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const EnumDescriptorProto_EnumReservedRange& default_instance(); @@ -2176,6 +2287,13 @@ class PROTOBUF_EXPORT EnumDescriptorProto_EnumReservedRange : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -2250,7 +2368,13 @@ class PROTOBUF_EXPORT EnumDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const EnumDescriptorProto& default_instance(); @@ -2321,6 +2445,13 @@ class PROTOBUF_EXPORT EnumDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -2462,7 +2593,13 @@ class PROTOBUF_EXPORT EnumValueDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const EnumValueDescriptorProto& default_instance(); @@ -2533,6 +2670,13 @@ class PROTOBUF_EXPORT EnumValueDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -2635,7 +2779,13 @@ class PROTOBUF_EXPORT ServiceDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const ServiceDescriptorProto& default_instance(); @@ -2706,6 +2856,13 @@ class PROTOBUF_EXPORT ServiceDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -2813,7 +2970,13 @@ class PROTOBUF_EXPORT MethodDescriptorProto : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const MethodDescriptorProto& default_instance(); @@ -2884,6 +3047,13 @@ class PROTOBUF_EXPORT MethodDescriptorProto : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -3040,7 +3210,13 @@ class PROTOBUF_EXPORT FileOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FileOptions& default_instance(); @@ -3111,6 +3287,13 @@ class PROTOBUF_EXPORT FileOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -3527,7 +3710,13 @@ class PROTOBUF_EXPORT MessageOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const MessageOptions& default_instance(); @@ -3598,6 +3787,13 @@ class PROTOBUF_EXPORT MessageOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -3704,7 +3900,13 @@ class PROTOBUF_EXPORT FieldOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FieldOptions& default_instance(); @@ -3775,6 +3977,13 @@ class PROTOBUF_EXPORT FieldOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -3961,7 +4170,13 @@ class PROTOBUF_EXPORT OneofOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const OneofOptions& default_instance(); @@ -4032,6 +4247,13 @@ class PROTOBUF_EXPORT OneofOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4106,7 +4328,13 @@ class PROTOBUF_EXPORT EnumOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const EnumOptions& default_instance(); @@ -4177,6 +4405,13 @@ class PROTOBUF_EXPORT EnumOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4267,7 +4502,13 @@ class PROTOBUF_EXPORT EnumValueOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const EnumValueOptions& default_instance(); @@ -4338,6 +4579,13 @@ class PROTOBUF_EXPORT EnumValueOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4420,7 +4668,13 @@ class PROTOBUF_EXPORT ServiceOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const ServiceOptions& default_instance(); @@ -4491,6 +4745,13 @@ class PROTOBUF_EXPORT ServiceOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4573,7 +4834,13 @@ class PROTOBUF_EXPORT MethodOptions : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const MethodOptions& default_instance(); @@ -4644,6 +4911,13 @@ class PROTOBUF_EXPORT MethodOptions : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4766,7 +5040,13 @@ class PROTOBUF_EXPORT UninterpretedOption_NamePart : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const UninterpretedOption_NamePart& default_instance(); @@ -4837,6 +5117,13 @@ class PROTOBUF_EXPORT UninterpretedOption_NamePart : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -4929,7 +5216,13 @@ class PROTOBUF_EXPORT UninterpretedOption : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const UninterpretedOption& default_instance(); @@ -5000,6 +5293,13 @@ class PROTOBUF_EXPORT UninterpretedOption : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -5166,7 +5466,13 @@ class PROTOBUF_EXPORT SourceCodeInfo_Location : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const SourceCodeInfo_Location& default_instance(); @@ -5237,6 +5543,13 @@ class PROTOBUF_EXPORT SourceCodeInfo_Location : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -5388,7 +5701,13 @@ class PROTOBUF_EXPORT SourceCodeInfo : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const SourceCodeInfo& default_instance(); @@ -5459,6 +5778,13 @@ class PROTOBUF_EXPORT SourceCodeInfo : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -5532,7 +5858,13 @@ class PROTOBUF_EXPORT GeneratedCodeInfo_Annotation : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const GeneratedCodeInfo_Annotation& default_instance(); @@ -5603,6 +5935,13 @@ class PROTOBUF_EXPORT GeneratedCodeInfo_Annotation : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -5714,7 +6053,13 @@ class PROTOBUF_EXPORT GeneratedCodeInfo : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const GeneratedCodeInfo& default_instance(); @@ -5785,6 +6130,13 @@ class PROTOBUF_EXPORT GeneratedCodeInfo : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto); + return ::descriptor_table_google_2fprotobuf_2fdescriptor_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/duration.pb.cc b/src/google/protobuf/duration.pb.cc index 995548c370..b4e41a35ff 100644 --- a/src/google/protobuf/duration.pb.cc +++ b/src/google/protobuf/duration.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class DurationDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _Duration_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsDuration_google_2fprotobuf_2fduration_2eproto() { +static void InitDefaultsscc_info_Duration_google_2fprotobuf_2fduration_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsDuration_google_2fprotobuf_2fduration_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Duration_google_2fprotobuf_2fduration_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsDuration_google_2fprotobuf_2fduration_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Duration_google_2fprotobuf_2fduration_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fduration_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fduration_2eproto = nullptr; @@ -65,24 +64,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto[] = "f/ptypes/duration\370\001\001\242\002\003GPB\252\002\036Google.Prot" "obuf.WellKnownTypesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fduration_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fduration_2eproto_sccs[1] = { + &scc_info_Duration_google_2fprotobuf_2fduration_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fduration_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fduration_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto, "google/protobuf/duration.proto", 227, - &descriptor_table_google_2fprotobuf_2fduration_2eproto_once, AddDescriptors_google_2fprotobuf_2fduration_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fduration_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fduration_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fduration_2eproto = { + &descriptor_table_google_2fprotobuf_2fduration_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fduration_2eproto, "google/protobuf/duration.proto", 227, + &descriptor_table_google_2fprotobuf_2fduration_2eproto_once, descriptor_table_google_2fprotobuf_2fduration_2eproto_sccs, descriptor_table_google_2fprotobuf_2fduration_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fduration_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fduration_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2fduration_2eproto, file_level_service_descriptors_google_2fprotobuf_2fduration_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fduration_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Duration_google_2fprotobuf_2fduration_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fduration_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fduration_2eproto = []() { AddDescriptors_google_2fprotobuf_2fduration_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fduration_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fduration_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -416,8 +413,7 @@ void Duration::InternalSwap(Duration* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Duration::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fduration_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fduration_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/duration.pb.h b/src/google/protobuf/duration.pb.h index c20802f74b..91ac1e18d1 100644 --- a/src/google/protobuf/duration.pb.h +++ b/src/google/protobuf/duration.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -52,7 +53,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fduration_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fduration_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fduration_2eproto; PROTOBUF_NAMESPACE_OPEN class Duration; class DurationDefaultTypeInternal; @@ -97,7 +98,13 @@ class PROTOBUF_EXPORT Duration : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Duration& default_instance(); @@ -168,6 +175,13 @@ class PROTOBUF_EXPORT Duration : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fduration_2eproto); + return ::descriptor_table_google_2fprotobuf_2fduration_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/empty.pb.cc b/src/google/protobuf/empty.pb.cc index d27faae8aa..ca3b63172d 100644 --- a/src/google/protobuf/empty.pb.cc +++ b/src/google/protobuf/empty.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class EmptyDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _Empty_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsEmpty_google_2fprotobuf_2fempty_2eproto() { +static void InitDefaultsscc_info_Empty_google_2fprotobuf_2fempty_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsEmpty_google_2fprotobuf_2fempty_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Empty_google_2fprotobuf_2fempty_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsEmpty_google_2fprotobuf_2fempty_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Empty_google_2fprotobuf_2fempty_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fempty_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fempty_2eproto = nullptr; @@ -62,24 +61,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto[] = "/ptypes/empty\370\001\001\242\002\003GPB\252\002\036Google.Protobuf" ".WellKnownTypesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fempty_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fempty_2eproto_sccs[1] = { + &scc_info_Empty_google_2fprotobuf_2fempty_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fempty_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fempty_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto, "google/protobuf/empty.proto", 183, - &descriptor_table_google_2fprotobuf_2fempty_2eproto_once, AddDescriptors_google_2fprotobuf_2fempty_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fempty_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fempty_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fempty_2eproto = { + &descriptor_table_google_2fprotobuf_2fempty_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fempty_2eproto, "google/protobuf/empty.proto", 183, + &descriptor_table_google_2fprotobuf_2fempty_2eproto_once, descriptor_table_google_2fprotobuf_2fempty_2eproto_sccs, descriptor_table_google_2fprotobuf_2fempty_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fempty_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fempty_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2fempty_2eproto, file_level_service_descriptors_google_2fprotobuf_2fempty_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fempty_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Empty_google_2fprotobuf_2fempty_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fempty_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fempty_2eproto = []() { AddDescriptors_google_2fprotobuf_2fempty_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fempty_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fempty_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -314,8 +311,7 @@ void Empty::InternalSwap(Empty* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Empty::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fempty_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fempty_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/empty.pb.h b/src/google/protobuf/empty.pb.h index ea20c6abd4..d65060da80 100644 --- a/src/google/protobuf/empty.pb.h +++ b/src/google/protobuf/empty.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -52,7 +53,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fempty_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fempty_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fempty_2eproto; PROTOBUF_NAMESPACE_OPEN class Empty; class EmptyDefaultTypeInternal; @@ -97,7 +98,13 @@ class PROTOBUF_EXPORT Empty : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Empty& default_instance(); @@ -168,6 +175,13 @@ class PROTOBUF_EXPORT Empty : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fempty_2eproto); + return ::descriptor_table_google_2fprotobuf_2fempty_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/field_mask.pb.cc b/src/google/protobuf/field_mask.pb.cc index 97f566912d..06841d7f4e 100644 --- a/src/google/protobuf/field_mask.pb.cc +++ b/src/google/protobuf/field_mask.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class FieldMaskDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _FieldMask_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsFieldMask_google_2fprotobuf_2ffield_5fmask_2eproto() { +static void InitDefaultsscc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsFieldMask_google_2fprotobuf_2ffield_5fmask_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsFieldMask_google_2fprotobuf_2ffield_5fmask_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto = nullptr; @@ -64,24 +63,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto[] "ield_mask;field_mask\370\001\001\242\002\003GPB\252\002\036Google.P" "rotobuf.WellKnownTypesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_sccs[1] = { + &scc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto, "google/protobuf/field_mask.proto", 230, - &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once, AddDescriptors_google_2fprotobuf_2ffield_5fmask_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto = { + &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2ffield_5fmask_2eproto, "google/protobuf/field_mask.proto", 230, + &descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_once, descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_sccs, descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto::offsets, file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, file_level_service_descriptors_google_2fprotobuf_2ffield_5fmask_2eproto, }; -void AddDescriptors_google_2fprotobuf_2ffield_5fmask_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2ffield_5fmask_2eproto = []() { AddDescriptors_google_2fprotobuf_2ffield_5fmask_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2ffield_5fmask_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -118,8 +115,7 @@ FieldMask::FieldMask(const FieldMask& from) } void FieldMask::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_FieldMask_google_2fprotobuf_2ffield_5fmask_2eproto.base); } FieldMask::~FieldMask() { @@ -386,8 +382,7 @@ void FieldMask::InternalSwap(FieldMask* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata FieldMask::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto); - return ::file_level_metadata_google_2fprotobuf_2ffield_5fmask_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/field_mask.pb.h b/src/google/protobuf/field_mask.pb.h index 1d9aeea63d..57f400c4eb 100644 --- a/src/google/protobuf/field_mask.pb.h +++ b/src/google/protobuf/field_mask.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -52,7 +53,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2ffield_5fmask_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2ffield_5fmask_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto; PROTOBUF_NAMESPACE_OPEN class FieldMask; class FieldMaskDefaultTypeInternal; @@ -97,7 +98,13 @@ class PROTOBUF_EXPORT FieldMask : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const FieldMask& default_instance(); @@ -168,6 +175,13 @@ class PROTOBUF_EXPORT FieldMask : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto); + return ::descriptor_table_google_2fprotobuf_2ffield_5fmask_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/generated_message_reflection.cc b/src/google/protobuf/generated_message_reflection.cc index ef57e1cadf..52e8746db0 100644 --- a/src/google/protobuf/generated_message_reflection.cc +++ b/src/google/protobuf/generated_message_reflection.cc @@ -2312,7 +2312,7 @@ void AssignDescriptorsImpl(const DescriptorTable* table) { // calls to AddDescriptors. static WrappedMutex mu{GOOGLE_PROTOBUF_LINKER_INITIALIZED}; mu.Lock(); - table->add_descriptors(); + AddDescriptors(table); mu.Unlock(); } // Fill the arrays with pointers to descriptors and reflection classes. @@ -2342,14 +2342,20 @@ void AssignDescriptorsImpl(const DescriptorTable* table) { helper.GetCurrentMetadataPtr()); } -void AddDescriptorsImpl(DescriptorTable* table, const InitFunc* deps, - int num_deps) { +void AddDescriptorsImpl(const DescriptorTable* table) { + // Reflection refers to the default instances so make sure they are + // initialized. + for (int i = 0; i < table->num_sccs; i++) { + internal::InitSCC(table->init_default_instances[i]); + } + // Ensure all dependent descriptors are registered to the generated descriptor // pool and message factory. - for (int i = 0; i < num_deps; i++) { + for (int i = 0; i < table->num_deps; i++) { // In case of weak fields deps[i] could be null. - if (deps[i]) deps[i](); + if (table->deps[i]) AddDescriptors(table->deps[i]); } + // Register the descriptor of this file. DescriptorPool::InternalAddGeneratedFile(table->descriptor, table->size); MessageFactory::InternalRegisterGeneratedFile(table); @@ -2361,15 +2367,14 @@ void AssignDescriptors(const DescriptorTable* table) { call_once(*table->once, AssignDescriptorsImpl, table); } -void AddDescriptors(DescriptorTable* table, const InitFunc* deps, - int num_deps) { +void AddDescriptors(const DescriptorTable* table) { // AddDescriptors is not thread safe. Callers need to ensure calls are // properly serialized. This function is only called pre-main by global // descriptors and we can assume single threaded access or it's called // by AssignDescriptorImpl which uses a mutex to sequence calls. - if (table->is_initialized) return; - table->is_initialized = true; - AddDescriptorsImpl(table, deps, num_deps); + if (*table->is_initialized) return; + *table->is_initialized = true; + AddDescriptorsImpl(table); } // Separate function because it needs to be a friend of @@ -2385,7 +2390,7 @@ void RegisterAllTypesInternal(const Metadata* file_level_metadata, int size) { } } -void RegisterFileLevelMetadata(DescriptorTable* table) { +void RegisterFileLevelMetadata(const DescriptorTable* table) { AssignDescriptors(table); RegisterAllTypesInternal(table->file_level_metadata, table->num_messages); } diff --git a/src/google/protobuf/generated_message_reflection.h b/src/google/protobuf/generated_message_reflection.h index 3b9b2da878..a0555b573a 100644 --- a/src/google/protobuf/generated_message_reflection.h +++ b/src/google/protobuf/generated_message_reflection.h @@ -659,15 +659,16 @@ class GeneratedMessageReflection final : public Reflection { GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(GeneratedMessageReflection); }; -typedef void (*InitFunc)(); - struct PROTOBUF_EXPORT DescriptorTable { - bool is_initialized; + bool* is_initialized; const char* descriptor; const char* filename; int size; // of serialized descriptor once_flag* once; - InitFunc add_descriptors; + SCCInfoBase* const* init_default_instances; + const DescriptorTable* const* deps; + int num_sccs; + int num_deps; const MigrationSchema* schemas; const Message* const* default_instances; const uint32* offsets; @@ -678,9 +679,19 @@ struct PROTOBUF_EXPORT DescriptorTable { const ServiceDescriptor** file_level_service_descriptors; }; +// AssignDescriptors() pulls the compiled FileDescriptor from the DescriptorPool +// and uses it to populate all of the global variables which store pointers to +// the descriptor objects. It also constructs the reflection objects. It is +// called the first time anyone calls descriptor() or GetReflection() on one of +// the types defined in the file. AssignDescriptors() is thread-safe. void PROTOBUF_EXPORT AssignDescriptors(const DescriptorTable* table); -void PROTOBUF_EXPORT AddDescriptors(DescriptorTable* table, - const InitFunc* deps, int num_deps); + +// AddDescriptors() is a file-level procedure which adds the encoded +// FileDescriptorProto for this .proto file to the global DescriptorPool for +// generated files (DescriptorPool::generated_pool()). It ordinarily runs at +// static initialization time, but is not used at all in LITE_RUNTIME mode. +// AddDescriptors() is *not* thread-safe. +void PROTOBUF_EXPORT AddDescriptors(const DescriptorTable* table); // These cannot be in lite so we put them in the reflection. PROTOBUF_EXPORT void UnknownFieldSetSerializer(const uint8* base, uint32 offset, diff --git a/src/google/protobuf/io/strtod.cc b/src/google/protobuf/io/strtod.cc index 42de29638d..01164441a6 100644 --- a/src/google/protobuf/io/strtod.cc +++ b/src/google/protobuf/io/strtod.cc @@ -49,7 +49,9 @@ namespace io { namespace { -const double MAX_FLOAT_AS_DOUBLE_ROUNDED = 3.4028235e+38; +// This approximately 0x1.ffffffp127, but we don't use 0x1.ffffffp127 because +// it won't compile in MSVC. +const double MAX_FLOAT_AS_DOUBLE_ROUNDED = 3.4028235677973366e+38; // Returns a string identical to *input except that the character pointed to // by radix_pos (which should be '.') is replaced with the locale-specific diff --git a/src/google/protobuf/message.cc b/src/google/protobuf/message.cc index a31cd9c5f2..09b087f68a 100644 --- a/src/google/protobuf/message.cc +++ b/src/google/protobuf/message.cc @@ -71,7 +71,7 @@ namespace internal { // TODO(gerbens) make this factorized better. This should not have to hop // to reflection. Currently uses GeneratedMessageReflection and thus is // defined in generated_message_reflection.cc -void RegisterFileLevelMetadata(DescriptorTable* descriptor_table); +void RegisterFileLevelMetadata(const DescriptorTable* descriptor_table); } // namespace internal @@ -682,7 +682,7 @@ class GeneratedMessageFactory : public MessageFactory { int size; }; - void RegisterFile(google::protobuf::internal::DescriptorTable* table); + void RegisterFile(const google::protobuf::internal::DescriptorTable* table); void RegisterType(const Descriptor* descriptor, const Message* prototype); // implements MessageFactory --------------------------------------- @@ -690,7 +690,7 @@ class GeneratedMessageFactory : public MessageFactory { private: // Only written at static init time, so does not require locking. - std::unordered_map, streq> file_map_; @@ -706,7 +706,7 @@ GeneratedMessageFactory* GeneratedMessageFactory::singleton() { } void GeneratedMessageFactory::RegisterFile( - google::protobuf::internal::DescriptorTable* table) { + const google::protobuf::internal::DescriptorTable* table) { if (!InsertIfNotPresent(&file_map_, table->filename, table)) { GOOGLE_LOG(FATAL) << "File is already registered: " << table->filename; } @@ -740,7 +740,7 @@ const Message* GeneratedMessageFactory::GetPrototype(const Descriptor* type) { if (type->file()->pool() != DescriptorPool::generated_pool()) return NULL; // Apparently the file hasn't been registered yet. Let's do that now. - internal::DescriptorTable* registration_data = + const internal::DescriptorTable* registration_data = FindPtrOrNull(file_map_, type->file()->name().c_str()); if (registration_data == NULL) { GOOGLE_LOG(DFATAL) << "File appears to be in generated pool but wasn't " @@ -775,7 +775,7 @@ MessageFactory* MessageFactory::generated_factory() { } void MessageFactory::InternalRegisterGeneratedFile( - google::protobuf::internal::DescriptorTable* table) { + const google::protobuf::internal::DescriptorTable* table) { GeneratedMessageFactory::singleton()->RegisterFile(table); } diff --git a/src/google/protobuf/message.h b/src/google/protobuf/message.h index 3dc25267e1..aba14f7bd4 100644 --- a/src/google/protobuf/message.h +++ b/src/google/protobuf/message.h @@ -358,9 +358,7 @@ class PROTOBUF_EXPORT Message : public MessageLite { // // This method remains virtual in case a subclass does not implement // reflection and wants to override the default behavior. - virtual const Reflection* GetReflection() const final { - return GetMetadata().reflection; - } + const Reflection* GetReflection() const { return GetMetadata().reflection; } protected: // Get a struct containing the metadata for the Message. Most subclasses only @@ -1089,7 +1087,7 @@ class PROTOBUF_EXPORT MessageFactory { // built lazily, so we can't register types by their descriptor until we // know that the descriptor exists. |filename| must be a permanent string. static void InternalRegisterGeneratedFile( - google::protobuf::internal::DescriptorTable* table); + const google::protobuf::internal::DescriptorTable* table); // For internal use only: Registers a message type. Called only by the // functions which are registered with InternalRegisterGeneratedFile(), diff --git a/src/google/protobuf/source_context.pb.cc b/src/google/protobuf/source_context.pb.cc index cf9308655d..98d0559db3 100644 --- a/src/google/protobuf/source_context.pb.cc +++ b/src/google/protobuf/source_context.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class SourceContextDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _SourceContext_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsSourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto() { +static void InitDefaultsscc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsSourceContext_google_2fprotobuf_2fsource_5fcontext_2epro } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsSourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto = nullptr; @@ -65,24 +64,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eprot "text\242\002\003GPB\252\002\036Google.Protobuf.WellKnownTy" "pesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_sccs[1] = { + &scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eproto, "google/protobuf/source_context.proto", 251, - &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once, AddDescriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto = { + &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fsource_5fcontext_2eproto, "google/protobuf/source_context.proto", 251, + &descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_once, descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_sccs, descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, file_level_service_descriptors_google_2fprotobuf_2fsource_5fcontext_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fsource_5fcontext_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fsource_5fcontext_2eproto = []() { AddDescriptors_google_2fprotobuf_2fsource_5fcontext_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fsource_5fcontext_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -114,8 +111,7 @@ SourceContext::SourceContext(const SourceContext& from) } void SourceContext::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto.base); file_name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited()); } @@ -359,8 +355,7 @@ void SourceContext::InternalSwap(SourceContext* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata SourceContext::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fsource_5fcontext_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/source_context.pb.h b/src/google/protobuf/source_context.pb.h index d29608d284..943c936bf9 100644 --- a/src/google/protobuf/source_context.pb.h +++ b/src/google/protobuf/source_context.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -52,7 +53,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fsource_5fcontext_2eproto static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fsource_5fcontext_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto; PROTOBUF_NAMESPACE_OPEN class SourceContext; class SourceContextDefaultTypeInternal; @@ -91,7 +92,13 @@ class PROTOBUF_EXPORT SourceContext : } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const SourceContext& default_instance(); @@ -156,6 +163,13 @@ class PROTOBUF_EXPORT SourceContext : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto); + return ::descriptor_table_google_2fprotobuf_2fsource_5fcontext_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/struct.pb.cc b/src/google/protobuf/struct.pb.cc index 69edaf6695..7de9c617f8 100644 --- a/src/google/protobuf/struct.pb.cc +++ b/src/google/protobuf/struct.pb.cc @@ -15,7 +15,6 @@ #include // @@protoc_insertion_point(includes) #include - extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fstruct_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto; PROTOBUF_NAMESPACE_OPEN class Struct_FieldsEntry_DoNotUseDefaultTypeInternal { @@ -41,7 +40,7 @@ class ListValueDefaultTypeInternal { ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _ListValue_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsListValue_google_2fprotobuf_2fstruct_2eproto() { +static void InitDefaultsscc_info_ListValue_google_2fprotobuf_2fstruct_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -70,7 +69,7 @@ static void InitDefaultsListValue_google_2fprotobuf_2fstruct_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsListValue_google_2fprotobuf_2fstruct_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_ListValue_google_2fprotobuf_2fstruct_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2fstruct_2eproto[4]; static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_google_2fprotobuf_2fstruct_2eproto[1]; @@ -144,24 +143,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto[] = "\252\002\036Google.Protobuf.WellKnownTypesb\006proto" "3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2fstruct_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2fstruct_2eproto_sccs[1] = { + &scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2fstruct_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fstruct_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto, "google/protobuf/struct.proto", 641, - &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, AddDescriptors_google_2fprotobuf_2fstruct_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2fstruct_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2fstruct_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fstruct_2eproto = { + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2fstruct_2eproto, "google/protobuf/struct.proto", 641, + &descriptor_table_google_2fprotobuf_2fstruct_2eproto_once, descriptor_table_google_2fprotobuf_2fstruct_2eproto_sccs, descriptor_table_google_2fprotobuf_2fstruct_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2fstruct_2eproto::offsets, file_level_metadata_google_2fprotobuf_2fstruct_2eproto, 4, file_level_enum_descriptors_google_2fprotobuf_2fstruct_2eproto, file_level_service_descriptors_google_2fprotobuf_2fstruct_2eproto, }; -void AddDescriptors_google_2fprotobuf_2fstruct_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fstruct_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2fstruct_2eproto = []() { AddDescriptors_google_2fprotobuf_2fstruct_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2fstruct_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2fstruct_2eproto), true); PROTOBUF_NAMESPACE_OPEN const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* NullValue_descriptor() { ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_google_2fprotobuf_2fstruct_2eproto); @@ -186,8 +183,7 @@ void Struct_FieldsEntry_DoNotUse::MergeFrom(const Struct_FieldsEntry_DoNotUse& o MergeFromInternal(other); } ::PROTOBUF_NAMESPACE_ID::Metadata Struct_FieldsEntry_DoNotUse::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fstruct_2eproto[0]; + return GetMetadataStatic(); } void Struct_FieldsEntry_DoNotUse::MergeFrom( const ::PROTOBUF_NAMESPACE_ID::Message& other) { @@ -229,8 +225,7 @@ Struct::Struct(const Struct& from) } void Struct::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); } Struct::~Struct() { @@ -572,8 +567,7 @@ void Struct::InternalSwap(Struct* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Struct::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fstruct_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -693,8 +687,7 @@ Value::Value(const Value& from) } void Value::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); clear_has_kind(); } @@ -1221,8 +1214,7 @@ void Value::InternalSwap(Value* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Value::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fstruct_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } @@ -1260,8 +1252,7 @@ ListValue::ListValue(const ListValue& from) } void ListValue::SharedCtor() { - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC( - &scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); + ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_ListValue_google_2fprotobuf_2fstruct_2eproto.base); } ListValue::~ListValue() { @@ -1523,8 +1514,7 @@ void ListValue::InternalSwap(ListValue* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata ListValue::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); - return ::file_level_metadata_google_2fprotobuf_2fstruct_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/struct.pb.h b/src/google/protobuf/struct.pb.h index f20001b318..5dfd8fae16 100644 --- a/src/google/protobuf/struct.pb.h +++ b/src/google/protobuf/struct.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -56,7 +57,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2fstruct_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2fstruct_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2fstruct_2eproto; PROTOBUF_NAMESPACE_OPEN class ListValue; class ListValueDefaultTypeInternal; @@ -125,7 +126,14 @@ public: } static bool ValidateValue(void*) { return true; } void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& other) final; - ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const; + ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); + return ::descriptor_table_google_2fprotobuf_2fstruct_2eproto.file_level_metadata[0]; + } + + public: }; // ------------------------------------------------------------------- @@ -162,7 +170,13 @@ class PROTOBUF_EXPORT Struct : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Struct& default_instance(); @@ -233,6 +247,13 @@ class PROTOBUF_EXPORT Struct : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); + return ::descriptor_table_google_2fprotobuf_2fstruct_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -299,7 +320,13 @@ class PROTOBUF_EXPORT Value : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Value& default_instance(); @@ -380,6 +407,13 @@ class PROTOBUF_EXPORT Value : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); + return ::descriptor_table_google_2fprotobuf_2fstruct_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- @@ -527,7 +561,13 @@ class PROTOBUF_EXPORT ListValue : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const ListValue& default_instance(); @@ -598,6 +638,13 @@ class PROTOBUF_EXPORT ListValue : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2fstruct_2eproto); + return ::descriptor_table_google_2fprotobuf_2fstruct_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/text_format_unittest.cc b/src/google/protobuf/text_format_unittest.cc index 7faf5c009c..11e4c106b1 100644 --- a/src/google/protobuf/text_format_unittest.cc +++ b/src/google/protobuf/text_format_unittest.cc @@ -1210,8 +1210,8 @@ TEST_F(TextFormatTest, ParseExotic) { ASSERT_TRUE( TextFormat::ParseFromString("repeated_float: 3.4028235e+38\n" "repeated_float: -3.4028235e+38\n" - "repeated_float: 3.40282351e+38\n" - "repeated_float: -3.40282351e+38\n", + "repeated_float: 3.402823567797337e+38\n" + "repeated_float: -3.402823567797337e+38\n", &message)); EXPECT_EQ(message.repeated_float(0), std::numeric_limits::max()); EXPECT_EQ(message.repeated_float(1), -std::numeric_limits::max()); diff --git a/src/google/protobuf/timestamp.pb.cc b/src/google/protobuf/timestamp.pb.cc index 3187af7785..19de0199d5 100644 --- a/src/google/protobuf/timestamp.pb.cc +++ b/src/google/protobuf/timestamp.pb.cc @@ -15,14 +15,13 @@ #include // @@protoc_insertion_point(includes) #include - PROTOBUF_NAMESPACE_OPEN class TimestampDefaultTypeInternal { public: ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed _instance; } _Timestamp_default_instance_; PROTOBUF_NAMESPACE_CLOSE -static void InitDefaultsTimestamp_google_2fprotobuf_2ftimestamp_2eproto() { +static void InitDefaultsscc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto() { GOOGLE_PROTOBUF_VERIFY_VERSION; { @@ -34,7 +33,7 @@ static void InitDefaultsTimestamp_google_2fprotobuf_2ftimestamp_2eproto() { } PROTOBUF_EXPORT ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto = - {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsTimestamp_google_2fprotobuf_2ftimestamp_2eproto}, {}}; + {{ATOMIC_VAR_INIT(::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase::kUninitialized), 0, InitDefaultsscc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto}, {}}; static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto[1]; static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_google_2fprotobuf_2ftimestamp_2eproto = nullptr; @@ -65,24 +64,22 @@ const char descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto[] = "obuf/ptypes/timestamp\370\001\001\242\002\003GPB\252\002\036Google." "Protobuf.WellKnownTypesb\006proto3" ; +static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_deps[1] = { +}; +static ::PROTOBUF_NAMESPACE_ID::internal::SCCInfoBase*const descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_sccs[1] = { + &scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto.base, +}; static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once; -static ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ftimestamp_2eproto = { - false, descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto, "google/protobuf/timestamp.proto", 231, - &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once, AddDescriptors_google_2fprotobuf_2ftimestamp_2eproto, schemas, - file_default_instances, TableStruct_google_2fprotobuf_2ftimestamp_2eproto::offsets, +static bool descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_initialized = false; +const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ftimestamp_2eproto = { + &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_initialized, descriptor_table_protodef_google_2fprotobuf_2ftimestamp_2eproto, "google/protobuf/timestamp.proto", 231, + &descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_once, descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_sccs, descriptor_table_google_2fprotobuf_2ftimestamp_2eproto_deps, 1, 0, + schemas, file_default_instances, TableStruct_google_2fprotobuf_2ftimestamp_2eproto::offsets, file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto, 1, file_level_enum_descriptors_google_2fprotobuf_2ftimestamp_2eproto, file_level_service_descriptors_google_2fprotobuf_2ftimestamp_2eproto, }; -void AddDescriptors_google_2fprotobuf_2ftimestamp_2eproto() { - static constexpr ::PROTOBUF_NAMESPACE_ID::internal::InitFunc deps[1] = - { - }; - ::PROTOBUF_NAMESPACE_ID::internal::InitSCC(&scc_info_Timestamp_google_2fprotobuf_2ftimestamp_2eproto.base); - ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2ftimestamp_2eproto, deps, 0); -} - // Force running AddDescriptors() at dynamic initialization time. -static bool dynamic_init_dummy_google_2fprotobuf_2ftimestamp_2eproto = []() { AddDescriptors_google_2fprotobuf_2ftimestamp_2eproto(); return true; }(); +static bool dynamic_init_dummy_google_2fprotobuf_2ftimestamp_2eproto = ( ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptors(&descriptor_table_google_2fprotobuf_2ftimestamp_2eproto), true); PROTOBUF_NAMESPACE_OPEN // =================================================================== @@ -416,8 +413,7 @@ void Timestamp::InternalSwap(Timestamp* other) { } ::PROTOBUF_NAMESPACE_ID::Metadata Timestamp::GetMetadata() const { - ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto); - return ::file_level_metadata_google_2fprotobuf_2ftimestamp_2eproto[kIndexInFileMessages]; + return GetMetadataStatic(); } diff --git a/src/google/protobuf/timestamp.pb.h b/src/google/protobuf/timestamp.pb.h index 72c18cddf7..f3ede5c1c8 100644 --- a/src/google/protobuf/timestamp.pb.h +++ b/src/google/protobuf/timestamp.pb.h @@ -27,6 +27,7 @@ #include #include #include +#include #include #include // IWYU pragma: export #include // IWYU pragma: export @@ -52,7 +53,7 @@ struct PROTOBUF_EXPORT TableStruct_google_2fprotobuf_2ftimestamp_2eproto { static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]; static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]; }; -void PROTOBUF_EXPORT AddDescriptors_google_2fprotobuf_2ftimestamp_2eproto(); +extern PROTOBUF_EXPORT const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_google_2fprotobuf_2ftimestamp_2eproto; PROTOBUF_NAMESPACE_OPEN class Timestamp; class TimestampDefaultTypeInternal; @@ -97,7 +98,13 @@ class PROTOBUF_EXPORT Timestamp : return MaybeArenaPtr(); } static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() { - return default_instance().GetDescriptor(); + return GetDescriptor(); + } + static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() { + return GetMetadataStatic().descriptor; + } + static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() { + return GetMetadataStatic().reflection; } static const Timestamp& default_instance(); @@ -168,6 +175,13 @@ class PROTOBUF_EXPORT Timestamp : public: ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final; + private: + static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() { + ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto); + return ::descriptor_table_google_2fprotobuf_2ftimestamp_2eproto.file_level_metadata[kIndexInFileMessages]; + } + + public: // nested types ---------------------------------------------------- diff --git a/src/google/protobuf/type.pb.cc b/src/google/protobuf/type.pb.cc index 5fddd13517..066851ec62 100644 --- a/src/google/protobuf/type.pb.cc +++ b/src/google/protobuf/type.pb.cc @@ -15,12 +15,11 @@ #include // @@protoc_insertion_point(includes) #include - extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fany_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_Any_google_2fprotobuf_2fany_2eproto; -extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fsource_5fcontext_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftype_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_EnumValue_google_2fprotobuf_2ftype_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftype_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Field_google_2fprotobuf_2ftype_2eproto; extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2ftype_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<1> scc_info_Option_google_2fprotobuf_2ftype_2eproto; +extern PROTOBUF_INTERNAL_EXPORT_google_2fprotobuf_2fsource_5fcontext_2eproto ::PROTOBUF_NAMESPACE_ID::internal::SCCInfo<0> scc_info_SourceContext_google_2fprotobuf_2fsource_5fcontext_2eproto; PROTOBUF_NAMESPACE_OPEN class TypeDefaultTypeInternal { public: @@ -43,84 +42,84 @@ class OptionDefaultTypeInternal { ::PROTOBUF_NAMESPACE_ID::internal::ExplicitlyConstructed