OR-Tools  9.2
search_stats.pb.cc
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: ortools/constraint_solver/search_stats.proto
3
5
6#include <algorithm>
7
8#include <google/protobuf/io/coded_stream.h>
9#include <google/protobuf/extension_set.h>
10#include <google/protobuf/wire_format_lite.h>
11#include <google/protobuf/descriptor.h>
12#include <google/protobuf/generated_message_reflection.h>
13#include <google/protobuf/reflection_ops.h>
14#include <google/protobuf/wire_format.h>
15// @@protoc_insertion_point(includes)
16#include <google/protobuf/port_def.inc>
17
18PROTOBUF_PRAGMA_INIT_SEG
19namespace operations_research {
21 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
22 : strategy_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
23 , duration_seconds_(0){}
26 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
28 union {
30 };
31};
34 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
35 : local_search_operator_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
36 , num_neighbors_(int64_t{0})
37 , num_filtered_neighbors_(int64_t{0})
38 , num_accepted_neighbors_(int64_t{0})
39 , duration_seconds_(0){}
42 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
44 union {
46 };
47};
50 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
51 : local_search_filter_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
52 , num_calls_(int64_t{0})
53 , num_rejects_(int64_t{0})
54 , duration_seconds_(0){}
57 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
59 union {
61 };
62};
65 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
66 : local_search_operator_statistics_()
67 , local_search_filter_statistics_()
68 , first_solution_statistics_()
69 , total_num_neighbors_(int64_t{0})
70 , total_num_filtered_neighbors_(int64_t{0})
71 , total_num_accepted_neighbors_(int64_t{0}){}
74 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
76 union {
78 };
79};
82 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
83 : num_branches_(int64_t{0})
84 , num_failures_(int64_t{0})
85 , num_solutions_(int64_t{0})
86 , bytes_used_(int64_t{0})
87 , duration_seconds_(0){}
90 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
92 union {
94 };
95};
98 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
99 : local_search_statistics_(nullptr)
100 , constraint_solver_statistics_(nullptr){}
103 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
105 union {
107 };
108};
109PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT SearchStatisticsDefaultTypeInternal _SearchStatistics_default_instance_;
110} // namespace operations_research
112static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const** file_level_enum_descriptors_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto = nullptr;
113static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto = nullptr;
114
116 ~0u, // no _has_bits_
117 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_FirstSolutionStatistics, _internal_metadata_),
118 ~0u, // no _extensions_
119 ~0u, // no _oneof_case_
120 ~0u, // no _weak_field_map_
121 ~0u, // no _inlined_string_donated_
123 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_FirstSolutionStatistics, duration_seconds_),
124 ~0u, // no _has_bits_
125 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics, _internal_metadata_),
126 ~0u, // no _extensions_
127 ~0u, // no _oneof_case_
128 ~0u, // no _weak_field_map_
129 ~0u, // no _inlined_string_donated_
130 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics, local_search_operator_),
132 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics, num_filtered_neighbors_),
133 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics, num_accepted_neighbors_),
135 ~0u, // no _has_bits_
136 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics, _internal_metadata_),
137 ~0u, // no _extensions_
138 ~0u, // no _oneof_case_
139 ~0u, // no _weak_field_map_
140 ~0u, // no _inlined_string_donated_
141 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics, local_search_filter_),
144 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics, duration_seconds_),
145 ~0u, // no _has_bits_
146 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, _internal_metadata_),
147 ~0u, // no _extensions_
148 ~0u, // no _oneof_case_
149 ~0u, // no _weak_field_map_
150 ~0u, // no _inlined_string_donated_
151 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, first_solution_statistics_),
152 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, local_search_operator_statistics_),
153 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, local_search_filter_statistics_),
154 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, total_num_neighbors_),
155 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, total_num_filtered_neighbors_),
156 PROTOBUF_FIELD_OFFSET(::operations_research::LocalSearchStatistics, total_num_accepted_neighbors_),
157 ~0u, // no _has_bits_
158 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, _internal_metadata_),
159 ~0u, // no _extensions_
160 ~0u, // no _oneof_case_
161 ~0u, // no _weak_field_map_
162 ~0u, // no _inlined_string_donated_
163 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, num_branches_),
164 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, num_failures_),
165 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, num_solutions_),
166 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, bytes_used_),
167 PROTOBUF_FIELD_OFFSET(::operations_research::ConstraintSolverStatistics, duration_seconds_),
168 ~0u, // no _has_bits_
169 PROTOBUF_FIELD_OFFSET(::operations_research::SearchStatistics, _internal_metadata_),
170 ~0u, // no _extensions_
171 ~0u, // no _oneof_case_
172 ~0u, // no _weak_field_map_
173 ~0u, // no _inlined_string_donated_
174 PROTOBUF_FIELD_OFFSET(::operations_research::SearchStatistics, local_search_statistics_),
175 PROTOBUF_FIELD_OFFSET(::operations_research::SearchStatistics, constraint_solver_statistics_),
176};
177static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
183 { 52, -1, -1, sizeof(::operations_research::SearchStatistics)},
184};
185
186static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
187 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_LocalSearchStatistics_FirstSolutionStatistics_default_instance_),
188 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_LocalSearchStatistics_LocalSearchOperatorStatistics_default_instance_),
189 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_LocalSearchStatistics_LocalSearchFilterStatistics_default_instance_),
190 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_LocalSearchStatistics_default_instance_),
191 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_ConstraintSolverStatistics_default_instance_),
192 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_SearchStatistics_default_instance_),
193};
194
195const char descriptor_table_protodef_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
196 "\n,ortools/constraint_solver/search_stats"
197 ".proto\022\023operations_research\"\302\006\n\025LocalSea"
198 "rchStatistics\022e\n\031first_solution_statisti"
199 "cs\030\006 \003(\0132B.operations_research.LocalSear"
200 "chStatistics.FirstSolutionStatistics\022r\n "
201 "local_search_operator_statistics\030\001 \003(\0132H"
202 ".operations_research.LocalSearchStatisti"
203 "cs.LocalSearchOperatorStatistics\022n\n\036loca"
204 "l_search_filter_statistics\030\002 \003(\0132F.opera"
205 "tions_research.LocalSearchStatistics.Loc"
206 "alSearchFilterStatistics\022\033\n\023total_num_ne"
207 "ighbors\030\003 \001(\003\022$\n\034total_num_filtered_neig"
208 "hbors\030\004 \001(\003\022$\n\034total_num_accepted_neighb"
209 "ors\030\005 \001(\003\032E\n\027FirstSolutionStatistics\022\020\n\010"
210 "strategy\030\001 \001(\t\022\030\n\020duration_seconds\030\002 \001(\001"
211 "\032\257\001\n\035LocalSearchOperatorStatistics\022\035\n\025lo"
212 "cal_search_operator\030\001 \001(\t\022\025\n\rnum_neighbo"
213 "rs\030\002 \001(\003\022\036\n\026num_filtered_neighbors\030\003 \001(\003"
214 "\022\036\n\026num_accepted_neighbors\030\004 \001(\003\022\030\n\020dura"
215 "tion_seconds\030\005 \001(\001\032|\n\033LocalSearchFilterS"
216 "tatistics\022\033\n\023local_search_filter\030\001 \001(\t\022\021"
217 "\n\tnum_calls\030\002 \001(\003\022\023\n\013num_rejects\030\003 \001(\003\022\030"
218 "\n\020duration_seconds\030\004 \001(\001\"\215\001\n\032ConstraintS"
219 "olverStatistics\022\024\n\014num_branches\030\001 \001(\003\022\024\n"
220 "\014num_failures\030\002 \001(\003\022\025\n\rnum_solutions\030\003 \001"
221 "(\003\022\022\n\nbytes_used\030\004 \001(\003\022\030\n\020duration_secon"
222 "ds\030\005 \001(\001\"\266\001\n\020SearchStatistics\022K\n\027local_s"
223 "earch_statistics\030\001 \001(\0132*.operations_rese"
224 "arch.LocalSearchStatistics\022U\n\034constraint"
225 "_solver_statistics\030\002 \001(\0132/.operations_re"
226 "search.ConstraintSolverStatisticsBI\n#com"
227 ".google.ortools.constraintsolverP\001\252\002\037Goo"
228 "gle.OrTools.ConstraintSolverb\006proto3"
229 ;
231const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto = {
232 false, false, 1316, descriptor_table_protodef_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto, "ortools/constraint_solver/search_stats.proto",
236};
237PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto_getter() {
239}
240
241// Force running AddDescriptors() at dynamic initialization time.
242PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto(&descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto);
243namespace operations_research {
244
245// ===================================================================
246
248 public:
249};
250
252 bool is_message_owned)
253 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
254 SharedCtor();
255 if (!is_message_owned) {
256 RegisterArenaDtor(arena);
257 }
258 // @@protoc_insertion_point(arena_constructor:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
259}
261 : ::PROTOBUF_NAMESPACE_ID::Message() {
262 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
263 strategy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
264 #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
265 strategy_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
266 #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
267 if (!from._internal_strategy().empty()) {
268 strategy_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_strategy(),
269 GetArenaForAllocation());
270 }
271 duration_seconds_ = from.duration_seconds_;
272 // @@protoc_insertion_point(copy_constructor:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
273}
274
275inline void LocalSearchStatistics_FirstSolutionStatistics::SharedCtor() {
276strategy_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
277#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
278 strategy_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
279#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
280duration_seconds_ = 0;
281}
282
284 // @@protoc_insertion_point(destructor:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
285 if (GetArenaForAllocation() != nullptr) return;
286 SharedDtor();
287 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
288}
289
290inline void LocalSearchStatistics_FirstSolutionStatistics::SharedDtor() {
291 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
292 strategy_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
293}
294
295void LocalSearchStatistics_FirstSolutionStatistics::ArenaDtor(void* object) {
297 (void)_this;
298}
299void LocalSearchStatistics_FirstSolutionStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
300}
301void LocalSearchStatistics_FirstSolutionStatistics::SetCachedSize(int size) const {
302 _cached_size_.Set(size);
303}
304
306// @@protoc_insertion_point(message_clear_start:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
307 uint32_t cached_has_bits = 0;
308 // Prevent compiler warnings about cached_has_bits being unused
309 (void) cached_has_bits;
310
311 strategy_.ClearToEmpty();
312 duration_seconds_ = 0;
313 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
314}
315
316const char* LocalSearchStatistics_FirstSolutionStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
317#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
318 while (!ctx->Done(&ptr)) {
319 uint32_t tag;
320 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
321 switch (tag >> 3) {
322 // string strategy = 1;
323 case 1:
324 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
325 auto str = _internal_mutable_strategy();
326 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
327 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.LocalSearchStatistics.FirstSolutionStatistics.strategy"));
328 CHK_(ptr);
329 } else
330 goto handle_unusual;
331 continue;
332 // double duration_seconds = 2;
333 case 2:
334 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 17)) {
335 duration_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
336 ptr += sizeof(double);
337 } else
338 goto handle_unusual;
339 continue;
340 default:
341 goto handle_unusual;
342 } // switch
343 handle_unusual:
344 if ((tag == 0) || ((tag & 7) == 4)) {
345 CHK_(ptr);
346 ctx->SetLastTag(tag);
347 goto message_done;
348 }
349 ptr = UnknownFieldParse(
350 tag,
351 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
352 ptr, ctx);
353 CHK_(ptr != nullptr);
354 } // while
355message_done:
356 return ptr;
357failure:
358 ptr = nullptr;
359 goto message_done;
360#undef CHK_
361}
362
364 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
365 // @@protoc_insertion_point(serialize_to_array_start:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
366 uint32_t cached_has_bits = 0;
367 (void) cached_has_bits;
368
369 // string strategy = 1;
370 if (!this->_internal_strategy().empty()) {
371 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
372 this->_internal_strategy().data(), static_cast<int>(this->_internal_strategy().length()),
373 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
374 "operations_research.LocalSearchStatistics.FirstSolutionStatistics.strategy");
375 target = stream->WriteStringMaybeAliased(
376 1, this->_internal_strategy(), target);
377 }
378
379 // double duration_seconds = 2;
380 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
381 double tmp_duration_seconds = this->_internal_duration_seconds();
382 uint64_t raw_duration_seconds;
383 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
384 if (raw_duration_seconds != 0) {
385 target = stream->EnsureSpace(target);
386 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_duration_seconds(), target);
387 }
388
389 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
390 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
391 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
392 }
393 // @@protoc_insertion_point(serialize_to_array_end:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
394 return target;
395}
396
398// @@protoc_insertion_point(message_byte_size_start:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
399 size_t total_size = 0;
400
401 uint32_t cached_has_bits = 0;
402 // Prevent compiler warnings about cached_has_bits being unused
403 (void) cached_has_bits;
404
405 // string strategy = 1;
406 if (!this->_internal_strategy().empty()) {
407 total_size += 1 +
408 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
409 this->_internal_strategy());
410 }
411
412 // double duration_seconds = 2;
413 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
414 double tmp_duration_seconds = this->_internal_duration_seconds();
415 uint64_t raw_duration_seconds;
416 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
417 if (raw_duration_seconds != 0) {
418 total_size += 1 + 8;
419 }
420
421 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
422}
423
424const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LocalSearchStatistics_FirstSolutionStatistics::_class_data_ = {
425 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
426 LocalSearchStatistics_FirstSolutionStatistics::MergeImpl
427};
428const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LocalSearchStatistics_FirstSolutionStatistics::GetClassData() const { return &_class_data_; }
429
430void LocalSearchStatistics_FirstSolutionStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
431 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
433 static_cast<const LocalSearchStatistics_FirstSolutionStatistics &>(from));
434}
435
436
438// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
439 GOOGLE_DCHECK_NE(&from, this);
440 uint32_t cached_has_bits = 0;
441 (void) cached_has_bits;
442
443 if (!from._internal_strategy().empty()) {
444 _internal_set_strategy(from._internal_strategy());
445 }
446 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
447 double tmp_duration_seconds = from._internal_duration_seconds();
448 uint64_t raw_duration_seconds;
449 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
450 if (raw_duration_seconds != 0) {
451 _internal_set_duration_seconds(from._internal_duration_seconds());
452 }
453 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
454}
455
457// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.LocalSearchStatistics.FirstSolutionStatistics)
458 if (&from == this) return;
459 Clear();
460 MergeFrom(from);
461}
462
464 return true;
465}
466
467void LocalSearchStatistics_FirstSolutionStatistics::InternalSwap(LocalSearchStatistics_FirstSolutionStatistics* other) {
468 using std::swap;
469 auto* lhs_arena = GetArenaForAllocation();
470 auto* rhs_arena = other->GetArenaForAllocation();
471 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
472 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
473 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
474 &strategy_, lhs_arena,
475 &other->strategy_, rhs_arena
476 );
477 swap(duration_seconds_, other->duration_seconds_);
478}
479
480::PROTOBUF_NAMESPACE_ID::Metadata LocalSearchStatistics_FirstSolutionStatistics::GetMetadata() const {
481 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
484}
485
486// ===================================================================
487
489 public:
490};
491
493 bool is_message_owned)
494 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
495 SharedCtor();
496 if (!is_message_owned) {
497 RegisterArenaDtor(arena);
498 }
499 // @@protoc_insertion_point(arena_constructor:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
500}
502 : ::PROTOBUF_NAMESPACE_ID::Message() {
503 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
504 local_search_operator_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
505 #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
506 local_search_operator_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
507 #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
508 if (!from._internal_local_search_operator().empty()) {
509 local_search_operator_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_local_search_operator(),
510 GetArenaForAllocation());
511 }
512 ::memcpy(&num_neighbors_, &from.num_neighbors_,
513 static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
514 reinterpret_cast<char*>(&num_neighbors_)) + sizeof(duration_seconds_));
515 // @@protoc_insertion_point(copy_constructor:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
516}
517
518inline void LocalSearchStatistics_LocalSearchOperatorStatistics::SharedCtor() {
519local_search_operator_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
520#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
521 local_search_operator_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
522#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
523::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
524 reinterpret_cast<char*>(&num_neighbors_) - reinterpret_cast<char*>(this)),
525 0, static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
526 reinterpret_cast<char*>(&num_neighbors_)) + sizeof(duration_seconds_));
527}
528
530 // @@protoc_insertion_point(destructor:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
531 if (GetArenaForAllocation() != nullptr) return;
532 SharedDtor();
533 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
534}
535
536inline void LocalSearchStatistics_LocalSearchOperatorStatistics::SharedDtor() {
537 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
538 local_search_operator_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
539}
540
541void LocalSearchStatistics_LocalSearchOperatorStatistics::ArenaDtor(void* object) {
543 (void)_this;
544}
545void LocalSearchStatistics_LocalSearchOperatorStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
546}
547void LocalSearchStatistics_LocalSearchOperatorStatistics::SetCachedSize(int size) const {
548 _cached_size_.Set(size);
549}
550
552// @@protoc_insertion_point(message_clear_start:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
553 uint32_t cached_has_bits = 0;
554 // Prevent compiler warnings about cached_has_bits being unused
555 (void) cached_has_bits;
556
557 local_search_operator_.ClearToEmpty();
558 ::memset(&num_neighbors_, 0, static_cast<size_t>(
559 reinterpret_cast<char*>(&duration_seconds_) -
560 reinterpret_cast<char*>(&num_neighbors_)) + sizeof(duration_seconds_));
561 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
562}
563
564const char* LocalSearchStatistics_LocalSearchOperatorStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
565#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
566 while (!ctx->Done(&ptr)) {
567 uint32_t tag;
568 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
569 switch (tag >> 3) {
570 // string local_search_operator = 1;
571 case 1:
572 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
573 auto str = _internal_mutable_local_search_operator();
574 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
575 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics.local_search_operator"));
576 CHK_(ptr);
577 } else
578 goto handle_unusual;
579 continue;
580 // int64 num_neighbors = 2;
581 case 2:
582 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
583 num_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
584 CHK_(ptr);
585 } else
586 goto handle_unusual;
587 continue;
588 // int64 num_filtered_neighbors = 3;
589 case 3:
590 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
591 num_filtered_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
592 CHK_(ptr);
593 } else
594 goto handle_unusual;
595 continue;
596 // int64 num_accepted_neighbors = 4;
597 case 4:
598 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
599 num_accepted_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
600 CHK_(ptr);
601 } else
602 goto handle_unusual;
603 continue;
604 // double duration_seconds = 5;
605 case 5:
606 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 41)) {
607 duration_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
608 ptr += sizeof(double);
609 } else
610 goto handle_unusual;
611 continue;
612 default:
613 goto handle_unusual;
614 } // switch
615 handle_unusual:
616 if ((tag == 0) || ((tag & 7) == 4)) {
617 CHK_(ptr);
618 ctx->SetLastTag(tag);
619 goto message_done;
620 }
621 ptr = UnknownFieldParse(
622 tag,
623 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
624 ptr, ctx);
625 CHK_(ptr != nullptr);
626 } // while
627message_done:
628 return ptr;
629failure:
630 ptr = nullptr;
631 goto message_done;
632#undef CHK_
633}
634
636 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
637 // @@protoc_insertion_point(serialize_to_array_start:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
638 uint32_t cached_has_bits = 0;
639 (void) cached_has_bits;
640
641 // string local_search_operator = 1;
642 if (!this->_internal_local_search_operator().empty()) {
643 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
644 this->_internal_local_search_operator().data(), static_cast<int>(this->_internal_local_search_operator().length()),
645 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
646 "operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics.local_search_operator");
647 target = stream->WriteStringMaybeAliased(
648 1, this->_internal_local_search_operator(), target);
649 }
650
651 // int64 num_neighbors = 2;
652 if (this->_internal_num_neighbors() != 0) {
653 target = stream->EnsureSpace(target);
654 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_num_neighbors(), target);
655 }
656
657 // int64 num_filtered_neighbors = 3;
658 if (this->_internal_num_filtered_neighbors() != 0) {
659 target = stream->EnsureSpace(target);
660 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_num_filtered_neighbors(), target);
661 }
662
663 // int64 num_accepted_neighbors = 4;
664 if (this->_internal_num_accepted_neighbors() != 0) {
665 target = stream->EnsureSpace(target);
666 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_num_accepted_neighbors(), target);
667 }
668
669 // double duration_seconds = 5;
670 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
671 double tmp_duration_seconds = this->_internal_duration_seconds();
672 uint64_t raw_duration_seconds;
673 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
674 if (raw_duration_seconds != 0) {
675 target = stream->EnsureSpace(target);
676 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(5, this->_internal_duration_seconds(), target);
677 }
678
679 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
680 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
681 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
682 }
683 // @@protoc_insertion_point(serialize_to_array_end:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
684 return target;
685}
686
688// @@protoc_insertion_point(message_byte_size_start:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
689 size_t total_size = 0;
690
691 uint32_t cached_has_bits = 0;
692 // Prevent compiler warnings about cached_has_bits being unused
693 (void) cached_has_bits;
694
695 // string local_search_operator = 1;
696 if (!this->_internal_local_search_operator().empty()) {
697 total_size += 1 +
698 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
699 this->_internal_local_search_operator());
700 }
701
702 // int64 num_neighbors = 2;
703 if (this->_internal_num_neighbors() != 0) {
704 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_neighbors());
705 }
706
707 // int64 num_filtered_neighbors = 3;
708 if (this->_internal_num_filtered_neighbors() != 0) {
709 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_filtered_neighbors());
710 }
711
712 // int64 num_accepted_neighbors = 4;
713 if (this->_internal_num_accepted_neighbors() != 0) {
714 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_accepted_neighbors());
715 }
716
717 // double duration_seconds = 5;
718 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
719 double tmp_duration_seconds = this->_internal_duration_seconds();
720 uint64_t raw_duration_seconds;
721 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
722 if (raw_duration_seconds != 0) {
723 total_size += 1 + 8;
724 }
725
726 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
727}
728
729const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LocalSearchStatistics_LocalSearchOperatorStatistics::_class_data_ = {
730 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
731 LocalSearchStatistics_LocalSearchOperatorStatistics::MergeImpl
732};
733const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LocalSearchStatistics_LocalSearchOperatorStatistics::GetClassData() const { return &_class_data_; }
734
735void LocalSearchStatistics_LocalSearchOperatorStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
736 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
738 static_cast<const LocalSearchStatistics_LocalSearchOperatorStatistics &>(from));
739}
740
741
743// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
744 GOOGLE_DCHECK_NE(&from, this);
745 uint32_t cached_has_bits = 0;
746 (void) cached_has_bits;
747
748 if (!from._internal_local_search_operator().empty()) {
749 _internal_set_local_search_operator(from._internal_local_search_operator());
750 }
751 if (from._internal_num_neighbors() != 0) {
752 _internal_set_num_neighbors(from._internal_num_neighbors());
753 }
754 if (from._internal_num_filtered_neighbors() != 0) {
755 _internal_set_num_filtered_neighbors(from._internal_num_filtered_neighbors());
756 }
757 if (from._internal_num_accepted_neighbors() != 0) {
758 _internal_set_num_accepted_neighbors(from._internal_num_accepted_neighbors());
759 }
760 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
761 double tmp_duration_seconds = from._internal_duration_seconds();
762 uint64_t raw_duration_seconds;
763 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
764 if (raw_duration_seconds != 0) {
765 _internal_set_duration_seconds(from._internal_duration_seconds());
766 }
767 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
768}
769
771// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics)
772 if (&from == this) return;
773 Clear();
774 MergeFrom(from);
775}
776
778 return true;
779}
780
781void LocalSearchStatistics_LocalSearchOperatorStatistics::InternalSwap(LocalSearchStatistics_LocalSearchOperatorStatistics* other) {
782 using std::swap;
783 auto* lhs_arena = GetArenaForAllocation();
784 auto* rhs_arena = other->GetArenaForAllocation();
785 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
786 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
787 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
788 &local_search_operator_, lhs_arena,
789 &other->local_search_operator_, rhs_arena
790 );
791 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
792 PROTOBUF_FIELD_OFFSET(LocalSearchStatistics_LocalSearchOperatorStatistics, duration_seconds_)
793 + sizeof(LocalSearchStatistics_LocalSearchOperatorStatistics::duration_seconds_)
794 - PROTOBUF_FIELD_OFFSET(LocalSearchStatistics_LocalSearchOperatorStatistics, num_neighbors_)>(
795 reinterpret_cast<char*>(&num_neighbors_),
796 reinterpret_cast<char*>(&other->num_neighbors_));
797}
798
800 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
803}
804
805// ===================================================================
806
808 public:
809};
810
812 bool is_message_owned)
813 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
814 SharedCtor();
815 if (!is_message_owned) {
816 RegisterArenaDtor(arena);
817 }
818 // @@protoc_insertion_point(arena_constructor:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
819}
821 : ::PROTOBUF_NAMESPACE_ID::Message() {
822 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
823 local_search_filter_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
824 #ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
825 local_search_filter_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
826 #endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
827 if (!from._internal_local_search_filter().empty()) {
828 local_search_filter_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_local_search_filter(),
829 GetArenaForAllocation());
830 }
831 ::memcpy(&num_calls_, &from.num_calls_,
832 static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
833 reinterpret_cast<char*>(&num_calls_)) + sizeof(duration_seconds_));
834 // @@protoc_insertion_point(copy_constructor:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
835}
836
837inline void LocalSearchStatistics_LocalSearchFilterStatistics::SharedCtor() {
838local_search_filter_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
839#ifdef PROTOBUF_FORCE_COPY_DEFAULT_STRING
840 local_search_filter_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), "", GetArenaForAllocation());
841#endif // PROTOBUF_FORCE_COPY_DEFAULT_STRING
842::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
843 reinterpret_cast<char*>(&num_calls_) - reinterpret_cast<char*>(this)),
844 0, static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
845 reinterpret_cast<char*>(&num_calls_)) + sizeof(duration_seconds_));
846}
847
849 // @@protoc_insertion_point(destructor:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
850 if (GetArenaForAllocation() != nullptr) return;
851 SharedDtor();
852 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
853}
854
855inline void LocalSearchStatistics_LocalSearchFilterStatistics::SharedDtor() {
856 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
857 local_search_filter_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
858}
859
860void LocalSearchStatistics_LocalSearchFilterStatistics::ArenaDtor(void* object) {
862 (void)_this;
863}
864void LocalSearchStatistics_LocalSearchFilterStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
865}
866void LocalSearchStatistics_LocalSearchFilterStatistics::SetCachedSize(int size) const {
867 _cached_size_.Set(size);
868}
869
871// @@protoc_insertion_point(message_clear_start:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
872 uint32_t cached_has_bits = 0;
873 // Prevent compiler warnings about cached_has_bits being unused
874 (void) cached_has_bits;
875
876 local_search_filter_.ClearToEmpty();
877 ::memset(&num_calls_, 0, static_cast<size_t>(
878 reinterpret_cast<char*>(&duration_seconds_) -
879 reinterpret_cast<char*>(&num_calls_)) + sizeof(duration_seconds_));
880 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
881}
882
883const char* LocalSearchStatistics_LocalSearchFilterStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
884#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
885 while (!ctx->Done(&ptr)) {
886 uint32_t tag;
887 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
888 switch (tag >> 3) {
889 // string local_search_filter = 1;
890 case 1:
891 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
892 auto str = _internal_mutable_local_search_filter();
893 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
894 CHK_(::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.LocalSearchStatistics.LocalSearchFilterStatistics.local_search_filter"));
895 CHK_(ptr);
896 } else
897 goto handle_unusual;
898 continue;
899 // int64 num_calls = 2;
900 case 2:
901 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
902 num_calls_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
903 CHK_(ptr);
904 } else
905 goto handle_unusual;
906 continue;
907 // int64 num_rejects = 3;
908 case 3:
909 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
910 num_rejects_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
911 CHK_(ptr);
912 } else
913 goto handle_unusual;
914 continue;
915 // double duration_seconds = 4;
916 case 4:
917 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 33)) {
918 duration_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
919 ptr += sizeof(double);
920 } else
921 goto handle_unusual;
922 continue;
923 default:
924 goto handle_unusual;
925 } // switch
926 handle_unusual:
927 if ((tag == 0) || ((tag & 7) == 4)) {
928 CHK_(ptr);
929 ctx->SetLastTag(tag);
930 goto message_done;
931 }
932 ptr = UnknownFieldParse(
933 tag,
934 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
935 ptr, ctx);
936 CHK_(ptr != nullptr);
937 } // while
938message_done:
939 return ptr;
940failure:
941 ptr = nullptr;
942 goto message_done;
943#undef CHK_
944}
945
947 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
948 // @@protoc_insertion_point(serialize_to_array_start:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
949 uint32_t cached_has_bits = 0;
950 (void) cached_has_bits;
951
952 // string local_search_filter = 1;
953 if (!this->_internal_local_search_filter().empty()) {
954 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::VerifyUtf8String(
955 this->_internal_local_search_filter().data(), static_cast<int>(this->_internal_local_search_filter().length()),
956 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::SERIALIZE,
957 "operations_research.LocalSearchStatistics.LocalSearchFilterStatistics.local_search_filter");
958 target = stream->WriteStringMaybeAliased(
959 1, this->_internal_local_search_filter(), target);
960 }
961
962 // int64 num_calls = 2;
963 if (this->_internal_num_calls() != 0) {
964 target = stream->EnsureSpace(target);
965 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_num_calls(), target);
966 }
967
968 // int64 num_rejects = 3;
969 if (this->_internal_num_rejects() != 0) {
970 target = stream->EnsureSpace(target);
971 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_num_rejects(), target);
972 }
973
974 // double duration_seconds = 4;
975 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
976 double tmp_duration_seconds = this->_internal_duration_seconds();
977 uint64_t raw_duration_seconds;
978 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
979 if (raw_duration_seconds != 0) {
980 target = stream->EnsureSpace(target);
981 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(4, this->_internal_duration_seconds(), target);
982 }
983
984 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
985 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
986 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
987 }
988 // @@protoc_insertion_point(serialize_to_array_end:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
989 return target;
990}
991
993// @@protoc_insertion_point(message_byte_size_start:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
994 size_t total_size = 0;
995
996 uint32_t cached_has_bits = 0;
997 // Prevent compiler warnings about cached_has_bits being unused
998 (void) cached_has_bits;
999
1000 // string local_search_filter = 1;
1001 if (!this->_internal_local_search_filter().empty()) {
1002 total_size += 1 +
1003 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
1004 this->_internal_local_search_filter());
1005 }
1006
1007 // int64 num_calls = 2;
1008 if (this->_internal_num_calls() != 0) {
1009 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_calls());
1010 }
1011
1012 // int64 num_rejects = 3;
1013 if (this->_internal_num_rejects() != 0) {
1014 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_rejects());
1015 }
1016
1017 // double duration_seconds = 4;
1018 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
1019 double tmp_duration_seconds = this->_internal_duration_seconds();
1020 uint64_t raw_duration_seconds;
1021 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
1022 if (raw_duration_seconds != 0) {
1023 total_size += 1 + 8;
1024 }
1025
1026 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1027}
1028
1029const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LocalSearchStatistics_LocalSearchFilterStatistics::_class_data_ = {
1030 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1031 LocalSearchStatistics_LocalSearchFilterStatistics::MergeImpl
1032};
1033const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LocalSearchStatistics_LocalSearchFilterStatistics::GetClassData() const { return &_class_data_; }
1034
1035void LocalSearchStatistics_LocalSearchFilterStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1036 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1038 static_cast<const LocalSearchStatistics_LocalSearchFilterStatistics &>(from));
1039}
1040
1041
1043// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
1044 GOOGLE_DCHECK_NE(&from, this);
1045 uint32_t cached_has_bits = 0;
1046 (void) cached_has_bits;
1047
1048 if (!from._internal_local_search_filter().empty()) {
1049 _internal_set_local_search_filter(from._internal_local_search_filter());
1050 }
1051 if (from._internal_num_calls() != 0) {
1052 _internal_set_num_calls(from._internal_num_calls());
1053 }
1054 if (from._internal_num_rejects() != 0) {
1055 _internal_set_num_rejects(from._internal_num_rejects());
1056 }
1057 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
1058 double tmp_duration_seconds = from._internal_duration_seconds();
1059 uint64_t raw_duration_seconds;
1060 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
1061 if (raw_duration_seconds != 0) {
1062 _internal_set_duration_seconds(from._internal_duration_seconds());
1063 }
1064 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1065}
1066
1068// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.LocalSearchStatistics.LocalSearchFilterStatistics)
1069 if (&from == this) return;
1070 Clear();
1071 MergeFrom(from);
1072}
1073
1075 return true;
1076}
1077
1078void LocalSearchStatistics_LocalSearchFilterStatistics::InternalSwap(LocalSearchStatistics_LocalSearchFilterStatistics* other) {
1079 using std::swap;
1080 auto* lhs_arena = GetArenaForAllocation();
1081 auto* rhs_arena = other->GetArenaForAllocation();
1082 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1083 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
1084 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1085 &local_search_filter_, lhs_arena,
1086 &other->local_search_filter_, rhs_arena
1087 );
1088 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1089 PROTOBUF_FIELD_OFFSET(LocalSearchStatistics_LocalSearchFilterStatistics, duration_seconds_)
1090 + sizeof(LocalSearchStatistics_LocalSearchFilterStatistics::duration_seconds_)
1091 - PROTOBUF_FIELD_OFFSET(LocalSearchStatistics_LocalSearchFilterStatistics, num_calls_)>(
1092 reinterpret_cast<char*>(&num_calls_),
1093 reinterpret_cast<char*>(&other->num_calls_));
1094}
1095
1097 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1100}
1101
1102// ===================================================================
1103
1105 public:
1106};
1107
1108LocalSearchStatistics::LocalSearchStatistics(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1109 bool is_message_owned)
1110 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
1111 local_search_operator_statistics_(arena),
1112 local_search_filter_statistics_(arena),
1113 first_solution_statistics_(arena) {
1114 SharedCtor();
1115 if (!is_message_owned) {
1116 RegisterArenaDtor(arena);
1117 }
1118 // @@protoc_insertion_point(arena_constructor:operations_research.LocalSearchStatistics)
1119}
1121 : ::PROTOBUF_NAMESPACE_ID::Message(),
1122 local_search_operator_statistics_(from.local_search_operator_statistics_),
1123 local_search_filter_statistics_(from.local_search_filter_statistics_),
1124 first_solution_statistics_(from.first_solution_statistics_) {
1125 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1126 ::memcpy(&total_num_neighbors_, &from.total_num_neighbors_,
1127 static_cast<size_t>(reinterpret_cast<char*>(&total_num_accepted_neighbors_) -
1128 reinterpret_cast<char*>(&total_num_neighbors_)) + sizeof(total_num_accepted_neighbors_));
1129 // @@protoc_insertion_point(copy_constructor:operations_research.LocalSearchStatistics)
1130}
1131
1132inline void LocalSearchStatistics::SharedCtor() {
1133::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
1134 reinterpret_cast<char*>(&total_num_neighbors_) - reinterpret_cast<char*>(this)),
1135 0, static_cast<size_t>(reinterpret_cast<char*>(&total_num_accepted_neighbors_) -
1136 reinterpret_cast<char*>(&total_num_neighbors_)) + sizeof(total_num_accepted_neighbors_));
1137}
1138
1140 // @@protoc_insertion_point(destructor:operations_research.LocalSearchStatistics)
1141 if (GetArenaForAllocation() != nullptr) return;
1142 SharedDtor();
1143 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1144}
1145
1146inline void LocalSearchStatistics::SharedDtor() {
1147 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1148}
1149
1150void LocalSearchStatistics::ArenaDtor(void* object) {
1151 LocalSearchStatistics* _this = reinterpret_cast< LocalSearchStatistics* >(object);
1152 (void)_this;
1153}
1154void LocalSearchStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1155}
1156void LocalSearchStatistics::SetCachedSize(int size) const {
1157 _cached_size_.Set(size);
1158}
1159
1161// @@protoc_insertion_point(message_clear_start:operations_research.LocalSearchStatistics)
1162 uint32_t cached_has_bits = 0;
1163 // Prevent compiler warnings about cached_has_bits being unused
1164 (void) cached_has_bits;
1165
1166 local_search_operator_statistics_.Clear();
1167 local_search_filter_statistics_.Clear();
1168 first_solution_statistics_.Clear();
1169 ::memset(&total_num_neighbors_, 0, static_cast<size_t>(
1170 reinterpret_cast<char*>(&total_num_accepted_neighbors_) -
1171 reinterpret_cast<char*>(&total_num_neighbors_)) + sizeof(total_num_accepted_neighbors_));
1172 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1173}
1174
1175const char* LocalSearchStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1176#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1177 while (!ctx->Done(&ptr)) {
1178 uint32_t tag;
1179 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1180 switch (tag >> 3) {
1181 // repeated .operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics local_search_operator_statistics = 1;
1182 case 1:
1183 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
1184 ptr -= 1;
1185 do {
1186 ptr += 1;
1187 ptr = ctx->ParseMessage(_internal_add_local_search_operator_statistics(), ptr);
1188 CHK_(ptr);
1189 if (!ctx->DataAvailable(ptr)) break;
1190 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
1191 } else
1192 goto handle_unusual;
1193 continue;
1194 // repeated .operations_research.LocalSearchStatistics.LocalSearchFilterStatistics local_search_filter_statistics = 2;
1195 case 2:
1196 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
1197 ptr -= 1;
1198 do {
1199 ptr += 1;
1200 ptr = ctx->ParseMessage(_internal_add_local_search_filter_statistics(), ptr);
1201 CHK_(ptr);
1202 if (!ctx->DataAvailable(ptr)) break;
1203 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
1204 } else
1205 goto handle_unusual;
1206 continue;
1207 // int64 total_num_neighbors = 3;
1208 case 3:
1209 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
1210 total_num_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1211 CHK_(ptr);
1212 } else
1213 goto handle_unusual;
1214 continue;
1215 // int64 total_num_filtered_neighbors = 4;
1216 case 4:
1217 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
1218 total_num_filtered_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1219 CHK_(ptr);
1220 } else
1221 goto handle_unusual;
1222 continue;
1223 // int64 total_num_accepted_neighbors = 5;
1224 case 5:
1225 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 40)) {
1226 total_num_accepted_neighbors_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1227 CHK_(ptr);
1228 } else
1229 goto handle_unusual;
1230 continue;
1231 // repeated .operations_research.LocalSearchStatistics.FirstSolutionStatistics first_solution_statistics = 6;
1232 case 6:
1233 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 50)) {
1234 ptr -= 1;
1235 do {
1236 ptr += 1;
1237 ptr = ctx->ParseMessage(_internal_add_first_solution_statistics(), ptr);
1238 CHK_(ptr);
1239 if (!ctx->DataAvailable(ptr)) break;
1240 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<50>(ptr));
1241 } else
1242 goto handle_unusual;
1243 continue;
1244 default:
1245 goto handle_unusual;
1246 } // switch
1247 handle_unusual:
1248 if ((tag == 0) || ((tag & 7) == 4)) {
1249 CHK_(ptr);
1250 ctx->SetLastTag(tag);
1251 goto message_done;
1252 }
1253 ptr = UnknownFieldParse(
1254 tag,
1255 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1256 ptr, ctx);
1257 CHK_(ptr != nullptr);
1258 } // while
1259message_done:
1260 return ptr;
1261failure:
1262 ptr = nullptr;
1263 goto message_done;
1264#undef CHK_
1265}
1266
1268 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1269 // @@protoc_insertion_point(serialize_to_array_start:operations_research.LocalSearchStatistics)
1270 uint32_t cached_has_bits = 0;
1271 (void) cached_has_bits;
1272
1273 // repeated .operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics local_search_operator_statistics = 1;
1274 for (unsigned int i = 0,
1275 n = static_cast<unsigned int>(this->_internal_local_search_operator_statistics_size()); i < n; i++) {
1276 target = stream->EnsureSpace(target);
1277 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1278 InternalWriteMessage(1, this->_internal_local_search_operator_statistics(i), target, stream);
1279 }
1280
1281 // repeated .operations_research.LocalSearchStatistics.LocalSearchFilterStatistics local_search_filter_statistics = 2;
1282 for (unsigned int i = 0,
1283 n = static_cast<unsigned int>(this->_internal_local_search_filter_statistics_size()); i < n; i++) {
1284 target = stream->EnsureSpace(target);
1285 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1286 InternalWriteMessage(2, this->_internal_local_search_filter_statistics(i), target, stream);
1287 }
1288
1289 // int64 total_num_neighbors = 3;
1290 if (this->_internal_total_num_neighbors() != 0) {
1291 target = stream->EnsureSpace(target);
1292 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_total_num_neighbors(), target);
1293 }
1294
1295 // int64 total_num_filtered_neighbors = 4;
1296 if (this->_internal_total_num_filtered_neighbors() != 0) {
1297 target = stream->EnsureSpace(target);
1298 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_total_num_filtered_neighbors(), target);
1299 }
1300
1301 // int64 total_num_accepted_neighbors = 5;
1302 if (this->_internal_total_num_accepted_neighbors() != 0) {
1303 target = stream->EnsureSpace(target);
1304 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(5, this->_internal_total_num_accepted_neighbors(), target);
1305 }
1306
1307 // repeated .operations_research.LocalSearchStatistics.FirstSolutionStatistics first_solution_statistics = 6;
1308 for (unsigned int i = 0,
1309 n = static_cast<unsigned int>(this->_internal_first_solution_statistics_size()); i < n; i++) {
1310 target = stream->EnsureSpace(target);
1311 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1312 InternalWriteMessage(6, this->_internal_first_solution_statistics(i), target, stream);
1313 }
1314
1315 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1316 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1317 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1318 }
1319 // @@protoc_insertion_point(serialize_to_array_end:operations_research.LocalSearchStatistics)
1320 return target;
1321}
1322
1324// @@protoc_insertion_point(message_byte_size_start:operations_research.LocalSearchStatistics)
1325 size_t total_size = 0;
1326
1327 uint32_t cached_has_bits = 0;
1328 // Prevent compiler warnings about cached_has_bits being unused
1329 (void) cached_has_bits;
1330
1331 // repeated .operations_research.LocalSearchStatistics.LocalSearchOperatorStatistics local_search_operator_statistics = 1;
1332 total_size += 1UL * this->_internal_local_search_operator_statistics_size();
1333 for (const auto& msg : this->local_search_operator_statistics_) {
1334 total_size +=
1335 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1336 }
1337
1338 // repeated .operations_research.LocalSearchStatistics.LocalSearchFilterStatistics local_search_filter_statistics = 2;
1339 total_size += 1UL * this->_internal_local_search_filter_statistics_size();
1340 for (const auto& msg : this->local_search_filter_statistics_) {
1341 total_size +=
1342 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1343 }
1344
1345 // repeated .operations_research.LocalSearchStatistics.FirstSolutionStatistics first_solution_statistics = 6;
1346 total_size += 1UL * this->_internal_first_solution_statistics_size();
1347 for (const auto& msg : this->first_solution_statistics_) {
1348 total_size +=
1349 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
1350 }
1351
1352 // int64 total_num_neighbors = 3;
1353 if (this->_internal_total_num_neighbors() != 0) {
1354 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_total_num_neighbors());
1355 }
1356
1357 // int64 total_num_filtered_neighbors = 4;
1358 if (this->_internal_total_num_filtered_neighbors() != 0) {
1359 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_total_num_filtered_neighbors());
1360 }
1361
1362 // int64 total_num_accepted_neighbors = 5;
1363 if (this->_internal_total_num_accepted_neighbors() != 0) {
1364 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_total_num_accepted_neighbors());
1365 }
1366
1367 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1368}
1369
1370const ::PROTOBUF_NAMESPACE_ID::Message::ClassData LocalSearchStatistics::_class_data_ = {
1371 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1372 LocalSearchStatistics::MergeImpl
1373};
1374const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*LocalSearchStatistics::GetClassData() const { return &_class_data_; }
1375
1376void LocalSearchStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1377 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1378 static_cast<LocalSearchStatistics *>(to)->MergeFrom(
1379 static_cast<const LocalSearchStatistics &>(from));
1380}
1381
1382
1384// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.LocalSearchStatistics)
1385 GOOGLE_DCHECK_NE(&from, this);
1386 uint32_t cached_has_bits = 0;
1387 (void) cached_has_bits;
1388
1389 local_search_operator_statistics_.MergeFrom(from.local_search_operator_statistics_);
1390 local_search_filter_statistics_.MergeFrom(from.local_search_filter_statistics_);
1391 first_solution_statistics_.MergeFrom(from.first_solution_statistics_);
1392 if (from._internal_total_num_neighbors() != 0) {
1393 _internal_set_total_num_neighbors(from._internal_total_num_neighbors());
1394 }
1395 if (from._internal_total_num_filtered_neighbors() != 0) {
1396 _internal_set_total_num_filtered_neighbors(from._internal_total_num_filtered_neighbors());
1397 }
1398 if (from._internal_total_num_accepted_neighbors() != 0) {
1399 _internal_set_total_num_accepted_neighbors(from._internal_total_num_accepted_neighbors());
1400 }
1401 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1402}
1403
1405// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.LocalSearchStatistics)
1406 if (&from == this) return;
1407 Clear();
1408 MergeFrom(from);
1409}
1410
1412 return true;
1413}
1414
1415void LocalSearchStatistics::InternalSwap(LocalSearchStatistics* other) {
1416 using std::swap;
1417 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1418 local_search_operator_statistics_.InternalSwap(&other->local_search_operator_statistics_);
1419 local_search_filter_statistics_.InternalSwap(&other->local_search_filter_statistics_);
1420 first_solution_statistics_.InternalSwap(&other->first_solution_statistics_);
1421 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1422 PROTOBUF_FIELD_OFFSET(LocalSearchStatistics, total_num_accepted_neighbors_)
1423 + sizeof(LocalSearchStatistics::total_num_accepted_neighbors_)
1424 - PROTOBUF_FIELD_OFFSET(LocalSearchStatistics, total_num_neighbors_)>(
1425 reinterpret_cast<char*>(&total_num_neighbors_),
1426 reinterpret_cast<char*>(&other->total_num_neighbors_));
1427}
1428
1429::PROTOBUF_NAMESPACE_ID::Metadata LocalSearchStatistics::GetMetadata() const {
1430 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1433}
1434
1435// ===================================================================
1436
1438 public:
1439};
1440
1442 bool is_message_owned)
1443 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
1444 SharedCtor();
1445 if (!is_message_owned) {
1446 RegisterArenaDtor(arena);
1447 }
1448 // @@protoc_insertion_point(arena_constructor:operations_research.ConstraintSolverStatistics)
1449}
1451 : ::PROTOBUF_NAMESPACE_ID::Message() {
1452 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1453 ::memcpy(&num_branches_, &from.num_branches_,
1454 static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
1455 reinterpret_cast<char*>(&num_branches_)) + sizeof(duration_seconds_));
1456 // @@protoc_insertion_point(copy_constructor:operations_research.ConstraintSolverStatistics)
1457}
1458
1459inline void ConstraintSolverStatistics::SharedCtor() {
1460::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
1461 reinterpret_cast<char*>(&num_branches_) - reinterpret_cast<char*>(this)),
1462 0, static_cast<size_t>(reinterpret_cast<char*>(&duration_seconds_) -
1463 reinterpret_cast<char*>(&num_branches_)) + sizeof(duration_seconds_));
1464}
1465
1467 // @@protoc_insertion_point(destructor:operations_research.ConstraintSolverStatistics)
1468 if (GetArenaForAllocation() != nullptr) return;
1469 SharedDtor();
1470 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1471}
1472
1473inline void ConstraintSolverStatistics::SharedDtor() {
1474 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1475}
1476
1477void ConstraintSolverStatistics::ArenaDtor(void* object) {
1478 ConstraintSolverStatistics* _this = reinterpret_cast< ConstraintSolverStatistics* >(object);
1479 (void)_this;
1480}
1481void ConstraintSolverStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1482}
1483void ConstraintSolverStatistics::SetCachedSize(int size) const {
1484 _cached_size_.Set(size);
1485}
1486
1488// @@protoc_insertion_point(message_clear_start:operations_research.ConstraintSolverStatistics)
1489 uint32_t cached_has_bits = 0;
1490 // Prevent compiler warnings about cached_has_bits being unused
1491 (void) cached_has_bits;
1492
1493 ::memset(&num_branches_, 0, static_cast<size_t>(
1494 reinterpret_cast<char*>(&duration_seconds_) -
1495 reinterpret_cast<char*>(&num_branches_)) + sizeof(duration_seconds_));
1496 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1497}
1498
1499const char* ConstraintSolverStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1500#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1501 while (!ctx->Done(&ptr)) {
1502 uint32_t tag;
1503 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1504 switch (tag >> 3) {
1505 // int64 num_branches = 1;
1506 case 1:
1507 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 8)) {
1508 num_branches_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1509 CHK_(ptr);
1510 } else
1511 goto handle_unusual;
1512 continue;
1513 // int64 num_failures = 2;
1514 case 2:
1515 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 16)) {
1516 num_failures_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1517 CHK_(ptr);
1518 } else
1519 goto handle_unusual;
1520 continue;
1521 // int64 num_solutions = 3;
1522 case 3:
1523 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 24)) {
1524 num_solutions_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1525 CHK_(ptr);
1526 } else
1527 goto handle_unusual;
1528 continue;
1529 // int64 bytes_used = 4;
1530 case 4:
1531 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 32)) {
1532 bytes_used_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1533 CHK_(ptr);
1534 } else
1535 goto handle_unusual;
1536 continue;
1537 // double duration_seconds = 5;
1538 case 5:
1539 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 41)) {
1540 duration_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1541 ptr += sizeof(double);
1542 } else
1543 goto handle_unusual;
1544 continue;
1545 default:
1546 goto handle_unusual;
1547 } // switch
1548 handle_unusual:
1549 if ((tag == 0) || ((tag & 7) == 4)) {
1550 CHK_(ptr);
1551 ctx->SetLastTag(tag);
1552 goto message_done;
1553 }
1554 ptr = UnknownFieldParse(
1555 tag,
1556 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1557 ptr, ctx);
1558 CHK_(ptr != nullptr);
1559 } // while
1560message_done:
1561 return ptr;
1562failure:
1563 ptr = nullptr;
1564 goto message_done;
1565#undef CHK_
1566}
1567
1569 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1570 // @@protoc_insertion_point(serialize_to_array_start:operations_research.ConstraintSolverStatistics)
1571 uint32_t cached_has_bits = 0;
1572 (void) cached_has_bits;
1573
1574 // int64 num_branches = 1;
1575 if (this->_internal_num_branches() != 0) {
1576 target = stream->EnsureSpace(target);
1577 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_num_branches(), target);
1578 }
1579
1580 // int64 num_failures = 2;
1581 if (this->_internal_num_failures() != 0) {
1582 target = stream->EnsureSpace(target);
1583 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_num_failures(), target);
1584 }
1585
1586 // int64 num_solutions = 3;
1587 if (this->_internal_num_solutions() != 0) {
1588 target = stream->EnsureSpace(target);
1589 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_num_solutions(), target);
1590 }
1591
1592 // int64 bytes_used = 4;
1593 if (this->_internal_bytes_used() != 0) {
1594 target = stream->EnsureSpace(target);
1595 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_bytes_used(), target);
1596 }
1597
1598 // double duration_seconds = 5;
1599 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
1600 double tmp_duration_seconds = this->_internal_duration_seconds();
1601 uint64_t raw_duration_seconds;
1602 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
1603 if (raw_duration_seconds != 0) {
1604 target = stream->EnsureSpace(target);
1605 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(5, this->_internal_duration_seconds(), target);
1606 }
1607
1608 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1609 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1610 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1611 }
1612 // @@protoc_insertion_point(serialize_to_array_end:operations_research.ConstraintSolverStatistics)
1613 return target;
1614}
1615
1617// @@protoc_insertion_point(message_byte_size_start:operations_research.ConstraintSolverStatistics)
1618 size_t total_size = 0;
1619
1620 uint32_t cached_has_bits = 0;
1621 // Prevent compiler warnings about cached_has_bits being unused
1622 (void) cached_has_bits;
1623
1624 // int64 num_branches = 1;
1625 if (this->_internal_num_branches() != 0) {
1626 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_branches());
1627 }
1628
1629 // int64 num_failures = 2;
1630 if (this->_internal_num_failures() != 0) {
1631 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_failures());
1632 }
1633
1634 // int64 num_solutions = 3;
1635 if (this->_internal_num_solutions() != 0) {
1636 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_num_solutions());
1637 }
1638
1639 // int64 bytes_used = 4;
1640 if (this->_internal_bytes_used() != 0) {
1641 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_bytes_used());
1642 }
1643
1644 // double duration_seconds = 5;
1645 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
1646 double tmp_duration_seconds = this->_internal_duration_seconds();
1647 uint64_t raw_duration_seconds;
1648 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
1649 if (raw_duration_seconds != 0) {
1650 total_size += 1 + 8;
1651 }
1652
1653 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1654}
1655
1656const ::PROTOBUF_NAMESPACE_ID::Message::ClassData ConstraintSolverStatistics::_class_data_ = {
1657 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1658 ConstraintSolverStatistics::MergeImpl
1659};
1660const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*ConstraintSolverStatistics::GetClassData() const { return &_class_data_; }
1661
1662void ConstraintSolverStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1663 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1664 static_cast<ConstraintSolverStatistics *>(to)->MergeFrom(
1665 static_cast<const ConstraintSolverStatistics &>(from));
1666}
1667
1668
1670// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.ConstraintSolverStatistics)
1671 GOOGLE_DCHECK_NE(&from, this);
1672 uint32_t cached_has_bits = 0;
1673 (void) cached_has_bits;
1674
1675 if (from._internal_num_branches() != 0) {
1676 _internal_set_num_branches(from._internal_num_branches());
1677 }
1678 if (from._internal_num_failures() != 0) {
1679 _internal_set_num_failures(from._internal_num_failures());
1680 }
1681 if (from._internal_num_solutions() != 0) {
1682 _internal_set_num_solutions(from._internal_num_solutions());
1683 }
1684 if (from._internal_bytes_used() != 0) {
1685 _internal_set_bytes_used(from._internal_bytes_used());
1686 }
1687 static_assert(sizeof(uint64_t) == sizeof(double), "Code assumes uint64_t and double are the same size.");
1688 double tmp_duration_seconds = from._internal_duration_seconds();
1689 uint64_t raw_duration_seconds;
1690 memcpy(&raw_duration_seconds, &tmp_duration_seconds, sizeof(tmp_duration_seconds));
1691 if (raw_duration_seconds != 0) {
1692 _internal_set_duration_seconds(from._internal_duration_seconds());
1693 }
1694 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1695}
1696
1698// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.ConstraintSolverStatistics)
1699 if (&from == this) return;
1700 Clear();
1701 MergeFrom(from);
1702}
1703
1705 return true;
1706}
1707
1708void ConstraintSolverStatistics::InternalSwap(ConstraintSolverStatistics* other) {
1709 using std::swap;
1710 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1711 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1712 PROTOBUF_FIELD_OFFSET(ConstraintSolverStatistics, duration_seconds_)
1713 + sizeof(ConstraintSolverStatistics::duration_seconds_)
1714 - PROTOBUF_FIELD_OFFSET(ConstraintSolverStatistics, num_branches_)>(
1715 reinterpret_cast<char*>(&num_branches_),
1716 reinterpret_cast<char*>(&other->num_branches_));
1717}
1718
1719::PROTOBUF_NAMESPACE_ID::Metadata ConstraintSolverStatistics::GetMetadata() const {
1720 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1723}
1724
1725// ===================================================================
1726
1728 public:
1729 static const ::operations_research::LocalSearchStatistics& local_search_statistics(const SearchStatistics* msg);
1730 static const ::operations_research::ConstraintSolverStatistics& constraint_solver_statistics(const SearchStatistics* msg);
1731};
1732
1733const ::operations_research::LocalSearchStatistics&
1735 return *msg->local_search_statistics_;
1736}
1737const ::operations_research::ConstraintSolverStatistics&
1739 return *msg->constraint_solver_statistics_;
1740}
1741SearchStatistics::SearchStatistics(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1742 bool is_message_owned)
1743 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
1744 SharedCtor();
1745 if (!is_message_owned) {
1746 RegisterArenaDtor(arena);
1747 }
1748 // @@protoc_insertion_point(arena_constructor:operations_research.SearchStatistics)
1749}
1751 : ::PROTOBUF_NAMESPACE_ID::Message() {
1752 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1753 if (from._internal_has_local_search_statistics()) {
1754 local_search_statistics_ = new ::operations_research::LocalSearchStatistics(*from.local_search_statistics_);
1755 } else {
1756 local_search_statistics_ = nullptr;
1757 }
1758 if (from._internal_has_constraint_solver_statistics()) {
1759 constraint_solver_statistics_ = new ::operations_research::ConstraintSolverStatistics(*from.constraint_solver_statistics_);
1760 } else {
1761 constraint_solver_statistics_ = nullptr;
1762 }
1763 // @@protoc_insertion_point(copy_constructor:operations_research.SearchStatistics)
1764}
1765
1766inline void SearchStatistics::SharedCtor() {
1767::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
1768 reinterpret_cast<char*>(&local_search_statistics_) - reinterpret_cast<char*>(this)),
1769 0, static_cast<size_t>(reinterpret_cast<char*>(&constraint_solver_statistics_) -
1770 reinterpret_cast<char*>(&local_search_statistics_)) + sizeof(constraint_solver_statistics_));
1771}
1772
1774 // @@protoc_insertion_point(destructor:operations_research.SearchStatistics)
1775 if (GetArenaForAllocation() != nullptr) return;
1776 SharedDtor();
1777 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1778}
1779
1780inline void SearchStatistics::SharedDtor() {
1781 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1782 if (this != internal_default_instance()) delete local_search_statistics_;
1783 if (this != internal_default_instance()) delete constraint_solver_statistics_;
1784}
1785
1786void SearchStatistics::ArenaDtor(void* object) {
1787 SearchStatistics* _this = reinterpret_cast< SearchStatistics* >(object);
1788 (void)_this;
1789}
1790void SearchStatistics::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1791}
1792void SearchStatistics::SetCachedSize(int size) const {
1793 _cached_size_.Set(size);
1794}
1795
1797// @@protoc_insertion_point(message_clear_start:operations_research.SearchStatistics)
1798 uint32_t cached_has_bits = 0;
1799 // Prevent compiler warnings about cached_has_bits being unused
1800 (void) cached_has_bits;
1801
1802 if (GetArenaForAllocation() == nullptr && local_search_statistics_ != nullptr) {
1803 delete local_search_statistics_;
1804 }
1805 local_search_statistics_ = nullptr;
1806 if (GetArenaForAllocation() == nullptr && constraint_solver_statistics_ != nullptr) {
1807 delete constraint_solver_statistics_;
1808 }
1809 constraint_solver_statistics_ = nullptr;
1810 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1811}
1812
1813const char* SearchStatistics::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1814#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1815 while (!ctx->Done(&ptr)) {
1816 uint32_t tag;
1817 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1818 switch (tag >> 3) {
1819 // .operations_research.LocalSearchStatistics local_search_statistics = 1;
1820 case 1:
1821 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 10)) {
1822 ptr = ctx->ParseMessage(_internal_mutable_local_search_statistics(), ptr);
1823 CHK_(ptr);
1824 } else
1825 goto handle_unusual;
1826 continue;
1827 // .operations_research.ConstraintSolverStatistics constraint_solver_statistics = 2;
1828 case 2:
1829 if (PROTOBUF_PREDICT_TRUE(static_cast<uint8_t>(tag) == 18)) {
1830 ptr = ctx->ParseMessage(_internal_mutable_constraint_solver_statistics(), ptr);
1831 CHK_(ptr);
1832 } else
1833 goto handle_unusual;
1834 continue;
1835 default:
1836 goto handle_unusual;
1837 } // switch
1838 handle_unusual:
1839 if ((tag == 0) || ((tag & 7) == 4)) {
1840 CHK_(ptr);
1841 ctx->SetLastTag(tag);
1842 goto message_done;
1843 }
1844 ptr = UnknownFieldParse(
1845 tag,
1846 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1847 ptr, ctx);
1848 CHK_(ptr != nullptr);
1849 } // while
1850message_done:
1851 return ptr;
1852failure:
1853 ptr = nullptr;
1854 goto message_done;
1855#undef CHK_
1856}
1857
1859 uint8_t* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1860 // @@protoc_insertion_point(serialize_to_array_start:operations_research.SearchStatistics)
1861 uint32_t cached_has_bits = 0;
1862 (void) cached_has_bits;
1863
1864 // .operations_research.LocalSearchStatistics local_search_statistics = 1;
1865 if (this->_internal_has_local_search_statistics()) {
1866 target = stream->EnsureSpace(target);
1867 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1868 InternalWriteMessage(
1869 1, _Internal::local_search_statistics(this), target, stream);
1870 }
1871
1872 // .operations_research.ConstraintSolverStatistics constraint_solver_statistics = 2;
1873 if (this->_internal_has_constraint_solver_statistics()) {
1874 target = stream->EnsureSpace(target);
1875 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1876 InternalWriteMessage(
1877 2, _Internal::constraint_solver_statistics(this), target, stream);
1878 }
1879
1880 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1881 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1882 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1883 }
1884 // @@protoc_insertion_point(serialize_to_array_end:operations_research.SearchStatistics)
1885 return target;
1886}
1887
1889// @@protoc_insertion_point(message_byte_size_start:operations_research.SearchStatistics)
1890 size_t total_size = 0;
1891
1892 uint32_t cached_has_bits = 0;
1893 // Prevent compiler warnings about cached_has_bits being unused
1894 (void) cached_has_bits;
1895
1896 // .operations_research.LocalSearchStatistics local_search_statistics = 1;
1897 if (this->_internal_has_local_search_statistics()) {
1898 total_size += 1 +
1899 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
1900 *local_search_statistics_);
1901 }
1902
1903 // .operations_research.ConstraintSolverStatistics constraint_solver_statistics = 2;
1904 if (this->_internal_has_constraint_solver_statistics()) {
1905 total_size += 1 +
1906 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
1907 *constraint_solver_statistics_);
1908 }
1909
1910 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1911}
1912
1913const ::PROTOBUF_NAMESPACE_ID::Message::ClassData SearchStatistics::_class_data_ = {
1914 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1915 SearchStatistics::MergeImpl
1916};
1917const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*SearchStatistics::GetClassData() const { return &_class_data_; }
1918
1919void SearchStatistics::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1920 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1921 static_cast<SearchStatistics *>(to)->MergeFrom(
1922 static_cast<const SearchStatistics &>(from));
1923}
1924
1925
1927// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.SearchStatistics)
1928 GOOGLE_DCHECK_NE(&from, this);
1929 uint32_t cached_has_bits = 0;
1930 (void) cached_has_bits;
1931
1932 if (from._internal_has_local_search_statistics()) {
1933 _internal_mutable_local_search_statistics()->::operations_research::LocalSearchStatistics::MergeFrom(from._internal_local_search_statistics());
1934 }
1935 if (from._internal_has_constraint_solver_statistics()) {
1936 _internal_mutable_constraint_solver_statistics()->::operations_research::ConstraintSolverStatistics::MergeFrom(from._internal_constraint_solver_statistics());
1937 }
1938 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1939}
1940
1942// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.SearchStatistics)
1943 if (&from == this) return;
1944 Clear();
1945 MergeFrom(from);
1946}
1947
1949 return true;
1950}
1951
1952void SearchStatistics::InternalSwap(SearchStatistics* other) {
1953 using std::swap;
1954 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1955 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1956 PROTOBUF_FIELD_OFFSET(SearchStatistics, constraint_solver_statistics_)
1957 + sizeof(SearchStatistics::constraint_solver_statistics_)
1958 - PROTOBUF_FIELD_OFFSET(SearchStatistics, local_search_statistics_)>(
1959 reinterpret_cast<char*>(&local_search_statistics_),
1960 reinterpret_cast<char*>(&other->local_search_statistics_));
1961}
1962
1963::PROTOBUF_NAMESPACE_ID::Metadata SearchStatistics::GetMetadata() const {
1964 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1967}
1968
1969// @@protoc_insertion_point(namespace_scope)
1970} // namespace operations_research
1971PROTOBUF_NAMESPACE_OPEN
1972template<> PROTOBUF_NOINLINE ::operations_research::LocalSearchStatistics_FirstSolutionStatistics* Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_FirstSolutionStatistics >(Arena* arena) {
1973 return Arena::CreateMessageInternal< ::operations_research::LocalSearchStatistics_FirstSolutionStatistics >(arena);
1974}
1975template<> PROTOBUF_NOINLINE ::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics* Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics >(Arena* arena) {
1976 return Arena::CreateMessageInternal< ::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics >(arena);
1977}
1978template<> PROTOBUF_NOINLINE ::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics* Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics >(Arena* arena) {
1979 return Arena::CreateMessageInternal< ::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics >(arena);
1980}
1981template<> PROTOBUF_NOINLINE ::operations_research::LocalSearchStatistics* Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics >(Arena* arena) {
1982 return Arena::CreateMessageInternal< ::operations_research::LocalSearchStatistics >(arena);
1983}
1984template<> PROTOBUF_NOINLINE ::operations_research::ConstraintSolverStatistics* Arena::CreateMaybeMessage< ::operations_research::ConstraintSolverStatistics >(Arena* arena) {
1985 return Arena::CreateMessageInternal< ::operations_research::ConstraintSolverStatistics >(arena);
1986}
1987template<> PROTOBUF_NOINLINE ::operations_research::SearchStatistics* Arena::CreateMaybeMessage< ::operations_research::SearchStatistics >(Arena* arena) {
1988 return Arena::CreateMessageInternal< ::operations_research::SearchStatistics >(arena);
1989}
1990PROTOBUF_NAMESPACE_CLOSE
1991
1992// @@protoc_insertion_point(global_scope)
1993#include <google/protobuf/port_undef.inc>
void CopyFrom(const ConstraintSolverStatistics &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const ConstraintSolverStatistics &from)
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
friend void swap(LocalSearchStatistics_FirstSolutionStatistics &a, LocalSearchStatistics_FirstSolutionStatistics &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void MergeFrom(const LocalSearchStatistics_FirstSolutionStatistics &from)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void CopyFrom(const LocalSearchStatistics_FirstSolutionStatistics &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const LocalSearchStatistics_LocalSearchFilterStatistics &from)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void MergeFrom(const LocalSearchStatistics_LocalSearchFilterStatistics &from)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void MergeFrom(const LocalSearchStatistics_LocalSearchOperatorStatistics &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const LocalSearchStatistics_LocalSearchOperatorStatistics &from)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const LocalSearchStatistics &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const LocalSearchStatistics &from)
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::operations_research::ConstraintSolverStatistics & constraint_solver_statistics(const SearchStatistics *msg)
static const ::operations_research::LocalSearchStatistics & local_search_statistics(const SearchStatistics *msg)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void MergeFrom(const SearchStatistics &from)
static const SearchStatistics * internal_default_instance()
void CopyFrom(const SearchStatistics &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
uint8_t * _InternalSerialize(uint8_t *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void swap(IdMap< K, V > &a, IdMap< K, V > &b)
Definition: id_map.h:262
Collection of objects used to extend the Constraint Solver library.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LocalSearchStatistics_LocalSearchFilterStatisticsDefaultTypeInternal _LocalSearchStatistics_LocalSearchFilterStatistics_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT SearchStatisticsDefaultTypeInternal _SearchStatistics_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LocalSearchStatistics_LocalSearchOperatorStatisticsDefaultTypeInternal _LocalSearchStatistics_LocalSearchOperatorStatistics_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LocalSearchStatistics_FirstSolutionStatisticsDefaultTypeInternal _LocalSearchStatistics_FirstSolutionStatistics_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ConstraintSolverStatisticsDefaultTypeInternal _ConstraintSolverStatistics_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT LocalSearchStatisticsDefaultTypeInternal _LocalSearchStatistics_default_instance_
static constexpr ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
PROTOBUF_ATTRIBUTE_WEAKconst ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable * descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto_getter()
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto_once
static constexpr ::PROTOBUF_NAMESPACE_ID::EnumDescriptor const ** file_level_enum_descriptors_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto
#define CHK_(x)
const uint32_t TableStruct_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
PROTOBUF_NOINLINE::operations_research::SearchStatistics * Arena::CreateMaybeMessage< ::operations_research::SearchStatistics >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics * Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_LocalSearchOperatorStatistics >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::ConstraintSolverStatistics * Arena::CreateMaybeMessage< ::operations_research::ConstraintSolverStatistics >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::LocalSearchStatistics * Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE::operations_research::LocalSearchStatistics_FirstSolutionStatistics * Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_FirstSolutionStatistics >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto[6]
PROTOBUF_NOINLINE::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics * Arena::CreateMaybeMessage< ::operations_research::LocalSearchStatistics_LocalSearchFilterStatistics >(Arena *arena)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fconstraint_5fsolver_2fsearch_5fstats_2eproto