Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
rcpsp.pb.cc
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// NO CHECKED-IN PROTOBUF GENCODE
3// source: ortools/scheduling/rcpsp.proto
4// Protobuf C++ Version: 6.31.1
5
7
8#include <algorithm>
9#include <type_traits>
10#include "google/protobuf/io/coded_stream.h"
11#include "google/protobuf/generated_message_tctable_impl.h"
12#include "google/protobuf/extension_set.h"
13#include "google/protobuf/generated_message_util.h"
14#include "google/protobuf/wire_format_lite.h"
15#include "google/protobuf/descriptor.h"
16#include "google/protobuf/generated_message_reflection.h"
17#include "google/protobuf/reflection_ops.h"
18#include "google/protobuf/wire_format.h"
19// @@protoc_insertion_point(includes)
20
21// Must be included last.
22#include "google/protobuf/port_def.inc"
23PROTOBUF_PRAGMA_INIT_SEG
24namespace _pb = ::google::protobuf;
26namespace _fl = ::google::protobuf::internal::field_layout;
27namespace operations_research {
28namespace scheduling {
29namespace rcpsp {
30
31inline constexpr Resource::Impl_::Impl_(
32 ::_pbi::ConstantInitialized) noexcept
33 : _cached_size_{0},
34 max_capacity_{0},
35 min_capacity_{0},
36 renewable_{false},
37 unit_cost_{0} {}
38
39template <typename>
40PROTOBUF_CONSTEXPR Resource::Resource(::_pbi::ConstantInitialized)
41#if defined(PROTOBUF_CUSTOM_VTABLE)
42 : ::google::protobuf::Message(Resource_class_data_.base()),
43#else // PROTOBUF_CUSTOM_VTABLE
44 : ::google::protobuf::Message(),
45#endif // PROTOBUF_CUSTOM_VTABLE
46 _impl_(::_pbi::ConstantInitialized()) {
47}
49 PROTOBUF_CONSTEXPR ResourceDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
51 union {
53 };
54};
55
56PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
58
59inline constexpr Recipe::Impl_::Impl_(
60 ::_pbi::ConstantInitialized) noexcept
61 : _cached_size_{0},
62 demands_{},
63 _demands_cached_byte_size_{0},
64 resources_{},
65 _resources_cached_byte_size_{0},
66 duration_{0} {}
67
68template <typename>
69PROTOBUF_CONSTEXPR Recipe::Recipe(::_pbi::ConstantInitialized)
70#if defined(PROTOBUF_CUSTOM_VTABLE)
71 : ::google::protobuf::Message(Recipe_class_data_.base()),
72#else // PROTOBUF_CUSTOM_VTABLE
73 : ::google::protobuf::Message(),
74#endif // PROTOBUF_CUSTOM_VTABLE
75 _impl_(::_pbi::ConstantInitialized()) {
76}
78 PROTOBUF_CONSTEXPR RecipeDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
80 union {
82 };
83};
84
85PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
86 PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RecipeDefaultTypeInternal _Recipe_default_instance_;
87
88inline constexpr RcpspAssignment::Impl_::Impl_(
89 ::_pbi::ConstantInitialized) noexcept
90 : start_of_task_{},
91 _start_of_task_cached_byte_size_{0},
92 selected_recipe_of_task_{},
93 _selected_recipe_of_task_cached_byte_size_{0},
94 _cached_size_{0} {}
95
96template <typename>
97PROTOBUF_CONSTEXPR RcpspAssignment::RcpspAssignment(::_pbi::ConstantInitialized)
98#if defined(PROTOBUF_CUSTOM_VTABLE)
99 : ::google::protobuf::Message(RcpspAssignment_class_data_.base()),
100#else // PROTOBUF_CUSTOM_VTABLE
101 : ::google::protobuf::Message(),
102#endif // PROTOBUF_CUSTOM_VTABLE
103 _impl_(::_pbi::ConstantInitialized()) {
104}
112
113PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
115
116inline constexpr PerRecipeDelays::Impl_::Impl_(
117 ::_pbi::ConstantInitialized) noexcept
118 : min_delays_{},
119 _min_delays_cached_byte_size_{0},
120 _cached_size_{0} {}
121
122template <typename>
123PROTOBUF_CONSTEXPR PerRecipeDelays::PerRecipeDelays(::_pbi::ConstantInitialized)
124#if defined(PROTOBUF_CUSTOM_VTABLE)
125 : ::google::protobuf::Message(PerRecipeDelays_class_data_.base()),
126#else // PROTOBUF_CUSTOM_VTABLE
127 : ::google::protobuf::Message(),
128#endif // PROTOBUF_CUSTOM_VTABLE
129 _impl_(::_pbi::ConstantInitialized()) {
130}
138
139PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
141
142inline constexpr PerSuccessorDelays::Impl_::Impl_(
143 ::_pbi::ConstantInitialized) noexcept
144 : recipe_delays_{},
145 _cached_size_{0} {}
146
147template <typename>
148PROTOBUF_CONSTEXPR PerSuccessorDelays::PerSuccessorDelays(::_pbi::ConstantInitialized)
149#if defined(PROTOBUF_CUSTOM_VTABLE)
150 : ::google::protobuf::Message(PerSuccessorDelays_class_data_.base()),
151#else // PROTOBUF_CUSTOM_VTABLE
152 : ::google::protobuf::Message(),
153#endif // PROTOBUF_CUSTOM_VTABLE
154 _impl_(::_pbi::ConstantInitialized()) {
155}
163
164PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
166
167inline constexpr Task::Impl_::Impl_(
168 ::_pbi::ConstantInitialized) noexcept
169 : successors_{},
170 _successors_cached_byte_size_{0},
171 recipes_{},
172 successor_delays_{},
173 _cached_size_{0} {}
174
175template <typename>
176PROTOBUF_CONSTEXPR Task::Task(::_pbi::ConstantInitialized)
177#if defined(PROTOBUF_CUSTOM_VTABLE)
178 : ::google::protobuf::Message(Task_class_data_.base()),
179#else // PROTOBUF_CUSTOM_VTABLE
180 : ::google::protobuf::Message(),
181#endif // PROTOBUF_CUSTOM_VTABLE
182 _impl_(::_pbi::ConstantInitialized()) {
183}
185 PROTOBUF_CONSTEXPR TaskDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
187 union {
189 };
190};
191
192PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
193 PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TaskDefaultTypeInternal _Task_default_instance_;
194
195inline constexpr RcpspProblem::Impl_::Impl_(
196 ::_pbi::ConstantInitialized) noexcept
197 : _cached_size_{0},
198 resources_{},
199 tasks_{},
200 basedata_(
201 &::google::protobuf::internal::fixed_address_empty_string,
202 ::_pbi::ConstantInitialized()),
203 name_(
204 &::google::protobuf::internal::fixed_address_empty_string,
205 ::_pbi::ConstantInitialized()),
206 is_consumer_producer_{false},
207 is_resource_investment_{false},
208 is_rcpsp_max_{false},
209 deadline_{0},
210 horizon_{0},
211 release_date_{0},
212 tardiness_cost_{0},
213 mpm_time_{0},
214 seed_{::int64_t{0}},
215 due_date_{0} {}
216
217template <typename>
218PROTOBUF_CONSTEXPR RcpspProblem::RcpspProblem(::_pbi::ConstantInitialized)
219#if defined(PROTOBUF_CUSTOM_VTABLE)
220 : ::google::protobuf::Message(RcpspProblem_class_data_.base()),
221#else // PROTOBUF_CUSTOM_VTABLE
222 : ::google::protobuf::Message(),
223#endif // PROTOBUF_CUSTOM_VTABLE
224 _impl_(::_pbi::ConstantInitialized()) {
225}
227 PROTOBUF_CONSTEXPR RcpspProblemDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
229 union {
231 };
232};
233
234PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
236} // namespace rcpsp
237} // namespace scheduling
238} // namespace operations_research
239static constexpr const ::_pb::EnumDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE
241static constexpr const ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE
243const ::uint32_t
245 protodesc_cold) = {
246 0x081, // bitmap
247 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _impl_._has_bits_),
248 7, // hasbit index offset
249 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _impl_.max_capacity_),
250 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _impl_.min_capacity_),
251 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _impl_.renewable_),
252 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Resource, _impl_.unit_cost_),
253 0,
254 1,
255 2,
256 3,
257 0x081, // bitmap
258 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, _impl_._has_bits_),
259 6, // hasbit index offset
260 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, _impl_.duration_),
261 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, _impl_.demands_),
262 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Recipe, _impl_.resources_),
263 0,
264 ~0u,
265 ~0u,
266 0x000, // bitmap
267 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerRecipeDelays, _impl_.min_delays_),
268 0x000, // bitmap
269 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::PerSuccessorDelays, _impl_.recipe_delays_),
270 0x000, // bitmap
271 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, _impl_.successors_),
272 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, _impl_.recipes_),
273 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::Task, _impl_.successor_delays_),
274 0x081, // bitmap
275 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_._has_bits_),
276 17, // hasbit index offset
277 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.resources_),
278 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.tasks_),
279 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.is_consumer_producer_),
280 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.is_resource_investment_),
281 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.is_rcpsp_max_),
282 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.deadline_),
283 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.horizon_),
284 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.release_date_),
285 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.tardiness_cost_),
286 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.mpm_time_),
287 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.seed_),
288 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.basedata_),
289 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.due_date_),
290 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspProblem, _impl_.name_),
291 ~0u,
292 ~0u,
293 2,
294 3,
295 4,
296 5,
297 6,
298 7,
299 8,
300 9,
301 10,
302 0,
303 11,
304 1,
305 0x000, // bitmap
306 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspAssignment, _impl_.start_of_task_),
307 PROTOBUF_FIELD_OFFSET(::operations_research::scheduling::rcpsp::RcpspAssignment, _impl_.selected_recipe_of_task_),
308};
309
310static const ::_pbi::MigrationSchema
311 schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
319};
329const char descriptor_table_protodef_ortools_2fscheduling_2frcpsp_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
330 protodesc_cold) = {
331 "\n\036ortools/scheduling/rcpsp.proto\022$operat"
332 "ions_research.scheduling.rcpsp\"\\\n\010Resour"
333 "ce\022\024\n\014max_capacity\030\001 \001(\005\022\024\n\014min_capacity"
334 "\030\002 \001(\005\022\021\n\trenewable\030\003 \001(\010\022\021\n\tunit_cost\030\004"
335 " \001(\005\">\n\006Recipe\022\020\n\010duration\030\001 \001(\005\022\017\n\007dema"
336 "nds\030\002 \003(\005\022\021\n\tresources\030\003 \003(\005\"%\n\017PerRecip"
337 "eDelays\022\022\n\nmin_delays\030\001 \003(\005\"b\n\022PerSucces"
338 "sorDelays\022L\n\rrecipe_delays\030\001 \003(\01325.opera"
339 "tions_research.scheduling.rcpsp.PerRecip"
340 "eDelays\"\255\001\n\004Task\022\022\n\nsuccessors\030\001 \003(\005\022=\n\007"
341 "recipes\030\002 \003(\0132,.operations_research.sche"
342 "duling.rcpsp.Recipe\022R\n\020successor_delays\030"
343 "\003 \003(\01328.operations_research.scheduling.r"
344 "cpsp.PerSuccessorDelays\"\203\003\n\014RcpspProblem"
345 "\022A\n\tresources\030\001 \003(\0132..operations_researc"
346 "h.scheduling.rcpsp.Resource\0229\n\005tasks\030\002 \003"
347 "(\0132*.operations_research.scheduling.rcps"
348 "p.Task\022\034\n\024is_consumer_producer\030\003 \001(\010\022\036\n\026"
349 "is_resource_investment\030\004 \001(\010\022\024\n\014is_rcpsp"
350 "_max\030\005 \001(\010\022\020\n\010deadline\030\006 \001(\005\022\017\n\007horizon\030"
351 "\007 \001(\005\022\024\n\014release_date\030\010 \001(\005\022\026\n\016tardiness"
352 "_cost\030\t \001(\005\022\020\n\010mpm_time\030\n \001(\005\022\014\n\004seed\030\013 "
353 "\001(\003\022\020\n\010basedata\030\014 \001(\t\022\020\n\010due_date\030\r \001(\005\022"
354 "\014\n\004name\030\016 \001(\t\"I\n\017RcpspAssignment\022\025\n\rstar"
355 "t_of_task\030\001 \003(\003\022\037\n\027selected_recipe_of_ta"
356 "sk\030\002 \003(\005BI\n#com.google.ortools.schedulin"
357 "g.rcpspP\001\252\002\037Google.OrTools.Scheduling.Rc"
358 "pspb\006proto3"
359};
361PROTOBUF_CONSTINIT const ::_pbi::DescriptorTable descriptor_table_ortools_2fscheduling_2frcpsp_2eproto = {
362 false,
363 false,
364 1091,
365 descriptor_table_protodef_ortools_2fscheduling_2frcpsp_2eproto,
366 "ortools/scheduling/rcpsp.proto",
368 nullptr,
369 0,
370 7,
371 schemas,
376};
377namespace operations_research {
378namespace scheduling {
379namespace rcpsp {
380// ===================================================================
381
383 public:
384 using HasBits =
385 decltype(::std::declval<Resource>()._impl_._has_bits_);
386 static constexpr ::int32_t kHasBitsOffset =
387 8 * PROTOBUF_FIELD_OFFSET(Resource, _impl_._has_bits_);
388};
389
390Resource::Resource(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
391#if defined(PROTOBUF_CUSTOM_VTABLE)
392 : ::google::protobuf::Message(arena, Resource_class_data_.base()) {
393#else // PROTOBUF_CUSTOM_VTABLE
394 : ::google::protobuf::Message(arena) {
395#endif // PROTOBUF_CUSTOM_VTABLE
396 SharedCtor(arena);
397 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Resource)
398}
400 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Resource& from)
401#if defined(PROTOBUF_CUSTOM_VTABLE)
402 : ::google::protobuf::Message(arena, Resource_class_data_.base()),
403#else // PROTOBUF_CUSTOM_VTABLE
404 : ::google::protobuf::Message(arena),
405#endif // PROTOBUF_CUSTOM_VTABLE
406 _impl_(from._impl_) {
407 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
408 from._internal_metadata_);
409}
410PROTOBUF_NDEBUG_INLINE Resource::Impl_::Impl_(
411 ::google::protobuf::internal::InternalVisibility visibility,
412 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
413 : _cached_size_{0} {}
414
415inline void Resource::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
416 new (&_impl_) Impl_(internal_visibility(), arena);
417 ::memset(reinterpret_cast<char *>(&_impl_) +
418 offsetof(Impl_, max_capacity_),
419 0,
420 offsetof(Impl_, unit_cost_) -
421 offsetof(Impl_, max_capacity_) +
422 sizeof(Impl_::unit_cost_));
423}
425 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Resource)
426 SharedDtor(*this);
427}
428inline void Resource::SharedDtor(MessageLite& self) {
429 Resource& this_ = static_cast<Resource&>(self);
430 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
431 ABSL_DCHECK(this_.GetArena() == nullptr);
432 this_._impl_.~Impl_();
433}
434
435inline void* PROTOBUF_NONNULL Resource::PlacementNew_(
436 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
437 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
438 return ::new (mem) Resource(arena);
439}
440constexpr auto Resource::InternalNewImpl_() {
441 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(Resource),
442 alignof(Resource));
443}
445 return ::google::protobuf::internal::ClassDataFull{
446 ::google::protobuf::internal::ClassData{
448 &_table_.header,
449 nullptr, // OnDemandRegisterArenaDtor
450 nullptr, // IsInitialized
451 &Resource::MergeImpl,
452 ::google::protobuf::Message::GetNewImpl<Resource>(),
453#if defined(PROTOBUF_CUSTOM_VTABLE)
454 &Resource::SharedDtor,
455 ::google::protobuf::Message::GetClearImpl<Resource>(), &Resource::ByteSizeLong,
457#endif // PROTOBUF_CUSTOM_VTABLE
458 PROTOBUF_FIELD_OFFSET(Resource, _impl_._cached_size_),
459 false,
460 },
461 &Resource::kDescriptorMethods,
463 nullptr, // tracker
464 };
465}
466
467PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
468 ::google::protobuf::internal::ClassDataFull Resource_class_data_ =
470
471PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
473 ::google::protobuf::internal::PrefetchToLocalCache(&Resource_class_data_);
474 ::google::protobuf::internal::PrefetchToLocalCache(Resource_class_data_.tc_table);
475 return Resource_class_data_.base();
476}
477PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
478const ::_pbi::TcParseTable<2, 4, 0, 0, 2>
479Resource::_table_ = {
480 {
481 PROTOBUF_FIELD_OFFSET(Resource, _impl_._has_bits_),
482 0, // no _extensions_
483 4, 24, // max_field_number, fast_idx_mask
484 offsetof(decltype(_table_), field_lookup_table),
485 4294967280, // skipmap
486 offsetof(decltype(_table_), field_entries),
487 4, // num_field_entries
488 0, // num_aux_entries
489 offsetof(decltype(_table_), field_names), // no aux_entries
491 nullptr, // post_loop_handler
492 ::_pbi::TcParser::GenericFallback, // fallback
493 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
494 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Resource>(), // to_prefetch
495 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
496 }, {{
497 // int32 unit_cost = 4;
498 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(Resource, _impl_.unit_cost_), 3>(),
499 {32, 3, 0, PROTOBUF_FIELD_OFFSET(Resource, _impl_.unit_cost_)}},
500 // int32 max_capacity = 1;
501 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(Resource, _impl_.max_capacity_), 0>(),
502 {8, 0, 0, PROTOBUF_FIELD_OFFSET(Resource, _impl_.max_capacity_)}},
503 // int32 min_capacity = 2;
504 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(Resource, _impl_.min_capacity_), 1>(),
505 {16, 1, 0, PROTOBUF_FIELD_OFFSET(Resource, _impl_.min_capacity_)}},
506 // bool renewable = 3;
507 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(Resource, _impl_.renewable_), 2>(),
508 {24, 2, 0, PROTOBUF_FIELD_OFFSET(Resource, _impl_.renewable_)}},
509 }}, {{
510 65535, 65535
511 }}, {{
512 // int32 max_capacity = 1;
513 {PROTOBUF_FIELD_OFFSET(Resource, _impl_.max_capacity_), _Internal::kHasBitsOffset + 0, 0,
514 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
515 // int32 min_capacity = 2;
516 {PROTOBUF_FIELD_OFFSET(Resource, _impl_.min_capacity_), _Internal::kHasBitsOffset + 1, 0,
517 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
518 // bool renewable = 3;
519 {PROTOBUF_FIELD_OFFSET(Resource, _impl_.renewable_), _Internal::kHasBitsOffset + 2, 0,
520 (0 | ::_fl::kFcOptional | ::_fl::kBool)},
521 // int32 unit_cost = 4;
522 {PROTOBUF_FIELD_OFFSET(Resource, _impl_.unit_cost_), _Internal::kHasBitsOffset + 3, 0,
523 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
524 }},
525 // no aux_entries
526 {{
527 }},
528};
529PROTOBUF_NOINLINE void Resource::Clear() {
530// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Resource)
531 ::google::protobuf::internal::TSanWrite(&_impl_);
532 ::uint32_t cached_has_bits = 0;
533 // Prevent compiler warnings about cached_has_bits being unused
534 (void) cached_has_bits;
535
536 cached_has_bits = _impl_._has_bits_[0];
537 if ((cached_has_bits & 0x0000000fu) != 0) {
538 ::memset(&_impl_.max_capacity_, 0, static_cast<::size_t>(
539 reinterpret_cast<char*>(&_impl_.unit_cost_) -
540 reinterpret_cast<char*>(&_impl_.max_capacity_)) + sizeof(_impl_.unit_cost_));
541 }
542 _impl_._has_bits_.Clear();
543 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
544}
545
546#if defined(PROTOBUF_CUSTOM_VTABLE)
547::uint8_t* PROTOBUF_NONNULL Resource::_InternalSerialize(
548 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
549 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
550 const Resource& this_ = static_cast<const Resource&>(base);
551#else // PROTOBUF_CUSTOM_VTABLE
552::uint8_t* PROTOBUF_NONNULL Resource::_InternalSerialize(
553 ::uint8_t* PROTOBUF_NONNULL target,
554 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
555 const Resource& this_ = *this;
556#endif // PROTOBUF_CUSTOM_VTABLE
557 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Resource)
558 ::uint32_t cached_has_bits = 0;
559 (void)cached_has_bits;
560
561 // int32 max_capacity = 1;
562 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
563 if (this_._internal_max_capacity() != 0) {
564 target =
565 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
566 stream, this_._internal_max_capacity(), target);
567 }
568 }
569
570 // int32 min_capacity = 2;
571 if ((this_._impl_._has_bits_[0] & 0x00000002u) != 0) {
572 if (this_._internal_min_capacity() != 0) {
573 target =
574 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
575 stream, this_._internal_min_capacity(), target);
576 }
577 }
578
579 // bool renewable = 3;
580 if ((this_._impl_._has_bits_[0] & 0x00000004u) != 0) {
581 if (this_._internal_renewable() != 0) {
582 target = stream->EnsureSpace(target);
583 target = ::_pbi::WireFormatLite::WriteBoolToArray(
584 3, this_._internal_renewable(), target);
585 }
586 }
587
588 // int32 unit_cost = 4;
589 if ((this_._impl_._has_bits_[0] & 0x00000008u) != 0) {
590 if (this_._internal_unit_cost() != 0) {
591 target =
592 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<4>(
593 stream, this_._internal_unit_cost(), target);
594 }
595 }
596
597 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
598 target =
599 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
600 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
601 }
602 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Resource)
603 return target;
604}
605
606#if defined(PROTOBUF_CUSTOM_VTABLE)
607::size_t Resource::ByteSizeLong(const MessageLite& base) {
608 const Resource& this_ = static_cast<const Resource&>(base);
609#else // PROTOBUF_CUSTOM_VTABLE
610::size_t Resource::ByteSizeLong() const {
611 const Resource& this_ = *this;
612#endif // PROTOBUF_CUSTOM_VTABLE
613 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Resource)
614 ::size_t total_size = 0;
615
616 ::uint32_t cached_has_bits = 0;
617 // Prevent compiler warnings about cached_has_bits being unused
618 (void)cached_has_bits;
619
620 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
621 cached_has_bits = this_._impl_._has_bits_[0];
622 if ((cached_has_bits & 0x0000000fu) != 0) {
623 // int32 max_capacity = 1;
624 if ((cached_has_bits & 0x00000001u) != 0) {
625 if (this_._internal_max_capacity() != 0) {
626 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
627 this_._internal_max_capacity());
628 }
629 }
630 // int32 min_capacity = 2;
631 if ((cached_has_bits & 0x00000002u) != 0) {
632 if (this_._internal_min_capacity() != 0) {
633 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
634 this_._internal_min_capacity());
635 }
636 }
637 // bool renewable = 3;
638 if ((cached_has_bits & 0x00000004u) != 0) {
639 if (this_._internal_renewable() != 0) {
640 total_size += 2;
641 }
642 }
643 // int32 unit_cost = 4;
644 if ((cached_has_bits & 0x00000008u) != 0) {
645 if (this_._internal_unit_cost() != 0) {
646 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
647 this_._internal_unit_cost());
648 }
649 }
650 }
651 return this_.MaybeComputeUnknownFieldsSize(total_size,
652 &this_._impl_._cached_size_);
653}
654
655void Resource::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
656 auto* const _this = static_cast<Resource*>(&to_msg);
657 auto& from = static_cast<const Resource&>(from_msg);
658 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Resource)
659 ABSL_DCHECK_NE(&from, _this);
660 ::uint32_t cached_has_bits = 0;
661 (void) cached_has_bits;
662
663 cached_has_bits = from._impl_._has_bits_[0];
664 if ((cached_has_bits & 0x0000000fu) != 0) {
665 if ((cached_has_bits & 0x00000001u) != 0) {
666 if (from._internal_max_capacity() != 0) {
667 _this->_impl_.max_capacity_ = from._impl_.max_capacity_;
668 }
669 }
670 if ((cached_has_bits & 0x00000002u) != 0) {
671 if (from._internal_min_capacity() != 0) {
672 _this->_impl_.min_capacity_ = from._impl_.min_capacity_;
673 }
674 }
675 if ((cached_has_bits & 0x00000004u) != 0) {
676 if (from._internal_renewable() != 0) {
677 _this->_impl_.renewable_ = from._impl_.renewable_;
678 }
679 }
680 if ((cached_has_bits & 0x00000008u) != 0) {
681 if (from._internal_unit_cost() != 0) {
682 _this->_impl_.unit_cost_ = from._impl_.unit_cost_;
683 }
684 }
685 }
686 _this->_impl_._has_bits_[0] |= cached_has_bits;
687 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
688}
689
690void Resource::CopyFrom(const Resource& from) {
691// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Resource)
692 if (&from == this) return;
693 Clear();
694 MergeFrom(from);
695}
696
697
698void Resource::InternalSwap(Resource* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
699 using ::std::swap;
700 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
701 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
702 ::google::protobuf::internal::memswap<
703 PROTOBUF_FIELD_OFFSET(Resource, _impl_.unit_cost_)
704 + sizeof(Resource::_impl_.unit_cost_)
705 - PROTOBUF_FIELD_OFFSET(Resource, _impl_.max_capacity_)>(
706 reinterpret_cast<char*>(&_impl_.max_capacity_),
707 reinterpret_cast<char*>(&other->_impl_.max_capacity_));
708}
709
710::google::protobuf::Metadata Resource::GetMetadata() const {
711 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
712}
713// ===================================================================
714
715class Recipe::_Internal {
716 public:
717 using HasBits =
718 decltype(::std::declval<Recipe>()._impl_._has_bits_);
719 static constexpr ::int32_t kHasBitsOffset =
720 8 * PROTOBUF_FIELD_OFFSET(Recipe, _impl_._has_bits_);
722
723Recipe::Recipe(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
724#if defined(PROTOBUF_CUSTOM_VTABLE)
725 : ::google::protobuf::Message(arena, Recipe_class_data_.base()) {
726#else // PROTOBUF_CUSTOM_VTABLE
727 : ::google::protobuf::Message(arena) {
728#endif // PROTOBUF_CUSTOM_VTABLE
729 SharedCtor(arena);
730 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Recipe)
731}
732PROTOBUF_NDEBUG_INLINE Recipe::Impl_::Impl_(
733 ::google::protobuf::internal::InternalVisibility visibility,
734 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
735 const ::operations_research::scheduling::rcpsp::Recipe& from_msg)
736 : _has_bits_{from._has_bits_},
737 _cached_size_{0},
738 demands_{visibility, arena, from.demands_},
739 _demands_cached_byte_size_{0},
740 resources_{visibility, arena, from.resources_},
741 _resources_cached_byte_size_{0} {}
742
744 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
745 const Recipe& from)
746#if defined(PROTOBUF_CUSTOM_VTABLE)
747 : ::google::protobuf::Message(arena, Recipe_class_data_.base()) {
748#else // PROTOBUF_CUSTOM_VTABLE
749 : ::google::protobuf::Message(arena) {
750#endif // PROTOBUF_CUSTOM_VTABLE
751 Recipe* const _this = this;
752 (void)_this;
753 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
754 from._internal_metadata_);
755 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
756 _impl_.duration_ = from._impl_.duration_;
757
758 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.Recipe)
759}
760PROTOBUF_NDEBUG_INLINE Recipe::Impl_::Impl_(
761 ::google::protobuf::internal::InternalVisibility visibility,
762 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
763 : _cached_size_{0},
764 demands_{visibility, arena},
765 _demands_cached_byte_size_{0},
766 resources_{visibility, arena},
767 _resources_cached_byte_size_{0} {}
768
769inline void Recipe::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
770 new (&_impl_) Impl_(internal_visibility(), arena);
771 _impl_.duration_ = {};
772}
774 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Recipe)
775 SharedDtor(*this);
776}
777inline void Recipe::SharedDtor(MessageLite& self) {
778 Recipe& this_ = static_cast<Recipe&>(self);
779 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
780 ABSL_DCHECK(this_.GetArena() == nullptr);
781 this_._impl_.~Impl_();
782}
783
784inline void* PROTOBUF_NONNULL Recipe::PlacementNew_(
785 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
786 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
787 return ::new (mem) Recipe(arena);
788}
789constexpr auto Recipe::InternalNewImpl_() {
790 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
791 PROTOBUF_FIELD_OFFSET(Recipe, _impl_.demands_) +
792 decltype(Recipe::_impl_.demands_)::
793 InternalGetArenaOffset(
794 ::google::protobuf::Message::internal_visibility()),
795 PROTOBUF_FIELD_OFFSET(Recipe, _impl_.resources_) +
796 decltype(Recipe::_impl_.resources_)::
797 InternalGetArenaOffset(
798 ::google::protobuf::Message::internal_visibility()),
799 });
800 if (arena_bits.has_value()) {
801 return ::google::protobuf::internal::MessageCreator::ZeroInit(
802 sizeof(Recipe), alignof(Recipe), *arena_bits);
803 } else {
804 return ::google::protobuf::internal::MessageCreator(&Recipe::PlacementNew_,
805 sizeof(Recipe),
806 alignof(Recipe));
807 }
808}
809constexpr auto Recipe::InternalGenerateClassData_() {
810 return ::google::protobuf::internal::ClassDataFull{
811 ::google::protobuf::internal::ClassData{
812 &_Recipe_default_instance_._instance,
813 &_table_.header,
814 nullptr, // OnDemandRegisterArenaDtor
815 nullptr, // IsInitialized
816 &Recipe::MergeImpl,
817 ::google::protobuf::Message::GetNewImpl<Recipe>(),
818#if defined(PROTOBUF_CUSTOM_VTABLE)
819 &Recipe::SharedDtor,
820 ::google::protobuf::Message::GetClearImpl<Recipe>(), &Recipe::ByteSizeLong,
822#endif // PROTOBUF_CUSTOM_VTABLE
823 PROTOBUF_FIELD_OFFSET(Recipe, _impl_._cached_size_),
824 false,
825 },
826 &Recipe::kDescriptorMethods,
828 nullptr, // tracker
829 };
830}
831
832PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
833 ::google::protobuf::internal::ClassDataFull Recipe_class_data_ =
836PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
837Recipe::GetClassData() const {
838 ::google::protobuf::internal::PrefetchToLocalCache(&Recipe_class_data_);
839 ::google::protobuf::internal::PrefetchToLocalCache(Recipe_class_data_.tc_table);
840 return Recipe_class_data_.base();
841}
842PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
843const ::_pbi::TcParseTable<2, 3, 0, 0, 2>
844Recipe::_table_ = {
845 {
846 PROTOBUF_FIELD_OFFSET(Recipe, _impl_._has_bits_),
847 0, // no _extensions_
848 3, 24, // max_field_number, fast_idx_mask
849 offsetof(decltype(_table_), field_lookup_table),
850 4294967288, // skipmap
851 offsetof(decltype(_table_), field_entries),
852 3, // num_field_entries
853 0, // num_aux_entries
854 offsetof(decltype(_table_), field_names), // no aux_entries
855 Recipe_class_data_.base(),
856 nullptr, // post_loop_handler
857 ::_pbi::TcParser::GenericFallback, // fallback
858 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
859 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Recipe>(), // to_prefetch
860 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
861 }, {{
862 {::_pbi::TcParser::MiniParse, {}},
863 // int32 duration = 1;
864 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(Recipe, _impl_.duration_), 0>(),
865 {8, 0, 0, PROTOBUF_FIELD_OFFSET(Recipe, _impl_.duration_)}},
866 // repeated int32 demands = 2;
867 {::_pbi::TcParser::FastV32P1,
868 {18, 63, 0, PROTOBUF_FIELD_OFFSET(Recipe, _impl_.demands_)}},
869 // repeated int32 resources = 3;
870 {::_pbi::TcParser::FastV32P1,
871 {26, 63, 0, PROTOBUF_FIELD_OFFSET(Recipe, _impl_.resources_)}},
872 }}, {{
873 65535, 65535
874 }}, {{
875 // int32 duration = 1;
876 {PROTOBUF_FIELD_OFFSET(Recipe, _impl_.duration_), _Internal::kHasBitsOffset + 0, 0,
877 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
878 // repeated int32 demands = 2;
879 {PROTOBUF_FIELD_OFFSET(Recipe, _impl_.demands_), -1, 0,
880 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
881 // repeated int32 resources = 3;
882 {PROTOBUF_FIELD_OFFSET(Recipe, _impl_.resources_), -1, 0,
883 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
884 }},
885 // no aux_entries
886 {{
887 }},
888};
889PROTOBUF_NOINLINE void Recipe::Clear() {
890// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Recipe)
891 ::google::protobuf::internal::TSanWrite(&_impl_);
892 ::uint32_t cached_has_bits = 0;
893 // Prevent compiler warnings about cached_has_bits being unused
894 (void) cached_has_bits;
895
896 _impl_.demands_.Clear();
897 _impl_.resources_.Clear();
898 _impl_.duration_ = 0;
899 _impl_._has_bits_.Clear();
900 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
901}
902
903#if defined(PROTOBUF_CUSTOM_VTABLE)
904::uint8_t* PROTOBUF_NONNULL Recipe::_InternalSerialize(
905 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
906 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
907 const Recipe& this_ = static_cast<const Recipe&>(base);
908#else // PROTOBUF_CUSTOM_VTABLE
909::uint8_t* PROTOBUF_NONNULL Recipe::_InternalSerialize(
910 ::uint8_t* PROTOBUF_NONNULL target,
911 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
912 const Recipe& this_ = *this;
913#endif // PROTOBUF_CUSTOM_VTABLE
914 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Recipe)
915 ::uint32_t cached_has_bits = 0;
916 (void)cached_has_bits;
917
918 // int32 duration = 1;
919 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
920 if (this_._internal_duration() != 0) {
921 target =
922 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
923 stream, this_._internal_duration(), target);
924 }
925 }
926
927 // repeated int32 demands = 2;
928 {
929 int byte_size = this_._impl_._demands_cached_byte_size_.Get();
930 if (byte_size > 0) {
931 target = stream->WriteInt32Packed(
932 2, this_._internal_demands(), byte_size, target);
933 }
934 }
935
936 // repeated int32 resources = 3;
937 {
938 int byte_size = this_._impl_._resources_cached_byte_size_.Get();
939 if (byte_size > 0) {
940 target = stream->WriteInt32Packed(
941 3, this_._internal_resources(), byte_size, target);
942 }
943 }
944
945 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
946 target =
947 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
948 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
949 }
950 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Recipe)
951 return target;
952}
953
954#if defined(PROTOBUF_CUSTOM_VTABLE)
955::size_t Recipe::ByteSizeLong(const MessageLite& base) {
956 const Recipe& this_ = static_cast<const Recipe&>(base);
957#else // PROTOBUF_CUSTOM_VTABLE
958::size_t Recipe::ByteSizeLong() const {
959 const Recipe& this_ = *this;
960#endif // PROTOBUF_CUSTOM_VTABLE
961 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Recipe)
962 ::size_t total_size = 0;
963
964 ::uint32_t cached_has_bits = 0;
965 // Prevent compiler warnings about cached_has_bits being unused
966 (void)cached_has_bits;
967
968 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
969 {
970 // repeated int32 demands = 2;
971 {
972 total_size +=
973 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
974 this_._internal_demands(), 1,
975 this_._impl_._demands_cached_byte_size_);
976 }
977 // repeated int32 resources = 3;
978 {
979 total_size +=
980 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
981 this_._internal_resources(), 1,
982 this_._impl_._resources_cached_byte_size_);
983 }
984 }
985 {
986 // int32 duration = 1;
987 cached_has_bits = this_._impl_._has_bits_[0];
988 if ((cached_has_bits & 0x00000001u) != 0) {
989 if (this_._internal_duration() != 0) {
990 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
991 this_._internal_duration());
992 }
993 }
994 }
995 return this_.MaybeComputeUnknownFieldsSize(total_size,
996 &this_._impl_._cached_size_);
997}
998
999void Recipe::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1000 auto* const _this = static_cast<Recipe*>(&to_msg);
1001 auto& from = static_cast<const Recipe&>(from_msg);
1002 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Recipe)
1003 ABSL_DCHECK_NE(&from, _this);
1004 ::uint32_t cached_has_bits = 0;
1005 (void) cached_has_bits;
1006
1007 _this->_internal_mutable_demands()->MergeFrom(from._internal_demands());
1008 _this->_internal_mutable_resources()->MergeFrom(from._internal_resources());
1009 cached_has_bits = from._impl_._has_bits_[0];
1010 if ((cached_has_bits & 0x00000001u) != 0) {
1011 if (from._internal_duration() != 0) {
1012 _this->_impl_.duration_ = from._impl_.duration_;
1013 }
1014 }
1015 _this->_impl_._has_bits_[0] |= cached_has_bits;
1016 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1017}
1018
1019void Recipe::CopyFrom(const Recipe& from) {
1020// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Recipe)
1021 if (&from == this) return;
1022 Clear();
1023 MergeFrom(from);
1024}
1025
1026
1027void Recipe::InternalSwap(Recipe* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1028 using ::std::swap;
1029 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1030 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1031 _impl_.demands_.InternalSwap(&other->_impl_.demands_);
1032 _impl_.resources_.InternalSwap(&other->_impl_.resources_);
1033 swap(_impl_.duration_, other->_impl_.duration_);
1034}
1035
1036::google::protobuf::Metadata Recipe::GetMetadata() const {
1037 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1039// ===================================================================
1040
1042 public:
1043};
1045PerRecipeDelays::PerRecipeDelays(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1046#if defined(PROTOBUF_CUSTOM_VTABLE)
1047 : ::google::protobuf::Message(arena, PerRecipeDelays_class_data_.base()) {
1048#else // PROTOBUF_CUSTOM_VTABLE
1049 : ::google::protobuf::Message(arena) {
1050#endif // PROTOBUF_CUSTOM_VTABLE
1051 SharedCtor(arena);
1052 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
1053}
1054PROTOBUF_NDEBUG_INLINE PerRecipeDelays::Impl_::Impl_(
1055 ::google::protobuf::internal::InternalVisibility visibility,
1056 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1057 const ::operations_research::scheduling::rcpsp::PerRecipeDelays& from_msg)
1058 : min_delays_{visibility, arena, from.min_delays_},
1059 _min_delays_cached_byte_size_{0},
1060 _cached_size_{0} {}
1061
1063 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1064 const PerRecipeDelays& from)
1065#if defined(PROTOBUF_CUSTOM_VTABLE)
1066 : ::google::protobuf::Message(arena, PerRecipeDelays_class_data_.base()) {
1067#else // PROTOBUF_CUSTOM_VTABLE
1068 : ::google::protobuf::Message(arena) {
1069#endif // PROTOBUF_CUSTOM_VTABLE
1070 PerRecipeDelays* const _this = this;
1071 (void)_this;
1072 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1073 from._internal_metadata_);
1074 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1075
1076 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
1077}
1078PROTOBUF_NDEBUG_INLINE PerRecipeDelays::Impl_::Impl_(
1079 ::google::protobuf::internal::InternalVisibility visibility,
1080 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1081 : min_delays_{visibility, arena},
1082 _min_delays_cached_byte_size_{0},
1083 _cached_size_{0} {}
1084
1085inline void PerRecipeDelays::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1086 new (&_impl_) Impl_(internal_visibility(), arena);
1087}
1089 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.PerRecipeDelays)
1090 SharedDtor(*this);
1092inline void PerRecipeDelays::SharedDtor(MessageLite& self) {
1093 PerRecipeDelays& this_ = static_cast<PerRecipeDelays&>(self);
1094 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1095 ABSL_DCHECK(this_.GetArena() == nullptr);
1096 this_._impl_.~Impl_();
1097}
1098
1099inline void* PROTOBUF_NONNULL PerRecipeDelays::PlacementNew_(
1100 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1101 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1102 return ::new (mem) PerRecipeDelays(arena);
1103}
1104constexpr auto PerRecipeDelays::InternalNewImpl_() {
1105 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1106 PROTOBUF_FIELD_OFFSET(PerRecipeDelays, _impl_.min_delays_) +
1107 decltype(PerRecipeDelays::_impl_.min_delays_)::
1108 InternalGetArenaOffset(
1109 ::google::protobuf::Message::internal_visibility()),
1110 });
1111 if (arena_bits.has_value()) {
1112 return ::google::protobuf::internal::MessageCreator::ZeroInit(
1113 sizeof(PerRecipeDelays), alignof(PerRecipeDelays), *arena_bits);
1114 } else {
1115 return ::google::protobuf::internal::MessageCreator(&PerRecipeDelays::PlacementNew_,
1116 sizeof(PerRecipeDelays),
1117 alignof(PerRecipeDelays));
1118 }
1119}
1121 return ::google::protobuf::internal::ClassDataFull{
1122 ::google::protobuf::internal::ClassData{
1124 &_table_.header,
1125 nullptr, // OnDemandRegisterArenaDtor
1126 nullptr, // IsInitialized
1127 &PerRecipeDelays::MergeImpl,
1128 ::google::protobuf::Message::GetNewImpl<PerRecipeDelays>(),
1129#if defined(PROTOBUF_CUSTOM_VTABLE)
1130 &PerRecipeDelays::SharedDtor,
1131 ::google::protobuf::Message::GetClearImpl<PerRecipeDelays>(), &PerRecipeDelays::ByteSizeLong,
1133#endif // PROTOBUF_CUSTOM_VTABLE
1134 PROTOBUF_FIELD_OFFSET(PerRecipeDelays, _impl_._cached_size_),
1135 false,
1136 },
1137 &PerRecipeDelays::kDescriptorMethods,
1139 nullptr, // tracker
1140 };
1141}
1142
1143PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1144 ::google::protobuf::internal::ClassDataFull PerRecipeDelays_class_data_ =
1146
1147PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1149 ::google::protobuf::internal::PrefetchToLocalCache(&PerRecipeDelays_class_data_);
1150 ::google::protobuf::internal::PrefetchToLocalCache(PerRecipeDelays_class_data_.tc_table);
1152}
1153PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1154const ::_pbi::TcParseTable<0, 1, 0, 0, 2>
1155PerRecipeDelays::_table_ = {
1156 {
1157 0, // no _has_bits_
1158 0, // no _extensions_
1159 1, 0, // max_field_number, fast_idx_mask
1160 offsetof(decltype(_table_), field_lookup_table),
1161 4294967294, // skipmap
1162 offsetof(decltype(_table_), field_entries),
1163 1, // num_field_entries
1164 0, // num_aux_entries
1165 offsetof(decltype(_table_), field_names), // no aux_entries
1167 nullptr, // post_loop_handler
1168 ::_pbi::TcParser::GenericFallback, // fallback
1169 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1170 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::PerRecipeDelays>(), // to_prefetch
1171 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1172 }, {{
1173 // repeated int32 min_delays = 1;
1174 {::_pbi::TcParser::FastV32P1,
1175 {10, 63, 0, PROTOBUF_FIELD_OFFSET(PerRecipeDelays, _impl_.min_delays_)}},
1176 }}, {{
1177 65535, 65535
1178 }}, {{
1179 // repeated int32 min_delays = 1;
1180 {PROTOBUF_FIELD_OFFSET(PerRecipeDelays, _impl_.min_delays_), 0, 0,
1181 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1182 }},
1183 // no aux_entries
1184 {{
1185 }},
1186};
1187PROTOBUF_NOINLINE void PerRecipeDelays::Clear() {
1188// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
1189 ::google::protobuf::internal::TSanWrite(&_impl_);
1190 ::uint32_t cached_has_bits = 0;
1191 // Prevent compiler warnings about cached_has_bits being unused
1192 (void) cached_has_bits;
1193
1194 _impl_.min_delays_.Clear();
1195 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1196}
1197
1198#if defined(PROTOBUF_CUSTOM_VTABLE)
1199::uint8_t* PROTOBUF_NONNULL PerRecipeDelays::_InternalSerialize(
1200 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1201 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1202 const PerRecipeDelays& this_ = static_cast<const PerRecipeDelays&>(base);
1203#else // PROTOBUF_CUSTOM_VTABLE
1204::uint8_t* PROTOBUF_NONNULL PerRecipeDelays::_InternalSerialize(
1205 ::uint8_t* PROTOBUF_NONNULL target,
1206 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1207 const PerRecipeDelays& this_ = *this;
1208#endif // PROTOBUF_CUSTOM_VTABLE
1209 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
1210 ::uint32_t cached_has_bits = 0;
1211 (void)cached_has_bits;
1212
1213 // repeated int32 min_delays = 1;
1214 {
1215 int byte_size = this_._impl_._min_delays_cached_byte_size_.Get();
1216 if (byte_size > 0) {
1217 target = stream->WriteInt32Packed(
1218 1, this_._internal_min_delays(), byte_size, target);
1219 }
1220 }
1221
1222 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1223 target =
1224 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1225 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1226 }
1227 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.PerRecipeDelays)
1228 return target;
1229}
1230
1231#if defined(PROTOBUF_CUSTOM_VTABLE)
1233 const PerRecipeDelays& this_ = static_cast<const PerRecipeDelays&>(base);
1234#else // PROTOBUF_CUSTOM_VTABLE
1235::size_t PerRecipeDelays::ByteSizeLong() const {
1236 const PerRecipeDelays& this_ = *this;
1237#endif // PROTOBUF_CUSTOM_VTABLE
1238 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
1239 ::size_t total_size = 0;
1240
1241 ::uint32_t cached_has_bits = 0;
1242 // Prevent compiler warnings about cached_has_bits being unused
1243 (void)cached_has_bits;
1244
1245 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1246 {
1247 // repeated int32 min_delays = 1;
1248 {
1249 total_size +=
1250 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1251 this_._internal_min_delays(), 1,
1252 this_._impl_._min_delays_cached_byte_size_);
1253 }
1254 }
1255 return this_.MaybeComputeUnknownFieldsSize(total_size,
1256 &this_._impl_._cached_size_);
1257}
1258
1259void PerRecipeDelays::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1260 auto* const _this = static_cast<PerRecipeDelays*>(&to_msg);
1261 auto& from = static_cast<const PerRecipeDelays&>(from_msg);
1262 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
1263 ABSL_DCHECK_NE(&from, _this);
1264 ::uint32_t cached_has_bits = 0;
1265 (void) cached_has_bits;
1266
1267 _this->_internal_mutable_min_delays()->MergeFrom(from._internal_min_delays());
1268 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1269}
1270
1272// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.PerRecipeDelays)
1273 if (&from == this) return;
1275 MergeFrom(from);
1276}
1277
1278
1279void PerRecipeDelays::InternalSwap(PerRecipeDelays* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1280 using ::std::swap;
1281 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1282 _impl_.min_delays_.InternalSwap(&other->_impl_.min_delays_);
1283}
1284
1285::google::protobuf::Metadata PerRecipeDelays::GetMetadata() const {
1286 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1287}
1288// ===================================================================
1289
1291 public:
1292};
1293
1294PerSuccessorDelays::PerSuccessorDelays(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1295#if defined(PROTOBUF_CUSTOM_VTABLE)
1296 : ::google::protobuf::Message(arena, PerSuccessorDelays_class_data_.base()) {
1297#else // PROTOBUF_CUSTOM_VTABLE
1298 : ::google::protobuf::Message(arena) {
1299#endif // PROTOBUF_CUSTOM_VTABLE
1300 SharedCtor(arena);
1301 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1302}
1303PROTOBUF_NDEBUG_INLINE PerSuccessorDelays::Impl_::Impl_(
1304 ::google::protobuf::internal::InternalVisibility visibility,
1305 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1306 const ::operations_research::scheduling::rcpsp::PerSuccessorDelays& from_msg)
1307 : recipe_delays_{visibility, arena, from.recipe_delays_},
1308 _cached_size_{0} {}
1309
1311 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1312 const PerSuccessorDelays& from)
1313#if defined(PROTOBUF_CUSTOM_VTABLE)
1314 : ::google::protobuf::Message(arena, PerSuccessorDelays_class_data_.base()) {
1315#else // PROTOBUF_CUSTOM_VTABLE
1316 : ::google::protobuf::Message(arena) {
1317#endif // PROTOBUF_CUSTOM_VTABLE
1318 PerSuccessorDelays* const _this = this;
1319 (void)_this;
1320 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1321 from._internal_metadata_);
1322 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1323
1324 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1325}
1326PROTOBUF_NDEBUG_INLINE PerSuccessorDelays::Impl_::Impl_(
1327 ::google::protobuf::internal::InternalVisibility visibility,
1328 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1329 : recipe_delays_{visibility, arena},
1330 _cached_size_{0} {}
1331
1332inline void PerSuccessorDelays::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1333 new (&_impl_) Impl_(internal_visibility(), arena);
1334}
1336 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1337 SharedDtor(*this);
1338}
1339inline void PerSuccessorDelays::SharedDtor(MessageLite& self) {
1340 PerSuccessorDelays& this_ = static_cast<PerSuccessorDelays&>(self);
1341 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1342 ABSL_DCHECK(this_.GetArena() == nullptr);
1343 this_._impl_.~Impl_();
1344}
1345
1346inline void* PROTOBUF_NONNULL PerSuccessorDelays::PlacementNew_(
1347 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1348 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1349 return ::new (mem) PerSuccessorDelays(arena);
1351constexpr auto PerSuccessorDelays::InternalNewImpl_() {
1352 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1353 PROTOBUF_FIELD_OFFSET(PerSuccessorDelays, _impl_.recipe_delays_) +
1354 decltype(PerSuccessorDelays::_impl_.recipe_delays_)::
1355 InternalGetArenaOffset(
1356 ::google::protobuf::Message::internal_visibility()),
1357 });
1358 if (arena_bits.has_value()) {
1359 return ::google::protobuf::internal::MessageCreator::ZeroInit(
1360 sizeof(PerSuccessorDelays), alignof(PerSuccessorDelays), *arena_bits);
1361 } else {
1362 return ::google::protobuf::internal::MessageCreator(&PerSuccessorDelays::PlacementNew_,
1363 sizeof(PerSuccessorDelays),
1364 alignof(PerSuccessorDelays));
1365 }
1366}
1368 return ::google::protobuf::internal::ClassDataFull{
1369 ::google::protobuf::internal::ClassData{
1371 &_table_.header,
1372 nullptr, // OnDemandRegisterArenaDtor
1373 nullptr, // IsInitialized
1374 &PerSuccessorDelays::MergeImpl,
1375 ::google::protobuf::Message::GetNewImpl<PerSuccessorDelays>(),
1376#if defined(PROTOBUF_CUSTOM_VTABLE)
1377 &PerSuccessorDelays::SharedDtor,
1378 ::google::protobuf::Message::GetClearImpl<PerSuccessorDelays>(), &PerSuccessorDelays::ByteSizeLong,
1380#endif // PROTOBUF_CUSTOM_VTABLE
1381 PROTOBUF_FIELD_OFFSET(PerSuccessorDelays, _impl_._cached_size_),
1382 false,
1383 },
1384 &PerSuccessorDelays::kDescriptorMethods,
1386 nullptr, // tracker
1387 };
1388}
1389
1390PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1391 ::google::protobuf::internal::ClassDataFull PerSuccessorDelays_class_data_ =
1393
1394PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1396 ::google::protobuf::internal::PrefetchToLocalCache(&PerSuccessorDelays_class_data_);
1397 ::google::protobuf::internal::PrefetchToLocalCache(PerSuccessorDelays_class_data_.tc_table);
1398 return PerSuccessorDelays_class_data_.base();
1400PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1401const ::_pbi::TcParseTable<0, 1, 1, 0, 2>
1402PerSuccessorDelays::_table_ = {
1403 {
1404 0, // no _has_bits_
1405 0, // no _extensions_
1406 1, 0, // max_field_number, fast_idx_mask
1407 offsetof(decltype(_table_), field_lookup_table),
1408 4294967294, // skipmap
1409 offsetof(decltype(_table_), field_entries),
1410 1, // num_field_entries
1411 1, // num_aux_entries
1412 offsetof(decltype(_table_), aux_entries),
1414 nullptr, // post_loop_handler
1415 ::_pbi::TcParser::GenericFallback, // fallback
1416 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1417 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::PerSuccessorDelays>(), // to_prefetch
1418 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1419 }, {{
1420 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1421 {::_pbi::TcParser::FastMtR1,
1422 {10, 63, 0, PROTOBUF_FIELD_OFFSET(PerSuccessorDelays, _impl_.recipe_delays_)}},
1423 }}, {{
1424 65535, 65535
1425 }}, {{
1426 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1427 {PROTOBUF_FIELD_OFFSET(PerSuccessorDelays, _impl_.recipe_delays_), 0, 0,
1428 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
1429 }},
1430 {{
1431 {::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::PerRecipeDelays>()},
1432 }},
1433 {{
1434 }},
1435};
1436PROTOBUF_NOINLINE void PerSuccessorDelays::Clear() {
1437// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1438 ::google::protobuf::internal::TSanWrite(&_impl_);
1439 ::uint32_t cached_has_bits = 0;
1440 // Prevent compiler warnings about cached_has_bits being unused
1441 (void) cached_has_bits;
1442
1443 _impl_.recipe_delays_.Clear();
1444 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1445}
1446
1447#if defined(PROTOBUF_CUSTOM_VTABLE)
1448::uint8_t* PROTOBUF_NONNULL PerSuccessorDelays::_InternalSerialize(
1449 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1450 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1451 const PerSuccessorDelays& this_ = static_cast<const PerSuccessorDelays&>(base);
1452#else // PROTOBUF_CUSTOM_VTABLE
1453::uint8_t* PROTOBUF_NONNULL PerSuccessorDelays::_InternalSerialize(
1454 ::uint8_t* PROTOBUF_NONNULL target,
1455 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1456 const PerSuccessorDelays& this_ = *this;
1457#endif // PROTOBUF_CUSTOM_VTABLE
1458 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1459 ::uint32_t cached_has_bits = 0;
1460 (void)cached_has_bits;
1461
1462 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1463 for (unsigned i = 0, n = static_cast<unsigned>(
1464 this_._internal_recipe_delays_size());
1465 i < n; i++) {
1466 const auto& repfield = this_._internal_recipe_delays().Get(i);
1467 target =
1468 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1469 1, repfield, repfield.GetCachedSize(),
1470 target, stream);
1471 }
1472
1473 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1474 target =
1475 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1476 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1477 }
1478 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1479 return target;
1480}
1481
1482#if defined(PROTOBUF_CUSTOM_VTABLE)
1484 const PerSuccessorDelays& this_ = static_cast<const PerSuccessorDelays&>(base);
1485#else // PROTOBUF_CUSTOM_VTABLE
1486::size_t PerSuccessorDelays::ByteSizeLong() const {
1487 const PerSuccessorDelays& this_ = *this;
1488#endif // PROTOBUF_CUSTOM_VTABLE
1489 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1490 ::size_t total_size = 0;
1491
1492 ::uint32_t cached_has_bits = 0;
1493 // Prevent compiler warnings about cached_has_bits being unused
1494 (void)cached_has_bits;
1495
1496 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1497 {
1498 // repeated .operations_research.scheduling.rcpsp.PerRecipeDelays recipe_delays = 1;
1499 {
1500 total_size += 1UL * this_._internal_recipe_delays_size();
1501 for (const auto& msg : this_._internal_recipe_delays()) {
1502 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
1503 }
1504 }
1505 }
1506 return this_.MaybeComputeUnknownFieldsSize(total_size,
1507 &this_._impl_._cached_size_);
1508}
1509
1510void PerSuccessorDelays::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1511 auto* const _this = static_cast<PerSuccessorDelays*>(&to_msg);
1512 auto& from = static_cast<const PerSuccessorDelays&>(from_msg);
1513 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1514 ABSL_DCHECK_NE(&from, _this);
1515 ::uint32_t cached_has_bits = 0;
1516 (void) cached_has_bits;
1517
1518 _this->_internal_mutable_recipe_delays()->MergeFrom(
1519 from._internal_recipe_delays());
1520 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1521}
1522
1524// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.PerSuccessorDelays)
1525 if (&from == this) return;
1526 Clear();
1528}
1529
1530
1531void PerSuccessorDelays::InternalSwap(PerSuccessorDelays* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1532 using ::std::swap;
1533 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1534 _impl_.recipe_delays_.InternalSwap(&other->_impl_.recipe_delays_);
1535}
1536
1537::google::protobuf::Metadata PerSuccessorDelays::GetMetadata() const {
1538 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1539}
1540// ===================================================================
1542class Task::_Internal {
1543 public:
1544};
1545
1546Task::Task(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1547#if defined(PROTOBUF_CUSTOM_VTABLE)
1548 : ::google::protobuf::Message(arena, Task_class_data_.base()) {
1549#else // PROTOBUF_CUSTOM_VTABLE
1550 : ::google::protobuf::Message(arena) {
1551#endif // PROTOBUF_CUSTOM_VTABLE
1552 SharedCtor(arena);
1553 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.Task)
1554}
1555PROTOBUF_NDEBUG_INLINE Task::Impl_::Impl_(
1556 ::google::protobuf::internal::InternalVisibility visibility,
1557 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1558 const ::operations_research::scheduling::rcpsp::Task& from_msg)
1559 : successors_{visibility, arena, from.successors_},
1560 _successors_cached_byte_size_{0},
1561 recipes_{visibility, arena, from.recipes_},
1562 successor_delays_{visibility, arena, from.successor_delays_},
1563 _cached_size_{0} {}
1564
1566 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1567 const Task& from)
1568#if defined(PROTOBUF_CUSTOM_VTABLE)
1569 : ::google::protobuf::Message(arena, Task_class_data_.base()) {
1570#else // PROTOBUF_CUSTOM_VTABLE
1571 : ::google::protobuf::Message(arena) {
1572#endif // PROTOBUF_CUSTOM_VTABLE
1573 Task* const _this = this;
1574 (void)_this;
1575 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1576 from._internal_metadata_);
1577 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1578
1579 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.Task)
1580}
1581PROTOBUF_NDEBUG_INLINE Task::Impl_::Impl_(
1582 ::google::protobuf::internal::InternalVisibility visibility,
1583 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1584 : successors_{visibility, arena},
1585 _successors_cached_byte_size_{0},
1586 recipes_{visibility, arena},
1587 successor_delays_{visibility, arena},
1588 _cached_size_{0} {}
1589
1590inline void Task::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1591 new (&_impl_) Impl_(internal_visibility(), arena);
1592}
1593Task::~Task() {
1594 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.Task)
1595 SharedDtor(*this);
1596}
1597inline void Task::SharedDtor(MessageLite& self) {
1598 Task& this_ = static_cast<Task&>(self);
1599 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1600 ABSL_DCHECK(this_.GetArena() == nullptr);
1601 this_._impl_.~Impl_();
1602}
1603
1604inline void* PROTOBUF_NONNULL Task::PlacementNew_(
1605 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1606 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1607 return ::new (mem) Task(arena);
1608}
1609constexpr auto Task::InternalNewImpl_() {
1610 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1611 PROTOBUF_FIELD_OFFSET(Task, _impl_.successors_) +
1612 decltype(Task::_impl_.successors_)::
1613 InternalGetArenaOffset(
1614 ::google::protobuf::Message::internal_visibility()),
1615 PROTOBUF_FIELD_OFFSET(Task, _impl_.recipes_) +
1616 decltype(Task::_impl_.recipes_)::
1617 InternalGetArenaOffset(
1618 ::google::protobuf::Message::internal_visibility()),
1619 PROTOBUF_FIELD_OFFSET(Task, _impl_.successor_delays_) +
1620 decltype(Task::_impl_.successor_delays_)::
1621 InternalGetArenaOffset(
1622 ::google::protobuf::Message::internal_visibility()),
1623 });
1624 if (arena_bits.has_value()) {
1625 return ::google::protobuf::internal::MessageCreator::ZeroInit(
1626 sizeof(Task), alignof(Task), *arena_bits);
1627 } else {
1628 return ::google::protobuf::internal::MessageCreator(&Task::PlacementNew_,
1629 sizeof(Task),
1630 alignof(Task));
1631 }
1632}
1633constexpr auto Task::InternalGenerateClassData_() {
1634 return ::google::protobuf::internal::ClassDataFull{
1635 ::google::protobuf::internal::ClassData{
1636 &_Task_default_instance_._instance,
1637 &_table_.header,
1638 nullptr, // OnDemandRegisterArenaDtor
1639 nullptr, // IsInitialized
1640 &Task::MergeImpl,
1641 ::google::protobuf::Message::GetNewImpl<Task>(),
1642#if defined(PROTOBUF_CUSTOM_VTABLE)
1643 &Task::SharedDtor,
1644 ::google::protobuf::Message::GetClearImpl<Task>(), &Task::ByteSizeLong,
1646#endif // PROTOBUF_CUSTOM_VTABLE
1647 PROTOBUF_FIELD_OFFSET(Task, _impl_._cached_size_),
1648 false,
1649 },
1650 &Task::kDescriptorMethods,
1652 nullptr, // tracker
1653 };
1654}
1655
1656PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1657 ::google::protobuf::internal::ClassDataFull Task_class_data_ =
1659
1660PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1661Task::GetClassData() const {
1662 ::google::protobuf::internal::PrefetchToLocalCache(&Task_class_data_);
1663 ::google::protobuf::internal::PrefetchToLocalCache(Task_class_data_.tc_table);
1664 return Task_class_data_.base();
1665}
1666PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1667const ::_pbi::TcParseTable<2, 3, 2, 0, 2>
1668Task::_table_ = {
1669 {
1670 0, // no _has_bits_
1671 0, // no _extensions_
1672 3, 24, // max_field_number, fast_idx_mask
1673 offsetof(decltype(_table_), field_lookup_table),
1674 4294967288, // skipmap
1675 offsetof(decltype(_table_), field_entries),
1676 3, // num_field_entries
1677 2, // num_aux_entries
1678 offsetof(decltype(_table_), aux_entries),
1679 Task_class_data_.base(),
1680 nullptr, // post_loop_handler
1681 ::_pbi::TcParser::GenericFallback, // fallback
1682 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1683 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Task>(), // to_prefetch
1684 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1685 }, {{
1686 {::_pbi::TcParser::MiniParse, {}},
1687 // repeated int32 successors = 1;
1688 {::_pbi::TcParser::FastV32P1,
1689 {10, 63, 0, PROTOBUF_FIELD_OFFSET(Task, _impl_.successors_)}},
1690 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1691 {::_pbi::TcParser::FastMtR1,
1692 {18, 63, 0, PROTOBUF_FIELD_OFFSET(Task, _impl_.recipes_)}},
1693 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1694 {::_pbi::TcParser::FastMtR1,
1695 {26, 63, 1, PROTOBUF_FIELD_OFFSET(Task, _impl_.successor_delays_)}},
1696 }}, {{
1697 65535, 65535
1698 }}, {{
1699 // repeated int32 successors = 1;
1700 {PROTOBUF_FIELD_OFFSET(Task, _impl_.successors_), 0, 0,
1701 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1702 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1703 {PROTOBUF_FIELD_OFFSET(Task, _impl_.recipes_), 0, 0,
1704 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
1705 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1706 {PROTOBUF_FIELD_OFFSET(Task, _impl_.successor_delays_), 0, 1,
1707 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
1708 }},
1709 {{
1710 {::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Recipe>()},
1711 {::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::PerSuccessorDelays>()},
1712 }},
1713 {{
1714 }},
1715};
1716PROTOBUF_NOINLINE void Task::Clear() {
1717// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.Task)
1718 ::google::protobuf::internal::TSanWrite(&_impl_);
1719 ::uint32_t cached_has_bits = 0;
1720 // Prevent compiler warnings about cached_has_bits being unused
1721 (void) cached_has_bits;
1722
1723 _impl_.successors_.Clear();
1724 _impl_.recipes_.Clear();
1725 _impl_.successor_delays_.Clear();
1726 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1727}
1728
1729#if defined(PROTOBUF_CUSTOM_VTABLE)
1730::uint8_t* PROTOBUF_NONNULL Task::_InternalSerialize(
1731 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1732 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1733 const Task& this_ = static_cast<const Task&>(base);
1734#else // PROTOBUF_CUSTOM_VTABLE
1735::uint8_t* PROTOBUF_NONNULL Task::_InternalSerialize(
1736 ::uint8_t* PROTOBUF_NONNULL target,
1737 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1738 const Task& this_ = *this;
1739#endif // PROTOBUF_CUSTOM_VTABLE
1740 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.Task)
1741 ::uint32_t cached_has_bits = 0;
1742 (void)cached_has_bits;
1743
1744 // repeated int32 successors = 1;
1745 {
1746 int byte_size = this_._impl_._successors_cached_byte_size_.Get();
1747 if (byte_size > 0) {
1748 target = stream->WriteInt32Packed(
1749 1, this_._internal_successors(), byte_size, target);
1750 }
1751 }
1752
1753 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1754 for (unsigned i = 0, n = static_cast<unsigned>(
1755 this_._internal_recipes_size());
1756 i < n; i++) {
1757 const auto& repfield = this_._internal_recipes().Get(i);
1758 target =
1759 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1760 2, repfield, repfield.GetCachedSize(),
1761 target, stream);
1762 }
1763
1764 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1765 for (unsigned i = 0, n = static_cast<unsigned>(
1766 this_._internal_successor_delays_size());
1767 i < n; i++) {
1768 const auto& repfield = this_._internal_successor_delays().Get(i);
1769 target =
1770 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1771 3, repfield, repfield.GetCachedSize(),
1772 target, stream);
1773 }
1774
1775 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1776 target =
1777 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1778 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1779 }
1780 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.Task)
1781 return target;
1782}
1783
1784#if defined(PROTOBUF_CUSTOM_VTABLE)
1785::size_t Task::ByteSizeLong(const MessageLite& base) {
1786 const Task& this_ = static_cast<const Task&>(base);
1787#else // PROTOBUF_CUSTOM_VTABLE
1788::size_t Task::ByteSizeLong() const {
1789 const Task& this_ = *this;
1790#endif // PROTOBUF_CUSTOM_VTABLE
1791 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.Task)
1792 ::size_t total_size = 0;
1794 ::uint32_t cached_has_bits = 0;
1795 // Prevent compiler warnings about cached_has_bits being unused
1796 (void)cached_has_bits;
1797
1798 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1799 {
1800 // repeated int32 successors = 1;
1801 {
1802 total_size +=
1803 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1804 this_._internal_successors(), 1,
1805 this_._impl_._successors_cached_byte_size_);
1806 }
1807 // repeated .operations_research.scheduling.rcpsp.Recipe recipes = 2;
1808 {
1809 total_size += 1UL * this_._internal_recipes_size();
1810 for (const auto& msg : this_._internal_recipes()) {
1811 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
1812 }
1813 }
1814 // repeated .operations_research.scheduling.rcpsp.PerSuccessorDelays successor_delays = 3;
1815 {
1816 total_size += 1UL * this_._internal_successor_delays_size();
1817 for (const auto& msg : this_._internal_successor_delays()) {
1818 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
1819 }
1820 }
1821 }
1822 return this_.MaybeComputeUnknownFieldsSize(total_size,
1823 &this_._impl_._cached_size_);
1824}
1825
1826void Task::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1827 auto* const _this = static_cast<Task*>(&to_msg);
1828 auto& from = static_cast<const Task&>(from_msg);
1829 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.Task)
1830 ABSL_DCHECK_NE(&from, _this);
1831 ::uint32_t cached_has_bits = 0;
1832 (void) cached_has_bits;
1833
1834 _this->_internal_mutable_successors()->MergeFrom(from._internal_successors());
1835 _this->_internal_mutable_recipes()->MergeFrom(
1836 from._internal_recipes());
1837 _this->_internal_mutable_successor_delays()->MergeFrom(
1838 from._internal_successor_delays());
1839 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1840}
1841
1842void Task::CopyFrom(const Task& from) {
1843// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.Task)
1844 if (&from == this) return;
1845 Clear();
1846 MergeFrom(from);
1848
1849
1850void Task::InternalSwap(Task* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1851 using ::std::swap;
1852 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1853 _impl_.successors_.InternalSwap(&other->_impl_.successors_);
1854 _impl_.recipes_.InternalSwap(&other->_impl_.recipes_);
1855 _impl_.successor_delays_.InternalSwap(&other->_impl_.successor_delays_);
1856}
1857
1858::google::protobuf::Metadata Task::GetMetadata() const {
1859 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1860}
1861// ===================================================================
1862
1864 public:
1865 using HasBits =
1866 decltype(::std::declval<RcpspProblem>()._impl_._has_bits_);
1867 static constexpr ::int32_t kHasBitsOffset =
1868 8 * PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_._has_bits_);
1870
1871RcpspProblem::RcpspProblem(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1872#if defined(PROTOBUF_CUSTOM_VTABLE)
1873 : ::google::protobuf::Message(arena, RcpspProblem_class_data_.base()) {
1874#else // PROTOBUF_CUSTOM_VTABLE
1875 : ::google::protobuf::Message(arena) {
1876#endif // PROTOBUF_CUSTOM_VTABLE
1877 SharedCtor(arena);
1878 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.RcpspProblem)
1879}
1880PROTOBUF_NDEBUG_INLINE RcpspProblem::Impl_::Impl_(
1881 ::google::protobuf::internal::InternalVisibility visibility,
1882 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1883 const ::operations_research::scheduling::rcpsp::RcpspProblem& from_msg)
1884 : _has_bits_{from._has_bits_},
1885 _cached_size_{0},
1886 resources_{visibility, arena, from.resources_},
1887 tasks_{visibility, arena, from.tasks_},
1888 basedata_(arena, from.basedata_),
1889 name_(arena, from.name_) {}
1890
1892 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1893 const RcpspProblem& from)
1894#if defined(PROTOBUF_CUSTOM_VTABLE)
1895 : ::google::protobuf::Message(arena, RcpspProblem_class_data_.base()) {
1896#else // PROTOBUF_CUSTOM_VTABLE
1897 : ::google::protobuf::Message(arena) {
1898#endif // PROTOBUF_CUSTOM_VTABLE
1899 RcpspProblem* const _this = this;
1900 (void)_this;
1901 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1902 from._internal_metadata_);
1903 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1904 ::memcpy(reinterpret_cast<char *>(&_impl_) +
1905 offsetof(Impl_, is_consumer_producer_),
1906 reinterpret_cast<const char *>(&from._impl_) +
1907 offsetof(Impl_, is_consumer_producer_),
1908 offsetof(Impl_, due_date_) -
1909 offsetof(Impl_, is_consumer_producer_) +
1910 sizeof(Impl_::due_date_));
1911
1912 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.RcpspProblem)
1913}
1914PROTOBUF_NDEBUG_INLINE RcpspProblem::Impl_::Impl_(
1915 ::google::protobuf::internal::InternalVisibility visibility,
1916 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1917 : _cached_size_{0},
1918 resources_{visibility, arena},
1919 tasks_{visibility, arena},
1920 basedata_(arena),
1921 name_(arena) {}
1922
1923inline void RcpspProblem::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1924 new (&_impl_) Impl_(internal_visibility(), arena);
1925 ::memset(reinterpret_cast<char *>(&_impl_) +
1926 offsetof(Impl_, is_consumer_producer_),
1927 0,
1928 offsetof(Impl_, due_date_) -
1929 offsetof(Impl_, is_consumer_producer_) +
1930 sizeof(Impl_::due_date_));
1931}
1933 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.RcpspProblem)
1934 SharedDtor(*this);
1935}
1936inline void RcpspProblem::SharedDtor(MessageLite& self) {
1937 RcpspProblem& this_ = static_cast<RcpspProblem&>(self);
1938 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1939 ABSL_DCHECK(this_.GetArena() == nullptr);
1940 this_._impl_.basedata_.Destroy();
1941 this_._impl_.name_.Destroy();
1942 this_._impl_.~Impl_();
1943}
1944
1945inline void* PROTOBUF_NONNULL RcpspProblem::PlacementNew_(
1946 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1947 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1948 return ::new (mem) RcpspProblem(arena);
1949}
1950constexpr auto RcpspProblem::InternalNewImpl_() {
1951 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1952 PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.resources_) +
1953 decltype(RcpspProblem::_impl_.resources_)::
1954 InternalGetArenaOffset(
1955 ::google::protobuf::Message::internal_visibility()),
1956 PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.tasks_) +
1957 decltype(RcpspProblem::_impl_.tasks_)::
1958 InternalGetArenaOffset(
1959 ::google::protobuf::Message::internal_visibility()),
1960 });
1961 if (arena_bits.has_value()) {
1962 return ::google::protobuf::internal::MessageCreator::CopyInit(
1963 sizeof(RcpspProblem), alignof(RcpspProblem), *arena_bits);
1964 } else {
1965 return ::google::protobuf::internal::MessageCreator(&RcpspProblem::PlacementNew_,
1966 sizeof(RcpspProblem),
1967 alignof(RcpspProblem));
1968 }
1969}
1971 return ::google::protobuf::internal::ClassDataFull{
1972 ::google::protobuf::internal::ClassData{
1974 &_table_.header,
1975 nullptr, // OnDemandRegisterArenaDtor
1976 nullptr, // IsInitialized
1977 &RcpspProblem::MergeImpl,
1978 ::google::protobuf::Message::GetNewImpl<RcpspProblem>(),
1979#if defined(PROTOBUF_CUSTOM_VTABLE)
1980 &RcpspProblem::SharedDtor,
1981 ::google::protobuf::Message::GetClearImpl<RcpspProblem>(), &RcpspProblem::ByteSizeLong,
1983#endif // PROTOBUF_CUSTOM_VTABLE
1984 PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_._cached_size_),
1985 false,
1986 },
1987 &RcpspProblem::kDescriptorMethods,
1989 nullptr, // tracker
1990 };
1991}
1992
1993PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1994 ::google::protobuf::internal::ClassDataFull RcpspProblem_class_data_ =
1996
1997PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1999 ::google::protobuf::internal::PrefetchToLocalCache(&RcpspProblem_class_data_);
2000 ::google::protobuf::internal::PrefetchToLocalCache(RcpspProblem_class_data_.tc_table);
2001 return RcpspProblem_class_data_.base();
2002}
2003PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2004const ::_pbi::TcParseTable<4, 14, 2, 78, 2>
2005RcpspProblem::_table_ = {
2006 {
2007 PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_._has_bits_),
2008 0, // no _extensions_
2009 14, 120, // max_field_number, fast_idx_mask
2010 offsetof(decltype(_table_), field_lookup_table),
2011 4294950912, // skipmap
2012 offsetof(decltype(_table_), field_entries),
2013 14, // num_field_entries
2014 2, // num_aux_entries
2015 offsetof(decltype(_table_), aux_entries),
2017 nullptr, // post_loop_handler
2018 ::_pbi::TcParser::GenericFallback, // fallback
2019 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2020 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::RcpspProblem>(), // to_prefetch
2021 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2022 }, {{
2023 {::_pbi::TcParser::MiniParse, {}},
2024 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
2025 {::_pbi::TcParser::FastMtR1,
2026 {10, 63, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.resources_)}},
2027 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
2028 {::_pbi::TcParser::FastMtR1,
2029 {18, 63, 1, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.tasks_)}},
2030 // bool is_consumer_producer = 3;
2031 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(RcpspProblem, _impl_.is_consumer_producer_), 2>(),
2032 {24, 2, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_consumer_producer_)}},
2033 // bool is_resource_investment = 4;
2034 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(RcpspProblem, _impl_.is_resource_investment_), 3>(),
2035 {32, 3, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_resource_investment_)}},
2036 // bool is_rcpsp_max = 5;
2037 {::_pbi::TcParser::SingularVarintNoZag1<bool, offsetof(RcpspProblem, _impl_.is_rcpsp_max_), 4>(),
2038 {40, 4, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_rcpsp_max_)}},
2039 // int32 deadline = 6;
2040 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.deadline_), 5>(),
2041 {48, 5, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.deadline_)}},
2042 // int32 horizon = 7;
2043 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.horizon_), 6>(),
2044 {56, 6, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.horizon_)}},
2045 // int32 release_date = 8;
2046 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.release_date_), 7>(),
2047 {64, 7, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.release_date_)}},
2048 // int32 tardiness_cost = 9;
2049 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.tardiness_cost_), 8>(),
2050 {72, 8, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.tardiness_cost_)}},
2051 // int32 mpm_time = 10;
2052 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.mpm_time_), 9>(),
2053 {80, 9, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.mpm_time_)}},
2054 // int64 seed = 11;
2055 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(RcpspProblem, _impl_.seed_), 10>(),
2056 {88, 10, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.seed_)}},
2057 // string basedata = 12;
2058 {::_pbi::TcParser::FastUS1,
2059 {98, 0, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.basedata_)}},
2060 // int32 due_date = 13;
2061 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(RcpspProblem, _impl_.due_date_), 11>(),
2062 {104, 11, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.due_date_)}},
2063 // string name = 14;
2064 {::_pbi::TcParser::FastUS1,
2065 {114, 1, 0, PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.name_)}},
2066 {::_pbi::TcParser::MiniParse, {}},
2067 }}, {{
2068 65535, 65535
2069 }}, {{
2070 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
2071 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.resources_), -1, 0,
2072 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2073 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
2074 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.tasks_), -1, 1,
2075 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2076 // bool is_consumer_producer = 3;
2077 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_consumer_producer_), _Internal::kHasBitsOffset + 2, 0,
2078 (0 | ::_fl::kFcOptional | ::_fl::kBool)},
2079 // bool is_resource_investment = 4;
2080 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_resource_investment_), _Internal::kHasBitsOffset + 3, 0,
2081 (0 | ::_fl::kFcOptional | ::_fl::kBool)},
2082 // bool is_rcpsp_max = 5;
2083 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_rcpsp_max_), _Internal::kHasBitsOffset + 4, 0,
2084 (0 | ::_fl::kFcOptional | ::_fl::kBool)},
2085 // int32 deadline = 6;
2086 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.deadline_), _Internal::kHasBitsOffset + 5, 0,
2087 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2088 // int32 horizon = 7;
2089 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.horizon_), _Internal::kHasBitsOffset + 6, 0,
2090 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2091 // int32 release_date = 8;
2092 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.release_date_), _Internal::kHasBitsOffset + 7, 0,
2093 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2094 // int32 tardiness_cost = 9;
2095 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.tardiness_cost_), _Internal::kHasBitsOffset + 8, 0,
2096 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2097 // int32 mpm_time = 10;
2098 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.mpm_time_), _Internal::kHasBitsOffset + 9, 0,
2099 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2100 // int64 seed = 11;
2101 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.seed_), _Internal::kHasBitsOffset + 10, 0,
2102 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2103 // string basedata = 12;
2104 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.basedata_), _Internal::kHasBitsOffset + 0, 0,
2105 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
2106 // int32 due_date = 13;
2107 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.due_date_), _Internal::kHasBitsOffset + 11, 0,
2108 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2109 // string name = 14;
2110 {PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.name_), _Internal::kHasBitsOffset + 1, 0,
2111 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
2112 }},
2113 {{
2114 {::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Resource>()},
2115 {::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::Task>()},
2116 }},
2117 {{
2118 "\61\0\0\0\0\0\0\0\0\0\0\0\10\0\4\0"
2119 "operations_research.scheduling.rcpsp.RcpspProblem"
2120 "basedata"
2121 "name"
2122 }},
2123};
2124PROTOBUF_NOINLINE void RcpspProblem::Clear() {
2125// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.RcpspProblem)
2126 ::google::protobuf::internal::TSanWrite(&_impl_);
2127 ::uint32_t cached_has_bits = 0;
2128 // Prevent compiler warnings about cached_has_bits being unused
2129 (void) cached_has_bits;
2131 _impl_.resources_.Clear();
2132 _impl_.tasks_.Clear();
2133 cached_has_bits = _impl_._has_bits_[0];
2134 if ((cached_has_bits & 0x00000003u) != 0) {
2135 if ((cached_has_bits & 0x00000001u) != 0) {
2136 _impl_.basedata_.ClearNonDefaultToEmpty();
2137 }
2138 if ((cached_has_bits & 0x00000002u) != 0) {
2139 _impl_.name_.ClearNonDefaultToEmpty();
2140 }
2141 }
2142 if ((cached_has_bits & 0x000000fcu) != 0) {
2143 ::memset(&_impl_.is_consumer_producer_, 0, static_cast<::size_t>(
2144 reinterpret_cast<char*>(&_impl_.release_date_) -
2145 reinterpret_cast<char*>(&_impl_.is_consumer_producer_)) + sizeof(_impl_.release_date_));
2146 }
2147 if ((cached_has_bits & 0x00000f00u) != 0) {
2148 ::memset(&_impl_.tardiness_cost_, 0, static_cast<::size_t>(
2149 reinterpret_cast<char*>(&_impl_.due_date_) -
2150 reinterpret_cast<char*>(&_impl_.tardiness_cost_)) + sizeof(_impl_.due_date_));
2151 }
2152 _impl_._has_bits_.Clear();
2153 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2154}
2155
2156#if defined(PROTOBUF_CUSTOM_VTABLE)
2157::uint8_t* PROTOBUF_NONNULL RcpspProblem::_InternalSerialize(
2158 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2159 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2160 const RcpspProblem& this_ = static_cast<const RcpspProblem&>(base);
2161#else // PROTOBUF_CUSTOM_VTABLE
2162::uint8_t* PROTOBUF_NONNULL RcpspProblem::_InternalSerialize(
2163 ::uint8_t* PROTOBUF_NONNULL target,
2164 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2165 const RcpspProblem& this_ = *this;
2166#endif // PROTOBUF_CUSTOM_VTABLE
2167 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.RcpspProblem)
2168 ::uint32_t cached_has_bits = 0;
2169 (void)cached_has_bits;
2170
2171 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
2172 for (unsigned i = 0, n = static_cast<unsigned>(
2173 this_._internal_resources_size());
2174 i < n; i++) {
2175 const auto& repfield = this_._internal_resources().Get(i);
2176 target =
2177 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
2178 1, repfield, repfield.GetCachedSize(),
2179 target, stream);
2180 }
2181
2182 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
2183 for (unsigned i = 0, n = static_cast<unsigned>(
2184 this_._internal_tasks_size());
2185 i < n; i++) {
2186 const auto& repfield = this_._internal_tasks().Get(i);
2187 target =
2188 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
2189 2, repfield, repfield.GetCachedSize(),
2190 target, stream);
2191 }
2192
2193 // bool is_consumer_producer = 3;
2194 if ((this_._impl_._has_bits_[0] & 0x00000004u) != 0) {
2195 if (this_._internal_is_consumer_producer() != 0) {
2196 target = stream->EnsureSpace(target);
2197 target = ::_pbi::WireFormatLite::WriteBoolToArray(
2198 3, this_._internal_is_consumer_producer(), target);
2199 }
2200 }
2201
2202 // bool is_resource_investment = 4;
2203 if ((this_._impl_._has_bits_[0] & 0x00000008u) != 0) {
2204 if (this_._internal_is_resource_investment() != 0) {
2205 target = stream->EnsureSpace(target);
2206 target = ::_pbi::WireFormatLite::WriteBoolToArray(
2207 4, this_._internal_is_resource_investment(), target);
2208 }
2209 }
2210
2211 // bool is_rcpsp_max = 5;
2212 if ((this_._impl_._has_bits_[0] & 0x00000010u) != 0) {
2213 if (this_._internal_is_rcpsp_max() != 0) {
2214 target = stream->EnsureSpace(target);
2215 target = ::_pbi::WireFormatLite::WriteBoolToArray(
2216 5, this_._internal_is_rcpsp_max(), target);
2217 }
2218 }
2219
2220 // int32 deadline = 6;
2221 if ((this_._impl_._has_bits_[0] & 0x00000020u) != 0) {
2222 if (this_._internal_deadline() != 0) {
2223 target =
2224 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<6>(
2225 stream, this_._internal_deadline(), target);
2226 }
2227 }
2228
2229 // int32 horizon = 7;
2230 if ((this_._impl_._has_bits_[0] & 0x00000040u) != 0) {
2231 if (this_._internal_horizon() != 0) {
2232 target =
2233 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<7>(
2234 stream, this_._internal_horizon(), target);
2235 }
2236 }
2237
2238 // int32 release_date = 8;
2239 if ((this_._impl_._has_bits_[0] & 0x00000080u) != 0) {
2240 if (this_._internal_release_date() != 0) {
2241 target =
2242 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<8>(
2243 stream, this_._internal_release_date(), target);
2244 }
2245 }
2246
2247 // int32 tardiness_cost = 9;
2248 if ((this_._impl_._has_bits_[0] & 0x00000100u) != 0) {
2249 if (this_._internal_tardiness_cost() != 0) {
2250 target =
2251 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<9>(
2252 stream, this_._internal_tardiness_cost(), target);
2253 }
2254 }
2255
2256 // int32 mpm_time = 10;
2257 if ((this_._impl_._has_bits_[0] & 0x00000200u) != 0) {
2258 if (this_._internal_mpm_time() != 0) {
2259 target =
2260 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<10>(
2261 stream, this_._internal_mpm_time(), target);
2262 }
2263 }
2264
2265 // int64 seed = 11;
2266 if ((this_._impl_._has_bits_[0] & 0x00000400u) != 0) {
2267 if (this_._internal_seed() != 0) {
2268 target =
2269 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<11>(
2270 stream, this_._internal_seed(), target);
2271 }
2272 }
2273
2274 // string basedata = 12;
2275 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
2276 if (!this_._internal_basedata().empty()) {
2277 const ::std::string& _s = this_._internal_basedata();
2278 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
2279 _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "operations_research.scheduling.rcpsp.RcpspProblem.basedata");
2280 target = stream->WriteStringMaybeAliased(12, _s, target);
2281 }
2282 }
2283
2284 // int32 due_date = 13;
2285 if ((this_._impl_._has_bits_[0] & 0x00000800u) != 0) {
2286 if (this_._internal_due_date() != 0) {
2287 target =
2288 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<13>(
2289 stream, this_._internal_due_date(), target);
2290 }
2291 }
2292
2293 // string name = 14;
2294 if ((this_._impl_._has_bits_[0] & 0x00000002u) != 0) {
2295 if (!this_._internal_name().empty()) {
2296 const ::std::string& _s = this_._internal_name();
2297 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
2298 _s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE, "operations_research.scheduling.rcpsp.RcpspProblem.name");
2299 target = stream->WriteStringMaybeAliased(14, _s, target);
2300 }
2301 }
2302
2303 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2304 target =
2305 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2306 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2307 }
2308 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.RcpspProblem)
2309 return target;
2310}
2311
2312#if defined(PROTOBUF_CUSTOM_VTABLE)
2313::size_t RcpspProblem::ByteSizeLong(const MessageLite& base) {
2314 const RcpspProblem& this_ = static_cast<const RcpspProblem&>(base);
2315#else // PROTOBUF_CUSTOM_VTABLE
2316::size_t RcpspProblem::ByteSizeLong() const {
2317 const RcpspProblem& this_ = *this;
2318#endif // PROTOBUF_CUSTOM_VTABLE
2319 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.RcpspProblem)
2320 ::size_t total_size = 0;
2321
2322 ::uint32_t cached_has_bits = 0;
2323 // Prevent compiler warnings about cached_has_bits being unused
2324 (void)cached_has_bits;
2325
2326 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2327 {
2328 // repeated .operations_research.scheduling.rcpsp.Resource resources = 1;
2329 {
2330 total_size += 1UL * this_._internal_resources_size();
2331 for (const auto& msg : this_._internal_resources()) {
2332 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
2333 }
2334 }
2335 // repeated .operations_research.scheduling.rcpsp.Task tasks = 2;
2336 {
2337 total_size += 1UL * this_._internal_tasks_size();
2338 for (const auto& msg : this_._internal_tasks()) {
2339 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
2340 }
2341 }
2342 }
2343 cached_has_bits = this_._impl_._has_bits_[0];
2344 if ((cached_has_bits & 0x000000ffu) != 0) {
2345 // string basedata = 12;
2346 if ((cached_has_bits & 0x00000001u) != 0) {
2347 if (!this_._internal_basedata().empty()) {
2348 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
2349 this_._internal_basedata());
2350 }
2351 }
2352 // string name = 14;
2353 if ((cached_has_bits & 0x00000002u) != 0) {
2354 if (!this_._internal_name().empty()) {
2355 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
2356 this_._internal_name());
2357 }
2358 }
2359 // bool is_consumer_producer = 3;
2360 if ((cached_has_bits & 0x00000004u) != 0) {
2361 if (this_._internal_is_consumer_producer() != 0) {
2362 total_size += 2;
2363 }
2364 }
2365 // bool is_resource_investment = 4;
2366 if ((cached_has_bits & 0x00000008u) != 0) {
2367 if (this_._internal_is_resource_investment() != 0) {
2368 total_size += 2;
2369 }
2370 }
2371 // bool is_rcpsp_max = 5;
2372 if ((cached_has_bits & 0x00000010u) != 0) {
2373 if (this_._internal_is_rcpsp_max() != 0) {
2374 total_size += 2;
2375 }
2376 }
2377 // int32 deadline = 6;
2378 if ((cached_has_bits & 0x00000020u) != 0) {
2379 if (this_._internal_deadline() != 0) {
2380 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2381 this_._internal_deadline());
2382 }
2383 }
2384 // int32 horizon = 7;
2385 if ((cached_has_bits & 0x00000040u) != 0) {
2386 if (this_._internal_horizon() != 0) {
2387 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2388 this_._internal_horizon());
2389 }
2390 }
2391 // int32 release_date = 8;
2392 if ((cached_has_bits & 0x00000080u) != 0) {
2393 if (this_._internal_release_date() != 0) {
2394 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2395 this_._internal_release_date());
2396 }
2397 }
2398 }
2399 if ((cached_has_bits & 0x00000f00u) != 0) {
2400 // int32 tardiness_cost = 9;
2401 if ((cached_has_bits & 0x00000100u) != 0) {
2402 if (this_._internal_tardiness_cost() != 0) {
2403 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2404 this_._internal_tardiness_cost());
2405 }
2406 }
2407 // int32 mpm_time = 10;
2408 if ((cached_has_bits & 0x00000200u) != 0) {
2409 if (this_._internal_mpm_time() != 0) {
2410 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2411 this_._internal_mpm_time());
2412 }
2413 }
2414 // int64 seed = 11;
2415 if ((cached_has_bits & 0x00000400u) != 0) {
2416 if (this_._internal_seed() != 0) {
2417 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2418 this_._internal_seed());
2419 }
2420 }
2421 // int32 due_date = 13;
2422 if ((cached_has_bits & 0x00000800u) != 0) {
2423 if (this_._internal_due_date() != 0) {
2424 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2425 this_._internal_due_date());
2426 }
2427 }
2428 }
2429 return this_.MaybeComputeUnknownFieldsSize(total_size,
2430 &this_._impl_._cached_size_);
2431}
2432
2433void RcpspProblem::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2434 auto* const _this = static_cast<RcpspProblem*>(&to_msg);
2435 auto& from = static_cast<const RcpspProblem&>(from_msg);
2436 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.RcpspProblem)
2437 ABSL_DCHECK_NE(&from, _this);
2438 ::uint32_t cached_has_bits = 0;
2439 (void) cached_has_bits;
2440
2441 _this->_internal_mutable_resources()->MergeFrom(
2442 from._internal_resources());
2443 _this->_internal_mutable_tasks()->MergeFrom(
2444 from._internal_tasks());
2445 cached_has_bits = from._impl_._has_bits_[0];
2446 if ((cached_has_bits & 0x000000ffu) != 0) {
2447 if ((cached_has_bits & 0x00000001u) != 0) {
2448 if (!from._internal_basedata().empty()) {
2449 _this->_internal_set_basedata(from._internal_basedata());
2450 } else {
2451 if (_this->_impl_.basedata_.IsDefault()) {
2452 _this->_internal_set_basedata("");
2453 }
2454 }
2455 }
2456 if ((cached_has_bits & 0x00000002u) != 0) {
2457 if (!from._internal_name().empty()) {
2458 _this->_internal_set_name(from._internal_name());
2459 } else {
2460 if (_this->_impl_.name_.IsDefault()) {
2461 _this->_internal_set_name("");
2462 }
2463 }
2464 }
2465 if ((cached_has_bits & 0x00000004u) != 0) {
2466 if (from._internal_is_consumer_producer() != 0) {
2467 _this->_impl_.is_consumer_producer_ = from._impl_.is_consumer_producer_;
2468 }
2469 }
2470 if ((cached_has_bits & 0x00000008u) != 0) {
2471 if (from._internal_is_resource_investment() != 0) {
2472 _this->_impl_.is_resource_investment_ = from._impl_.is_resource_investment_;
2473 }
2474 }
2475 if ((cached_has_bits & 0x00000010u) != 0) {
2476 if (from._internal_is_rcpsp_max() != 0) {
2477 _this->_impl_.is_rcpsp_max_ = from._impl_.is_rcpsp_max_;
2478 }
2479 }
2480 if ((cached_has_bits & 0x00000020u) != 0) {
2481 if (from._internal_deadline() != 0) {
2482 _this->_impl_.deadline_ = from._impl_.deadline_;
2483 }
2484 }
2485 if ((cached_has_bits & 0x00000040u) != 0) {
2486 if (from._internal_horizon() != 0) {
2487 _this->_impl_.horizon_ = from._impl_.horizon_;
2488 }
2489 }
2490 if ((cached_has_bits & 0x00000080u) != 0) {
2491 if (from._internal_release_date() != 0) {
2492 _this->_impl_.release_date_ = from._impl_.release_date_;
2493 }
2494 }
2495 }
2496 if ((cached_has_bits & 0x00000f00u) != 0) {
2497 if ((cached_has_bits & 0x00000100u) != 0) {
2498 if (from._internal_tardiness_cost() != 0) {
2499 _this->_impl_.tardiness_cost_ = from._impl_.tardiness_cost_;
2500 }
2501 }
2502 if ((cached_has_bits & 0x00000200u) != 0) {
2503 if (from._internal_mpm_time() != 0) {
2504 _this->_impl_.mpm_time_ = from._impl_.mpm_time_;
2505 }
2506 }
2507 if ((cached_has_bits & 0x00000400u) != 0) {
2508 if (from._internal_seed() != 0) {
2509 _this->_impl_.seed_ = from._impl_.seed_;
2510 }
2511 }
2512 if ((cached_has_bits & 0x00000800u) != 0) {
2513 if (from._internal_due_date() != 0) {
2514 _this->_impl_.due_date_ = from._impl_.due_date_;
2515 }
2516 }
2517 }
2518 _this->_impl_._has_bits_[0] |= cached_has_bits;
2519 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2520}
2521
2522void RcpspProblem::CopyFrom(const RcpspProblem& from) {
2523// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.RcpspProblem)
2524 if (&from == this) return;
2525 Clear();
2526 MergeFrom(from);
2527}
2529
2530void RcpspProblem::InternalSwap(RcpspProblem* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2531 using ::std::swap;
2532 auto* arena = GetArena();
2533 ABSL_DCHECK_EQ(arena, other->GetArena());
2534 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2535 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2536 _impl_.resources_.InternalSwap(&other->_impl_.resources_);
2537 _impl_.tasks_.InternalSwap(&other->_impl_.tasks_);
2538 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.basedata_, &other->_impl_.basedata_, arena);
2539 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.name_, &other->_impl_.name_, arena);
2540 ::google::protobuf::internal::memswap<
2541 PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.due_date_)
2542 + sizeof(RcpspProblem::_impl_.due_date_)
2543 - PROTOBUF_FIELD_OFFSET(RcpspProblem, _impl_.is_consumer_producer_)>(
2544 reinterpret_cast<char*>(&_impl_.is_consumer_producer_),
2545 reinterpret_cast<char*>(&other->_impl_.is_consumer_producer_));
2546}
2547
2548::google::protobuf::Metadata RcpspProblem::GetMetadata() const {
2549 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2550}
2551// ===================================================================
2552
2553class RcpspAssignment::_Internal {
2554 public:
2555};
2556
2557RcpspAssignment::RcpspAssignment(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2558#if defined(PROTOBUF_CUSTOM_VTABLE)
2559 : ::google::protobuf::Message(arena, RcpspAssignment_class_data_.base()) {
2560#else // PROTOBUF_CUSTOM_VTABLE
2561 : ::google::protobuf::Message(arena) {
2562#endif // PROTOBUF_CUSTOM_VTABLE
2563 SharedCtor(arena);
2564 // @@protoc_insertion_point(arena_constructor:operations_research.scheduling.rcpsp.RcpspAssignment)
2565}
2566PROTOBUF_NDEBUG_INLINE RcpspAssignment::Impl_::Impl_(
2567 ::google::protobuf::internal::InternalVisibility visibility,
2568 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2569 const ::operations_research::scheduling::rcpsp::RcpspAssignment& from_msg)
2570 : start_of_task_{visibility, arena, from.start_of_task_},
2571 _start_of_task_cached_byte_size_{0},
2572 selected_recipe_of_task_{visibility, arena, from.selected_recipe_of_task_},
2573 _selected_recipe_of_task_cached_byte_size_{0},
2574 _cached_size_{0} {}
2575
2577 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2578 const RcpspAssignment& from)
2579#if defined(PROTOBUF_CUSTOM_VTABLE)
2580 : ::google::protobuf::Message(arena, RcpspAssignment_class_data_.base()) {
2581#else // PROTOBUF_CUSTOM_VTABLE
2582 : ::google::protobuf::Message(arena) {
2583#endif // PROTOBUF_CUSTOM_VTABLE
2584 RcpspAssignment* const _this = this;
2585 (void)_this;
2586 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2587 from._internal_metadata_);
2588 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2589
2590 // @@protoc_insertion_point(copy_constructor:operations_research.scheduling.rcpsp.RcpspAssignment)
2591}
2592PROTOBUF_NDEBUG_INLINE RcpspAssignment::Impl_::Impl_(
2593 ::google::protobuf::internal::InternalVisibility visibility,
2594 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2595 : start_of_task_{visibility, arena},
2596 _start_of_task_cached_byte_size_{0},
2597 selected_recipe_of_task_{visibility, arena},
2598 _selected_recipe_of_task_cached_byte_size_{0},
2599 _cached_size_{0} {}
2600
2601inline void RcpspAssignment::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2602 new (&_impl_) Impl_(internal_visibility(), arena);
2603}
2605 // @@protoc_insertion_point(destructor:operations_research.scheduling.rcpsp.RcpspAssignment)
2606 SharedDtor(*this);
2607}
2608inline void RcpspAssignment::SharedDtor(MessageLite& self) {
2609 RcpspAssignment& this_ = static_cast<RcpspAssignment&>(self);
2610 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2611 ABSL_DCHECK(this_.GetArena() == nullptr);
2612 this_._impl_.~Impl_();
2613}
2614
2615inline void* PROTOBUF_NONNULL RcpspAssignment::PlacementNew_(
2616 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2617 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2618 return ::new (mem) RcpspAssignment(arena);
2619}
2620constexpr auto RcpspAssignment::InternalNewImpl_() {
2621 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2622 PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.start_of_task_) +
2623 decltype(RcpspAssignment::_impl_.start_of_task_)::
2624 InternalGetArenaOffset(
2625 ::google::protobuf::Message::internal_visibility()),
2626 PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.selected_recipe_of_task_) +
2627 decltype(RcpspAssignment::_impl_.selected_recipe_of_task_)::
2628 InternalGetArenaOffset(
2629 ::google::protobuf::Message::internal_visibility()),
2630 });
2631 if (arena_bits.has_value()) {
2632 return ::google::protobuf::internal::MessageCreator::ZeroInit(
2633 sizeof(RcpspAssignment), alignof(RcpspAssignment), *arena_bits);
2634 } else {
2635 return ::google::protobuf::internal::MessageCreator(&RcpspAssignment::PlacementNew_,
2636 sizeof(RcpspAssignment),
2637 alignof(RcpspAssignment));
2638 }
2639}
2641 return ::google::protobuf::internal::ClassDataFull{
2642 ::google::protobuf::internal::ClassData{
2644 &_table_.header,
2645 nullptr, // OnDemandRegisterArenaDtor
2646 nullptr, // IsInitialized
2647 &RcpspAssignment::MergeImpl,
2648 ::google::protobuf::Message::GetNewImpl<RcpspAssignment>(),
2649#if defined(PROTOBUF_CUSTOM_VTABLE)
2650 &RcpspAssignment::SharedDtor,
2651 ::google::protobuf::Message::GetClearImpl<RcpspAssignment>(), &RcpspAssignment::ByteSizeLong,
2653#endif // PROTOBUF_CUSTOM_VTABLE
2654 PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_._cached_size_),
2655 false,
2656 },
2657 &RcpspAssignment::kDescriptorMethods,
2659 nullptr, // tracker
2660 };
2661}
2662
2663PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2664 ::google::protobuf::internal::ClassDataFull RcpspAssignment_class_data_ =
2666
2667PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2669 ::google::protobuf::internal::PrefetchToLocalCache(&RcpspAssignment_class_data_);
2670 ::google::protobuf::internal::PrefetchToLocalCache(RcpspAssignment_class_data_.tc_table);
2672}
2673PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2674const ::_pbi::TcParseTable<1, 2, 0, 0, 2>
2675RcpspAssignment::_table_ = {
2676 {
2677 0, // no _has_bits_
2678 0, // no _extensions_
2679 2, 8, // max_field_number, fast_idx_mask
2680 offsetof(decltype(_table_), field_lookup_table),
2681 4294967292, // skipmap
2682 offsetof(decltype(_table_), field_entries),
2683 2, // num_field_entries
2684 0, // num_aux_entries
2685 offsetof(decltype(_table_), field_names), // no aux_entries
2687 nullptr, // post_loop_handler
2688 ::_pbi::TcParser::GenericFallback, // fallback
2689 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2690 ::_pbi::TcParser::GetTable<::operations_research::scheduling::rcpsp::RcpspAssignment>(), // to_prefetch
2691 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2692 }, {{
2693 // repeated int32 selected_recipe_of_task = 2;
2694 {::_pbi::TcParser::FastV32P1,
2695 {18, 63, 0, PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.selected_recipe_of_task_)}},
2696 // repeated int64 start_of_task = 1;
2697 {::_pbi::TcParser::FastV64P1,
2698 {10, 63, 0, PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.start_of_task_)}},
2699 }}, {{
2700 65535, 65535
2701 }}, {{
2702 // repeated int64 start_of_task = 1;
2703 {PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.start_of_task_), 0, 0,
2704 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt64)},
2705 // repeated int32 selected_recipe_of_task = 2;
2706 {PROTOBUF_FIELD_OFFSET(RcpspAssignment, _impl_.selected_recipe_of_task_), 0, 0,
2707 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2708 }},
2709 // no aux_entries
2710 {{
2711 }},
2712};
2713PROTOBUF_NOINLINE void RcpspAssignment::Clear() {
2714// @@protoc_insertion_point(message_clear_start:operations_research.scheduling.rcpsp.RcpspAssignment)
2715 ::google::protobuf::internal::TSanWrite(&_impl_);
2716 ::uint32_t cached_has_bits = 0;
2717 // Prevent compiler warnings about cached_has_bits being unused
2718 (void) cached_has_bits;
2719
2720 _impl_.start_of_task_.Clear();
2721 _impl_.selected_recipe_of_task_.Clear();
2722 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2723}
2724
2725#if defined(PROTOBUF_CUSTOM_VTABLE)
2726::uint8_t* PROTOBUF_NONNULL RcpspAssignment::_InternalSerialize(
2727 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2728 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2729 const RcpspAssignment& this_ = static_cast<const RcpspAssignment&>(base);
2730#else // PROTOBUF_CUSTOM_VTABLE
2731::uint8_t* PROTOBUF_NONNULL RcpspAssignment::_InternalSerialize(
2732 ::uint8_t* PROTOBUF_NONNULL target,
2733 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2734 const RcpspAssignment& this_ = *this;
2735#endif // PROTOBUF_CUSTOM_VTABLE
2736 // @@protoc_insertion_point(serialize_to_array_start:operations_research.scheduling.rcpsp.RcpspAssignment)
2737 ::uint32_t cached_has_bits = 0;
2738 (void)cached_has_bits;
2739
2740 // repeated int64 start_of_task = 1;
2741 {
2742 int byte_size = this_._impl_._start_of_task_cached_byte_size_.Get();
2743 if (byte_size > 0) {
2744 target = stream->WriteInt64Packed(
2745 1, this_._internal_start_of_task(), byte_size, target);
2746 }
2747 }
2748
2749 // repeated int32 selected_recipe_of_task = 2;
2750 {
2751 int byte_size = this_._impl_._selected_recipe_of_task_cached_byte_size_.Get();
2752 if (byte_size > 0) {
2753 target = stream->WriteInt32Packed(
2754 2, this_._internal_selected_recipe_of_task(), byte_size, target);
2755 }
2756 }
2757
2758 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2759 target =
2760 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2761 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2762 }
2763 // @@protoc_insertion_point(serialize_to_array_end:operations_research.scheduling.rcpsp.RcpspAssignment)
2764 return target;
2765}
2766
2767#if defined(PROTOBUF_CUSTOM_VTABLE)
2768::size_t RcpspAssignment::ByteSizeLong(const MessageLite& base) {
2769 const RcpspAssignment& this_ = static_cast<const RcpspAssignment&>(base);
2770#else // PROTOBUF_CUSTOM_VTABLE
2771::size_t RcpspAssignment::ByteSizeLong() const {
2772 const RcpspAssignment& this_ = *this;
2773#endif // PROTOBUF_CUSTOM_VTABLE
2774 // @@protoc_insertion_point(message_byte_size_start:operations_research.scheduling.rcpsp.RcpspAssignment)
2775 ::size_t total_size = 0;
2776
2777 ::uint32_t cached_has_bits = 0;
2778 // Prevent compiler warnings about cached_has_bits being unused
2779 (void)cached_has_bits;
2780
2781 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2782 {
2783 // repeated int64 start_of_task = 1;
2784 {
2785 total_size +=
2786 ::_pbi::WireFormatLite::Int64SizeWithPackedTagSize(
2787 this_._internal_start_of_task(), 1,
2788 this_._impl_._start_of_task_cached_byte_size_);
2789 }
2790 // repeated int32 selected_recipe_of_task = 2;
2791 {
2792 total_size +=
2793 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
2794 this_._internal_selected_recipe_of_task(), 1,
2795 this_._impl_._selected_recipe_of_task_cached_byte_size_);
2796 }
2797 }
2798 return this_.MaybeComputeUnknownFieldsSize(total_size,
2799 &this_._impl_._cached_size_);
2800}
2801
2802void RcpspAssignment::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2803 auto* const _this = static_cast<RcpspAssignment*>(&to_msg);
2804 auto& from = static_cast<const RcpspAssignment&>(from_msg);
2805 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.scheduling.rcpsp.RcpspAssignment)
2806 ABSL_DCHECK_NE(&from, _this);
2807 ::uint32_t cached_has_bits = 0;
2808 (void) cached_has_bits;
2809
2810 _this->_internal_mutable_start_of_task()->MergeFrom(from._internal_start_of_task());
2811 _this->_internal_mutable_selected_recipe_of_task()->MergeFrom(from._internal_selected_recipe_of_task());
2812 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2813}
2814
2816// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.scheduling.rcpsp.RcpspAssignment)
2817 if (&from == this) return;
2818 Clear();
2819 MergeFrom(from);
2820}
2821
2823void RcpspAssignment::InternalSwap(RcpspAssignment* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2824 using ::std::swap;
2825 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2826 _impl_.start_of_task_.InternalSwap(&other->_impl_.start_of_task_);
2827 _impl_.selected_recipe_of_task_.InternalSwap(&other->_impl_.selected_recipe_of_task_);
2828}
2829
2830::google::protobuf::Metadata RcpspAssignment::GetMetadata() const {
2831 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2832}
2833// @@protoc_insertion_point(namespace_scope)
2834} // namespace rcpsp
2835} // namespace scheduling
2836} // namespace operations_research
2837namespace google {
2838namespace protobuf {
2839} // namespace protobuf
2840} // namespace google
2841// @@protoc_insertion_point(global_scope)
2842PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
2843 _static_init2_ [[maybe_unused]] =
2845 ::std::false_type{});
2846#include "google/protobuf/port_undef.inc"
static PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 ::std::false_type _static_init2_
@protoc_insertion_point(global_scope)
static const ::_pb::Message *PROTOBUF_NONNULL const file_default_instances[]
friend class ::google::protobuf::MessageLite
Definition rcpsp.pb.h:960
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:1151
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:1102
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:1190
void MergeFrom(const PerRecipeDelays &from)
Definition rcpsp.pb.h:867
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:1288
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:821
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:1207
void CopyFrom(const PerSuccessorDelays &from)
Definition rcpsp.pb.cc:1527
void MergeFrom(const PerSuccessorDelays &from)
Definition rcpsp.pb.h:1067
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:1440
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:1457
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:1350
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:1541
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:1399
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:1021
friend class ::google::protobuf::MessageLite
Definition rcpsp.pb.h:758
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:600
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:2837
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:2675
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:2720
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:2738
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:2622
void MergeFrom(const RcpspAssignment &from)
Definition rcpsp.pb.h:646
friend class ::google::protobuf::MessageLite
Definition rcpsp.pb.h:1755
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:1951
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:2130
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:2168
friend void swap(RcpspProblem &a, RcpspProblem &b)
Definition rcpsp.pb.h:1480
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:2554
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:2004
decltype(::std::declval< Recipe >()._impl_._has_bits_) HasBits
Definition rcpsp.pb.cc:719
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:366
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:891
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:786
static constexpr auto InternalGenerateClassData_()
Definition rcpsp.pb.cc:811
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:911
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:1038
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:839
decltype(::std::declval< Resource >()._impl_._has_bits_) HasBits
Definition rcpsp.pb.cc:385
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:138
friend class ::google::protobuf::MessageLite
Definition rcpsp.pb.h:302
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:530
friend void swap(Resource &a, Resource &b)
Definition rcpsp.pb.h:161
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:553
static constexpr auto InternalGenerateClassData_()
Definition rcpsp.pb.cc:445
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:711
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:473
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:436
friend class ::google::protobuf::MessageLite
Definition rcpsp.pb.h:1394
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
Definition rcpsp.pb.cc:1609
::google::protobuf::Metadata GetMetadata() const
Definition rcpsp.pb.cc:1863
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
Definition rcpsp.pb.h:1219
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
Definition rcpsp.pb.cc:1721
static constexpr auto InternalGenerateClassData_()
Definition rcpsp.pb.cc:1638
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
Definition rcpsp.pb.cc:1740
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
Definition rcpsp.pb.cc:1666
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Task_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RcpspProblem_class_data_
Definition rcpsp.pb.cc:2000
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PerSuccessorDelaysDefaultTypeInternal _PerSuccessorDelays_default_instance_
Definition rcpsp.pb.cc:165
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TaskDefaultTypeInternal _Task_default_instance_
Definition rcpsp.pb.cc:193
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PerRecipeDelaysDefaultTypeInternal _PerRecipeDelays_default_instance_
Definition rcpsp.pb.cc:140
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PerRecipeDelays_class_data_
Definition rcpsp.pb.cc:1147
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RcpspProblemDefaultTypeInternal _RcpspProblem_default_instance_
Definition rcpsp.pb.cc:235
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RcpspAssignmentDefaultTypeInternal _RcpspAssignment_default_instance_
Definition rcpsp.pb.cc:114
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ResourceDefaultTypeInternal _Resource_default_instance_
Definition rcpsp.pb.cc:57
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Recipe_class_data_
Definition rcpsp.pb.cc:835
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Resource_class_data_
Definition rcpsp.pb.cc:469
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RecipeDefaultTypeInternal _Recipe_default_instance_
Definition rcpsp.pb.cc:86
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull RcpspAssignment_class_data_
Definition rcpsp.pb.cc:2671
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PerSuccessorDelays_class_data_
Definition rcpsp.pb.cc:1395
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Task_class_data_
Definition rcpsp.pb.cc:1662
In SWIG mode, we don't want anything besides these top-level includes.
static constexpr ::_pbi::MigrationSchema *PROTOBUF_NULLABLE schemas
static constexprconst ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE file_level_service_descriptors_ortools_2fscheduling_2frcpsp_2eproto
Definition rcpsp.pb.cc:242
::absl::once_flag descriptor_table_ortools_2fscheduling_2frcpsp_2eproto_once
Definition rcpsp.pb.cc:360
static constexprconst ::_pb::EnumDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE file_level_enum_descriptors_ortools_2fscheduling_2frcpsp_2eproto
Definition rcpsp.pb.cc:240
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fscheduling_2frcpsp_2eproto
Definition rcpsp.pb.cc:361
const ::uint32_t TableStruct_ortools_2fscheduling_2frcpsp_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold)