OR-Tools  9.1
flow_problem.pb.cc
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: ortools/graph/flow_problem.proto
3
5
6#include <algorithm>
7
8#include <google/protobuf/io/coded_stream.h>
9#include <google/protobuf/extension_set.h>
10#include <google/protobuf/wire_format_lite.h>
11#include <google/protobuf/descriptor.h>
12#include <google/protobuf/generated_message_reflection.h>
13#include <google/protobuf/reflection_ops.h>
14#include <google/protobuf/wire_format.h>
15// @@protoc_insertion_point(includes)
16#include <google/protobuf/port_def.inc>
17
18PROTOBUF_PRAGMA_INIT_SEG
19namespace operations_research {
20constexpr Arc::Arc(
21 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
22 : tail_node_id_(int64_t{0})
23 , head_node_id_(int64_t{0})
24 , unit_cost_(int64_t{0})
25 , capacity_(int64_t{1}){}
28 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
30 union {
32 };
33};
34PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ArcDefaultTypeInternal _Arc_default_instance_;
35constexpr Node::Node(
36 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
37 : id_(int64_t{0})
38 , supply_(int64_t{0}){}
41 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
43 union {
45 };
46};
47PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NodeDefaultTypeInternal _Node_default_instance_;
49 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
50 : node_()
51 , arc_()
52 , problem_type_(2)
53{}
56 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
58 union {
60 };
61};
62PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT FlowModelDefaultTypeInternal _FlowModel_default_instance_;
63} // namespace operations_research
64static ::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fgraph_2fflow_5fproblem_2eproto[3];
65static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto[1];
66static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto = nullptr;
67
68const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
69 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, _has_bits_),
70 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, _internal_metadata_),
71 ~0u, // no _extensions_
72 ~0u, // no _oneof_case_
73 ~0u, // no _weak_field_map_
74 ~0u, // no _inlined_string_donated_
75 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, tail_node_id_),
76 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, head_node_id_),
77 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, capacity_),
78 PROTOBUF_FIELD_OFFSET(::operations_research::Arc, unit_cost_),
79 0,
80 1,
81 3,
82 2,
83 PROTOBUF_FIELD_OFFSET(::operations_research::Node, _has_bits_),
84 PROTOBUF_FIELD_OFFSET(::operations_research::Node, _internal_metadata_),
85 ~0u, // no _extensions_
86 ~0u, // no _oneof_case_
87 ~0u, // no _weak_field_map_
88 ~0u, // no _inlined_string_donated_
89 PROTOBUF_FIELD_OFFSET(::operations_research::Node, id_),
90 PROTOBUF_FIELD_OFFSET(::operations_research::Node, supply_),
91 0,
92 1,
93 PROTOBUF_FIELD_OFFSET(::operations_research::FlowModel, _has_bits_),
94 PROTOBUF_FIELD_OFFSET(::operations_research::FlowModel, _internal_metadata_),
95 ~0u, // no _extensions_
96 ~0u, // no _oneof_case_
97 ~0u, // no _weak_field_map_
98 ~0u, // no _inlined_string_donated_
99 PROTOBUF_FIELD_OFFSET(::operations_research::FlowModel, node_),
100 PROTOBUF_FIELD_OFFSET(::operations_research::FlowModel, arc_),
101 PROTOBUF_FIELD_OFFSET(::operations_research::FlowModel, problem_type_),
102 ~0u,
103 ~0u,
104 0,
105};
106static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
107 { 0, 10, -1, sizeof(::operations_research::Arc)},
108 { 14, 22, -1, sizeof(::operations_research::Node)},
109 { 24, 33, -1, sizeof(::operations_research::FlowModel)},
110};
111
112static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
113 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_Arc_default_instance_),
114 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_Node_default_instance_),
115 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_FlowModel_default_instance_),
116};
117
118const char descriptor_table_protodef_ortools_2fgraph_2fflow_5fproblem_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
119 "\n ortools/graph/flow_problem.proto\022\023oper"
120 "ations_research\"\\\n\003Arc\022\024\n\014tail_node_id\030\001"
121 " \001(\003\022\024\n\014head_node_id\030\002 \001(\003\022\023\n\010capacity\030\003"
122 " \001(\003:\0011\022\024\n\tunit_cost\030\004 \001(\003:\0010\"%\n\004Node\022\n\n"
123 "\002id\030\001 \001(\003\022\021\n\006supply\030\002 \001(\003:\0010\"\367\001\n\tFlowMod"
124 "el\022\'\n\004node\030\001 \003(\0132\031.operations_research.N"
125 "ode\022%\n\003arc\030\002 \003(\0132\030.operations_research.A"
126 "rc\022O\n\014problem_type\030\003 \001(\0162*.operations_re"
127 "search.FlowModel.ProblemType:\rMIN_COST_F"
128 "LOW\"I\n\013ProblemType\022\031\n\025LINEAR_SUM_ASSIGNM"
129 "ENT\020\000\022\014\n\010MAX_FLOW\020\001\022\021\n\rMIN_COST_FLOW\020\002"
130 ;
131static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_once;
132const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto = {
133 false, false, 438, descriptor_table_protodef_ortools_2fgraph_2fflow_5fproblem_2eproto, "ortools/graph/flow_problem.proto",
137};
138PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_getter() {
140}
141
142// Force running AddDescriptors() at dynamic initialization time.
143PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_ortools_2fgraph_2fflow_5fproblem_2eproto(&descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto);
144namespace operations_research {
145const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* FlowModel_ProblemType_descriptor() {
146 ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto);
148}
150 switch (value) {
151 case 0:
152 case 1:
153 case 2:
154 return true;
155 default:
156 return false;
157 }
158}
159
160#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
167#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
168
169// ===================================================================
170
171class Arc::_Internal {
172 public:
173 using HasBits = decltype(std::declval<Arc>()._has_bits_);
174 static void set_has_tail_node_id(HasBits* has_bits) {
175 (*has_bits)[0] |= 1u;
176 }
177 static void set_has_head_node_id(HasBits* has_bits) {
178 (*has_bits)[0] |= 2u;
179 }
180 static void set_has_capacity(HasBits* has_bits) {
181 (*has_bits)[0] |= 8u;
182 }
183 static void set_has_unit_cost(HasBits* has_bits) {
184 (*has_bits)[0] |= 4u;
185 }
186};
187
188Arc::Arc(::PROTOBUF_NAMESPACE_ID::Arena* arena,
189 bool is_message_owned)
190 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
191 SharedCtor();
192 if (!is_message_owned) {
193 RegisterArenaDtor(arena);
194 }
195 // @@protoc_insertion_point(arena_constructor:operations_research.Arc)
196}
197Arc::Arc(const Arc& from)
198 : ::PROTOBUF_NAMESPACE_ID::Message(),
199 _has_bits_(from._has_bits_) {
200 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
201 ::memcpy(&tail_node_id_, &from.tail_node_id_,
202 static_cast<size_t>(reinterpret_cast<char*>(&capacity_) -
203 reinterpret_cast<char*>(&tail_node_id_)) + sizeof(capacity_));
204 // @@protoc_insertion_point(copy_constructor:operations_research.Arc)
205}
206
207void Arc::SharedCtor() {
208::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
209 reinterpret_cast<char*>(&tail_node_id_) - reinterpret_cast<char*>(this)),
210 0, static_cast<size_t>(reinterpret_cast<char*>(&unit_cost_) -
211 reinterpret_cast<char*>(&tail_node_id_)) + sizeof(unit_cost_));
212capacity_ = int64_t{1};
213}
214
216 // @@protoc_insertion_point(destructor:operations_research.Arc)
217 if (GetArenaForAllocation() != nullptr) return;
218 SharedDtor();
219 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
220}
221
222inline void Arc::SharedDtor() {
223 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
224}
225
226void Arc::ArenaDtor(void* object) {
227 Arc* _this = reinterpret_cast< Arc* >(object);
228 (void)_this;
229}
230void Arc::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
231}
232void Arc::SetCachedSize(int size) const {
233 _cached_size_.Set(size);
234}
235
237// @@protoc_insertion_point(message_clear_start:operations_research.Arc)
238 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
239 // Prevent compiler warnings about cached_has_bits being unused
240 (void) cached_has_bits;
241
242 cached_has_bits = _has_bits_[0];
243 if (cached_has_bits & 0x0000000fu) {
244 ::memset(&tail_node_id_, 0, static_cast<size_t>(
245 reinterpret_cast<char*>(&unit_cost_) -
246 reinterpret_cast<char*>(&tail_node_id_)) + sizeof(unit_cost_));
247 capacity_ = int64_t{1};
248 }
249 _has_bits_.Clear();
250 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
251}
252
253const char* Arc::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
254#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
255 _Internal::HasBits has_bits{};
256 while (!ctx->Done(&ptr)) {
257 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
258 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
259 switch (tag >> 3) {
260 // optional int64 tail_node_id = 1;
261 case 1:
262 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
264 tail_node_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
265 CHK_(ptr);
266 } else
267 goto handle_unusual;
268 continue;
269 // optional int64 head_node_id = 2;
270 case 2:
271 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
273 head_node_id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
274 CHK_(ptr);
275 } else
276 goto handle_unusual;
277 continue;
278 // optional int64 capacity = 3 [default = 1];
279 case 3:
280 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
282 capacity_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
283 CHK_(ptr);
284 } else
285 goto handle_unusual;
286 continue;
287 // optional int64 unit_cost = 4 [default = 0];
288 case 4:
289 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
291 unit_cost_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
292 CHK_(ptr);
293 } else
294 goto handle_unusual;
295 continue;
296 default:
297 goto handle_unusual;
298 } // switch
299 handle_unusual:
300 if ((tag == 0) || ((tag & 7) == 4)) {
301 CHK_(ptr);
302 ctx->SetLastTag(tag);
303 goto message_done;
304 }
305 ptr = UnknownFieldParse(
306 tag,
307 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
308 ptr, ctx);
309 CHK_(ptr != nullptr);
310 } // while
311message_done:
312 _has_bits_.Or(has_bits);
313 return ptr;
314failure:
315 ptr = nullptr;
316 goto message_done;
317#undef CHK_
318}
319
320::PROTOBUF_NAMESPACE_ID::uint8* Arc::_InternalSerialize(
321 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
322 // @@protoc_insertion_point(serialize_to_array_start:operations_research.Arc)
323 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
324 (void) cached_has_bits;
325
326 cached_has_bits = _has_bits_[0];
327 // optional int64 tail_node_id = 1;
328 if (cached_has_bits & 0x00000001u) {
329 target = stream->EnsureSpace(target);
330 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_tail_node_id(), target);
331 }
332
333 // optional int64 head_node_id = 2;
334 if (cached_has_bits & 0x00000002u) {
335 target = stream->EnsureSpace(target);
336 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_head_node_id(), target);
337 }
338
339 // optional int64 capacity = 3 [default = 1];
340 if (cached_has_bits & 0x00000008u) {
341 target = stream->EnsureSpace(target);
342 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(3, this->_internal_capacity(), target);
343 }
344
345 // optional int64 unit_cost = 4 [default = 0];
346 if (cached_has_bits & 0x00000004u) {
347 target = stream->EnsureSpace(target);
348 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(4, this->_internal_unit_cost(), target);
349 }
350
351 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
352 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
353 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
354 }
355 // @@protoc_insertion_point(serialize_to_array_end:operations_research.Arc)
356 return target;
357}
358
359size_t Arc::ByteSizeLong() const {
360// @@protoc_insertion_point(message_byte_size_start:operations_research.Arc)
361 size_t total_size = 0;
362
363 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
364 // Prevent compiler warnings about cached_has_bits being unused
365 (void) cached_has_bits;
366
367 cached_has_bits = _has_bits_[0];
368 if (cached_has_bits & 0x0000000fu) {
369 // optional int64 tail_node_id = 1;
370 if (cached_has_bits & 0x00000001u) {
371 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_tail_node_id());
372 }
373
374 // optional int64 head_node_id = 2;
375 if (cached_has_bits & 0x00000002u) {
376 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_head_node_id());
377 }
378
379 // optional int64 unit_cost = 4 [default = 0];
380 if (cached_has_bits & 0x00000004u) {
381 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_unit_cost());
382 }
383
384 // optional int64 capacity = 3 [default = 1];
385 if (cached_has_bits & 0x00000008u) {
386 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_capacity());
387 }
388
389 }
390 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
391}
392
393const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Arc::_class_data_ = {
394 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
395 Arc::MergeImpl
396};
397const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Arc::GetClassData() const { return &_class_data_; }
398
399void Arc::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
400 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
401 static_cast<Arc *>(to)->MergeFrom(
402 static_cast<const Arc &>(from));
403}
404
405
406void Arc::MergeFrom(const Arc& from) {
407// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.Arc)
408 GOOGLE_DCHECK_NE(&from, this);
409 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
410 (void) cached_has_bits;
411
412 cached_has_bits = from._has_bits_[0];
413 if (cached_has_bits & 0x0000000fu) {
414 if (cached_has_bits & 0x00000001u) {
415 tail_node_id_ = from.tail_node_id_;
416 }
417 if (cached_has_bits & 0x00000002u) {
418 head_node_id_ = from.head_node_id_;
419 }
420 if (cached_has_bits & 0x00000004u) {
421 unit_cost_ = from.unit_cost_;
422 }
423 if (cached_has_bits & 0x00000008u) {
424 capacity_ = from.capacity_;
425 }
426 _has_bits_[0] |= cached_has_bits;
427 }
428 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
429}
430
431void Arc::CopyFrom(const Arc& from) {
432// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.Arc)
433 if (&from == this) return;
434 Clear();
435 MergeFrom(from);
436}
437
438bool Arc::IsInitialized() const {
439 return true;
440}
441
442void Arc::InternalSwap(Arc* other) {
443 using std::swap;
444 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
445 swap(_has_bits_[0], other->_has_bits_[0]);
446 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
447 PROTOBUF_FIELD_OFFSET(Arc, unit_cost_)
448 + sizeof(Arc::unit_cost_)
449 - PROTOBUF_FIELD_OFFSET(Arc, tail_node_id_)>(
450 reinterpret_cast<char*>(&tail_node_id_),
451 reinterpret_cast<char*>(&other->tail_node_id_));
452 swap(capacity_, other->capacity_);
453}
454
455::PROTOBUF_NAMESPACE_ID::Metadata Arc::GetMetadata() const {
456 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
459}
460
461// ===================================================================
462
464 public:
465 using HasBits = decltype(std::declval<Node>()._has_bits_);
466 static void set_has_id(HasBits* has_bits) {
467 (*has_bits)[0] |= 1u;
468 }
469 static void set_has_supply(HasBits* has_bits) {
470 (*has_bits)[0] |= 2u;
471 }
472};
473
474Node::Node(::PROTOBUF_NAMESPACE_ID::Arena* arena,
475 bool is_message_owned)
476 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
477 SharedCtor();
478 if (!is_message_owned) {
479 RegisterArenaDtor(arena);
480 }
481 // @@protoc_insertion_point(arena_constructor:operations_research.Node)
482}
483Node::Node(const Node& from)
484 : ::PROTOBUF_NAMESPACE_ID::Message(),
485 _has_bits_(from._has_bits_) {
486 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
487 ::memcpy(&id_, &from.id_,
488 static_cast<size_t>(reinterpret_cast<char*>(&supply_) -
489 reinterpret_cast<char*>(&id_)) + sizeof(supply_));
490 // @@protoc_insertion_point(copy_constructor:operations_research.Node)
491}
492
493void Node::SharedCtor() {
494::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
495 reinterpret_cast<char*>(&id_) - reinterpret_cast<char*>(this)),
496 0, static_cast<size_t>(reinterpret_cast<char*>(&supply_) -
497 reinterpret_cast<char*>(&id_)) + sizeof(supply_));
498}
499
501 // @@protoc_insertion_point(destructor:operations_research.Node)
502 if (GetArenaForAllocation() != nullptr) return;
503 SharedDtor();
504 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
505}
506
507inline void Node::SharedDtor() {
508 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
509}
510
511void Node::ArenaDtor(void* object) {
512 Node* _this = reinterpret_cast< Node* >(object);
513 (void)_this;
514}
515void Node::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
516}
517void Node::SetCachedSize(int size) const {
518 _cached_size_.Set(size);
519}
520
522// @@protoc_insertion_point(message_clear_start:operations_research.Node)
523 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
524 // Prevent compiler warnings about cached_has_bits being unused
525 (void) cached_has_bits;
526
527 cached_has_bits = _has_bits_[0];
528 if (cached_has_bits & 0x00000003u) {
529 ::memset(&id_, 0, static_cast<size_t>(
530 reinterpret_cast<char*>(&supply_) -
531 reinterpret_cast<char*>(&id_)) + sizeof(supply_));
532 }
533 _has_bits_.Clear();
534 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
535}
536
537const char* Node::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
538#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
539 _Internal::HasBits has_bits{};
540 while (!ctx->Done(&ptr)) {
541 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
542 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
543 switch (tag >> 3) {
544 // optional int64 id = 1;
545 case 1:
546 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
547 _Internal::set_has_id(&has_bits);
548 id_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
549 CHK_(ptr);
550 } else
551 goto handle_unusual;
552 continue;
553 // optional int64 supply = 2 [default = 0];
554 case 2:
555 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
556 _Internal::set_has_supply(&has_bits);
557 supply_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
558 CHK_(ptr);
559 } else
560 goto handle_unusual;
561 continue;
562 default:
563 goto handle_unusual;
564 } // switch
565 handle_unusual:
566 if ((tag == 0) || ((tag & 7) == 4)) {
567 CHK_(ptr);
568 ctx->SetLastTag(tag);
569 goto message_done;
570 }
571 ptr = UnknownFieldParse(
572 tag,
573 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
574 ptr, ctx);
575 CHK_(ptr != nullptr);
576 } // while
577message_done:
578 _has_bits_.Or(has_bits);
579 return ptr;
580failure:
581 ptr = nullptr;
582 goto message_done;
583#undef CHK_
584}
585
586::PROTOBUF_NAMESPACE_ID::uint8* Node::_InternalSerialize(
587 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
588 // @@protoc_insertion_point(serialize_to_array_start:operations_research.Node)
589 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
590 (void) cached_has_bits;
591
592 cached_has_bits = _has_bits_[0];
593 // optional int64 id = 1;
594 if (cached_has_bits & 0x00000001u) {
595 target = stream->EnsureSpace(target);
596 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(1, this->_internal_id(), target);
597 }
598
599 // optional int64 supply = 2 [default = 0];
600 if (cached_has_bits & 0x00000002u) {
601 target = stream->EnsureSpace(target);
602 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt64ToArray(2, this->_internal_supply(), target);
603 }
604
605 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
606 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
607 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
608 }
609 // @@protoc_insertion_point(serialize_to_array_end:operations_research.Node)
610 return target;
611}
612
613size_t Node::ByteSizeLong() const {
614// @@protoc_insertion_point(message_byte_size_start:operations_research.Node)
615 size_t total_size = 0;
616
617 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
618 // Prevent compiler warnings about cached_has_bits being unused
619 (void) cached_has_bits;
620
621 cached_has_bits = _has_bits_[0];
622 if (cached_has_bits & 0x00000003u) {
623 // optional int64 id = 1;
624 if (cached_has_bits & 0x00000001u) {
625 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_id());
626 }
627
628 // optional int64 supply = 2 [default = 0];
629 if (cached_has_bits & 0x00000002u) {
630 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int64SizePlusOne(this->_internal_supply());
631 }
632
633 }
634 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
635}
636
637const ::PROTOBUF_NAMESPACE_ID::Message::ClassData Node::_class_data_ = {
638 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
639 Node::MergeImpl
640};
641const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*Node::GetClassData() const { return &_class_data_; }
642
643void Node::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
644 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
645 static_cast<Node *>(to)->MergeFrom(
646 static_cast<const Node &>(from));
647}
648
649
650void Node::MergeFrom(const Node& from) {
651// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.Node)
652 GOOGLE_DCHECK_NE(&from, this);
653 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
654 (void) cached_has_bits;
655
656 cached_has_bits = from._has_bits_[0];
657 if (cached_has_bits & 0x00000003u) {
658 if (cached_has_bits & 0x00000001u) {
659 id_ = from.id_;
660 }
661 if (cached_has_bits & 0x00000002u) {
662 supply_ = from.supply_;
663 }
664 _has_bits_[0] |= cached_has_bits;
665 }
666 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
667}
668
669void Node::CopyFrom(const Node& from) {
670// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.Node)
671 if (&from == this) return;
672 Clear();
673 MergeFrom(from);
674}
675
677 return true;
678}
679
680void Node::InternalSwap(Node* other) {
681 using std::swap;
682 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
683 swap(_has_bits_[0], other->_has_bits_[0]);
684 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
685 PROTOBUF_FIELD_OFFSET(Node, supply_)
686 + sizeof(Node::supply_)
687 - PROTOBUF_FIELD_OFFSET(Node, id_)>(
688 reinterpret_cast<char*>(&id_),
689 reinterpret_cast<char*>(&other->id_));
690}
691
692::PROTOBUF_NAMESPACE_ID::Metadata Node::GetMetadata() const {
693 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
696}
697
698// ===================================================================
699
701 public:
702 using HasBits = decltype(std::declval<FlowModel>()._has_bits_);
703 static void set_has_problem_type(HasBits* has_bits) {
704 (*has_bits)[0] |= 1u;
705 }
706};
707
708FlowModel::FlowModel(::PROTOBUF_NAMESPACE_ID::Arena* arena,
709 bool is_message_owned)
710 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
711 node_(arena),
712 arc_(arena) {
713 SharedCtor();
714 if (!is_message_owned) {
715 RegisterArenaDtor(arena);
716 }
717 // @@protoc_insertion_point(arena_constructor:operations_research.FlowModel)
718}
720 : ::PROTOBUF_NAMESPACE_ID::Message(),
721 _has_bits_(from._has_bits_),
722 node_(from.node_),
723 arc_(from.arc_) {
724 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
725 problem_type_ = from.problem_type_;
726 // @@protoc_insertion_point(copy_constructor:operations_research.FlowModel)
727}
728
729void FlowModel::SharedCtor() {
730problem_type_ = 2;
731}
732
734 // @@protoc_insertion_point(destructor:operations_research.FlowModel)
735 if (GetArenaForAllocation() != nullptr) return;
736 SharedDtor();
737 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
738}
739
740inline void FlowModel::SharedDtor() {
741 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
742}
743
744void FlowModel::ArenaDtor(void* object) {
745 FlowModel* _this = reinterpret_cast< FlowModel* >(object);
746 (void)_this;
747}
748void FlowModel::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
749}
750void FlowModel::SetCachedSize(int size) const {
751 _cached_size_.Set(size);
752}
753
755// @@protoc_insertion_point(message_clear_start:operations_research.FlowModel)
756 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
757 // Prevent compiler warnings about cached_has_bits being unused
758 (void) cached_has_bits;
759
760 node_.Clear();
761 arc_.Clear();
762 problem_type_ = 2;
763 _has_bits_.Clear();
764 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
765}
766
767const char* FlowModel::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
768#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
769 _Internal::HasBits has_bits{};
770 while (!ctx->Done(&ptr)) {
771 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
772 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
773 switch (tag >> 3) {
774 // repeated .operations_research.Node node = 1;
775 case 1:
776 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
777 ptr -= 1;
778 do {
779 ptr += 1;
780 ptr = ctx->ParseMessage(_internal_add_node(), ptr);
781 CHK_(ptr);
782 if (!ctx->DataAvailable(ptr)) break;
783 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<10>(ptr));
784 } else
785 goto handle_unusual;
786 continue;
787 // repeated .operations_research.Arc arc = 2;
788 case 2:
789 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
790 ptr -= 1;
791 do {
792 ptr += 1;
793 ptr = ctx->ParseMessage(_internal_add_arc(), ptr);
794 CHK_(ptr);
795 if (!ctx->DataAvailable(ptr)) break;
796 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
797 } else
798 goto handle_unusual;
799 continue;
800 // optional .operations_research.FlowModel.ProblemType problem_type = 3 [default = MIN_COST_FLOW];
801 case 3:
802 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
803 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
804 CHK_(ptr);
805 if (PROTOBUF_PREDICT_TRUE(::operations_research::FlowModel_ProblemType_IsValid(val))) {
806 _internal_set_problem_type(static_cast<::operations_research::FlowModel_ProblemType>(val));
807 } else {
808 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(3, val, mutable_unknown_fields());
809 }
810 } else
811 goto handle_unusual;
812 continue;
813 default:
814 goto handle_unusual;
815 } // switch
816 handle_unusual:
817 if ((tag == 0) || ((tag & 7) == 4)) {
818 CHK_(ptr);
819 ctx->SetLastTag(tag);
820 goto message_done;
821 }
822 ptr = UnknownFieldParse(
823 tag,
824 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
825 ptr, ctx);
826 CHK_(ptr != nullptr);
827 } // while
828message_done:
829 _has_bits_.Or(has_bits);
830 return ptr;
831failure:
832 ptr = nullptr;
833 goto message_done;
834#undef CHK_
835}
836
837::PROTOBUF_NAMESPACE_ID::uint8* FlowModel::_InternalSerialize(
838 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
839 // @@protoc_insertion_point(serialize_to_array_start:operations_research.FlowModel)
840 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
841 (void) cached_has_bits;
842
843 // repeated .operations_research.Node node = 1;
844 for (unsigned int i = 0,
845 n = static_cast<unsigned int>(this->_internal_node_size()); i < n; i++) {
846 target = stream->EnsureSpace(target);
847 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
848 InternalWriteMessage(1, this->_internal_node(i), target, stream);
849 }
850
851 // repeated .operations_research.Arc arc = 2;
852 for (unsigned int i = 0,
853 n = static_cast<unsigned int>(this->_internal_arc_size()); i < n; i++) {
854 target = stream->EnsureSpace(target);
855 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
856 InternalWriteMessage(2, this->_internal_arc(i), target, stream);
857 }
858
859 cached_has_bits = _has_bits_[0];
860 // optional .operations_research.FlowModel.ProblemType problem_type = 3 [default = MIN_COST_FLOW];
861 if (cached_has_bits & 0x00000001u) {
862 target = stream->EnsureSpace(target);
863 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
864 3, this->_internal_problem_type(), target);
865 }
866
867 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
868 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
869 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
870 }
871 // @@protoc_insertion_point(serialize_to_array_end:operations_research.FlowModel)
872 return target;
873}
874
876// @@protoc_insertion_point(message_byte_size_start:operations_research.FlowModel)
877 size_t total_size = 0;
878
879 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
880 // Prevent compiler warnings about cached_has_bits being unused
881 (void) cached_has_bits;
882
883 // repeated .operations_research.Node node = 1;
884 total_size += 1UL * this->_internal_node_size();
885 for (const auto& msg : this->node_) {
886 total_size +=
887 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
888 }
889
890 // repeated .operations_research.Arc arc = 2;
891 total_size += 1UL * this->_internal_arc_size();
892 for (const auto& msg : this->arc_) {
893 total_size +=
894 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
895 }
896
897 // optional .operations_research.FlowModel.ProblemType problem_type = 3 [default = MIN_COST_FLOW];
898 cached_has_bits = _has_bits_[0];
899 if (cached_has_bits & 0x00000001u) {
900 total_size += 1 +
901 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_problem_type());
902 }
903
904 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
905}
906
907const ::PROTOBUF_NAMESPACE_ID::Message::ClassData FlowModel::_class_data_ = {
908 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
909 FlowModel::MergeImpl
910};
911const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*FlowModel::GetClassData() const { return &_class_data_; }
912
913void FlowModel::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
914 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
915 static_cast<FlowModel *>(to)->MergeFrom(
916 static_cast<const FlowModel &>(from));
917}
918
919
921// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.FlowModel)
922 GOOGLE_DCHECK_NE(&from, this);
923 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
924 (void) cached_has_bits;
925
926 node_.MergeFrom(from.node_);
927 arc_.MergeFrom(from.arc_);
928 if (from._internal_has_problem_type()) {
929 _internal_set_problem_type(from._internal_problem_type());
930 }
931 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
932}
933
935// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.FlowModel)
936 if (&from == this) return;
937 Clear();
938 MergeFrom(from);
939}
940
942 return true;
943}
944
945void FlowModel::InternalSwap(FlowModel* other) {
946 using std::swap;
947 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
948 swap(_has_bits_[0], other->_has_bits_[0]);
949 node_.InternalSwap(&other->node_);
950 arc_.InternalSwap(&other->arc_);
951 swap(problem_type_, other->problem_type_);
952}
953
954::PROTOBUF_NAMESPACE_ID::Metadata FlowModel::GetMetadata() const {
955 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
958}
959
960// @@protoc_insertion_point(namespace_scope)
961} // namespace operations_research
962PROTOBUF_NAMESPACE_OPEN
964 return Arena::CreateMessageInternal< ::operations_research::Arc >(arena);
965}
966template<> PROTOBUF_NOINLINE ::operations_research::Node* Arena::CreateMaybeMessage< ::operations_research::Node >(Arena* arena) {
967 return Arena::CreateMessageInternal< ::operations_research::Node >(arena);
968}
969template<> PROTOBUF_NOINLINE ::operations_research::FlowModel* Arena::CreateMaybeMessage< ::operations_research::FlowModel >(Arena* arena) {
970 return Arena::CreateMessageInternal< ::operations_research::FlowModel >(arena);
971}
972PROTOBUF_NAMESPACE_CLOSE
973
974// @@protoc_insertion_point(global_scope)
975#include <google/protobuf/port_undef.inc>
static void set_has_capacity(HasBits *has_bits)
static void set_has_tail_node_id(HasBits *has_bits)
static void set_has_unit_cost(HasBits *has_bits)
static void set_has_head_node_id(HasBits *has_bits)
decltype(std::declval< Arc >()._has_bits_) HasBits
friend void swap(Arc &a, Arc &b)
void MergeFrom(const Arc &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
void CopyFrom(const Arc &from)
bool IsInitialized() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
size_t ByteSizeLong() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_problem_type(HasBits *has_bits)
decltype(std::declval< FlowModel >()._has_bits_) HasBits
static constexpr ProblemType ProblemType_MAX
friend void swap(FlowModel &a, FlowModel &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
static constexpr int ProblemType_ARRAYSIZE
static constexpr ProblemType MIN_COST_FLOW
void CopyFrom(const FlowModel &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static constexpr ProblemType MAX_FLOW
static constexpr ProblemType ProblemType_MIN
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static constexpr ProblemType LINEAR_SUM_ASSIGNMENT
void MergeFrom(const FlowModel &from)
size_t ByteSizeLong() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_id(HasBits *has_bits)
decltype(std::declval< Node >()._has_bits_) HasBits
static void set_has_supply(HasBits *has_bits)
friend void swap(Node &a, Node &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
bool IsInitialized() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void CopyFrom(const Node &from)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const Node &from)
size_t ByteSizeLong() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
int64_t value
#define CHK_(x)
static constexpr::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto
const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_ortools_2fgraph_2fflow_5fproblem_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
PROTOBUF_ATTRIBUTE_WEAKconst ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable * descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_getter()
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto
PROTOBUF_NOINLINE::operations_research::FlowModel * Arena::CreateMaybeMessage< ::operations_research::FlowModel >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2fgraph_2fflow_5fproblem_2eproto_once
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * file_level_enum_descriptors_ortools_2fgraph_2fflow_5fproblem_2eproto[1]
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE::operations_research::Arc * Arena::CreateMaybeMessage< ::operations_research::Arc >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::Node * Arena::CreateMaybeMessage< ::operations_research::Node >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2fgraph_2fflow_5fproblem_2eproto[3]
void swap(IdMap< K, V > &a, IdMap< K, V > &b)
Definition: id_map.h:263
Collection of objects used to extend the Constraint Solver library.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT NodeDefaultTypeInternal _Node_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT FlowModelDefaultTypeInternal _FlowModel_default_instance_
bool FlowModel_ProblemType_IsValid(int value)
std::pair< int64_t, int64_t > Arc
Definition: search.cc:3383
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT ArcDefaultTypeInternal _Arc_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * FlowModel_ProblemType_descriptor()
static constexpr::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]