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