| Index: third_party/protobuf/src/google/protobuf/struct.pb.cc
|
| diff --git a/third_party/protobuf/src/google/protobuf/struct.pb.cc b/third_party/protobuf/src/google/protobuf/struct.pb.cc
|
| index 11ccabbf3b977c7b5dc27042bd70c33d7e5ac4e6..c8f5af903ee011e2ae8335168d904e0a8e1d7ca0 100644
|
| --- a/third_party/protobuf/src/google/protobuf/struct.pb.cc
|
| +++ b/third_party/protobuf/src/google/protobuf/struct.pb.cc
|
| @@ -45,6 +45,7 @@ const ::google::protobuf::EnumDescriptor* NullValue_descriptor_ = NULL;
|
| } // namespace
|
|
|
|
|
| +void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() GOOGLE_ATTRIBUTE_COLD;
|
| void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto();
|
| const ::google::protobuf::FileDescriptor* file =
|
| @@ -58,14 +59,13 @@ void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| Struct_reflection_ =
|
| ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
|
| Struct_descriptor_,
|
| - Struct::default_instance_,
|
| + Struct::internal_default_instance(),
|
| Struct_offsets_,
|
| -1,
|
| -1,
|
| -1,
|
| sizeof(Struct),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Struct, _internal_metadata_),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Struct, _is_default_instance_));
|
| + GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Struct, _internal_metadata_));
|
| Struct_FieldsEntry_descriptor_ = Struct_descriptor_->nested_type(0);
|
| Value_descriptor_ = file->message_type(1);
|
| static const int Value_offsets_[7] = {
|
| @@ -80,7 +80,7 @@ void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| Value_reflection_ =
|
| ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
|
| Value_descriptor_,
|
| - Value::default_instance_,
|
| + Value::internal_default_instance(),
|
| Value_offsets_,
|
| -1,
|
| -1,
|
| @@ -88,8 +88,7 @@ void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| Value_default_oneof_instance_,
|
| GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Value, _oneof_case_[0]),
|
| sizeof(Value),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Value, _internal_metadata_),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Value, _is_default_instance_));
|
| + GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(Value, _internal_metadata_));
|
| ListValue_descriptor_ = file->message_type(2);
|
| static const int ListValue_offsets_[1] = {
|
| GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ListValue, values_),
|
| @@ -97,29 +96,29 @@ void protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| ListValue_reflection_ =
|
| ::google::protobuf::internal::GeneratedMessageReflection::NewGeneratedMessageReflection(
|
| ListValue_descriptor_,
|
| - ListValue::default_instance_,
|
| + ListValue::internal_default_instance(),
|
| ListValue_offsets_,
|
| -1,
|
| -1,
|
| -1,
|
| sizeof(ListValue),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ListValue, _internal_metadata_),
|
| - GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ListValue, _is_default_instance_));
|
| + GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(ListValue, _internal_metadata_));
|
| NullValue_descriptor_ = file->enum_type(0);
|
| }
|
|
|
| namespace {
|
|
|
| GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AssignDescriptors_once_);
|
| -inline void protobuf_AssignDescriptorsOnce() {
|
| +void protobuf_AssignDescriptorsOnce() {
|
| ::google::protobuf::GoogleOnceInit(&protobuf_AssignDescriptors_once_,
|
| &protobuf_AssignDesc_google_2fprotobuf_2fstruct_2eproto);
|
| }
|
|
|
| +void protobuf_RegisterTypes(const ::std::string&) GOOGLE_ATTRIBUTE_COLD;
|
| void protobuf_RegisterTypes(const ::std::string&) {
|
| protobuf_AssignDescriptorsOnce();
|
| ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
|
| - Struct_descriptor_, &Struct::default_instance());
|
| + Struct_descriptor_, Struct::internal_default_instance());
|
| ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
|
| Struct_FieldsEntry_descriptor_,
|
| ::google::protobuf::internal::MapEntry<
|
| @@ -130,29 +129,46 @@ void protobuf_RegisterTypes(const ::std::string&) {
|
| 0>::CreateDefaultInstance(
|
| Struct_FieldsEntry_descriptor_));
|
| ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
|
| - Value_descriptor_, &Value::default_instance());
|
| + Value_descriptor_, Value::internal_default_instance());
|
| ::google::protobuf::MessageFactory::InternalRegisterGeneratedMessage(
|
| - ListValue_descriptor_, &ListValue::default_instance());
|
| + ListValue_descriptor_, ListValue::internal_default_instance());
|
| }
|
|
|
| } // namespace
|
|
|
| void protobuf_ShutdownFile_google_2fprotobuf_2fstruct_2eproto() {
|
| - delete Struct::default_instance_;
|
| + Struct_default_instance_.Shutdown();
|
| delete Struct_reflection_;
|
| - delete Value::default_instance_;
|
| + Value_default_instance_.Shutdown();
|
| delete Value_default_oneof_instance_;
|
| delete Value_reflection_;
|
| - delete ListValue::default_instance_;
|
| + ListValue_default_instance_.Shutdown();
|
| delete ListValue_reflection_;
|
| }
|
|
|
| -void protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| - static bool already_here = false;
|
| - if (already_here) return;
|
| - already_here = true;
|
| +void protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto_impl() {
|
| GOOGLE_PROTOBUF_VERIFY_VERSION;
|
|
|
| + ::google::protobuf::internal::GetEmptyString();
|
| + Struct_default_instance_.DefaultConstruct();
|
| + ::google::protobuf::internal::GetEmptyString();
|
| + Value_default_instance_.DefaultConstruct();
|
| + Value_default_oneof_instance_ = new ValueOneofInstance();
|
| + ListValue_default_instance_.DefaultConstruct();
|
| + Struct_default_instance_.get_mutable()->InitAsDefaultInstance();
|
| + Value_default_instance_.get_mutable()->InitAsDefaultInstance();
|
| + ListValue_default_instance_.get_mutable()->InitAsDefaultInstance();
|
| +}
|
| +
|
| +GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto_once_);
|
| +void protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto() {
|
| + ::google::protobuf::GoogleOnceInit(&protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto_once_,
|
| + &protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto_impl);
|
| +}
|
| +void protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto_impl() {
|
| + GOOGLE_PROTOBUF_VERIFY_VERSION;
|
| +
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| ::google::protobuf::DescriptorPool::InternalAddGeneratedFile(
|
| "\n\034google/protobuf/struct.proto\022\017google.p"
|
| "rotobuf\"\204\001\n\006Struct\0223\n\006fields\030\001 \003(\0132#.goo"
|
| @@ -168,21 +184,19 @@ void protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| "es\030\001 \003(\0132\026.google.protobuf.Value*\033\n\tNull"
|
| "Value\022\016\n\nNULL_VALUE\020\000B\201\001\n\023com.google.pro"
|
| "tobufB\013StructProtoP\001Z1github.com/golang/"
|
| - "protobuf/ptypes/struct;structpb\240\001\001\242\002\003GPB"
|
| + "protobuf/ptypes/struct;structpb\370\001\001\242\002\003GPB"
|
| "\252\002\036Google.Protobuf.WellKnownTypesb\006proto"
|
| "3", 641);
|
| ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile(
|
| "google/protobuf/struct.proto", &protobuf_RegisterTypes);
|
| - Struct::default_instance_ = new Struct();
|
| - Value::default_instance_ = new Value();
|
| - Value_default_oneof_instance_ = new ValueOneofInstance();
|
| - ListValue::default_instance_ = new ListValue();
|
| - Struct::default_instance_->InitAsDefaultInstance();
|
| - Value::default_instance_->InitAsDefaultInstance();
|
| - ListValue::default_instance_->InitAsDefaultInstance();
|
| ::google::protobuf::internal::OnShutdown(&protobuf_ShutdownFile_google_2fprotobuf_2fstruct_2eproto);
|
| }
|
|
|
| +GOOGLE_PROTOBUF_DECLARE_ONCE(protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto_once_);
|
| +void protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto() {
|
| + ::google::protobuf::GoogleOnceInit(&protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto_once_,
|
| + &protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto_impl);
|
| +}
|
| // Force AddDescriptors() to be called at static initialization time.
|
| struct StaticDescriptorInitializer_google_2fprotobuf_2fstruct_2eproto {
|
| StaticDescriptorInitializer_google_2fprotobuf_2fstruct_2eproto() {
|
| @@ -194,7 +208,7 @@ const ::google::protobuf::EnumDescriptor* NullValue_descriptor() {
|
| return NullValue_descriptor_;
|
| }
|
| bool NullValue_IsValid(int value) {
|
| - switch(value) {
|
| + switch (value) {
|
| case 0:
|
| return true;
|
| default:
|
| @@ -205,9 +219,9 @@ bool NullValue_IsValid(int value) {
|
|
|
| namespace {
|
|
|
| -static void MergeFromFail(int line) GOOGLE_ATTRIBUTE_COLD;
|
| +static void MergeFromFail(int line) GOOGLE_ATTRIBUTE_COLD GOOGLE_ATTRIBUTE_NORETURN;
|
| static void MergeFromFail(int line) {
|
| - GOOGLE_CHECK(false) << __FILE__ << ":" << line;
|
| + ::google::protobuf::internal::MergeFromFail(__FILE__, line);
|
| }
|
|
|
| } // namespace
|
| @@ -221,29 +235,39 @@ const int Struct::kFieldsFieldNumber;
|
|
|
| Struct::Struct()
|
| : ::google::protobuf::Message(), _internal_metadata_(NULL) {
|
| + if (this != internal_default_instance()) protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| SharedCtor();
|
| // @@protoc_insertion_point(constructor:google.protobuf.Struct)
|
| }
|
| +Struct::Struct(::google::protobuf::Arena* arena)
|
| + : ::google::protobuf::Message(),
|
| + _internal_metadata_(arena),
|
| + fields_(arena) {
|
| +#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| +#endif // GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + SharedCtor();
|
| + RegisterArenaDtor(arena);
|
| + // @@protoc_insertion_point(arena_constructor:google.protobuf.Struct)
|
| +}
|
|
|
| void Struct::InitAsDefaultInstance() {
|
| - _is_default_instance_ = true;
|
| }
|
|
|
| Struct::Struct(const Struct& from)
|
| : ::google::protobuf::Message(),
|
| _internal_metadata_(NULL) {
|
| SharedCtor();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| // @@protoc_insertion_point(copy_constructor:google.protobuf.Struct)
|
| }
|
|
|
| void Struct::SharedCtor() {
|
| - _is_default_instance_ = false;
|
| - _cached_size_ = 0;
|
| fields_.SetAssignDescriptorCallback(
|
| protobuf_AssignDescriptorsOnce);
|
| fields_.SetEntryDescriptor(
|
| &::google::protobuf::Struct_FieldsEntry_descriptor_);
|
| + _cached_size_ = 0;
|
| }
|
|
|
| Struct::~Struct() {
|
| @@ -252,10 +276,19 @@ Struct::~Struct() {
|
| }
|
|
|
| void Struct::SharedDtor() {
|
| - if (this != default_instance_) {
|
| + ::google::protobuf::Arena* arena = GetArenaNoVirtual();
|
| + if (arena != NULL) {
|
| + return;
|
| }
|
| +
|
| }
|
|
|
| +void Struct::ArenaDtor(void* object) {
|
| + Struct* _this = reinterpret_cast< Struct* >(object);
|
| + (void)_this;
|
| +}
|
| +void Struct::RegisterArenaDtor(::google::protobuf::Arena* arena) {
|
| +}
|
| void Struct::SetCachedSize(int size) const {
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| _cached_size_ = size;
|
| @@ -267,18 +300,14 @@ const ::google::protobuf::Descriptor* Struct::descriptor() {
|
| }
|
|
|
| const Struct& Struct::default_instance() {
|
| - if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto();
|
| - return *default_instance_;
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| + return *internal_default_instance();
|
| }
|
|
|
| -Struct* Struct::default_instance_ = NULL;
|
| +::google::protobuf::internal::ExplicitlyConstructed<Struct> Struct_default_instance_;
|
|
|
| Struct* Struct::New(::google::protobuf::Arena* arena) const {
|
| - Struct* n = new Struct;
|
| - if (arena != NULL) {
|
| - arena->Own(n);
|
| - }
|
| - return n;
|
| + return ::google::protobuf::Arena::CreateMessage<Struct>(arena);
|
| }
|
|
|
| void Struct::Clear() {
|
| @@ -301,12 +330,16 @@ bool Struct::MergePartialFromCodedStream(
|
| if (tag == 10) {
|
| DO_(input->IncrementRecursionDepth());
|
| parse_loop_fields:
|
| - ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry(fields_.NewEntry());
|
| + Struct_FieldsEntry::Parser< ::google::protobuf::internal::MapField<
|
| + ::std::string, ::google::protobuf::Value,
|
| + ::google::protobuf::internal::WireFormatLite::TYPE_STRING,
|
| + ::google::protobuf::internal::WireFormatLite::TYPE_MESSAGE,
|
| + 0 >,
|
| + ::google::protobuf::Map< ::std::string, ::google::protobuf::Value > > parser(&fields_);
|
| DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
|
| - input, entry.get()));
|
| - (*mutable_fields())[entry->key()].Swap(entry->mutable_value());
|
| + input, &parser));
|
| DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| - entry->key().data(), entry->key().length(),
|
| + parser.key().data(), parser.key().length(),
|
| ::google::protobuf::internal::WireFormatLite::PARSE,
|
| "google.protobuf.Struct.FieldsEntry.key"));
|
| } else {
|
| @@ -343,41 +376,123 @@ void Struct::SerializeWithCachedSizes(
|
| ::google::protobuf::io::CodedOutputStream* output) const {
|
| // @@protoc_insertion_point(serialize_start:google.protobuf.Struct)
|
| // map<string, .google.protobuf.Value> fields = 1;
|
| - {
|
| - ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| - for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| - it = this->fields().begin();
|
| - it != this->fields().end(); ++it) {
|
| - entry.reset(fields_.NewEntryWrapper(it->first, it->second));
|
| - ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
|
| - 1, *entry, output);
|
| - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| - it->first.data(), it->first.length(),
|
| - ::google::protobuf::internal::WireFormatLite::SERIALIZE,
|
| - "google.protobuf.Struct.FieldsEntry.key");
|
| + if (!this->fields().empty()) {
|
| + typedef ::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_pointer
|
| + ConstPtr;
|
| + typedef ConstPtr SortItem;
|
| + typedef ::google::protobuf::internal::CompareByDerefFirst<SortItem> Less;
|
| + struct Utf8Check {
|
| + static void Check(ConstPtr p) {
|
| + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| + p->first.data(), p->first.length(),
|
| + ::google::protobuf::internal::WireFormatLite::SERIALIZE,
|
| + "google.protobuf.Struct.FieldsEntry.key");
|
| + }
|
| + };
|
| +
|
| + if (output->IsSerializationDeterminstic() &&
|
| + this->fields().size() > 1) {
|
| + ::google::protobuf::scoped_array<SortItem> items(
|
| + new SortItem[this->fields().size()]);
|
| + typedef ::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::size_type size_type;
|
| + size_type n = 0;
|
| + for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| + it = this->fields().begin();
|
| + it != this->fields().end(); ++it, ++n) {
|
| + items[n] = SortItem(&*it);
|
| + }
|
| + ::std::sort(&items[0], &items[n], Less());
|
| + ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| + for (size_type i = 0; i < n; i++) {
|
| + entry.reset(fields_.NewEntryWrapper(
|
| + items[i]->first, items[i]->second));
|
| + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
|
| + 1, *entry, output);
|
| + if (entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| + Utf8Check::Check(items[i]);
|
| + }
|
| + } else {
|
| + ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| + for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| + it = this->fields().begin();
|
| + it != this->fields().end(); ++it) {
|
| + entry.reset(fields_.NewEntryWrapper(
|
| + it->first, it->second));
|
| + ::google::protobuf::internal::WireFormatLite::WriteMessageMaybeToArray(
|
| + 1, *entry, output);
|
| + if (entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| + Utf8Check::Check(&*it);
|
| + }
|
| }
|
| }
|
|
|
| // @@protoc_insertion_point(serialize_end:google.protobuf.Struct)
|
| }
|
|
|
| -::google::protobuf::uint8* Struct::SerializeWithCachedSizesToArray(
|
| - ::google::protobuf::uint8* target) const {
|
| +::google::protobuf::uint8* Struct::InternalSerializeWithCachedSizesToArray(
|
| + bool deterministic, ::google::protobuf::uint8* target) const {
|
| + (void)deterministic; // Unused
|
| // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.Struct)
|
| // map<string, .google.protobuf.Value> fields = 1;
|
| - {
|
| - ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| - for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| - it = this->fields().begin();
|
| - it != this->fields().end(); ++it) {
|
| - entry.reset(fields_.NewEntryWrapper(it->first, it->second));
|
| - target = ::google::protobuf::internal::WireFormatLite::
|
| - WriteMessageNoVirtualToArray(
|
| - 1, *entry, target);
|
| - ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| - it->first.data(), it->first.length(),
|
| - ::google::protobuf::internal::WireFormatLite::SERIALIZE,
|
| - "google.protobuf.Struct.FieldsEntry.key");
|
| + if (!this->fields().empty()) {
|
| + typedef ::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_pointer
|
| + ConstPtr;
|
| + typedef ConstPtr SortItem;
|
| + typedef ::google::protobuf::internal::CompareByDerefFirst<SortItem> Less;
|
| + struct Utf8Check {
|
| + static void Check(ConstPtr p) {
|
| + ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| + p->first.data(), p->first.length(),
|
| + ::google::protobuf::internal::WireFormatLite::SERIALIZE,
|
| + "google.protobuf.Struct.FieldsEntry.key");
|
| + }
|
| + };
|
| +
|
| + if (deterministic &&
|
| + this->fields().size() > 1) {
|
| + ::google::protobuf::scoped_array<SortItem> items(
|
| + new SortItem[this->fields().size()]);
|
| + typedef ::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::size_type size_type;
|
| + size_type n = 0;
|
| + for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| + it = this->fields().begin();
|
| + it != this->fields().end(); ++it, ++n) {
|
| + items[n] = SortItem(&*it);
|
| + }
|
| + ::std::sort(&items[0], &items[n], Less());
|
| + ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| + for (size_type i = 0; i < n; i++) {
|
| + entry.reset(fields_.NewEntryWrapper(
|
| + items[i]->first, items[i]->second));
|
| + target = ::google::protobuf::internal::WireFormatLite::
|
| + InternalWriteMessageNoVirtualToArray(
|
| + 1, *entry, deterministic, target);
|
| +;
|
| + if (entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| + Utf8Check::Check(items[i]);
|
| + }
|
| + } else {
|
| + ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| + for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| + it = this->fields().begin();
|
| + it != this->fields().end(); ++it) {
|
| + entry.reset(fields_.NewEntryWrapper(
|
| + it->first, it->second));
|
| + target = ::google::protobuf::internal::WireFormatLite::
|
| + InternalWriteMessageNoVirtualToArray(
|
| + 1, *entry, deterministic, target);
|
| +;
|
| + if (entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| + Utf8Check::Check(&*it);
|
| + }
|
| }
|
| }
|
|
|
| @@ -385,25 +500,33 @@ void Struct::SerializeWithCachedSizes(
|
| return target;
|
| }
|
|
|
| -int Struct::ByteSize() const {
|
| +size_t Struct::ByteSizeLong() const {
|
| // @@protoc_insertion_point(message_byte_size_start:google.protobuf.Struct)
|
| - int total_size = 0;
|
| + size_t total_size = 0;
|
|
|
| // map<string, .google.protobuf.Value> fields = 1;
|
| - total_size += 1 * this->fields_size();
|
| + total_size += 1 *
|
| + ::google::protobuf::internal::FromIntSize(this->fields_size());
|
| {
|
| ::google::protobuf::scoped_ptr<Struct_FieldsEntry> entry;
|
| for (::google::protobuf::Map< ::std::string, ::google::protobuf::Value >::const_iterator
|
| it = this->fields().begin();
|
| it != this->fields().end(); ++it) {
|
| + if (entry.get() != NULL && entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| entry.reset(fields_.NewEntryWrapper(it->first, it->second));
|
| total_size += ::google::protobuf::internal::WireFormatLite::
|
| MessageSizeNoVirtual(*entry);
|
| }
|
| + if (entry.get() != NULL && entry->GetArena() != NULL) {
|
| + entry.release();
|
| + }
|
| }
|
|
|
| + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| - _cached_size_ = total_size;
|
| + _cached_size_ = cached_size;
|
| GOOGLE_SAFE_CONCURRENT_WRITES_END();
|
| return total_size;
|
| }
|
| @@ -411,7 +534,7 @@ int Struct::ByteSize() const {
|
| void Struct::MergeFrom(const ::google::protobuf::Message& from) {
|
| // @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.Struct)
|
| if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| - const Struct* source =
|
| + const Struct* source =
|
| ::google::protobuf::internal::DynamicCastToGenerated<const Struct>(
|
| &from);
|
| if (source == NULL) {
|
| @@ -419,13 +542,21 @@ void Struct::MergeFrom(const ::google::protobuf::Message& from) {
|
| ::google::protobuf::internal::ReflectionOps::Merge(from, this);
|
| } else {
|
| // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.Struct)
|
| - MergeFrom(*source);
|
| + UnsafeMergeFrom(*source);
|
| }
|
| }
|
|
|
| void Struct::MergeFrom(const Struct& from) {
|
| // @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.Struct)
|
| - if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| + if (GOOGLE_PREDICT_TRUE(&from != this)) {
|
| + UnsafeMergeFrom(from);
|
| + } else {
|
| + MergeFromFail(__LINE__);
|
| + }
|
| +}
|
| +
|
| +void Struct::UnsafeMergeFrom(const Struct& from) {
|
| + GOOGLE_DCHECK(&from != this);
|
| fields_.MergeFrom(from.fields_);
|
| }
|
|
|
| @@ -440,7 +571,7 @@ void Struct::CopyFrom(const Struct& from) {
|
| // @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.Struct)
|
| if (&from == this) return;
|
| Clear();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| }
|
|
|
| bool Struct::IsInitialized() const {
|
| @@ -450,6 +581,18 @@ bool Struct::IsInitialized() const {
|
|
|
| void Struct::Swap(Struct* other) {
|
| if (other == this) return;
|
| + if (GetArenaNoVirtual() == other->GetArenaNoVirtual()) {
|
| + InternalSwap(other);
|
| + } else {
|
| + Struct temp;
|
| + temp.UnsafeMergeFrom(*this);
|
| + CopyFrom(*other);
|
| + other->CopyFrom(temp);
|
| + }
|
| +}
|
| +void Struct::UnsafeArenaSwap(Struct* other) {
|
| + if (other == this) return;
|
| + GOOGLE_DCHECK(GetArenaNoVirtual() == other->GetArenaNoVirtual());
|
| InternalSwap(other);
|
| }
|
| void Struct::InternalSwap(Struct* other) {
|
| @@ -487,6 +630,9 @@ Struct::mutable_fields() {
|
| return fields_.MutableMap();
|
| }
|
|
|
| +inline const Struct* Struct::internal_default_instance() {
|
| + return &Struct_default_instance_.get();
|
| +}
|
| #endif // PROTOBUF_INLINE_NOT_IN_HEADERS
|
|
|
| // ===================================================================
|
| @@ -502,33 +648,43 @@ const int Value::kListValueFieldNumber;
|
|
|
| Value::Value()
|
| : ::google::protobuf::Message(), _internal_metadata_(NULL) {
|
| + if (this != internal_default_instance()) protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| SharedCtor();
|
| // @@protoc_insertion_point(constructor:google.protobuf.Value)
|
| }
|
| +Value::Value(::google::protobuf::Arena* arena)
|
| + : ::google::protobuf::Message(),
|
| + _internal_metadata_(arena) {
|
| +#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| +#endif // GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + SharedCtor();
|
| + RegisterArenaDtor(arena);
|
| + // @@protoc_insertion_point(arena_constructor:google.protobuf.Value)
|
| +}
|
|
|
| void Value::InitAsDefaultInstance() {
|
| - _is_default_instance_ = true;
|
| Value_default_oneof_instance_->null_value_ = 0;
|
| Value_default_oneof_instance_->number_value_ = 0;
|
| Value_default_oneof_instance_->string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| Value_default_oneof_instance_->bool_value_ = false;
|
| - Value_default_oneof_instance_->struct_value_ = const_cast< ::google::protobuf::Struct*>(&::google::protobuf::Struct::default_instance());
|
| - Value_default_oneof_instance_->list_value_ = const_cast< ::google::protobuf::ListValue*>(&::google::protobuf::ListValue::default_instance());
|
| + Value_default_oneof_instance_->struct_value_ = const_cast< ::google::protobuf::Struct*>(
|
| + ::google::protobuf::Struct::internal_default_instance());
|
| + Value_default_oneof_instance_->list_value_ = const_cast< ::google::protobuf::ListValue*>(
|
| + ::google::protobuf::ListValue::internal_default_instance());
|
| }
|
|
|
| Value::Value(const Value& from)
|
| : ::google::protobuf::Message(),
|
| _internal_metadata_(NULL) {
|
| SharedCtor();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| // @@protoc_insertion_point(copy_constructor:google.protobuf.Value)
|
| }
|
|
|
| void Value::SharedCtor() {
|
| - _is_default_instance_ = false;
|
| - ::google::protobuf::internal::GetEmptyString();
|
| - _cached_size_ = 0;
|
| clear_has_kind();
|
| + _cached_size_ = 0;
|
| }
|
|
|
| Value::~Value() {
|
| @@ -537,13 +693,22 @@ Value::~Value() {
|
| }
|
|
|
| void Value::SharedDtor() {
|
| + ::google::protobuf::Arena* arena = GetArenaNoVirtual();
|
| + if (arena != NULL) {
|
| + return;
|
| + }
|
| +
|
| if (has_kind()) {
|
| clear_kind();
|
| }
|
| - if (this != default_instance_) {
|
| - }
|
| }
|
|
|
| +void Value::ArenaDtor(void* object) {
|
| + Value* _this = reinterpret_cast< Value* >(object);
|
| + (void)_this;
|
| +}
|
| +void Value::RegisterArenaDtor(::google::protobuf::Arena* arena) {
|
| +}
|
| void Value::SetCachedSize(int size) const {
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| _cached_size_ = size;
|
| @@ -555,23 +720,19 @@ const ::google::protobuf::Descriptor* Value::descriptor() {
|
| }
|
|
|
| const Value& Value::default_instance() {
|
| - if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto();
|
| - return *default_instance_;
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| + return *internal_default_instance();
|
| }
|
|
|
| -Value* Value::default_instance_ = NULL;
|
| +::google::protobuf::internal::ExplicitlyConstructed<Value> Value_default_instance_;
|
|
|
| Value* Value::New(::google::protobuf::Arena* arena) const {
|
| - Value* n = new Value;
|
| - if (arena != NULL) {
|
| - arena->Own(n);
|
| - }
|
| - return n;
|
| + return ::google::protobuf::Arena::CreateMessage<Value>(arena);
|
| }
|
|
|
| void Value::clear_kind() {
|
| // @@protoc_insertion_point(one_of_clear_start:google.protobuf.Value)
|
| - switch(kind_case()) {
|
| + switch (kind_case()) {
|
| case kNullValue: {
|
| // No need to clear
|
| break;
|
| @@ -581,7 +742,8 @@ void Value::clear_kind() {
|
| break;
|
| }
|
| case kStringValue: {
|
| - kind_.string_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| + kind_.string_value_.Destroy(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| + GetArenaNoVirtual());
|
| break;
|
| }
|
| case kBoolValue: {
|
| @@ -589,11 +751,15 @@ void Value::clear_kind() {
|
| break;
|
| }
|
| case kStructValue: {
|
| - delete kind_.struct_value_;
|
| + if (GetArenaNoVirtual() == NULL) {
|
| + delete kind_.struct_value_;
|
| + }
|
| break;
|
| }
|
| case kListValue: {
|
| - delete kind_.list_value_;
|
| + if (GetArenaNoVirtual() == NULL) {
|
| + delete kind_.list_value_;
|
| + }
|
| break;
|
| }
|
| case KIND_NOT_SET: {
|
| @@ -630,14 +796,13 @@ bool Value::MergePartialFromCodedStream(
|
| } else {
|
| goto handle_unusual;
|
| }
|
| - if (input->ExpectTag(17)) goto parse_number_value;
|
| + goto after_list_value;
|
| break;
|
| }
|
|
|
| // optional double number_value = 2;
|
| case 2: {
|
| if (tag == 17) {
|
| - parse_number_value:
|
| clear_kind();
|
| DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
|
| double, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>(
|
| @@ -646,14 +811,13 @@ bool Value::MergePartialFromCodedStream(
|
| } else {
|
| goto handle_unusual;
|
| }
|
| - if (input->ExpectTag(26)) goto parse_string_value;
|
| + goto after_list_value;
|
| break;
|
| }
|
|
|
| // optional string string_value = 3;
|
| case 3: {
|
| if (tag == 26) {
|
| - parse_string_value:
|
| DO_(::google::protobuf::internal::WireFormatLite::ReadString(
|
| input, this->mutable_string_value()));
|
| DO_(::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
|
| @@ -663,14 +827,13 @@ bool Value::MergePartialFromCodedStream(
|
| } else {
|
| goto handle_unusual;
|
| }
|
| - if (input->ExpectTag(32)) goto parse_bool_value;
|
| + goto after_list_value;
|
| break;
|
| }
|
|
|
| // optional bool bool_value = 4;
|
| case 4: {
|
| if (tag == 32) {
|
| - parse_bool_value:
|
| clear_kind();
|
| DO_((::google::protobuf::internal::WireFormatLite::ReadPrimitive<
|
| bool, ::google::protobuf::internal::WireFormatLite::TYPE_BOOL>(
|
| @@ -679,14 +842,13 @@ bool Value::MergePartialFromCodedStream(
|
| } else {
|
| goto handle_unusual;
|
| }
|
| - if (input->ExpectTag(42)) goto parse_struct_value;
|
| + goto after_list_value;
|
| break;
|
| }
|
|
|
| // optional .google.protobuf.Struct struct_value = 5;
|
| case 5: {
|
| if (tag == 42) {
|
| - parse_struct_value:
|
| DO_(::google::protobuf::internal::WireFormatLite::ReadMessageNoVirtual(
|
| input, mutable_struct_value()));
|
| } else {
|
| @@ -705,6 +867,7 @@ bool Value::MergePartialFromCodedStream(
|
| } else {
|
| goto handle_unusual;
|
| }
|
| + after_list_value:
|
| if (input->ExpectAtEnd()) goto success;
|
| break;
|
| }
|
| @@ -774,8 +937,9 @@ void Value::SerializeWithCachedSizes(
|
| // @@protoc_insertion_point(serialize_end:google.protobuf.Value)
|
| }
|
|
|
| -::google::protobuf::uint8* Value::SerializeWithCachedSizesToArray(
|
| - ::google::protobuf::uint8* target) const {
|
| +::google::protobuf::uint8* Value::InternalSerializeWithCachedSizesToArray(
|
| + bool deterministic, ::google::protobuf::uint8* target) const {
|
| + (void)deterministic; // Unused
|
| // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.Value)
|
| // optional .google.protobuf.NullValue null_value = 1;
|
| if (has_null_value()) {
|
| @@ -807,24 +971,24 @@ void Value::SerializeWithCachedSizes(
|
| // optional .google.protobuf.Struct struct_value = 5;
|
| if (has_struct_value()) {
|
| target = ::google::protobuf::internal::WireFormatLite::
|
| - WriteMessageNoVirtualToArray(
|
| - 5, *kind_.struct_value_, target);
|
| + InternalWriteMessageNoVirtualToArray(
|
| + 5, *kind_.struct_value_, false, target);
|
| }
|
|
|
| // optional .google.protobuf.ListValue list_value = 6;
|
| if (has_list_value()) {
|
| target = ::google::protobuf::internal::WireFormatLite::
|
| - WriteMessageNoVirtualToArray(
|
| - 6, *kind_.list_value_, target);
|
| + InternalWriteMessageNoVirtualToArray(
|
| + 6, *kind_.list_value_, false, target);
|
| }
|
|
|
| // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.Value)
|
| return target;
|
| }
|
|
|
| -int Value::ByteSize() const {
|
| +size_t Value::ByteSizeLong() const {
|
| // @@protoc_insertion_point(message_byte_size_start:google.protobuf.Value)
|
| - int total_size = 0;
|
| + size_t total_size = 0;
|
|
|
| switch (kind_case()) {
|
| // optional .google.protobuf.NullValue null_value = 1;
|
| @@ -868,8 +1032,9 @@ int Value::ByteSize() const {
|
| break;
|
| }
|
| }
|
| + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| - _cached_size_ = total_size;
|
| + _cached_size_ = cached_size;
|
| GOOGLE_SAFE_CONCURRENT_WRITES_END();
|
| return total_size;
|
| }
|
| @@ -877,7 +1042,7 @@ int Value::ByteSize() const {
|
| void Value::MergeFrom(const ::google::protobuf::Message& from) {
|
| // @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.Value)
|
| if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| - const Value* source =
|
| + const Value* source =
|
| ::google::protobuf::internal::DynamicCastToGenerated<const Value>(
|
| &from);
|
| if (source == NULL) {
|
| @@ -885,13 +1050,21 @@ void Value::MergeFrom(const ::google::protobuf::Message& from) {
|
| ::google::protobuf::internal::ReflectionOps::Merge(from, this);
|
| } else {
|
| // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.Value)
|
| - MergeFrom(*source);
|
| + UnsafeMergeFrom(*source);
|
| }
|
| }
|
|
|
| void Value::MergeFrom(const Value& from) {
|
| // @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.Value)
|
| - if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| + if (GOOGLE_PREDICT_TRUE(&from != this)) {
|
| + UnsafeMergeFrom(from);
|
| + } else {
|
| + MergeFromFail(__LINE__);
|
| + }
|
| +}
|
| +
|
| +void Value::UnsafeMergeFrom(const Value& from) {
|
| + GOOGLE_DCHECK(&from != this);
|
| switch (from.kind_case()) {
|
| case kNullValue: {
|
| set_null_value(from.null_value());
|
| @@ -934,7 +1107,7 @@ void Value::CopyFrom(const Value& from) {
|
| // @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.Value)
|
| if (&from == this) return;
|
| Clear();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| }
|
|
|
| bool Value::IsInitialized() const {
|
| @@ -944,6 +1117,18 @@ bool Value::IsInitialized() const {
|
|
|
| void Value::Swap(Value* other) {
|
| if (other == this) return;
|
| + if (GetArenaNoVirtual() == other->GetArenaNoVirtual()) {
|
| + InternalSwap(other);
|
| + } else {
|
| + Value temp;
|
| + temp.UnsafeMergeFrom(*this);
|
| + CopyFrom(*other);
|
| + other->CopyFrom(temp);
|
| + }
|
| +}
|
| +void Value::UnsafeArenaSwap(Value* other) {
|
| + if (other == this) return;
|
| + GOOGLE_DCHECK(GetArenaNoVirtual() == other->GetArenaNoVirtual());
|
| InternalSwap(other);
|
| }
|
| void Value::InternalSwap(Value* other) {
|
| @@ -977,14 +1162,14 @@ void Value::clear_null_value() {
|
| clear_has_kind();
|
| }
|
| }
|
| - ::google::protobuf::NullValue Value::null_value() const {
|
| +::google::protobuf::NullValue Value::null_value() const {
|
| // @@protoc_insertion_point(field_get:google.protobuf.Value.null_value)
|
| if (has_null_value()) {
|
| return static_cast< ::google::protobuf::NullValue >(kind_.null_value_);
|
| }
|
| return static_cast< ::google::protobuf::NullValue >(0);
|
| }
|
| - void Value::set_null_value(::google::protobuf::NullValue value) {
|
| +void Value::set_null_value(::google::protobuf::NullValue value) {
|
| if (!has_null_value()) {
|
| clear_kind();
|
| set_has_null_value();
|
| @@ -1006,14 +1191,14 @@ void Value::clear_number_value() {
|
| clear_has_kind();
|
| }
|
| }
|
| - double Value::number_value() const {
|
| +double Value::number_value() const {
|
| // @@protoc_insertion_point(field_get:google.protobuf.Value.number_value)
|
| if (has_number_value()) {
|
| return kind_.number_value_;
|
| }
|
| return 0;
|
| }
|
| - void Value::set_number_value(double value) {
|
| +void Value::set_number_value(double value) {
|
| if (!has_number_value()) {
|
| clear_kind();
|
| set_has_number_value();
|
| @@ -1031,77 +1216,105 @@ void Value::set_has_string_value() {
|
| }
|
| void Value::clear_string_value() {
|
| if (has_string_value()) {
|
| - kind_.string_value_.DestroyNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| + kind_.string_value_.Destroy(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| + GetArenaNoVirtual());
|
| clear_has_kind();
|
| }
|
| }
|
| - const ::std::string& Value::string_value() const {
|
| +const ::std::string& Value::string_value() const {
|
| // @@protoc_insertion_point(field_get:google.protobuf.Value.string_value)
|
| if (has_string_value()) {
|
| - return kind_.string_value_.GetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| + return kind_.string_value_.Get(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| return *&::google::protobuf::internal::GetEmptyStringAlreadyInited();
|
| }
|
| - void Value::set_string_value(const ::std::string& value) {
|
| - // @@protoc_insertion_point(field_set:google.protobuf.Value.string_value)
|
| +void Value::set_string_value(const ::std::string& value) {
|
| if (!has_string_value()) {
|
| clear_kind();
|
| set_has_string_value();
|
| kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| - kind_.string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value);
|
| + kind_.string_value_.Set(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), value,
|
| + GetArenaNoVirtual());
|
| // @@protoc_insertion_point(field_set:google.protobuf.Value.string_value)
|
| }
|
| - void Value::set_string_value(const char* value) {
|
| +void Value::set_string_value(const char* value) {
|
| if (!has_string_value()) {
|
| clear_kind();
|
| set_has_string_value();
|
| kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| - kind_.string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| - ::std::string(value));
|
| + kind_.string_value_.Set(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| + ::std::string(value), GetArenaNoVirtual());
|
| // @@protoc_insertion_point(field_set_char:google.protobuf.Value.string_value)
|
| }
|
| - void Value::set_string_value(const char* value, size_t size) {
|
| +void Value::set_string_value(const char* value,
|
| + size_t size) {
|
| if (!has_string_value()) {
|
| clear_kind();
|
| set_has_string_value();
|
| kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| - kind_.string_value_.SetNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(
|
| - reinterpret_cast<const char*>(value), size));
|
| + kind_.string_value_.Set(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), ::std::string(
|
| + reinterpret_cast<const char*>(value), size),
|
| + GetArenaNoVirtual());
|
| // @@protoc_insertion_point(field_set_pointer:google.protobuf.Value.string_value)
|
| }
|
| - ::std::string* Value::mutable_string_value() {
|
| +::std::string* Value::mutable_string_value() {
|
| if (!has_string_value()) {
|
| clear_kind();
|
| set_has_string_value();
|
| kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| + return kind_.string_value_.Mutable(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| + GetArenaNoVirtual());
|
| // @@protoc_insertion_point(field_mutable:google.protobuf.Value.string_value)
|
| - return kind_.string_value_.MutableNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| - ::std::string* Value::release_string_value() {
|
| +::std::string* Value::release_string_value() {
|
| // @@protoc_insertion_point(field_release:google.protobuf.Value.string_value)
|
| if (has_string_value()) {
|
| clear_has_kind();
|
| - return kind_.string_value_.ReleaseNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| + return kind_.string_value_.Release(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| + GetArenaNoVirtual());
|
| + } else {
|
| + return NULL;
|
| + }
|
| +}
|
| +::std::string* Value::unsafe_arena_release_string_value() {
|
| + // @@protoc_insertion_point(field_unsafe_arena_release:google.protobuf.Value.string_value)
|
| + GOOGLE_DCHECK(GetArenaNoVirtual() != NULL);
|
| + if (has_string_value()) {
|
| + clear_has_kind();
|
| + return kind_.string_value_.UnsafeArenaRelease(
|
| + &::google::protobuf::internal::GetEmptyStringAlreadyInited(), GetArenaNoVirtual());
|
| } else {
|
| return NULL;
|
| }
|
| }
|
| - void Value::set_allocated_string_value(::std::string* string_value) {
|
| +void Value::set_allocated_string_value(::std::string* string_value) {
|
| if (!has_string_value()) {
|
| kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| }
|
| clear_kind();
|
| if (string_value != NULL) {
|
| set_has_string_value();
|
| - kind_.string_value_.SetAllocatedNoArena(&::google::protobuf::internal::GetEmptyStringAlreadyInited(),
|
| - string_value);
|
| + kind_.string_value_.SetAllocated(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), string_value,
|
| + GetArenaNoVirtual());
|
| }
|
| // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.string_value)
|
| }
|
| +void Value::unsafe_arena_set_allocated_string_value(::std::string* string_value) {
|
| + GOOGLE_DCHECK(GetArenaNoVirtual() != NULL);
|
| + if (!has_string_value()) {
|
| + kind_.string_value_.UnsafeSetDefault(&::google::protobuf::internal::GetEmptyStringAlreadyInited());
|
| + }
|
| + clear_kind();
|
| + if (string_value) {
|
| + set_has_string_value();
|
| + kind_.string_value_.UnsafeArenaSetAllocated(&::google::protobuf::internal::GetEmptyStringAlreadyInited(), string_value, GetArenaNoVirtual());
|
| + }
|
| + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Value.string_value)
|
| +}
|
|
|
| // optional bool bool_value = 4;
|
| bool Value::has_bool_value() const {
|
| @@ -1116,14 +1329,14 @@ void Value::clear_bool_value() {
|
| clear_has_kind();
|
| }
|
| }
|
| - bool Value::bool_value() const {
|
| +bool Value::bool_value() const {
|
| // @@protoc_insertion_point(field_get:google.protobuf.Value.bool_value)
|
| if (has_bool_value()) {
|
| return kind_.bool_value_;
|
| }
|
| return false;
|
| }
|
| - void Value::set_bool_value(bool value) {
|
| +void Value::set_bool_value(bool value) {
|
| if (!has_bool_value()) {
|
| clear_kind();
|
| set_has_bool_value();
|
| @@ -1141,7 +1354,9 @@ void Value::set_has_struct_value() {
|
| }
|
| void Value::clear_struct_value() {
|
| if (has_struct_value()) {
|
| - delete kind_.struct_value_;
|
| + if (GetArenaNoVirtual() == NULL) {
|
| + delete kind_.struct_value_;
|
| + }
|
| clear_has_kind();
|
| }
|
| }
|
| @@ -1155,7 +1370,9 @@ void Value::clear_struct_value() {
|
| if (!has_struct_value()) {
|
| clear_kind();
|
| set_has_struct_value();
|
| - kind_.struct_value_ = new ::google::protobuf::Struct;
|
| + kind_.struct_value_ =
|
| + ::google::protobuf::Arena::CreateMessage< ::google::protobuf::Struct >(
|
| + GetArenaNoVirtual());
|
| }
|
| // @@protoc_insertion_point(field_mutable:google.protobuf.Value.struct_value)
|
| return kind_.struct_value_;
|
| @@ -1164,6 +1381,42 @@ void Value::clear_struct_value() {
|
| // @@protoc_insertion_point(field_release:google.protobuf.Value.struct_value)
|
| if (has_struct_value()) {
|
| clear_has_kind();
|
| + if (GetArenaNoVirtual() != NULL) {
|
| + ::google::protobuf::Struct* temp = new ::google::protobuf::Struct(*kind_.struct_value_);
|
| + kind_.struct_value_ = NULL;
|
| + return temp;
|
| + } else {
|
| + ::google::protobuf::Struct* temp = kind_.struct_value_;
|
| + kind_.struct_value_ = NULL;
|
| + return temp;
|
| + }
|
| + } else {
|
| + return NULL;
|
| + }
|
| +}
|
| +void Value::set_allocated_struct_value(::google::protobuf::Struct* struct_value) {
|
| + clear_kind();
|
| + if (struct_value) {
|
| + if (GetArenaNoVirtual() != NULL &&
|
| + ::google::protobuf::Arena::GetArena(struct_value) == NULL) {
|
| + GetArenaNoVirtual()->Own(struct_value);
|
| + } else if (GetArenaNoVirtual() !=
|
| + ::google::protobuf::Arena::GetArena(struct_value)) {
|
| + ::google::protobuf::Struct* new_struct_value =
|
| + ::google::protobuf::Arena::CreateMessage< ::google::protobuf::Struct >(
|
| + GetArenaNoVirtual());
|
| + new_struct_value->CopyFrom(*struct_value);
|
| + struct_value = new_struct_value;
|
| + }
|
| + set_has_struct_value();
|
| + kind_.struct_value_ = struct_value;
|
| + }
|
| + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.struct_value)
|
| +}
|
| + ::google::protobuf::Struct* Value::unsafe_arena_release_struct_value() {
|
| + // @@protoc_insertion_point(field_unsafe_arena_release:google.protobuf.Value.struct_value)
|
| + if (has_struct_value()) {
|
| + clear_has_kind();
|
| ::google::protobuf::Struct* temp = kind_.struct_value_;
|
| kind_.struct_value_ = NULL;
|
| return temp;
|
| @@ -1171,13 +1424,13 @@ void Value::clear_struct_value() {
|
| return NULL;
|
| }
|
| }
|
| -void Value::set_allocated_struct_value(::google::protobuf::Struct* struct_value) {
|
| + void Value::unsafe_arena_set_allocated_struct_value(::google::protobuf::Struct* struct_value) {
|
| clear_kind();
|
| if (struct_value) {
|
| set_has_struct_value();
|
| kind_.struct_value_ = struct_value;
|
| }
|
| - // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.struct_value)
|
| + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Value.struct_value)
|
| }
|
|
|
| // optional .google.protobuf.ListValue list_value = 6;
|
| @@ -1189,7 +1442,9 @@ void Value::set_has_list_value() {
|
| }
|
| void Value::clear_list_value() {
|
| if (has_list_value()) {
|
| - delete kind_.list_value_;
|
| + if (GetArenaNoVirtual() == NULL) {
|
| + delete kind_.list_value_;
|
| + }
|
| clear_has_kind();
|
| }
|
| }
|
| @@ -1203,7 +1458,9 @@ void Value::clear_list_value() {
|
| if (!has_list_value()) {
|
| clear_kind();
|
| set_has_list_value();
|
| - kind_.list_value_ = new ::google::protobuf::ListValue;
|
| + kind_.list_value_ =
|
| + ::google::protobuf::Arena::CreateMessage< ::google::protobuf::ListValue >(
|
| + GetArenaNoVirtual());
|
| }
|
| // @@protoc_insertion_point(field_mutable:google.protobuf.Value.list_value)
|
| return kind_.list_value_;
|
| @@ -1212,6 +1469,42 @@ void Value::clear_list_value() {
|
| // @@protoc_insertion_point(field_release:google.protobuf.Value.list_value)
|
| if (has_list_value()) {
|
| clear_has_kind();
|
| + if (GetArenaNoVirtual() != NULL) {
|
| + ::google::protobuf::ListValue* temp = new ::google::protobuf::ListValue(*kind_.list_value_);
|
| + kind_.list_value_ = NULL;
|
| + return temp;
|
| + } else {
|
| + ::google::protobuf::ListValue* temp = kind_.list_value_;
|
| + kind_.list_value_ = NULL;
|
| + return temp;
|
| + }
|
| + } else {
|
| + return NULL;
|
| + }
|
| +}
|
| +void Value::set_allocated_list_value(::google::protobuf::ListValue* list_value) {
|
| + clear_kind();
|
| + if (list_value) {
|
| + if (GetArenaNoVirtual() != NULL &&
|
| + ::google::protobuf::Arena::GetArena(list_value) == NULL) {
|
| + GetArenaNoVirtual()->Own(list_value);
|
| + } else if (GetArenaNoVirtual() !=
|
| + ::google::protobuf::Arena::GetArena(list_value)) {
|
| + ::google::protobuf::ListValue* new_list_value =
|
| + ::google::protobuf::Arena::CreateMessage< ::google::protobuf::ListValue >(
|
| + GetArenaNoVirtual());
|
| + new_list_value->CopyFrom(*list_value);
|
| + list_value = new_list_value;
|
| + }
|
| + set_has_list_value();
|
| + kind_.list_value_ = list_value;
|
| + }
|
| + // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.list_value)
|
| +}
|
| + ::google::protobuf::ListValue* Value::unsafe_arena_release_list_value() {
|
| + // @@protoc_insertion_point(field_unsafe_arena_release:google.protobuf.Value.list_value)
|
| + if (has_list_value()) {
|
| + clear_has_kind();
|
| ::google::protobuf::ListValue* temp = kind_.list_value_;
|
| kind_.list_value_ = NULL;
|
| return temp;
|
| @@ -1219,13 +1512,13 @@ void Value::clear_list_value() {
|
| return NULL;
|
| }
|
| }
|
| -void Value::set_allocated_list_value(::google::protobuf::ListValue* list_value) {
|
| + void Value::unsafe_arena_set_allocated_list_value(::google::protobuf::ListValue* list_value) {
|
| clear_kind();
|
| if (list_value) {
|
| set_has_list_value();
|
| kind_.list_value_ = list_value;
|
| }
|
| - // @@protoc_insertion_point(field_set_allocated:google.protobuf.Value.list_value)
|
| + // @@protoc_insertion_point(field_unsafe_arena_set_allocated:google.protobuf.Value.list_value)
|
| }
|
|
|
| bool Value::has_kind() const {
|
| @@ -1237,6 +1530,9 @@ void Value::clear_has_kind() {
|
| Value::KindCase Value::kind_case() const {
|
| return Value::KindCase(_oneof_case_[0]);
|
| }
|
| +inline const Value* Value::internal_default_instance() {
|
| + return &Value_default_instance_.get();
|
| +}
|
| #endif // PROTOBUF_INLINE_NOT_IN_HEADERS
|
|
|
| // ===================================================================
|
| @@ -1247,24 +1543,34 @@ const int ListValue::kValuesFieldNumber;
|
|
|
| ListValue::ListValue()
|
| : ::google::protobuf::Message(), _internal_metadata_(NULL) {
|
| + if (this != internal_default_instance()) protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| SharedCtor();
|
| // @@protoc_insertion_point(constructor:google.protobuf.ListValue)
|
| }
|
| +ListValue::ListValue(::google::protobuf::Arena* arena)
|
| + : ::google::protobuf::Message(),
|
| + _internal_metadata_(arena),
|
| + values_(arena) {
|
| +#ifdef GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| +#endif // GOOGLE_PROTOBUF_NO_STATIC_INITIALIZER
|
| + SharedCtor();
|
| + RegisterArenaDtor(arena);
|
| + // @@protoc_insertion_point(arena_constructor:google.protobuf.ListValue)
|
| +}
|
|
|
| void ListValue::InitAsDefaultInstance() {
|
| - _is_default_instance_ = true;
|
| }
|
|
|
| ListValue::ListValue(const ListValue& from)
|
| : ::google::protobuf::Message(),
|
| _internal_metadata_(NULL) {
|
| SharedCtor();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| // @@protoc_insertion_point(copy_constructor:google.protobuf.ListValue)
|
| }
|
|
|
| void ListValue::SharedCtor() {
|
| - _is_default_instance_ = false;
|
| _cached_size_ = 0;
|
| }
|
|
|
| @@ -1274,10 +1580,19 @@ ListValue::~ListValue() {
|
| }
|
|
|
| void ListValue::SharedDtor() {
|
| - if (this != default_instance_) {
|
| + ::google::protobuf::Arena* arena = GetArenaNoVirtual();
|
| + if (arena != NULL) {
|
| + return;
|
| }
|
| +
|
| }
|
|
|
| +void ListValue::ArenaDtor(void* object) {
|
| + ListValue* _this = reinterpret_cast< ListValue* >(object);
|
| + (void)_this;
|
| +}
|
| +void ListValue::RegisterArenaDtor(::google::protobuf::Arena* arena) {
|
| +}
|
| void ListValue::SetCachedSize(int size) const {
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| _cached_size_ = size;
|
| @@ -1289,18 +1604,14 @@ const ::google::protobuf::Descriptor* ListValue::descriptor() {
|
| }
|
|
|
| const ListValue& ListValue::default_instance() {
|
| - if (default_instance_ == NULL) protobuf_AddDesc_google_2fprotobuf_2fstruct_2eproto();
|
| - return *default_instance_;
|
| + protobuf_InitDefaults_google_2fprotobuf_2fstruct_2eproto();
|
| + return *internal_default_instance();
|
| }
|
|
|
| -ListValue* ListValue::default_instance_ = NULL;
|
| +::google::protobuf::internal::ExplicitlyConstructed<ListValue> ListValue_default_instance_;
|
|
|
| ListValue* ListValue::New(::google::protobuf::Arena* arena) const {
|
| - ListValue* n = new ListValue;
|
| - if (arena != NULL) {
|
| - arena->Own(n);
|
| - }
|
| - return n;
|
| + return ::google::protobuf::Arena::CreateMessage<ListValue>(arena);
|
| }
|
|
|
| void ListValue::Clear() {
|
| @@ -1367,34 +1678,39 @@ void ListValue::SerializeWithCachedSizes(
|
| // @@protoc_insertion_point(serialize_end:google.protobuf.ListValue)
|
| }
|
|
|
| -::google::protobuf::uint8* ListValue::SerializeWithCachedSizesToArray(
|
| - ::google::protobuf::uint8* target) const {
|
| +::google::protobuf::uint8* ListValue::InternalSerializeWithCachedSizesToArray(
|
| + bool deterministic, ::google::protobuf::uint8* target) const {
|
| + (void)deterministic; // Unused
|
| // @@protoc_insertion_point(serialize_to_array_start:google.protobuf.ListValue)
|
| // repeated .google.protobuf.Value values = 1;
|
| for (unsigned int i = 0, n = this->values_size(); i < n; i++) {
|
| target = ::google::protobuf::internal::WireFormatLite::
|
| - WriteMessageNoVirtualToArray(
|
| - 1, this->values(i), target);
|
| + InternalWriteMessageNoVirtualToArray(
|
| + 1, this->values(i), false, target);
|
| }
|
|
|
| // @@protoc_insertion_point(serialize_to_array_end:google.protobuf.ListValue)
|
| return target;
|
| }
|
|
|
| -int ListValue::ByteSize() const {
|
| +size_t ListValue::ByteSizeLong() const {
|
| // @@protoc_insertion_point(message_byte_size_start:google.protobuf.ListValue)
|
| - int total_size = 0;
|
| + size_t total_size = 0;
|
|
|
| // repeated .google.protobuf.Value values = 1;
|
| - total_size += 1 * this->values_size();
|
| - for (int i = 0; i < this->values_size(); i++) {
|
| - total_size +=
|
| - ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
|
| - this->values(i));
|
| + {
|
| + unsigned int count = this->values_size();
|
| + total_size += 1UL * count;
|
| + for (unsigned int i = 0; i < count; i++) {
|
| + total_size +=
|
| + ::google::protobuf::internal::WireFormatLite::MessageSizeNoVirtual(
|
| + this->values(i));
|
| + }
|
| }
|
|
|
| + int cached_size = ::google::protobuf::internal::ToCachedSize(total_size);
|
| GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN();
|
| - _cached_size_ = total_size;
|
| + _cached_size_ = cached_size;
|
| GOOGLE_SAFE_CONCURRENT_WRITES_END();
|
| return total_size;
|
| }
|
| @@ -1402,7 +1718,7 @@ int ListValue::ByteSize() const {
|
| void ListValue::MergeFrom(const ::google::protobuf::Message& from) {
|
| // @@protoc_insertion_point(generalized_merge_from_start:google.protobuf.ListValue)
|
| if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| - const ListValue* source =
|
| + const ListValue* source =
|
| ::google::protobuf::internal::DynamicCastToGenerated<const ListValue>(
|
| &from);
|
| if (source == NULL) {
|
| @@ -1410,13 +1726,21 @@ void ListValue::MergeFrom(const ::google::protobuf::Message& from) {
|
| ::google::protobuf::internal::ReflectionOps::Merge(from, this);
|
| } else {
|
| // @@protoc_insertion_point(generalized_merge_from_cast_success:google.protobuf.ListValue)
|
| - MergeFrom(*source);
|
| + UnsafeMergeFrom(*source);
|
| }
|
| }
|
|
|
| void ListValue::MergeFrom(const ListValue& from) {
|
| // @@protoc_insertion_point(class_specific_merge_from_start:google.protobuf.ListValue)
|
| - if (GOOGLE_PREDICT_FALSE(&from == this)) MergeFromFail(__LINE__);
|
| + if (GOOGLE_PREDICT_TRUE(&from != this)) {
|
| + UnsafeMergeFrom(from);
|
| + } else {
|
| + MergeFromFail(__LINE__);
|
| + }
|
| +}
|
| +
|
| +void ListValue::UnsafeMergeFrom(const ListValue& from) {
|
| + GOOGLE_DCHECK(&from != this);
|
| values_.MergeFrom(from.values_);
|
| }
|
|
|
| @@ -1431,7 +1755,7 @@ void ListValue::CopyFrom(const ListValue& from) {
|
| // @@protoc_insertion_point(class_specific_copy_from_start:google.protobuf.ListValue)
|
| if (&from == this) return;
|
| Clear();
|
| - MergeFrom(from);
|
| + UnsafeMergeFrom(from);
|
| }
|
|
|
| bool ListValue::IsInitialized() const {
|
| @@ -1441,6 +1765,18 @@ bool ListValue::IsInitialized() const {
|
|
|
| void ListValue::Swap(ListValue* other) {
|
| if (other == this) return;
|
| + if (GetArenaNoVirtual() == other->GetArenaNoVirtual()) {
|
| + InternalSwap(other);
|
| + } else {
|
| + ListValue temp;
|
| + temp.UnsafeMergeFrom(*this);
|
| + CopyFrom(*other);
|
| + other->CopyFrom(temp);
|
| + }
|
| +}
|
| +void ListValue::UnsafeArenaSwap(ListValue* other) {
|
| + if (other == this) return;
|
| + GOOGLE_DCHECK(GetArenaNoVirtual() == other->GetArenaNoVirtual());
|
| InternalSwap(other);
|
| }
|
| void ListValue::InternalSwap(ListValue* other) {
|
| @@ -1490,6 +1826,9 @@ ListValue::values() const {
|
| return values_;
|
| }
|
|
|
| +inline const ListValue* ListValue::internal_default_instance() {
|
| + return &ListValue_default_instance_.get();
|
| +}
|
| #endif // PROTOBUF_INLINE_NOT_IN_HEADERS
|
|
|
| // @@protoc_insertion_point(namespace_scope)
|
|
|