C++ Reference

C++ Reference: Linear solver

linear_solver.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/linear_solver/linear_solver.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3011000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3011002 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/map.h> // IWYU pragma: export
35 #include <google/protobuf/map_entry.h>
36 #include <google/protobuf/map_field_inl.h>
37 #include <google/protobuf/generated_enum_reflection.h>
38 #include <google/protobuf/unknown_field_set.h>
39 #include "ortools/util/optional_boolean.pb.h"
40 // @@protoc_insertion_point(includes)
41 #include <google/protobuf/port_def.inc>
42 #define PROTOBUF_INTERNAL_EXPORT_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
43 PROTOBUF_NAMESPACE_OPEN
44 namespace internal {
45 class AnyMetadata;
46 } // namespace internal
47 PROTOBUF_NAMESPACE_CLOSE
48 
49 // Internal implementation detail -- do not use these members.
51  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
52  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
53  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
54  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
55  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[19]
56  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
57  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
58  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
59  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
60 };
61 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
62 namespace operations_research {
63 class MPAbsConstraint;
64 class MPAbsConstraintDefaultTypeInternal;
65 extern MPAbsConstraintDefaultTypeInternal _MPAbsConstraint_default_instance_;
66 class MPArrayConstraint;
67 class MPArrayConstraintDefaultTypeInternal;
68 extern MPArrayConstraintDefaultTypeInternal _MPArrayConstraint_default_instance_;
69 class MPArrayWithConstantConstraint;
70 class MPArrayWithConstantConstraintDefaultTypeInternal;
71 extern MPArrayWithConstantConstraintDefaultTypeInternal _MPArrayWithConstantConstraint_default_instance_;
72 class MPConstraintProto;
73 class MPConstraintProtoDefaultTypeInternal;
74 extern MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_;
75 class MPGeneralConstraintProto;
76 class MPGeneralConstraintProtoDefaultTypeInternal;
77 extern MPGeneralConstraintProtoDefaultTypeInternal _MPGeneralConstraintProto_default_instance_;
78 class MPIndicatorConstraint;
79 class MPIndicatorConstraintDefaultTypeInternal;
80 extern MPIndicatorConstraintDefaultTypeInternal _MPIndicatorConstraint_default_instance_;
81 class MPModelDeltaProto;
82 class MPModelDeltaProtoDefaultTypeInternal;
83 extern MPModelDeltaProtoDefaultTypeInternal _MPModelDeltaProto_default_instance_;
84 class MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse;
85 class MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal;
86 extern MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse_default_instance_;
87 class MPModelDeltaProto_VariableOverridesEntry_DoNotUse;
88 class MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal;
89 extern MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_VariableOverridesEntry_DoNotUse_default_instance_;
90 class MPModelProto;
91 class MPModelProtoDefaultTypeInternal;
92 extern MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_;
93 class MPModelRequest;
94 class MPModelRequestDefaultTypeInternal;
95 extern MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_;
96 class MPQuadraticConstraint;
97 class MPQuadraticConstraintDefaultTypeInternal;
98 extern MPQuadraticConstraintDefaultTypeInternal _MPQuadraticConstraint_default_instance_;
99 class MPQuadraticObjective;
100 class MPQuadraticObjectiveDefaultTypeInternal;
101 extern MPQuadraticObjectiveDefaultTypeInternal _MPQuadraticObjective_default_instance_;
102 class MPSolutionResponse;
103 class MPSolutionResponseDefaultTypeInternal;
104 extern MPSolutionResponseDefaultTypeInternal _MPSolutionResponse_default_instance_;
105 class MPSolverCommonParameters;
106 class MPSolverCommonParametersDefaultTypeInternal;
107 extern MPSolverCommonParametersDefaultTypeInternal _MPSolverCommonParameters_default_instance_;
108 class MPSosConstraint;
109 class MPSosConstraintDefaultTypeInternal;
110 extern MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_;
111 class MPVariableProto;
112 class MPVariableProtoDefaultTypeInternal;
113 extern MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_;
114 class OptionalDouble;
115 class OptionalDoubleDefaultTypeInternal;
116 extern OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_;
117 class PartialVariableAssignment;
118 class PartialVariableAssignmentDefaultTypeInternal;
119 extern PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_;
120 } // namespace operations_research
121 PROTOBUF_NAMESPACE_OPEN
122 template<> ::operations_research::MPAbsConstraint* Arena::CreateMaybeMessage<::operations_research::MPAbsConstraint>(Arena*);
123 template<> ::operations_research::MPArrayConstraint* Arena::CreateMaybeMessage<::operations_research::MPArrayConstraint>(Arena*);
124 template<> ::operations_research::MPArrayWithConstantConstraint* Arena::CreateMaybeMessage<::operations_research::MPArrayWithConstantConstraint>(Arena*);
125 template<> ::operations_research::MPConstraintProto* Arena::CreateMaybeMessage<::operations_research::MPConstraintProto>(Arena*);
126 template<> ::operations_research::MPGeneralConstraintProto* Arena::CreateMaybeMessage<::operations_research::MPGeneralConstraintProto>(Arena*);
127 template<> ::operations_research::MPIndicatorConstraint* Arena::CreateMaybeMessage<::operations_research::MPIndicatorConstraint>(Arena*);
128 template<> ::operations_research::MPModelDeltaProto* Arena::CreateMaybeMessage<::operations_research::MPModelDeltaProto>(Arena*);
129 template<> ::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse* Arena::CreateMaybeMessage<::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse>(Arena*);
130 template<> ::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse* Arena::CreateMaybeMessage<::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse>(Arena*);
131 template<> ::operations_research::MPModelProto* Arena::CreateMaybeMessage<::operations_research::MPModelProto>(Arena*);
132 template<> ::operations_research::MPModelRequest* Arena::CreateMaybeMessage<::operations_research::MPModelRequest>(Arena*);
133 template<> ::operations_research::MPQuadraticConstraint* Arena::CreateMaybeMessage<::operations_research::MPQuadraticConstraint>(Arena*);
134 template<> ::operations_research::MPQuadraticObjective* Arena::CreateMaybeMessage<::operations_research::MPQuadraticObjective>(Arena*);
135 template<> ::operations_research::MPSolutionResponse* Arena::CreateMaybeMessage<::operations_research::MPSolutionResponse>(Arena*);
136 template<> ::operations_research::MPSolverCommonParameters* Arena::CreateMaybeMessage<::operations_research::MPSolverCommonParameters>(Arena*);
137 template<> ::operations_research::MPSosConstraint* Arena::CreateMaybeMessage<::operations_research::MPSosConstraint>(Arena*);
138 template<> ::operations_research::MPVariableProto* Arena::CreateMaybeMessage<::operations_research::MPVariableProto>(Arena*);
139 template<> ::operations_research::OptionalDouble* Arena::CreateMaybeMessage<::operations_research::OptionalDouble>(Arena*);
140 template<> ::operations_research::PartialVariableAssignment* Arena::CreateMaybeMessage<::operations_research::PartialVariableAssignment>(Arena*);
141 PROTOBUF_NAMESPACE_CLOSE
142 namespace operations_research {
143 
147 };
148 bool MPSosConstraint_Type_IsValid(int value);
152 
153 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSosConstraint_Type_descriptor();
154 template<typename T>
155 inline const std::string& MPSosConstraint_Type_Name(T enum_t_value) {
156  static_assert(::std::is_same<T, MPSosConstraint_Type>::value ||
157  ::std::is_integral<T>::value,
158  "Incorrect type passed to function MPSosConstraint_Type_Name.");
159  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
160  MPSosConstraint_Type_descriptor(), enum_t_value);
161 }
163  const std::string& name, MPSosConstraint_Type* value) {
164  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSosConstraint_Type>(
165  MPSosConstraint_Type_descriptor(), name, value);
166 }
172 };
177 
178 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverCommonParameters_LPAlgorithmValues_descriptor();
179 template<typename T>
180 inline const std::string& MPSolverCommonParameters_LPAlgorithmValues_Name(T enum_t_value) {
181  static_assert(::std::is_same<T, MPSolverCommonParameters_LPAlgorithmValues>::value ||
182  ::std::is_integral<T>::value,
183  "Incorrect type passed to function MPSolverCommonParameters_LPAlgorithmValues_Name.");
184  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
186 }
188  const std::string& name, MPSolverCommonParameters_LPAlgorithmValues* value) {
189  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSolverCommonParameters_LPAlgorithmValues>(
191 }
208 };
209 bool MPModelRequest_SolverType_IsValid(int value);
213 
214 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPModelRequest_SolverType_descriptor();
215 template<typename T>
216 inline const std::string& MPModelRequest_SolverType_Name(T enum_t_value) {
217  static_assert(::std::is_same<T, MPModelRequest_SolverType>::value ||
218  ::std::is_integral<T>::value,
219  "Incorrect type passed to function MPModelRequest_SolverType_Name.");
220  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
221  MPModelRequest_SolverType_descriptor(), enum_t_value);
222 }
224  const std::string& name, MPModelRequest_SolverType* value) {
225  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPModelRequest_SolverType>(
226  MPModelRequest_SolverType_descriptor(), name, value);
227 }
241 };
242 bool MPSolverResponseStatus_IsValid(int value);
246 
247 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverResponseStatus_descriptor();
248 template<typename T>
249 inline const std::string& MPSolverResponseStatus_Name(T enum_t_value) {
250  static_assert(::std::is_same<T, MPSolverResponseStatus>::value ||
251  ::std::is_integral<T>::value,
252  "Incorrect type passed to function MPSolverResponseStatus_Name.");
253  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
254  MPSolverResponseStatus_descriptor(), enum_t_value);
255 }
257  const std::string& name, MPSolverResponseStatus* value) {
258  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSolverResponseStatus>(
259  MPSolverResponseStatus_descriptor(), name, value);
260 }
261 // ===================================================================
262 
264  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPVariableProto) */ {
265  public:
266  MPVariableProto();
267  virtual ~MPVariableProto();
268 
269  MPVariableProto(const MPVariableProto& from);
271  : MPVariableProto() {
272  *this = ::std::move(from);
273  }
274 
276  CopyFrom(from);
277  return *this;
278  }
279  inline MPVariableProto& operator=(MPVariableProto&& from) noexcept {
280  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
281  if (this != &from) InternalSwap(&from);
282  } else {
283  CopyFrom(from);
284  }
285  return *this;
286  }
287 
288  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
289  return _internal_metadata_.unknown_fields();
290  }
291  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
292  return _internal_metadata_.mutable_unknown_fields();
293  }
294 
295  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
296  return GetDescriptor();
297  }
298  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
299  return GetMetadataStatic().descriptor;
300  }
301  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
302  return GetMetadataStatic().reflection;
303  }
304  static const MPVariableProto& default_instance();
305 
306  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
308  return reinterpret_cast<const MPVariableProto*>(
310  }
311  static constexpr int kIndexInFileMessages =
312  0;
313 
314  friend void swap(MPVariableProto& a, MPVariableProto& b) {
315  a.Swap(&b);
316  }
317  inline void Swap(MPVariableProto* other) {
318  if (other == this) return;
319  InternalSwap(other);
320  }
321 
322  // implements Message ----------------------------------------------
323 
324  inline MPVariableProto* New() const final {
325  return CreateMaybeMessage<MPVariableProto>(nullptr);
326  }
327 
328  MPVariableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
329  return CreateMaybeMessage<MPVariableProto>(arena);
330  }
331  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
332  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
333  void CopyFrom(const MPVariableProto& from);
334  void MergeFrom(const MPVariableProto& from);
335  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
336  bool IsInitialized() const final;
337 
338  size_t ByteSizeLong() const final;
339  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
340  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
341  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
342  int GetCachedSize() const final { return _cached_size_.Get(); }
343 
344  private:
345  inline void SharedCtor();
346  inline void SharedDtor();
347  void SetCachedSize(int size) const final;
348  void InternalSwap(MPVariableProto* other);
349  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
350  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
351  return "operations_research.MPVariableProto";
352  }
353  private:
354  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
355  return nullptr;
356  }
357  inline void* MaybeArenaPtr() const {
358  return nullptr;
359  }
360  public:
361 
362  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
363  private:
364  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
365  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
367  }
368 
369  public:
370 
371  // nested types ----------------------------------------------------
372 
373  // accessors -------------------------------------------------------
374 
375  enum : int {
382  };
383  // optional string name = 5 [default = ""];
384  bool has_name() const;
385  private:
386  bool _internal_has_name() const;
387  public:
388  void clear_name();
389  const std::string& name() const;
390  void set_name(const std::string& value);
391  void set_name(std::string&& value);
392  void set_name(const char* value);
393  void set_name(const char* value, size_t size);
394  std::string* mutable_name();
395  std::string* release_name();
396  void set_allocated_name(std::string* name);
397  private:
398  const std::string& _internal_name() const;
399  void _internal_set_name(const std::string& value);
400  std::string* _internal_mutable_name();
401  public:
402 
403  // optional double objective_coefficient = 3 [default = 0];
404  bool has_objective_coefficient() const;
405  private:
406  bool _internal_has_objective_coefficient() const;
407  public:
409  double objective_coefficient() const;
410  void set_objective_coefficient(double value);
411  private:
412  double _internal_objective_coefficient() const;
413  void _internal_set_objective_coefficient(double value);
414  public:
415 
416  // optional bool is_integer = 4 [default = false];
417  bool has_is_integer() const;
418  private:
419  bool _internal_has_is_integer() const;
420  public:
421  void clear_is_integer();
422  bool is_integer() const;
423  void set_is_integer(bool value);
424  private:
425  bool _internal_is_integer() const;
426  void _internal_set_is_integer(bool value);
427  public:
428 
429  // optional int32 branching_priority = 6 [default = 0];
430  bool has_branching_priority() const;
431  private:
432  bool _internal_has_branching_priority() const;
433  public:
435  ::PROTOBUF_NAMESPACE_ID::int32 branching_priority() const;
436  void set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value);
437  private:
438  ::PROTOBUF_NAMESPACE_ID::int32 _internal_branching_priority() const;
439  void _internal_set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value);
440  public:
441 
442  // optional double lower_bound = 1 [default = -inf];
443  bool has_lower_bound() const;
444  private:
445  bool _internal_has_lower_bound() const;
446  public:
447  void clear_lower_bound();
448  double lower_bound() const;
449  void set_lower_bound(double value);
450  private:
451  double _internal_lower_bound() const;
452  void _internal_set_lower_bound(double value);
453  public:
454 
455  // optional double upper_bound = 2 [default = inf];
456  bool has_upper_bound() const;
457  private:
458  bool _internal_has_upper_bound() const;
459  public:
460  void clear_upper_bound();
461  double upper_bound() const;
462  void set_upper_bound(double value);
463  private:
464  double _internal_upper_bound() const;
465  void _internal_set_upper_bound(double value);
466  public:
467 
468  // @@protoc_insertion_point(class_scope:operations_research.MPVariableProto)
469  private:
470  class _Internal;
471 
472  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
473  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
474  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
475  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
476  double objective_coefficient_;
477  bool is_integer_;
478  ::PROTOBUF_NAMESPACE_ID::int32 branching_priority_;
479  double lower_bound_;
480  double upper_bound_;
481  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
482 };
483 // -------------------------------------------------------------------
484 
486  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPConstraintProto) */ {
487  public:
489  virtual ~MPConstraintProto();
490 
493  : MPConstraintProto() {
494  *this = ::std::move(from);
495  }
496 
498  CopyFrom(from);
499  return *this;
500  }
501  inline MPConstraintProto& operator=(MPConstraintProto&& from) noexcept {
502  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
503  if (this != &from) InternalSwap(&from);
504  } else {
505  CopyFrom(from);
506  }
507  return *this;
508  }
509 
510  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
511  return _internal_metadata_.unknown_fields();
512  }
513  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
514  return _internal_metadata_.mutable_unknown_fields();
515  }
516 
517  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
518  return GetDescriptor();
519  }
520  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
521  return GetMetadataStatic().descriptor;
522  }
523  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
524  return GetMetadataStatic().reflection;
525  }
526  static const MPConstraintProto& default_instance();
527 
528  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
530  return reinterpret_cast<const MPConstraintProto*>(
532  }
533  static constexpr int kIndexInFileMessages =
534  1;
535 
537  a.Swap(&b);
538  }
539  inline void Swap(MPConstraintProto* other) {
540  if (other == this) return;
541  InternalSwap(other);
542  }
543 
544  // implements Message ----------------------------------------------
545 
546  inline MPConstraintProto* New() const final {
547  return CreateMaybeMessage<MPConstraintProto>(nullptr);
548  }
549 
550  MPConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
551  return CreateMaybeMessage<MPConstraintProto>(arena);
552  }
553  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
554  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
555  void CopyFrom(const MPConstraintProto& from);
556  void MergeFrom(const MPConstraintProto& from);
557  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
558  bool IsInitialized() const final;
559 
560  size_t ByteSizeLong() const final;
561  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
562  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
563  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
564  int GetCachedSize() const final { return _cached_size_.Get(); }
565 
566  private:
567  inline void SharedCtor();
568  inline void SharedDtor();
569  void SetCachedSize(int size) const final;
570  void InternalSwap(MPConstraintProto* other);
571  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
572  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
573  return "operations_research.MPConstraintProto";
574  }
575  private:
576  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
577  return nullptr;
578  }
579  inline void* MaybeArenaPtr() const {
580  return nullptr;
581  }
582  public:
583 
584  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
585  private:
586  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
587  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
589  }
590 
591  public:
592 
593  // nested types ----------------------------------------------------
594 
595  // accessors -------------------------------------------------------
596 
597  enum : int {
604  };
605  // repeated int32 var_index = 6 [packed = true];
606  int var_index_size() const;
607  private:
608  int _internal_var_index_size() const;
609  public:
610  void clear_var_index();
611  private:
612  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
613  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
614  _internal_var_index() const;
615  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
616  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
617  _internal_mutable_var_index();
618  public:
619  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
620  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
621  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
622  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
623  var_index() const;
624  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
626 
627  // repeated double coefficient = 7 [packed = true];
628  int coefficient_size() const;
629  private:
630  int _internal_coefficient_size() const;
631  public:
632  void clear_coefficient();
633  private:
634  double _internal_coefficient(int index) const;
635  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
636  _internal_coefficient() const;
637  void _internal_add_coefficient(double value);
638  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
639  _internal_mutable_coefficient();
640  public:
641  double coefficient(int index) const;
642  void set_coefficient(int index, double value);
643  void add_coefficient(double value);
644  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
645  coefficient() const;
646  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
648 
649  // optional string name = 4 [default = ""];
650  bool has_name() const;
651  private:
652  bool _internal_has_name() const;
653  public:
654  void clear_name();
655  const std::string& name() const;
656  void set_name(const std::string& value);
657  void set_name(std::string&& value);
658  void set_name(const char* value);
659  void set_name(const char* value, size_t size);
660  std::string* mutable_name();
661  std::string* release_name();
662  void set_allocated_name(std::string* name);
663  private:
664  const std::string& _internal_name() const;
665  void _internal_set_name(const std::string& value);
666  std::string* _internal_mutable_name();
667  public:
668 
669  // optional bool is_lazy = 5 [default = false];
670  bool has_is_lazy() const;
671  private:
672  bool _internal_has_is_lazy() const;
673  public:
674  void clear_is_lazy();
675  bool is_lazy() const;
676  void set_is_lazy(bool value);
677  private:
678  bool _internal_is_lazy() const;
679  void _internal_set_is_lazy(bool value);
680  public:
681 
682  // optional double lower_bound = 2 [default = -inf];
683  bool has_lower_bound() const;
684  private:
685  bool _internal_has_lower_bound() const;
686  public:
687  void clear_lower_bound();
688  double lower_bound() const;
689  void set_lower_bound(double value);
690  private:
691  double _internal_lower_bound() const;
692  void _internal_set_lower_bound(double value);
693  public:
694 
695  // optional double upper_bound = 3 [default = inf];
696  bool has_upper_bound() const;
697  private:
698  bool _internal_has_upper_bound() const;
699  public:
700  void clear_upper_bound();
701  double upper_bound() const;
702  void set_upper_bound(double value);
703  private:
704  double _internal_upper_bound() const;
705  void _internal_set_upper_bound(double value);
706  public:
707 
708  // @@protoc_insertion_point(class_scope:operations_research.MPConstraintProto)
709  private:
710  class _Internal;
711 
712  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
713  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
714  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
715  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
716  mutable std::atomic<int> _var_index_cached_byte_size_;
717  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > coefficient_;
718  mutable std::atomic<int> _coefficient_cached_byte_size_;
719  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
720  bool is_lazy_;
721  double lower_bound_;
722  double upper_bound_;
723  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
724 };
725 // -------------------------------------------------------------------
726 
728  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPGeneralConstraintProto) */ {
729  public:
731  virtual ~MPGeneralConstraintProto();
732 
736  *this = ::std::move(from);
737  }
738 
740  CopyFrom(from);
741  return *this;
742  }
744  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
745  if (this != &from) InternalSwap(&from);
746  } else {
747  CopyFrom(from);
748  }
749  return *this;
750  }
751 
752  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
753  return _internal_metadata_.unknown_fields();
754  }
755  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
756  return _internal_metadata_.mutable_unknown_fields();
757  }
758 
759  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
760  return GetDescriptor();
761  }
762  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
763  return GetMetadataStatic().descriptor;
764  }
765  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
766  return GetMetadataStatic().reflection;
767  }
769 
780  };
781 
782  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
784  return reinterpret_cast<const MPGeneralConstraintProto*>(
786  }
787  static constexpr int kIndexInFileMessages =
788  2;
789 
791  a.Swap(&b);
792  }
793  inline void Swap(MPGeneralConstraintProto* other) {
794  if (other == this) return;
795  InternalSwap(other);
796  }
797 
798  // implements Message ----------------------------------------------
799 
800  inline MPGeneralConstraintProto* New() const final {
801  return CreateMaybeMessage<MPGeneralConstraintProto>(nullptr);
802  }
803 
804  MPGeneralConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
805  return CreateMaybeMessage<MPGeneralConstraintProto>(arena);
806  }
807  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
808  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
809  void CopyFrom(const MPGeneralConstraintProto& from);
810  void MergeFrom(const MPGeneralConstraintProto& from);
811  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
812  bool IsInitialized() const final;
813 
814  size_t ByteSizeLong() const final;
815  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
816  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
817  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
818  int GetCachedSize() const final { return _cached_size_.Get(); }
819 
820  private:
821  inline void SharedCtor();
822  inline void SharedDtor();
823  void SetCachedSize(int size) const final;
824  void InternalSwap(MPGeneralConstraintProto* other);
825  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
826  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
827  return "operations_research.MPGeneralConstraintProto";
828  }
829  private:
830  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
831  return nullptr;
832  }
833  inline void* MaybeArenaPtr() const {
834  return nullptr;
835  }
836  public:
837 
838  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
839  private:
840  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
841  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
843  }
844 
845  public:
846 
847  // nested types ----------------------------------------------------
848 
849  // accessors -------------------------------------------------------
850 
851  enum : int {
861  };
862  // optional string name = 1 [default = ""];
863  bool has_name() const;
864  private:
865  bool _internal_has_name() const;
866  public:
867  void clear_name();
868  const std::string& name() const;
869  void set_name(const std::string& value);
870  void set_name(std::string&& value);
871  void set_name(const char* value);
872  void set_name(const char* value, size_t size);
873  std::string* mutable_name();
874  std::string* release_name();
875  void set_allocated_name(std::string* name);
876  private:
877  const std::string& _internal_name() const;
878  void _internal_set_name(const std::string& value);
879  std::string* _internal_mutable_name();
880  public:
881 
882  // optional .operations_research.MPIndicatorConstraint indicator_constraint = 2;
883  bool has_indicator_constraint() const;
884  private:
885  bool _internal_has_indicator_constraint() const;
886  public:
888  const ::operations_research::MPIndicatorConstraint& indicator_constraint() const;
892  private:
893  const ::operations_research::MPIndicatorConstraint& _internal_indicator_constraint() const;
894  ::operations_research::MPIndicatorConstraint* _internal_mutable_indicator_constraint();
895  public:
896 
897  // optional .operations_research.MPSosConstraint sos_constraint = 3;
898  bool has_sos_constraint() const;
899  private:
900  bool _internal_has_sos_constraint() const;
901  public:
902  void clear_sos_constraint();
903  const ::operations_research::MPSosConstraint& sos_constraint() const;
907  private:
908  const ::operations_research::MPSosConstraint& _internal_sos_constraint() const;
909  ::operations_research::MPSosConstraint* _internal_mutable_sos_constraint();
910  public:
911 
912  // optional .operations_research.MPQuadraticConstraint quadratic_constraint = 4;
913  bool has_quadratic_constraint() const;
914  private:
915  bool _internal_has_quadratic_constraint() const;
916  public:
918  const ::operations_research::MPQuadraticConstraint& quadratic_constraint() const;
922  private:
923  const ::operations_research::MPQuadraticConstraint& _internal_quadratic_constraint() const;
924  ::operations_research::MPQuadraticConstraint* _internal_mutable_quadratic_constraint();
925  public:
926 
927  // optional .operations_research.MPAbsConstraint abs_constraint = 5;
928  bool has_abs_constraint() const;
929  private:
930  bool _internal_has_abs_constraint() const;
931  public:
932  void clear_abs_constraint();
933  const ::operations_research::MPAbsConstraint& abs_constraint() const;
937  private:
938  const ::operations_research::MPAbsConstraint& _internal_abs_constraint() const;
939  ::operations_research::MPAbsConstraint* _internal_mutable_abs_constraint();
940  public:
941 
942  // optional .operations_research.MPArrayConstraint and_constraint = 6;
943  bool has_and_constraint() const;
944  private:
945  bool _internal_has_and_constraint() const;
946  public:
947  void clear_and_constraint();
948  const ::operations_research::MPArrayConstraint& and_constraint() const;
952  private:
953  const ::operations_research::MPArrayConstraint& _internal_and_constraint() const;
954  ::operations_research::MPArrayConstraint* _internal_mutable_and_constraint();
955  public:
956 
957  // optional .operations_research.MPArrayConstraint or_constraint = 7;
958  bool has_or_constraint() const;
959  private:
960  bool _internal_has_or_constraint() const;
961  public:
962  void clear_or_constraint();
963  const ::operations_research::MPArrayConstraint& or_constraint() const;
967  private:
968  const ::operations_research::MPArrayConstraint& _internal_or_constraint() const;
969  ::operations_research::MPArrayConstraint* _internal_mutable_or_constraint();
970  public:
971 
972  // optional .operations_research.MPArrayWithConstantConstraint min_constraint = 8;
973  bool has_min_constraint() const;
974  private:
975  bool _internal_has_min_constraint() const;
976  public:
977  void clear_min_constraint();
978  const ::operations_research::MPArrayWithConstantConstraint& min_constraint() const;
982  private:
983  const ::operations_research::MPArrayWithConstantConstraint& _internal_min_constraint() const;
984  ::operations_research::MPArrayWithConstantConstraint* _internal_mutable_min_constraint();
985  public:
986 
987  // optional .operations_research.MPArrayWithConstantConstraint max_constraint = 9;
988  bool has_max_constraint() const;
989  private:
990  bool _internal_has_max_constraint() const;
991  public:
992  void clear_max_constraint();
993  const ::operations_research::MPArrayWithConstantConstraint& max_constraint() const;
997  private:
998  const ::operations_research::MPArrayWithConstantConstraint& _internal_max_constraint() const;
999  ::operations_research::MPArrayWithConstantConstraint* _internal_mutable_max_constraint();
1000  public:
1001 
1002  void clear_general_constraint();
1004  // @@protoc_insertion_point(class_scope:operations_research.MPGeneralConstraintProto)
1005  private:
1006  class _Internal;
1007  void set_has_indicator_constraint();
1008  void set_has_sos_constraint();
1009  void set_has_quadratic_constraint();
1010  void set_has_abs_constraint();
1011  void set_has_and_constraint();
1012  void set_has_or_constraint();
1013  void set_has_min_constraint();
1014  void set_has_max_constraint();
1015 
1016  inline bool has_general_constraint() const;
1017  inline void clear_has_general_constraint();
1018 
1019  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1020  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1021  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1022  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
1023  union GeneralConstraintUnion {
1024  GeneralConstraintUnion() {}
1025  ::operations_research::MPIndicatorConstraint* indicator_constraint_;
1026  ::operations_research::MPSosConstraint* sos_constraint_;
1027  ::operations_research::MPQuadraticConstraint* quadratic_constraint_;
1028  ::operations_research::MPAbsConstraint* abs_constraint_;
1033  } general_constraint_;
1034  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
1035 
1036  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1037 };
1038 // -------------------------------------------------------------------
1039 
1041  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPIndicatorConstraint) */ {
1042  public:
1044  virtual ~MPIndicatorConstraint();
1045 
1048  : MPIndicatorConstraint() {
1049  *this = ::std::move(from);
1050  }
1051 
1053  CopyFrom(from);
1054  return *this;
1055  }
1057  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1058  if (this != &from) InternalSwap(&from);
1059  } else {
1060  CopyFrom(from);
1061  }
1062  return *this;
1063  }
1064 
1065  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1066  return _internal_metadata_.unknown_fields();
1067  }
1068  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1069  return _internal_metadata_.mutable_unknown_fields();
1070  }
1071 
1072  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1073  return GetDescriptor();
1074  }
1075  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1076  return GetMetadataStatic().descriptor;
1077  }
1078  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1079  return GetMetadataStatic().reflection;
1080  }
1081  static const MPIndicatorConstraint& default_instance();
1082 
1083  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1085  return reinterpret_cast<const MPIndicatorConstraint*>(
1087  }
1088  static constexpr int kIndexInFileMessages =
1089  3;
1090 
1092  a.Swap(&b);
1093  }
1094  inline void Swap(MPIndicatorConstraint* other) {
1095  if (other == this) return;
1096  InternalSwap(other);
1097  }
1098 
1099  // implements Message ----------------------------------------------
1100 
1101  inline MPIndicatorConstraint* New() const final {
1102  return CreateMaybeMessage<MPIndicatorConstraint>(nullptr);
1103  }
1104 
1105  MPIndicatorConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1106  return CreateMaybeMessage<MPIndicatorConstraint>(arena);
1107  }
1108  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1109  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1110  void CopyFrom(const MPIndicatorConstraint& from);
1111  void MergeFrom(const MPIndicatorConstraint& from);
1112  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1113  bool IsInitialized() const final;
1114 
1115  size_t ByteSizeLong() const final;
1116  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1117  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1118  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1119  int GetCachedSize() const final { return _cached_size_.Get(); }
1120 
1121  private:
1122  inline void SharedCtor();
1123  inline void SharedDtor();
1124  void SetCachedSize(int size) const final;
1125  void InternalSwap(MPIndicatorConstraint* other);
1126  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1127  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1128  return "operations_research.MPIndicatorConstraint";
1129  }
1130  private:
1131  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1132  return nullptr;
1133  }
1134  inline void* MaybeArenaPtr() const {
1135  return nullptr;
1136  }
1137  public:
1138 
1139  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1140  private:
1141  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1142  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1144  }
1145 
1146  public:
1147 
1148  // nested types ----------------------------------------------------
1149 
1150  // accessors -------------------------------------------------------
1151 
1152  enum : int {
1156  };
1157  // optional .operations_research.MPConstraintProto constraint = 3;
1158  bool has_constraint() const;
1159  private:
1160  bool _internal_has_constraint() const;
1161  public:
1162  void clear_constraint();
1163  const ::operations_research::MPConstraintProto& constraint() const;
1167  private:
1168  const ::operations_research::MPConstraintProto& _internal_constraint() const;
1169  ::operations_research::MPConstraintProto* _internal_mutable_constraint();
1170  public:
1171 
1172  // optional int32 var_index = 1;
1173  bool has_var_index() const;
1174  private:
1175  bool _internal_has_var_index() const;
1176  public:
1177  void clear_var_index();
1178  ::PROTOBUF_NAMESPACE_ID::int32 var_index() const;
1179  void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1180  private:
1181  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index() const;
1182  void _internal_set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1183  public:
1184 
1185  // optional int32 var_value = 2;
1186  bool has_var_value() const;
1187  private:
1188  bool _internal_has_var_value() const;
1189  public:
1190  void clear_var_value();
1191  ::PROTOBUF_NAMESPACE_ID::int32 var_value() const;
1192  void set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value);
1193  private:
1194  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_value() const;
1195  void _internal_set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value);
1196  public:
1197 
1198  // @@protoc_insertion_point(class_scope:operations_research.MPIndicatorConstraint)
1199  private:
1200  class _Internal;
1201 
1202  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1203  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1204  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1206  ::PROTOBUF_NAMESPACE_ID::int32 var_index_;
1207  ::PROTOBUF_NAMESPACE_ID::int32 var_value_;
1208  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1209 };
1210 // -------------------------------------------------------------------
1211 
1213  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSosConstraint) */ {
1214  public:
1215  MPSosConstraint();
1216  virtual ~MPSosConstraint();
1217 
1218  MPSosConstraint(const MPSosConstraint& from);
1220  : MPSosConstraint() {
1221  *this = ::std::move(from);
1222  }
1223 
1225  CopyFrom(from);
1226  return *this;
1227  }
1228  inline MPSosConstraint& operator=(MPSosConstraint&& from) noexcept {
1229  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1230  if (this != &from) InternalSwap(&from);
1231  } else {
1232  CopyFrom(from);
1233  }
1234  return *this;
1235  }
1236 
1237  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1238  return _internal_metadata_.unknown_fields();
1239  }
1240  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1241  return _internal_metadata_.mutable_unknown_fields();
1242  }
1243 
1244  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1245  return GetDescriptor();
1246  }
1247  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1248  return GetMetadataStatic().descriptor;
1249  }
1250  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1251  return GetMetadataStatic().reflection;
1252  }
1253  static const MPSosConstraint& default_instance();
1254 
1255  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1257  return reinterpret_cast<const MPSosConstraint*>(
1259  }
1260  static constexpr int kIndexInFileMessages =
1261  4;
1262 
1263  friend void swap(MPSosConstraint& a, MPSosConstraint& b) {
1264  a.Swap(&b);
1265  }
1266  inline void Swap(MPSosConstraint* other) {
1267  if (other == this) return;
1268  InternalSwap(other);
1269  }
1270 
1271  // implements Message ----------------------------------------------
1272 
1273  inline MPSosConstraint* New() const final {
1274  return CreateMaybeMessage<MPSosConstraint>(nullptr);
1275  }
1276 
1277  MPSosConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1278  return CreateMaybeMessage<MPSosConstraint>(arena);
1279  }
1280  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1281  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1282  void CopyFrom(const MPSosConstraint& from);
1283  void MergeFrom(const MPSosConstraint& from);
1284  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1285  bool IsInitialized() const final;
1286 
1287  size_t ByteSizeLong() const final;
1288  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1289  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1290  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1291  int GetCachedSize() const final { return _cached_size_.Get(); }
1292 
1293  private:
1294  inline void SharedCtor();
1295  inline void SharedDtor();
1296  void SetCachedSize(int size) const final;
1297  void InternalSwap(MPSosConstraint* other);
1298  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1299  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1300  return "operations_research.MPSosConstraint";
1301  }
1302  private:
1303  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1304  return nullptr;
1305  }
1306  inline void* MaybeArenaPtr() const {
1307  return nullptr;
1308  }
1309  public:
1310 
1311  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1312  private:
1313  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1314  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1316  }
1317 
1318  public:
1319 
1320  // nested types ----------------------------------------------------
1321 
1323  static constexpr Type SOS1_DEFAULT =
1325  static constexpr Type SOS2 =
1327  static inline bool Type_IsValid(int value) {
1328  return MPSosConstraint_Type_IsValid(value);
1329  }
1330  static constexpr Type Type_MIN =
1332  static constexpr Type Type_MAX =
1334  static constexpr int Type_ARRAYSIZE =
1336  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1339  }
1340  template<typename T>
1341  static inline const std::string& Type_Name(T enum_t_value) {
1342  static_assert(::std::is_same<T, Type>::value ||
1343  ::std::is_integral<T>::value,
1344  "Incorrect type passed to function Type_Name.");
1345  return MPSosConstraint_Type_Name(enum_t_value);
1346  }
1347  static inline bool Type_Parse(const std::string& name,
1348  Type* value) {
1349  return MPSosConstraint_Type_Parse(name, value);
1350  }
1351 
1352  // accessors -------------------------------------------------------
1353 
1354  enum : int {
1358  };
1359  // repeated int32 var_index = 2;
1360  int var_index_size() const;
1361  private:
1362  int _internal_var_index_size() const;
1363  public:
1364  void clear_var_index();
1365  private:
1366  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
1367  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1368  _internal_var_index() const;
1369  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1370  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1371  _internal_mutable_var_index();
1372  public:
1373  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
1374  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1375  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1376  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1377  var_index() const;
1378  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1380 
1381  // repeated double weight = 3;
1382  int weight_size() const;
1383  private:
1384  int _internal_weight_size() const;
1385  public:
1386  void clear_weight();
1387  private:
1388  double _internal_weight(int index) const;
1389  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1390  _internal_weight() const;
1391  void _internal_add_weight(double value);
1392  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1393  _internal_mutable_weight();
1394  public:
1395  double weight(int index) const;
1396  void set_weight(int index, double value);
1397  void add_weight(double value);
1398  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1399  weight() const;
1400  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1401  mutable_weight();
1402 
1403  // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
1404  bool has_type() const;
1405  private:
1406  bool _internal_has_type() const;
1407  public:
1408  void clear_type();
1411  private:
1412  ::operations_research::MPSosConstraint_Type _internal_type() const;
1413  void _internal_set_type(::operations_research::MPSosConstraint_Type value);
1414  public:
1415 
1416  // @@protoc_insertion_point(class_scope:operations_research.MPSosConstraint)
1417  private:
1418  class _Internal;
1419 
1420  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1421  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1422  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1423  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
1424  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > weight_;
1425  int type_;
1426  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1427 };
1428 // -------------------------------------------------------------------
1429 
1431  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPQuadraticConstraint) */ {
1432  public:
1434  virtual ~MPQuadraticConstraint();
1435 
1438  : MPQuadraticConstraint() {
1439  *this = ::std::move(from);
1440  }
1441 
1443  CopyFrom(from);
1444  return *this;
1445  }
1447  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1448  if (this != &from) InternalSwap(&from);
1449  } else {
1450  CopyFrom(from);
1451  }
1452  return *this;
1453  }
1454 
1455  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1456  return _internal_metadata_.unknown_fields();
1457  }
1458  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1459  return _internal_metadata_.mutable_unknown_fields();
1460  }
1461 
1462  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1463  return GetDescriptor();
1464  }
1465  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1466  return GetMetadataStatic().descriptor;
1467  }
1468  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1469  return GetMetadataStatic().reflection;
1470  }
1471  static const MPQuadraticConstraint& default_instance();
1472 
1473  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1475  return reinterpret_cast<const MPQuadraticConstraint*>(
1477  }
1478  static constexpr int kIndexInFileMessages =
1479  5;
1480 
1482  a.Swap(&b);
1483  }
1484  inline void Swap(MPQuadraticConstraint* other) {
1485  if (other == this) return;
1486  InternalSwap(other);
1487  }
1488 
1489  // implements Message ----------------------------------------------
1490 
1491  inline MPQuadraticConstraint* New() const final {
1492  return CreateMaybeMessage<MPQuadraticConstraint>(nullptr);
1493  }
1494 
1495  MPQuadraticConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1496  return CreateMaybeMessage<MPQuadraticConstraint>(arena);
1497  }
1498  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1499  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1500  void CopyFrom(const MPQuadraticConstraint& from);
1501  void MergeFrom(const MPQuadraticConstraint& from);
1502  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1503  bool IsInitialized() const final;
1504 
1505  size_t ByteSizeLong() const final;
1506  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1507  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1508  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1509  int GetCachedSize() const final { return _cached_size_.Get(); }
1510 
1511  private:
1512  inline void SharedCtor();
1513  inline void SharedDtor();
1514  void SetCachedSize(int size) const final;
1515  void InternalSwap(MPQuadraticConstraint* other);
1516  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1517  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1518  return "operations_research.MPQuadraticConstraint";
1519  }
1520  private:
1521  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1522  return nullptr;
1523  }
1524  inline void* MaybeArenaPtr() const {
1525  return nullptr;
1526  }
1527  public:
1528 
1529  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1530  private:
1531  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1532  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1534  }
1535 
1536  public:
1537 
1538  // nested types ----------------------------------------------------
1539 
1540  // accessors -------------------------------------------------------
1541 
1542  enum : int {
1550  };
1551  // repeated int32 var_index = 1;
1552  int var_index_size() const;
1553  private:
1554  int _internal_var_index_size() const;
1555  public:
1556  void clear_var_index();
1557  private:
1558  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
1559  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1560  _internal_var_index() const;
1561  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1562  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1563  _internal_mutable_var_index();
1564  public:
1565  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
1566  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1567  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1568  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1569  var_index() const;
1570  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1572 
1573  // repeated double coefficient = 2;
1574  int coefficient_size() const;
1575  private:
1576  int _internal_coefficient_size() const;
1577  public:
1578  void clear_coefficient();
1579  private:
1580  double _internal_coefficient(int index) const;
1581  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1582  _internal_coefficient() const;
1583  void _internal_add_coefficient(double value);
1584  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1585  _internal_mutable_coefficient();
1586  public:
1587  double coefficient(int index) const;
1588  void set_coefficient(int index, double value);
1589  void add_coefficient(double value);
1590  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1591  coefficient() const;
1592  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1594 
1595  // repeated int32 qvar1_index = 3;
1596  int qvar1_index_size() const;
1597  private:
1598  int _internal_qvar1_index_size() const;
1599  public:
1600  void clear_qvar1_index();
1601  private:
1602  ::PROTOBUF_NAMESPACE_ID::int32 _internal_qvar1_index(int index) const;
1603  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1604  _internal_qvar1_index() const;
1605  void _internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1606  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1607  _internal_mutable_qvar1_index();
1608  public:
1609  ::PROTOBUF_NAMESPACE_ID::int32 qvar1_index(int index) const;
1610  void set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1611  void add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1612  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1613  qvar1_index() const;
1614  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1616 
1617  // repeated int32 qvar2_index = 4;
1618  int qvar2_index_size() const;
1619  private:
1620  int _internal_qvar2_index_size() const;
1621  public:
1622  void clear_qvar2_index();
1623  private:
1624  ::PROTOBUF_NAMESPACE_ID::int32 _internal_qvar2_index(int index) const;
1625  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1626  _internal_qvar2_index() const;
1627  void _internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1628  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1629  _internal_mutable_qvar2_index();
1630  public:
1631  ::PROTOBUF_NAMESPACE_ID::int32 qvar2_index(int index) const;
1632  void set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1633  void add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1634  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1635  qvar2_index() const;
1636  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1638 
1639  // repeated double qcoefficient = 5;
1640  int qcoefficient_size() const;
1641  private:
1642  int _internal_qcoefficient_size() const;
1643  public:
1644  void clear_qcoefficient();
1645  private:
1646  double _internal_qcoefficient(int index) const;
1647  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1648  _internal_qcoefficient() const;
1649  void _internal_add_qcoefficient(double value);
1650  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1651  _internal_mutable_qcoefficient();
1652  public:
1653  double qcoefficient(int index) const;
1654  void set_qcoefficient(int index, double value);
1655  void add_qcoefficient(double value);
1656  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1657  qcoefficient() const;
1658  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1660 
1661  // optional double lower_bound = 6 [default = -inf];
1662  bool has_lower_bound() const;
1663  private:
1664  bool _internal_has_lower_bound() const;
1665  public:
1666  void clear_lower_bound();
1667  double lower_bound() const;
1668  void set_lower_bound(double value);
1669  private:
1670  double _internal_lower_bound() const;
1671  void _internal_set_lower_bound(double value);
1672  public:
1673 
1674  // optional double upper_bound = 7 [default = inf];
1675  bool has_upper_bound() const;
1676  private:
1677  bool _internal_has_upper_bound() const;
1678  public:
1679  void clear_upper_bound();
1680  double upper_bound() const;
1681  void set_upper_bound(double value);
1682  private:
1683  double _internal_upper_bound() const;
1684  void _internal_set_upper_bound(double value);
1685  public:
1686 
1687  // @@protoc_insertion_point(class_scope:operations_research.MPQuadraticConstraint)
1688  private:
1689  class _Internal;
1690 
1691  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1692  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1693  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1694  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
1695  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > coefficient_;
1696  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > qvar1_index_;
1697  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > qvar2_index_;
1698  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > qcoefficient_;
1699  double lower_bound_;
1700  double upper_bound_;
1701  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1702 };
1703 // -------------------------------------------------------------------
1704 
1706  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPAbsConstraint) */ {
1707  public:
1708  MPAbsConstraint();
1709  virtual ~MPAbsConstraint();
1710 
1711  MPAbsConstraint(const MPAbsConstraint& from);
1713  : MPAbsConstraint() {
1714  *this = ::std::move(from);
1715  }
1716 
1718  CopyFrom(from);
1719  return *this;
1720  }
1721  inline MPAbsConstraint& operator=(MPAbsConstraint&& from) noexcept {
1722  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1723  if (this != &from) InternalSwap(&from);
1724  } else {
1725  CopyFrom(from);
1726  }
1727  return *this;
1728  }
1729 
1730  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1731  return _internal_metadata_.unknown_fields();
1732  }
1733  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1734  return _internal_metadata_.mutable_unknown_fields();
1735  }
1736 
1737  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1738  return GetDescriptor();
1739  }
1740  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1741  return GetMetadataStatic().descriptor;
1742  }
1743  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1744  return GetMetadataStatic().reflection;
1745  }
1746  static const MPAbsConstraint& default_instance();
1747 
1748  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1750  return reinterpret_cast<const MPAbsConstraint*>(
1752  }
1753  static constexpr int kIndexInFileMessages =
1754  6;
1755 
1756  friend void swap(MPAbsConstraint& a, MPAbsConstraint& b) {
1757  a.Swap(&b);
1758  }
1759  inline void Swap(MPAbsConstraint* other) {
1760  if (other == this) return;
1761  InternalSwap(other);
1762  }
1763 
1764  // implements Message ----------------------------------------------
1765 
1766  inline MPAbsConstraint* New() const final {
1767  return CreateMaybeMessage<MPAbsConstraint>(nullptr);
1768  }
1769 
1770  MPAbsConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1771  return CreateMaybeMessage<MPAbsConstraint>(arena);
1772  }
1773  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1774  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1775  void CopyFrom(const MPAbsConstraint& from);
1776  void MergeFrom(const MPAbsConstraint& from);
1777  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1778  bool IsInitialized() const final;
1779 
1780  size_t ByteSizeLong() const final;
1781  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1782  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1783  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1784  int GetCachedSize() const final { return _cached_size_.Get(); }
1785 
1786  private:
1787  inline void SharedCtor();
1788  inline void SharedDtor();
1789  void SetCachedSize(int size) const final;
1790  void InternalSwap(MPAbsConstraint* other);
1791  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1792  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1793  return "operations_research.MPAbsConstraint";
1794  }
1795  private:
1796  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1797  return nullptr;
1798  }
1799  inline void* MaybeArenaPtr() const {
1800  return nullptr;
1801  }
1802  public:
1803 
1804  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1805  private:
1806  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1807  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1809  }
1810 
1811  public:
1812 
1813  // nested types ----------------------------------------------------
1814 
1815  // accessors -------------------------------------------------------
1816 
1817  enum : int {
1820  };
1821  // optional int32 var_index = 1;
1822  bool has_var_index() const;
1823  private:
1824  bool _internal_has_var_index() const;
1825  public:
1826  void clear_var_index();
1827  ::PROTOBUF_NAMESPACE_ID::int32 var_index() const;
1828  void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1829  private:
1830  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index() const;
1831  void _internal_set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1832  public:
1833 
1834  // optional int32 resultant_var_index = 2;
1835  bool has_resultant_var_index() const;
1836  private:
1837  bool _internal_has_resultant_var_index() const;
1838  public:
1840  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const;
1841  void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1842  private:
1843  ::PROTOBUF_NAMESPACE_ID::int32 _internal_resultant_var_index() const;
1844  void _internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1845  public:
1846 
1847  // @@protoc_insertion_point(class_scope:operations_research.MPAbsConstraint)
1848  private:
1849  class _Internal;
1850 
1851  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1852  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1853  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1854  ::PROTOBUF_NAMESPACE_ID::int32 var_index_;
1855  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index_;
1856  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1857 };
1858 // -------------------------------------------------------------------
1859 
1861  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPArrayConstraint) */ {
1862  public:
1864  virtual ~MPArrayConstraint();
1865 
1866  MPArrayConstraint(const MPArrayConstraint& from);
1868  : MPArrayConstraint() {
1869  *this = ::std::move(from);
1870  }
1871 
1873  CopyFrom(from);
1874  return *this;
1875  }
1876  inline MPArrayConstraint& operator=(MPArrayConstraint&& from) noexcept {
1877  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1878  if (this != &from) InternalSwap(&from);
1879  } else {
1880  CopyFrom(from);
1881  }
1882  return *this;
1883  }
1884 
1885  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1886  return _internal_metadata_.unknown_fields();
1887  }
1888  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1889  return _internal_metadata_.mutable_unknown_fields();
1890  }
1891 
1892  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1893  return GetDescriptor();
1894  }
1895  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1896  return GetMetadataStatic().descriptor;
1897  }
1898  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1899  return GetMetadataStatic().reflection;
1900  }
1901  static const MPArrayConstraint& default_instance();
1902 
1903  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1905  return reinterpret_cast<const MPArrayConstraint*>(
1907  }
1908  static constexpr int kIndexInFileMessages =
1909  7;
1910 
1912  a.Swap(&b);
1913  }
1914  inline void Swap(MPArrayConstraint* other) {
1915  if (other == this) return;
1916  InternalSwap(other);
1917  }
1918 
1919  // implements Message ----------------------------------------------
1920 
1921  inline MPArrayConstraint* New() const final {
1922  return CreateMaybeMessage<MPArrayConstraint>(nullptr);
1923  }
1924 
1925  MPArrayConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1926  return CreateMaybeMessage<MPArrayConstraint>(arena);
1927  }
1928  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1929  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1930  void CopyFrom(const MPArrayConstraint& from);
1931  void MergeFrom(const MPArrayConstraint& from);
1932  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1933  bool IsInitialized() const final;
1934 
1935  size_t ByteSizeLong() const final;
1936  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1937  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1938  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1939  int GetCachedSize() const final { return _cached_size_.Get(); }
1940 
1941  private:
1942  inline void SharedCtor();
1943  inline void SharedDtor();
1944  void SetCachedSize(int size) const final;
1945  void InternalSwap(MPArrayConstraint* other);
1946  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1947  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1948  return "operations_research.MPArrayConstraint";
1949  }
1950  private:
1951  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1952  return nullptr;
1953  }
1954  inline void* MaybeArenaPtr() const {
1955  return nullptr;
1956  }
1957  public:
1958 
1959  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1960  private:
1961  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1962  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1964  }
1965 
1966  public:
1967 
1968  // nested types ----------------------------------------------------
1969 
1970  // accessors -------------------------------------------------------
1971 
1972  enum : int {
1975  };
1976  // repeated int32 var_index = 1;
1977  int var_index_size() const;
1978  private:
1979  int _internal_var_index_size() const;
1980  public:
1981  void clear_var_index();
1982  private:
1983  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
1984  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1985  _internal_var_index() const;
1986  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1987  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1988  _internal_mutable_var_index();
1989  public:
1990  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
1991  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1992  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1993  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1994  var_index() const;
1995  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1997 
1998  // optional int32 resultant_var_index = 2;
1999  bool has_resultant_var_index() const;
2000  private:
2001  bool _internal_has_resultant_var_index() const;
2002  public:
2004  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const;
2005  void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2006  private:
2007  ::PROTOBUF_NAMESPACE_ID::int32 _internal_resultant_var_index() const;
2008  void _internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2009  public:
2010 
2011  // @@protoc_insertion_point(class_scope:operations_research.MPArrayConstraint)
2012  private:
2013  class _Internal;
2014 
2015  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2016  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2017  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2018  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
2019  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index_;
2020  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2021 };
2022 // -------------------------------------------------------------------
2023 
2025  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPArrayWithConstantConstraint) */ {
2026  public:
2029 
2033  *this = ::std::move(from);
2034  }
2035 
2037  CopyFrom(from);
2038  return *this;
2039  }
2041  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2042  if (this != &from) InternalSwap(&from);
2043  } else {
2044  CopyFrom(from);
2045  }
2046  return *this;
2047  }
2048 
2049  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2050  return _internal_metadata_.unknown_fields();
2051  }
2052  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2053  return _internal_metadata_.mutable_unknown_fields();
2054  }
2055 
2056  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2057  return GetDescriptor();
2058  }
2059  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2060  return GetMetadataStatic().descriptor;
2061  }
2062  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2063  return GetMetadataStatic().reflection;
2064  }
2066 
2067  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2069  return reinterpret_cast<const MPArrayWithConstantConstraint*>(
2071  }
2072  static constexpr int kIndexInFileMessages =
2073  8;
2074 
2076  a.Swap(&b);
2077  }
2078  inline void Swap(MPArrayWithConstantConstraint* other) {
2079  if (other == this) return;
2080  InternalSwap(other);
2081  }
2082 
2083  // implements Message ----------------------------------------------
2084 
2085  inline MPArrayWithConstantConstraint* New() const final {
2086  return CreateMaybeMessage<MPArrayWithConstantConstraint>(nullptr);
2087  }
2088 
2089  MPArrayWithConstantConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2090  return CreateMaybeMessage<MPArrayWithConstantConstraint>(arena);
2091  }
2092  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2093  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2094  void CopyFrom(const MPArrayWithConstantConstraint& from);
2095  void MergeFrom(const MPArrayWithConstantConstraint& from);
2096  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2097  bool IsInitialized() const final;
2098 
2099  size_t ByteSizeLong() const final;
2100  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2101  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2102  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2103  int GetCachedSize() const final { return _cached_size_.Get(); }
2104 
2105  private:
2106  inline void SharedCtor();
2107  inline void SharedDtor();
2108  void SetCachedSize(int size) const final;
2109  void InternalSwap(MPArrayWithConstantConstraint* other);
2110  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2111  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2112  return "operations_research.MPArrayWithConstantConstraint";
2113  }
2114  private:
2115  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2116  return nullptr;
2117  }
2118  inline void* MaybeArenaPtr() const {
2119  return nullptr;
2120  }
2121  public:
2122 
2123  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2124  private:
2125  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2126  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2128  }
2129 
2130  public:
2131 
2132  // nested types ----------------------------------------------------
2133 
2134  // accessors -------------------------------------------------------
2135 
2136  enum : int {
2140  };
2141  // repeated int32 var_index = 1;
2142  int var_index_size() const;
2143  private:
2144  int _internal_var_index_size() const;
2145  public:
2146  void clear_var_index();
2147  private:
2148  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
2149  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2150  _internal_var_index() const;
2151  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2152  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2153  _internal_mutable_var_index();
2154  public:
2155  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
2156  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2157  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2158  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2159  var_index() const;
2160  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2162 
2163  // optional double constant = 2;
2164  bool has_constant() const;
2165  private:
2166  bool _internal_has_constant() const;
2167  public:
2168  void clear_constant();
2169  double constant() const;
2170  void set_constant(double value);
2171  private:
2172  double _internal_constant() const;
2173  void _internal_set_constant(double value);
2174  public:
2175 
2176  // optional int32 resultant_var_index = 3;
2177  bool has_resultant_var_index() const;
2178  private:
2179  bool _internal_has_resultant_var_index() const;
2180  public:
2182  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const;
2183  void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2184  private:
2185  ::PROTOBUF_NAMESPACE_ID::int32 _internal_resultant_var_index() const;
2186  void _internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2187  public:
2188 
2189  // @@protoc_insertion_point(class_scope:operations_research.MPArrayWithConstantConstraint)
2190  private:
2191  class _Internal;
2192 
2193  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2194  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2195  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2196  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
2197  double constant_;
2198  ::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index_;
2199  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2200 };
2201 // -------------------------------------------------------------------
2202 
2204  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPQuadraticObjective) */ {
2205  public:
2207  virtual ~MPQuadraticObjective();
2208 
2211  : MPQuadraticObjective() {
2212  *this = ::std::move(from);
2213  }
2214 
2216  CopyFrom(from);
2217  return *this;
2218  }
2220  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2221  if (this != &from) InternalSwap(&from);
2222  } else {
2223  CopyFrom(from);
2224  }
2225  return *this;
2226  }
2227 
2228  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2229  return _internal_metadata_.unknown_fields();
2230  }
2231  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2232  return _internal_metadata_.mutable_unknown_fields();
2233  }
2234 
2235  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2236  return GetDescriptor();
2237  }
2238  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2239  return GetMetadataStatic().descriptor;
2240  }
2241  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2242  return GetMetadataStatic().reflection;
2243  }
2244  static const MPQuadraticObjective& default_instance();
2245 
2246  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2248  return reinterpret_cast<const MPQuadraticObjective*>(
2250  }
2251  static constexpr int kIndexInFileMessages =
2252  9;
2253 
2255  a.Swap(&b);
2256  }
2257  inline void Swap(MPQuadraticObjective* other) {
2258  if (other == this) return;
2259  InternalSwap(other);
2260  }
2261 
2262  // implements Message ----------------------------------------------
2263 
2264  inline MPQuadraticObjective* New() const final {
2265  return CreateMaybeMessage<MPQuadraticObjective>(nullptr);
2266  }
2267 
2268  MPQuadraticObjective* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2269  return CreateMaybeMessage<MPQuadraticObjective>(arena);
2270  }
2271  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2272  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2273  void CopyFrom(const MPQuadraticObjective& from);
2274  void MergeFrom(const MPQuadraticObjective& from);
2275  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2276  bool IsInitialized() const final;
2277 
2278  size_t ByteSizeLong() const final;
2279  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2280  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2281  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2282  int GetCachedSize() const final { return _cached_size_.Get(); }
2283 
2284  private:
2285  inline void SharedCtor();
2286  inline void SharedDtor();
2287  void SetCachedSize(int size) const final;
2288  void InternalSwap(MPQuadraticObjective* other);
2289  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2290  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2291  return "operations_research.MPQuadraticObjective";
2292  }
2293  private:
2294  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2295  return nullptr;
2296  }
2297  inline void* MaybeArenaPtr() const {
2298  return nullptr;
2299  }
2300  public:
2301 
2302  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2303  private:
2304  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2305  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2307  }
2308 
2309  public:
2310 
2311  // nested types ----------------------------------------------------
2312 
2313  // accessors -------------------------------------------------------
2314 
2315  enum : int {
2319  };
2320  // repeated int32 qvar1_index = 1;
2321  int qvar1_index_size() const;
2322  private:
2323  int _internal_qvar1_index_size() const;
2324  public:
2325  void clear_qvar1_index();
2326  private:
2327  ::PROTOBUF_NAMESPACE_ID::int32 _internal_qvar1_index(int index) const;
2328  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2329  _internal_qvar1_index() const;
2330  void _internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2331  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2332  _internal_mutable_qvar1_index();
2333  public:
2334  ::PROTOBUF_NAMESPACE_ID::int32 qvar1_index(int index) const;
2335  void set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2336  void add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2337  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2338  qvar1_index() const;
2339  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2341 
2342  // repeated int32 qvar2_index = 2;
2343  int qvar2_index_size() const;
2344  private:
2345  int _internal_qvar2_index_size() const;
2346  public:
2347  void clear_qvar2_index();
2348  private:
2349  ::PROTOBUF_NAMESPACE_ID::int32 _internal_qvar2_index(int index) const;
2350  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2351  _internal_qvar2_index() const;
2352  void _internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2353  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2354  _internal_mutable_qvar2_index();
2355  public:
2356  ::PROTOBUF_NAMESPACE_ID::int32 qvar2_index(int index) const;
2357  void set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2358  void add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2359  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2360  qvar2_index() const;
2361  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2363 
2364  // repeated double coefficient = 3;
2365  int coefficient_size() const;
2366  private:
2367  int _internal_coefficient_size() const;
2368  public:
2369  void clear_coefficient();
2370  private:
2371  double _internal_coefficient(int index) const;
2372  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2373  _internal_coefficient() const;
2374  void _internal_add_coefficient(double value);
2375  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2376  _internal_mutable_coefficient();
2377  public:
2378  double coefficient(int index) const;
2379  void set_coefficient(int index, double value);
2380  void add_coefficient(double value);
2381  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2382  coefficient() const;
2383  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2385 
2386  // @@protoc_insertion_point(class_scope:operations_research.MPQuadraticObjective)
2387  private:
2388  class _Internal;
2389 
2390  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2391  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2392  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2393  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > qvar1_index_;
2394  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > qvar2_index_;
2395  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > coefficient_;
2396  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2397 };
2398 // -------------------------------------------------------------------
2399 
2401  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.PartialVariableAssignment) */ {
2402  public:
2404  virtual ~PartialVariableAssignment();
2405 
2409  *this = ::std::move(from);
2410  }
2411 
2413  CopyFrom(from);
2414  return *this;
2415  }
2417  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2418  if (this != &from) InternalSwap(&from);
2419  } else {
2420  CopyFrom(from);
2421  }
2422  return *this;
2423  }
2424 
2425  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2426  return _internal_metadata_.unknown_fields();
2427  }
2428  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2429  return _internal_metadata_.mutable_unknown_fields();
2430  }
2431 
2432  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2433  return GetDescriptor();
2434  }
2435  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2436  return GetMetadataStatic().descriptor;
2437  }
2438  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2439  return GetMetadataStatic().reflection;
2440  }
2442 
2443  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2445  return reinterpret_cast<const PartialVariableAssignment*>(
2447  }
2448  static constexpr int kIndexInFileMessages =
2449  10;
2450 
2452  a.Swap(&b);
2453  }
2454  inline void Swap(PartialVariableAssignment* other) {
2455  if (other == this) return;
2456  InternalSwap(other);
2457  }
2458 
2459  // implements Message ----------------------------------------------
2460 
2461  inline PartialVariableAssignment* New() const final {
2462  return CreateMaybeMessage<PartialVariableAssignment>(nullptr);
2463  }
2464 
2465  PartialVariableAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2466  return CreateMaybeMessage<PartialVariableAssignment>(arena);
2467  }
2468  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2469  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2470  void CopyFrom(const PartialVariableAssignment& from);
2471  void MergeFrom(const PartialVariableAssignment& from);
2472  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2473  bool IsInitialized() const final;
2474 
2475  size_t ByteSizeLong() const final;
2476  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2477  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2478  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2479  int GetCachedSize() const final { return _cached_size_.Get(); }
2480 
2481  private:
2482  inline void SharedCtor();
2483  inline void SharedDtor();
2484  void SetCachedSize(int size) const final;
2485  void InternalSwap(PartialVariableAssignment* other);
2486  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2487  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2488  return "operations_research.PartialVariableAssignment";
2489  }
2490  private:
2491  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2492  return nullptr;
2493  }
2494  inline void* MaybeArenaPtr() const {
2495  return nullptr;
2496  }
2497  public:
2498 
2499  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2500  private:
2501  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2502  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2504  }
2505 
2506  public:
2507 
2508  // nested types ----------------------------------------------------
2509 
2510  // accessors -------------------------------------------------------
2511 
2512  enum : int {
2515  };
2516  // repeated int32 var_index = 1 [packed = true];
2517  int var_index_size() const;
2518  private:
2519  int _internal_var_index_size() const;
2520  public:
2521  void clear_var_index();
2522  private:
2523  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var_index(int index) const;
2524  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2525  _internal_var_index() const;
2526  void _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2527  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2528  _internal_mutable_var_index();
2529  public:
2530  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
2531  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2532  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
2533  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2534  var_index() const;
2535  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2537 
2538  // repeated double var_value = 2 [packed = true];
2539  int var_value_size() const;
2540  private:
2541  int _internal_var_value_size() const;
2542  public:
2543  void clear_var_value();
2544  private:
2545  double _internal_var_value(int index) const;
2546  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2547  _internal_var_value() const;
2548  void _internal_add_var_value(double value);
2549  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2550  _internal_mutable_var_value();
2551  public:
2552  double var_value(int index) const;
2553  void set_var_value(int index, double value);
2554  void add_var_value(double value);
2555  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2556  var_value() const;
2557  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2559 
2560  // @@protoc_insertion_point(class_scope:operations_research.PartialVariableAssignment)
2561  private:
2562  class _Internal;
2563 
2564  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2565  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2566  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2567  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
2568  mutable std::atomic<int> _var_index_cached_byte_size_;
2569  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > var_value_;
2570  mutable std::atomic<int> _var_value_cached_byte_size_;
2571  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2572 };
2573 // -------------------------------------------------------------------
2574 
2576  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPModelProto) */ {
2577  public:
2578  MPModelProto();
2579  virtual ~MPModelProto();
2580 
2581  MPModelProto(const MPModelProto& from);
2582  MPModelProto(MPModelProto&& from) noexcept
2583  : MPModelProto() {
2584  *this = ::std::move(from);
2585  }
2586 
2587  inline MPModelProto& operator=(const MPModelProto& from) {
2588  CopyFrom(from);
2589  return *this;
2590  }
2591  inline MPModelProto& operator=(MPModelProto&& from) noexcept {
2592  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2593  if (this != &from) InternalSwap(&from);
2594  } else {
2595  CopyFrom(from);
2596  }
2597  return *this;
2598  }
2599 
2600  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2601  return _internal_metadata_.unknown_fields();
2602  }
2603  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2604  return _internal_metadata_.mutable_unknown_fields();
2605  }
2606 
2607  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2608  return GetDescriptor();
2609  }
2610  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2611  return GetMetadataStatic().descriptor;
2612  }
2613  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2614  return GetMetadataStatic().reflection;
2615  }
2616  static const MPModelProto& default_instance();
2617 
2618  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2619  static inline const MPModelProto* internal_default_instance() {
2620  return reinterpret_cast<const MPModelProto*>(
2622  }
2623  static constexpr int kIndexInFileMessages =
2624  11;
2625 
2626  friend void swap(MPModelProto& a, MPModelProto& b) {
2627  a.Swap(&b);
2628  }
2629  inline void Swap(MPModelProto* other) {
2630  if (other == this) return;
2631  InternalSwap(other);
2632  }
2633 
2634  // implements Message ----------------------------------------------
2635 
2636  inline MPModelProto* New() const final {
2637  return CreateMaybeMessage<MPModelProto>(nullptr);
2638  }
2639 
2640  MPModelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2641  return CreateMaybeMessage<MPModelProto>(arena);
2642  }
2643  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2644  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2645  void CopyFrom(const MPModelProto& from);
2646  void MergeFrom(const MPModelProto& from);
2647  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2648  bool IsInitialized() const final;
2649 
2650  size_t ByteSizeLong() const final;
2651  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2652  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2653  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2654  int GetCachedSize() const final { return _cached_size_.Get(); }
2655 
2656  private:
2657  inline void SharedCtor();
2658  inline void SharedDtor();
2659  void SetCachedSize(int size) const final;
2660  void InternalSwap(MPModelProto* other);
2661  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2662  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2663  return "operations_research.MPModelProto";
2664  }
2665  private:
2666  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2667  return nullptr;
2668  }
2669  inline void* MaybeArenaPtr() const {
2670  return nullptr;
2671  }
2672  public:
2673 
2674  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2675  private:
2676  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2677  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2679  }
2680 
2681  public:
2682 
2683  // nested types ----------------------------------------------------
2684 
2685  // accessors -------------------------------------------------------
2686 
2687  enum : int {
2696  };
2697  // repeated .operations_research.MPVariableProto variable = 3;
2698  int variable_size() const;
2699  private:
2700  int _internal_variable_size() const;
2701  public:
2702  void clear_variable();
2704  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >*
2705  mutable_variable();
2706  private:
2707  const ::operations_research::MPVariableProto& _internal_variable(int index) const;
2708  ::operations_research::MPVariableProto* _internal_add_variable();
2709  public:
2710  const ::operations_research::MPVariableProto& variable(int index) const;
2712  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >&
2713  variable() const;
2714 
2715  // repeated .operations_research.MPConstraintProto constraint = 4;
2716  int constraint_size() const;
2717  private:
2718  int _internal_constraint_size() const;
2719  public:
2720  void clear_constraint();
2722  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >*
2724  private:
2725  const ::operations_research::MPConstraintProto& _internal_constraint(int index) const;
2726  ::operations_research::MPConstraintProto* _internal_add_constraint();
2727  public:
2728  const ::operations_research::MPConstraintProto& constraint(int index) const;
2730  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >&
2731  constraint() const;
2732 
2733  // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
2734  int general_constraint_size() const;
2735  private:
2736  int _internal_general_constraint_size() const;
2737  public:
2738  void clear_general_constraint();
2740  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >*
2742  private:
2743  const ::operations_research::MPGeneralConstraintProto& _internal_general_constraint(int index) const;
2744  ::operations_research::MPGeneralConstraintProto* _internal_add_general_constraint();
2745  public:
2746  const ::operations_research::MPGeneralConstraintProto& general_constraint(int index) const;
2748  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >&
2749  general_constraint() const;
2750 
2751  // optional string name = 5 [default = ""];
2752  bool has_name() const;
2753  private:
2754  bool _internal_has_name() const;
2755  public:
2756  void clear_name();
2757  const std::string& name() const;
2758  void set_name(const std::string& value);
2759  void set_name(std::string&& value);
2760  void set_name(const char* value);
2761  void set_name(const char* value, size_t size);
2762  std::string* mutable_name();
2763  std::string* release_name();
2764  void set_allocated_name(std::string* name);
2765  private:
2766  const std::string& _internal_name() const;
2767  void _internal_set_name(const std::string& value);
2768  std::string* _internal_mutable_name();
2769  public:
2770 
2771  // optional .operations_research.PartialVariableAssignment solution_hint = 6;
2772  bool has_solution_hint() const;
2773  private:
2774  bool _internal_has_solution_hint() const;
2775  public:
2776  void clear_solution_hint();
2777  const ::operations_research::PartialVariableAssignment& solution_hint() const;
2781  private:
2782  const ::operations_research::PartialVariableAssignment& _internal_solution_hint() const;
2783  ::operations_research::PartialVariableAssignment* _internal_mutable_solution_hint();
2784  public:
2785 
2786  // optional .operations_research.MPQuadraticObjective quadratic_objective = 8;
2787  bool has_quadratic_objective() const;
2788  private:
2789  bool _internal_has_quadratic_objective() const;
2790  public:
2792  const ::operations_research::MPQuadraticObjective& quadratic_objective() const;
2796  private:
2797  const ::operations_research::MPQuadraticObjective& _internal_quadratic_objective() const;
2798  ::operations_research::MPQuadraticObjective* _internal_mutable_quadratic_objective();
2799  public:
2800 
2801  // optional double objective_offset = 2 [default = 0];
2802  bool has_objective_offset() const;
2803  private:
2804  bool _internal_has_objective_offset() const;
2805  public:
2806  void clear_objective_offset();
2807  double objective_offset() const;
2808  void set_objective_offset(double value);
2809  private:
2810  double _internal_objective_offset() const;
2811  void _internal_set_objective_offset(double value);
2812  public:
2813 
2814  // optional bool maximize = 1 [default = false];
2815  bool has_maximize() const;
2816  private:
2817  bool _internal_has_maximize() const;
2818  public:
2819  void clear_maximize();
2820  bool maximize() const;
2821  void set_maximize(bool value);
2822  private:
2823  bool _internal_maximize() const;
2824  void _internal_set_maximize(bool value);
2825  public:
2826 
2827  // @@protoc_insertion_point(class_scope:operations_research.MPModelProto)
2828  private:
2829  class _Internal;
2830 
2831  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2832  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2833  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2834  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > variable_;
2835  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > constraint_;
2836  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > general_constraint_;
2837  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
2839  ::operations_research::MPQuadraticObjective* quadratic_objective_;
2840  double objective_offset_;
2841  bool maximize_;
2842  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2843 };
2844 // -------------------------------------------------------------------
2845 
2847  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.OptionalDouble) */ {
2848  public:
2849  OptionalDouble();
2850  virtual ~OptionalDouble();
2851 
2852  OptionalDouble(const OptionalDouble& from);
2854  : OptionalDouble() {
2855  *this = ::std::move(from);
2856  }
2857 
2858  inline OptionalDouble& operator=(const OptionalDouble& from) {
2859  CopyFrom(from);
2860  return *this;
2861  }
2862  inline OptionalDouble& operator=(OptionalDouble&& from) noexcept {
2863  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2864  if (this != &from) InternalSwap(&from);
2865  } else {
2866  CopyFrom(from);
2867  }
2868  return *this;
2869  }
2870 
2871  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2872  return _internal_metadata_.unknown_fields();
2873  }
2874  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2875  return _internal_metadata_.mutable_unknown_fields();
2876  }
2877 
2878  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2879  return GetDescriptor();
2880  }
2881  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2882  return GetMetadataStatic().descriptor;
2883  }
2884  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2885  return GetMetadataStatic().reflection;
2886  }
2887  static const OptionalDouble& default_instance();
2888 
2889  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2891  return reinterpret_cast<const OptionalDouble*>(
2893  }
2894  static constexpr int kIndexInFileMessages =
2895  12;
2896 
2897  friend void swap(OptionalDouble& a, OptionalDouble& b) {
2898  a.Swap(&b);
2899  }
2900  inline void Swap(OptionalDouble* other) {
2901  if (other == this) return;
2902  InternalSwap(other);
2903  }
2904 
2905  // implements Message ----------------------------------------------
2906 
2907  inline OptionalDouble* New() const final {
2908  return CreateMaybeMessage<OptionalDouble>(nullptr);
2909  }
2910 
2911  OptionalDouble* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2912  return CreateMaybeMessage<OptionalDouble>(arena);
2913  }
2914  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2915  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2916  void CopyFrom(const OptionalDouble& from);
2917  void MergeFrom(const OptionalDouble& from);
2918  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2919  bool IsInitialized() const final;
2920 
2921  size_t ByteSizeLong() const final;
2922  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2923  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2924  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2925  int GetCachedSize() const final { return _cached_size_.Get(); }
2926 
2927  private:
2928  inline void SharedCtor();
2929  inline void SharedDtor();
2930  void SetCachedSize(int size) const final;
2931  void InternalSwap(OptionalDouble* other);
2932  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2933  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2934  return "operations_research.OptionalDouble";
2935  }
2936  private:
2937  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2938  return nullptr;
2939  }
2940  inline void* MaybeArenaPtr() const {
2941  return nullptr;
2942  }
2943  public:
2944 
2945  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2946  private:
2947  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2948  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2950  }
2951 
2952  public:
2953 
2954  // nested types ----------------------------------------------------
2955 
2956  // accessors -------------------------------------------------------
2957 
2958  enum : int {
2960  };
2961  // optional double value = 1;
2962  bool has_value() const;
2963  private:
2964  bool _internal_has_value() const;
2965  public:
2966  void clear_value();
2967  double value() const;
2968  void set_value(double value);
2969  private:
2970  double _internal_value() const;
2971  void _internal_set_value(double value);
2972  public:
2973 
2974  // @@protoc_insertion_point(class_scope:operations_research.OptionalDouble)
2975  private:
2976  class _Internal;
2977 
2978  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2979  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2980  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2981  double value_;
2982  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2983 };
2984 // -------------------------------------------------------------------
2985 
2987  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSolverCommonParameters) */ {
2988  public:
2990  virtual ~MPSolverCommonParameters();
2991 
2995  *this = ::std::move(from);
2996  }
2997 
2999  CopyFrom(from);
3000  return *this;
3001  }
3003  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3004  if (this != &from) InternalSwap(&from);
3005  } else {
3006  CopyFrom(from);
3007  }
3008  return *this;
3009  }
3010 
3011  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3012  return _internal_metadata_.unknown_fields();
3013  }
3014  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3015  return _internal_metadata_.mutable_unknown_fields();
3016  }
3017 
3018  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3019  return GetDescriptor();
3020  }
3021  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3022  return GetMetadataStatic().descriptor;
3023  }
3024  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3025  return GetMetadataStatic().reflection;
3026  }
3028 
3029  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3031  return reinterpret_cast<const MPSolverCommonParameters*>(
3033  }
3034  static constexpr int kIndexInFileMessages =
3035  13;
3036 
3038  a.Swap(&b);
3039  }
3040  inline void Swap(MPSolverCommonParameters* other) {
3041  if (other == this) return;
3042  InternalSwap(other);
3043  }
3044 
3045  // implements Message ----------------------------------------------
3046 
3047  inline MPSolverCommonParameters* New() const final {
3048  return CreateMaybeMessage<MPSolverCommonParameters>(nullptr);
3049  }
3050 
3051  MPSolverCommonParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3052  return CreateMaybeMessage<MPSolverCommonParameters>(arena);
3053  }
3054  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3055  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3056  void CopyFrom(const MPSolverCommonParameters& from);
3057  void MergeFrom(const MPSolverCommonParameters& from);
3058  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3059  bool IsInitialized() const final;
3060 
3061  size_t ByteSizeLong() const final;
3062  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3063  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3064  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3065  int GetCachedSize() const final { return _cached_size_.Get(); }
3066 
3067  private:
3068  inline void SharedCtor();
3069  inline void SharedDtor();
3070  void SetCachedSize(int size) const final;
3071  void InternalSwap(MPSolverCommonParameters* other);
3072  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3073  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3074  return "operations_research.MPSolverCommonParameters";
3075  }
3076  private:
3077  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3078  return nullptr;
3079  }
3080  inline void* MaybeArenaPtr() const {
3081  return nullptr;
3082  }
3083  public:
3084 
3085  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3086  private:
3087  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3088  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3090  }
3091 
3092  public:
3093 
3094  // nested types ----------------------------------------------------
3095 
3099  static constexpr LPAlgorithmValues LP_ALGO_DUAL =
3105  static inline bool LPAlgorithmValues_IsValid(int value) {
3107  }
3112  static constexpr int LPAlgorithmValues_ARRAYSIZE =
3114  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
3117  }
3118  template<typename T>
3119  static inline const std::string& LPAlgorithmValues_Name(T enum_t_value) {
3120  static_assert(::std::is_same<T, LPAlgorithmValues>::value ||
3121  ::std::is_integral<T>::value,
3122  "Incorrect type passed to function LPAlgorithmValues_Name.");
3124  }
3125  static inline bool LPAlgorithmValues_Parse(const std::string& name,
3126  LPAlgorithmValues* value) {
3128  }
3129 
3130  // accessors -------------------------------------------------------
3131 
3132  enum : int {
3139  };
3140  // optional .operations_research.OptionalDouble relative_mip_gap = 1;
3141  bool has_relative_mip_gap() const;
3142  private:
3143  bool _internal_has_relative_mip_gap() const;
3144  public:
3145  void clear_relative_mip_gap();
3146  const ::operations_research::OptionalDouble& relative_mip_gap() const;
3150  private:
3151  const ::operations_research::OptionalDouble& _internal_relative_mip_gap() const;
3152  ::operations_research::OptionalDouble* _internal_mutable_relative_mip_gap();
3153  public:
3154 
3155  // optional .operations_research.OptionalDouble primal_tolerance = 2;
3156  bool has_primal_tolerance() const;
3157  private:
3158  bool _internal_has_primal_tolerance() const;
3159  public:
3160  void clear_primal_tolerance();
3161  const ::operations_research::OptionalDouble& primal_tolerance() const;
3165  private:
3166  const ::operations_research::OptionalDouble& _internal_primal_tolerance() const;
3167  ::operations_research::OptionalDouble* _internal_mutable_primal_tolerance();
3168  public:
3169 
3170  // optional .operations_research.OptionalDouble dual_tolerance = 3;
3171  bool has_dual_tolerance() const;
3172  private:
3173  bool _internal_has_dual_tolerance() const;
3174  public:
3175  void clear_dual_tolerance();
3176  const ::operations_research::OptionalDouble& dual_tolerance() const;
3180  private:
3181  const ::operations_research::OptionalDouble& _internal_dual_tolerance() const;
3182  ::operations_research::OptionalDouble* _internal_mutable_dual_tolerance();
3183  public:
3184 
3185  // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
3186  bool has_lp_algorithm() const;
3187  private:
3188  bool _internal_has_lp_algorithm() const;
3189  public:
3190  void clear_lp_algorithm();
3193  private:
3195  void _internal_set_lp_algorithm(::operations_research::MPSolverCommonParameters_LPAlgorithmValues value);
3196  public:
3197 
3198  // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
3199  bool has_presolve() const;
3200  private:
3201  bool _internal_has_presolve() const;
3202  public:
3203  void clear_presolve();
3204  ::operations_research::OptionalBoolean presolve() const;
3205  void set_presolve(::operations_research::OptionalBoolean value);
3206  private:
3207  ::operations_research::OptionalBoolean _internal_presolve() const;
3208  void _internal_set_presolve(::operations_research::OptionalBoolean value);
3209  public:
3210 
3211  // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
3212  bool has_scaling() const;
3213  private:
3214  bool _internal_has_scaling() const;
3215  public:
3216  void clear_scaling();
3217  ::operations_research::OptionalBoolean scaling() const;
3218  void set_scaling(::operations_research::OptionalBoolean value);
3219  private:
3220  ::operations_research::OptionalBoolean _internal_scaling() const;
3221  void _internal_set_scaling(::operations_research::OptionalBoolean value);
3222  public:
3223 
3224  // @@protoc_insertion_point(class_scope:operations_research.MPSolverCommonParameters)
3225  private:
3226  class _Internal;
3227 
3228  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3229  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3230  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3231  ::operations_research::OptionalDouble* relative_mip_gap_;
3232  ::operations_research::OptionalDouble* primal_tolerance_;
3233  ::operations_research::OptionalDouble* dual_tolerance_;
3234  int lp_algorithm_;
3235  int presolve_;
3236  int scaling_;
3237  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
3238 };
3239 // -------------------------------------------------------------------
3240 
3241 class MPModelDeltaProto_VariableOverridesEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry<MPModelDeltaProto_VariableOverridesEntry_DoNotUse,
3242  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto,
3243  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3244  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3245  0 > {
3246 public:
3247  typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntry<MPModelDeltaProto_VariableOverridesEntry_DoNotUse,
3248  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto,
3249  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3250  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3253  MPModelDeltaProto_VariableOverridesEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3256  static bool ValidateKey(void*) { return true; }
3257  static bool ValidateValue(void*) { return true; }
3258  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& other) final;
3259  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3260  private:
3261  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3262  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3264  }
3265 
3266  public:
3267 };
3268 
3269 // -------------------------------------------------------------------
3270 
3271 class MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse : public ::PROTOBUF_NAMESPACE_ID::internal::MapEntry<MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse,
3272  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto,
3273  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3274  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3275  0 > {
3276 public:
3277  typedef ::PROTOBUF_NAMESPACE_ID::internal::MapEntry<MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse,
3278  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto,
3279  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3280  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3283  MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse(::PROTOBUF_NAMESPACE_ID::Arena* arena);
3286  static bool ValidateKey(void*) { return true; }
3287  static bool ValidateValue(void*) { return true; }
3288  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& other) final;
3289  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3290  private:
3291  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3292  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3294  }
3295 
3296  public:
3297 };
3298 
3299 // -------------------------------------------------------------------
3300 
3302  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPModelDeltaProto) */ {
3303  public:
3305  virtual ~MPModelDeltaProto();
3306 
3307  MPModelDeltaProto(const MPModelDeltaProto& from);
3309  : MPModelDeltaProto() {
3310  *this = ::std::move(from);
3311  }
3312 
3314  CopyFrom(from);
3315  return *this;
3316  }
3317  inline MPModelDeltaProto& operator=(MPModelDeltaProto&& from) noexcept {
3318  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3319  if (this != &from) InternalSwap(&from);
3320  } else {
3321  CopyFrom(from);
3322  }
3323  return *this;
3324  }
3325 
3326  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3327  return _internal_metadata_.unknown_fields();
3328  }
3329  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3330  return _internal_metadata_.mutable_unknown_fields();
3331  }
3332 
3333  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3334  return GetDescriptor();
3335  }
3336  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3337  return GetMetadataStatic().descriptor;
3338  }
3339  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3340  return GetMetadataStatic().reflection;
3341  }
3342  static const MPModelDeltaProto& default_instance();
3343 
3344  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3346  return reinterpret_cast<const MPModelDeltaProto*>(
3348  }
3349  static constexpr int kIndexInFileMessages =
3350  16;
3351 
3353  a.Swap(&b);
3354  }
3355  inline void Swap(MPModelDeltaProto* other) {
3356  if (other == this) return;
3357  InternalSwap(other);
3358  }
3359 
3360  // implements Message ----------------------------------------------
3361 
3362  inline MPModelDeltaProto* New() const final {
3363  return CreateMaybeMessage<MPModelDeltaProto>(nullptr);
3364  }
3365 
3366  MPModelDeltaProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3367  return CreateMaybeMessage<MPModelDeltaProto>(arena);
3368  }
3369  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3370  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3371  void CopyFrom(const MPModelDeltaProto& from);
3372  void MergeFrom(const MPModelDeltaProto& from);
3373  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3374  bool IsInitialized() const final;
3375 
3376  size_t ByteSizeLong() const final;
3377  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3378  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3379  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3380  int GetCachedSize() const final { return _cached_size_.Get(); }
3381 
3382  private:
3383  inline void SharedCtor();
3384  inline void SharedDtor();
3385  void SetCachedSize(int size) const final;
3386  void InternalSwap(MPModelDeltaProto* other);
3387  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3388  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3389  return "operations_research.MPModelDeltaProto";
3390  }
3391  private:
3392  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3393  return nullptr;
3394  }
3395  inline void* MaybeArenaPtr() const {
3396  return nullptr;
3397  }
3398  public:
3399 
3400  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3401  private:
3402  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3403  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3405  }
3406 
3407  public:
3408 
3409  // nested types ----------------------------------------------------
3410 
3411 
3412  // accessors -------------------------------------------------------
3413 
3414  enum : int {
3418  };
3419  // map<int32, .operations_research.MPVariableProto> variable_overrides = 2;
3420  int variable_overrides_size() const;
3421  private:
3422  int _internal_variable_overrides_size() const;
3423  public:
3424  void clear_variable_overrides();
3425  private:
3426  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >&
3427  _internal_variable_overrides() const;
3428  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >*
3429  _internal_mutable_variable_overrides();
3430  public:
3431  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >&
3432  variable_overrides() const;
3433  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >*
3435 
3436  // map<int32, .operations_research.MPConstraintProto> constraint_overrides = 3;
3437  int constraint_overrides_size() const;
3438  private:
3439  int _internal_constraint_overrides_size() const;
3440  public:
3442  private:
3443  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >&
3444  _internal_constraint_overrides() const;
3445  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >*
3446  _internal_mutable_constraint_overrides();
3447  public:
3448  const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >&
3449  constraint_overrides() const;
3450  ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >*
3452 
3453  // optional string baseline_model_file_path = 1;
3454  bool has_baseline_model_file_path() const;
3455  private:
3456  bool _internal_has_baseline_model_file_path() const;
3457  public:
3459  const std::string& baseline_model_file_path() const;
3460  void set_baseline_model_file_path(const std::string& value);
3461  void set_baseline_model_file_path(std::string&& value);
3462  void set_baseline_model_file_path(const char* value);
3463  void set_baseline_model_file_path(const char* value, size_t size);
3464  std::string* mutable_baseline_model_file_path();
3465  std::string* release_baseline_model_file_path();
3467  private:
3468  const std::string& _internal_baseline_model_file_path() const;
3469  void _internal_set_baseline_model_file_path(const std::string& value);
3470  std::string* _internal_mutable_baseline_model_file_path();
3471  public:
3472 
3473  // @@protoc_insertion_point(class_scope:operations_research.MPModelDeltaProto)
3474  private:
3475  class _Internal;
3476 
3477  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3478  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3479  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3480  ::PROTOBUF_NAMESPACE_ID::internal::MapField<
3482  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto,
3483  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3484  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3485  0 > variable_overrides_;
3486  ::PROTOBUF_NAMESPACE_ID::internal::MapField<
3488  ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto,
3489  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32,
3490  ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE,
3491  0 > constraint_overrides_;
3492  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr baseline_model_file_path_;
3493  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
3494 };
3495 // -------------------------------------------------------------------
3496 
3498  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPModelRequest) */ {
3499  public:
3500  MPModelRequest();
3501  virtual ~MPModelRequest();
3502 
3503  MPModelRequest(const MPModelRequest& from);
3505  : MPModelRequest() {
3506  *this = ::std::move(from);
3507  }
3508 
3509  inline MPModelRequest& operator=(const MPModelRequest& from) {
3510  CopyFrom(from);
3511  return *this;
3512  }
3513  inline MPModelRequest& operator=(MPModelRequest&& from) noexcept {
3514  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3515  if (this != &from) InternalSwap(&from);
3516  } else {
3517  CopyFrom(from);
3518  }
3519  return *this;
3520  }
3521 
3522  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3523  return _internal_metadata_.unknown_fields();
3524  }
3525  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3526  return _internal_metadata_.mutable_unknown_fields();
3527  }
3528 
3529  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3530  return GetDescriptor();
3531  }
3532  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3533  return GetMetadataStatic().descriptor;
3534  }
3535  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3536  return GetMetadataStatic().reflection;
3537  }
3538  static const MPModelRequest& default_instance();
3539 
3540  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3542  return reinterpret_cast<const MPModelRequest*>(
3544  }
3545  static constexpr int kIndexInFileMessages =
3546  17;
3547 
3548  friend void swap(MPModelRequest& a, MPModelRequest& b) {
3549  a.Swap(&b);
3550  }
3551  inline void Swap(MPModelRequest* other) {
3552  if (other == this) return;
3553  InternalSwap(other);
3554  }
3555 
3556  // implements Message ----------------------------------------------
3557 
3558  inline MPModelRequest* New() const final {
3559  return CreateMaybeMessage<MPModelRequest>(nullptr);
3560  }
3561 
3562  MPModelRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3563  return CreateMaybeMessage<MPModelRequest>(arena);
3564  }
3565  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3566  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3567  void CopyFrom(const MPModelRequest& from);
3568  void MergeFrom(const MPModelRequest& from);
3569  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3570  bool IsInitialized() const final;
3571 
3572  size_t ByteSizeLong() const final;
3573  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3574  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3575  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3576  int GetCachedSize() const final { return _cached_size_.Get(); }
3577 
3578  private:
3579  inline void SharedCtor();
3580  inline void SharedDtor();
3581  void SetCachedSize(int size) const final;
3582  void InternalSwap(MPModelRequest* other);
3583  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3584  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3585  return "operations_research.MPModelRequest";
3586  }
3587  private:
3588  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3589  return nullptr;
3590  }
3591  inline void* MaybeArenaPtr() const {
3592  return nullptr;
3593  }
3594  public:
3595 
3596  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3597  private:
3598  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3599  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3601  }
3602 
3603  public:
3604 
3605  // nested types ----------------------------------------------------
3606 
3638  static inline bool SolverType_IsValid(int value) {
3639  return MPModelRequest_SolverType_IsValid(value);
3640  }
3641  static constexpr SolverType SolverType_MIN =
3643  static constexpr SolverType SolverType_MAX =
3645  static constexpr int SolverType_ARRAYSIZE =
3647  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
3650  }
3651  template<typename T>
3652  static inline const std::string& SolverType_Name(T enum_t_value) {
3653  static_assert(::std::is_same<T, SolverType>::value ||
3654  ::std::is_integral<T>::value,
3655  "Incorrect type passed to function SolverType_Name.");
3656  return MPModelRequest_SolverType_Name(enum_t_value);
3657  }
3658  static inline bool SolverType_Parse(const std::string& name,
3659  SolverType* value) {
3660  return MPModelRequest_SolverType_Parse(name, value);
3661  }
3662 
3663  // accessors -------------------------------------------------------
3664 
3665  enum : int {
3672  };
3673  // optional string solver_specific_parameters = 5;
3674  bool has_solver_specific_parameters() const;
3675  private:
3676  bool _internal_has_solver_specific_parameters() const;
3677  public:
3679  const std::string& solver_specific_parameters() const;
3680  void set_solver_specific_parameters(const std::string& value);
3681  void set_solver_specific_parameters(std::string&& value);
3682  void set_solver_specific_parameters(const char* value);
3683  void set_solver_specific_parameters(const char* value, size_t size);
3684  std::string* mutable_solver_specific_parameters();
3685  std::string* release_solver_specific_parameters();
3687  private:
3688  const std::string& _internal_solver_specific_parameters() const;
3689  void _internal_set_solver_specific_parameters(const std::string& value);
3690  std::string* _internal_mutable_solver_specific_parameters();
3691  public:
3692 
3693  // optional .operations_research.MPModelProto model = 1;
3694  bool has_model() const;
3695  private:
3696  bool _internal_has_model() const;
3697  public:
3698  void clear_model();
3699  const ::operations_research::MPModelProto& model() const;
3703  private:
3704  const ::operations_research::MPModelProto& _internal_model() const;
3705  ::operations_research::MPModelProto* _internal_mutable_model();
3706  public:
3707 
3708  // optional .operations_research.MPModelDeltaProto model_delta = 8;
3709  bool has_model_delta() const;
3710  private:
3711  bool _internal_has_model_delta() const;
3712  public:
3713  void clear_model_delta();
3714  const ::operations_research::MPModelDeltaProto& model_delta() const;
3718  private:
3719  const ::operations_research::MPModelDeltaProto& _internal_model_delta() const;
3720  ::operations_research::MPModelDeltaProto* _internal_mutable_model_delta();
3721  public:
3722 
3723  // optional double solver_time_limit_seconds = 3;
3724  bool has_solver_time_limit_seconds() const;
3725  private:
3726  bool _internal_has_solver_time_limit_seconds() const;
3727  public:
3729  double solver_time_limit_seconds() const;
3730  void set_solver_time_limit_seconds(double value);
3731  private:
3732  double _internal_solver_time_limit_seconds() const;
3733  void _internal_set_solver_time_limit_seconds(double value);
3734  public:
3735 
3736  // optional bool enable_internal_solver_output = 4 [default = false];
3737  bool has_enable_internal_solver_output() const;
3738  private:
3739  bool _internal_has_enable_internal_solver_output() const;
3740  public:
3742  bool enable_internal_solver_output() const;
3743  void set_enable_internal_solver_output(bool value);
3744  private:
3745  bool _internal_enable_internal_solver_output() const;
3746  void _internal_set_enable_internal_solver_output(bool value);
3747  public:
3748 
3749  // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
3750  bool has_solver_type() const;
3751  private:
3752  bool _internal_has_solver_type() const;
3753  public:
3754  void clear_solver_type();
3757  private:
3758  ::operations_research::MPModelRequest_SolverType _internal_solver_type() const;
3759  void _internal_set_solver_type(::operations_research::MPModelRequest_SolverType value);
3760  public:
3761 
3762  // @@protoc_insertion_point(class_scope:operations_research.MPModelRequest)
3763  private:
3764  class _Internal;
3765 
3766  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3767  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
3768  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3769  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr solver_specific_parameters_;
3772  double solver_time_limit_seconds_;
3773  bool enable_internal_solver_output_;
3774  int solver_type_;
3775  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
3776 };
3777 // -------------------------------------------------------------------
3778 
3780  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSolutionResponse) */ {
3781  public:
3783  virtual ~MPSolutionResponse();
3784 
3787  : MPSolutionResponse() {
3788  *this = ::std::move(from);
3789  }
3790 
3792  CopyFrom(from);
3793  return *this;
3794  }
3796  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3797  if (this != &from) InternalSwap(&from);
3798  } else {
3799  CopyFrom(from);
3800  }
3801  return *this;
3802  }
3803 
3804  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
3805  return _internal_metadata_.unknown_fields();
3806  }
3807  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
3808  return _internal_metadata_.mutable_unknown_fields();
3809  }
3810 
3811  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3812  return GetDescriptor();
3813  }
3814  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3815  return GetMetadataStatic().descriptor;
3816  }
3817  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3818  return GetMetadataStatic().reflection;
3819  }
3820  static const MPSolutionResponse& default_instance();
3821 
3822  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3824  return reinterpret_cast<const MPSolutionResponse*>(
3826  }
3827  static constexpr int kIndexInFileMessages =
3828  18;
3829 
3831  a.Swap(&b);
3832  }
3833  inline void Swap(MPSolutionResponse* other) {
3834  if (other == this) return;
3835  InternalSwap(other);
3836  }
3837 
3838  // implements Message ----------------------------------------------
3839 
3840  inline MPSolutionResponse* New() const final {
3841  return CreateMaybeMessage<MPSolutionResponse>(nullptr);
3842  }
3843 
3844  MPSolutionResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3845  return CreateMaybeMessage<MPSolutionResponse>(arena);
3846  }
3847  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3848  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3849  void CopyFrom(const MPSolutionResponse& from);
3850  void MergeFrom(const MPSolutionResponse& from);
3851  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3852  bool IsInitialized() const final;
3853 
3854  size_t ByteSizeLong() const final;
3855  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3856  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3857  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3858  int GetCachedSize() const final { return _cached_size_.Get(); }
3859 
3860  private:
3861  inline void SharedCtor();
3862  inline void SharedDtor();
3863  void SetCachedSize(int size) const final;
3864  void InternalSwap(MPSolutionResponse* other);
3865  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3866  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3867  return "operations_research.MPSolutionResponse";
3868  }
3869  private:
3870  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3871  return nullptr;
3872  }
3873  inline void* MaybeArenaPtr() const {
3874  return nullptr;
3875  }
3876  public:
3877 
3878  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3879  private:
3880  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3881  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
3883  }
3884 
3885  public:
3886 
3887  // nested types ----------------------------------------------------
3888 
3889  // accessors -------------------------------------------------------
3890 
3891  enum : int {
3899  };
3900  // repeated double variable_value = 3 [packed = true];
3901  int variable_value_size() const;
3902  private:
3903  int _internal_variable_value_size() const;
3904  public:
3905  void clear_variable_value();
3906  private:
3907  double _internal_variable_value(int index) const;
3908  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3909  _internal_variable_value() const;
3910  void _internal_add_variable_value(double value);
3911  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3912  _internal_mutable_variable_value();
3913  public:
3914  double variable_value(int index) const;
3915  void set_variable_value(int index, double value);
3916  void add_variable_value(double value);
3917  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3918  variable_value() const;
3919  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3921 
3922  // repeated double dual_value = 4 [packed = true];
3923  int dual_value_size() const;
3924  private:
3925  int _internal_dual_value_size() const;
3926  public:
3927  void clear_dual_value();
3928  private:
3929  double _internal_dual_value(int index) const;
3930  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3931  _internal_dual_value() const;
3932  void _internal_add_dual_value(double value);
3933  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3934  _internal_mutable_dual_value();
3935  public:
3936  double dual_value(int index) const;
3937  void set_dual_value(int index, double value);
3938  void add_dual_value(double value);
3939  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3940  dual_value() const;
3941  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3943 
3944  // repeated double reduced_cost = 6 [packed = true];
3945  int reduced_cost_size() const;
3946  private:
3947  int _internal_reduced_cost_size() const;
3948  public:
3949  void clear_reduced_cost();
3950  private:
3951  double _internal_reduced_cost(int index) const;
3952  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3953  _internal_reduced_cost() const;
3954  void _internal_add_reduced_cost(double value);
3955  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3956  _internal_mutable_reduced_cost();
3957  public:
3958  double reduced_cost(int index) const;
3959  void set_reduced_cost(int index, double value);
3960  void add_reduced_cost(double value);
3961  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3962  reduced_cost() const;
3963  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3965 
3966  // optional string status_str = 7;
3967  bool has_status_str() const;
3968  private:
3969  bool _internal_has_status_str() const;
3970  public:
3971  void clear_status_str();
3972  const std::string& status_str() const;
3973  void set_status_str(const std::string& value);
3974  void set_status_str(std::string&& value);
3975  void set_status_str(const char* value);
3976  void set_status_str(const char* value, size_t size);
3977  std::string* mutable_status_str();
3978  std::string* release_status_str();
3979  void set_allocated_status_str(std::string* status_str);
3980  private:
3981  const std::string& _internal_status_str() const;
3982  void _internal_set_status_str(const std::string& value);
3983  std::string* _internal_mutable_status_str();
3984  public:
3985 
3986  // optional double objective_value = 2;
3987  bool has_objective_value() const;
3988  private:
3989  bool _internal_has_objective_value() const;
3990  public:
3991  void clear_objective_value();
3992  double objective_value() const;
3993  void set_objective_value(double value);
3994  private:
3995  double _internal_objective_value() const;
3996  void _internal_set_objective_value(double value);
3997  public:
3998 
3999  // optional double best_objective_bound = 5;
4000  bool has_best_objective_bound() const;
4001  private:
4002  bool _internal_has_best_objective_bound() const;
4003  public:
4005  double best_objective_bound() const;
4006  void set_best_objective_bound(double value);
4007  private:
4008  double _internal_best_objective_bound() const;
4009  void _internal_set_best_objective_bound(double value);
4010  public:
4011 
4012  // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
4013  bool has_status() const;
4014  private:
4015  bool _internal_has_status() const;
4016  public:
4017  void clear_status();
4020  private:
4021  ::operations_research::MPSolverResponseStatus _internal_status() const;
4022  void _internal_set_status(::operations_research::MPSolverResponseStatus value);
4023  public:
4024 
4025  // @@protoc_insertion_point(class_scope:operations_research.MPSolutionResponse)
4026  private:
4027  class _Internal;
4028 
4029  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4030  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
4031  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4032  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > variable_value_;
4033  mutable std::atomic<int> _variable_value_cached_byte_size_;
4034  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > dual_value_;
4035  mutable std::atomic<int> _dual_value_cached_byte_size_;
4036  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > reduced_cost_;
4037  mutable std::atomic<int> _reduced_cost_cached_byte_size_;
4038  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr status_str_;
4039  double objective_value_;
4040  double best_objective_bound_;
4041  int status_;
4042  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
4043 };
4044 // ===================================================================
4045 
4046 
4047 // ===================================================================
4048 
4049 #ifdef __GNUC__
4050  #pragma GCC diagnostic push
4051  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
4052 #endif // __GNUC__
4053 // MPVariableProto
4054 
4055 // optional double lower_bound = 1 [default = -inf];
4056 inline bool MPVariableProto::_internal_has_lower_bound() const {
4057  bool value = (_has_bits_[0] & 0x00000010u) != 0;
4058  return value;
4059 }
4061  return _internal_has_lower_bound();
4062 }
4064  lower_bound_ = -std::numeric_limits<double>::infinity();
4065  _has_bits_[0] &= ~0x00000010u;
4066 }
4067 inline double MPVariableProto::_internal_lower_bound() const {
4068  return lower_bound_;
4069 }
4070 inline double MPVariableProto::lower_bound() const {
4071  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.lower_bound)
4072  return _internal_lower_bound();
4073 }
4074 inline void MPVariableProto::_internal_set_lower_bound(double value) {
4075  _has_bits_[0] |= 0x00000010u;
4076  lower_bound_ = value;
4077 }
4078 inline void MPVariableProto::set_lower_bound(double value) {
4079  _internal_set_lower_bound(value);
4080  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.lower_bound)
4081 }
4082 
4083 // optional double upper_bound = 2 [default = inf];
4084 inline bool MPVariableProto::_internal_has_upper_bound() const {
4085  bool value = (_has_bits_[0] & 0x00000020u) != 0;
4086  return value;
4087 }
4089  return _internal_has_upper_bound();
4090 }
4092  upper_bound_ = std::numeric_limits<double>::infinity();
4093  _has_bits_[0] &= ~0x00000020u;
4094 }
4095 inline double MPVariableProto::_internal_upper_bound() const {
4096  return upper_bound_;
4097 }
4098 inline double MPVariableProto::upper_bound() const {
4099  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.upper_bound)
4100  return _internal_upper_bound();
4101 }
4102 inline void MPVariableProto::_internal_set_upper_bound(double value) {
4103  _has_bits_[0] |= 0x00000020u;
4104  upper_bound_ = value;
4105 }
4106 inline void MPVariableProto::set_upper_bound(double value) {
4107  _internal_set_upper_bound(value);
4108  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.upper_bound)
4109 }
4110 
4111 // optional double objective_coefficient = 3 [default = 0];
4112 inline bool MPVariableProto::_internal_has_objective_coefficient() const {
4113  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4114  return value;
4115 }
4117  return _internal_has_objective_coefficient();
4118 }
4120  objective_coefficient_ = 0;
4121  _has_bits_[0] &= ~0x00000002u;
4122 }
4123 inline double MPVariableProto::_internal_objective_coefficient() const {
4124  return objective_coefficient_;
4125 }
4127  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.objective_coefficient)
4128  return _internal_objective_coefficient();
4129 }
4130 inline void MPVariableProto::_internal_set_objective_coefficient(double value) {
4131  _has_bits_[0] |= 0x00000002u;
4132  objective_coefficient_ = value;
4133 }
4135  _internal_set_objective_coefficient(value);
4136  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.objective_coefficient)
4137 }
4138 
4139 // optional bool is_integer = 4 [default = false];
4140 inline bool MPVariableProto::_internal_has_is_integer() const {
4141  bool value = (_has_bits_[0] & 0x00000004u) != 0;
4142  return value;
4143 }
4144 inline bool MPVariableProto::has_is_integer() const {
4145  return _internal_has_is_integer();
4146 }
4148  is_integer_ = false;
4149  _has_bits_[0] &= ~0x00000004u;
4150 }
4151 inline bool MPVariableProto::_internal_is_integer() const {
4152  return is_integer_;
4153 }
4154 inline bool MPVariableProto::is_integer() const {
4155  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.is_integer)
4156  return _internal_is_integer();
4157 }
4158 inline void MPVariableProto::_internal_set_is_integer(bool value) {
4159  _has_bits_[0] |= 0x00000004u;
4160  is_integer_ = value;
4161 }
4162 inline void MPVariableProto::set_is_integer(bool value) {
4163  _internal_set_is_integer(value);
4164  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.is_integer)
4165 }
4166 
4167 // optional string name = 5 [default = ""];
4168 inline bool MPVariableProto::_internal_has_name() const {
4169  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4170  return value;
4171 }
4172 inline bool MPVariableProto::has_name() const {
4173  return _internal_has_name();
4174 }
4176  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4177  _has_bits_[0] &= ~0x00000001u;
4178 }
4179 inline const std::string& MPVariableProto::name() const {
4180  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.name)
4181  return _internal_name();
4182 }
4183 inline void MPVariableProto::set_name(const std::string& value) {
4184  _internal_set_name(value);
4185  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.name)
4186 }
4187 inline std::string* MPVariableProto::mutable_name() {
4188  // @@protoc_insertion_point(field_mutable:operations_research.MPVariableProto.name)
4189  return _internal_mutable_name();
4190 }
4191 inline const std::string& MPVariableProto::_internal_name() const {
4192  return name_.GetNoArena();
4193 }
4194 inline void MPVariableProto::_internal_set_name(const std::string& value) {
4195  _has_bits_[0] |= 0x00000001u;
4196  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
4197 }
4198 inline void MPVariableProto::set_name(std::string&& value) {
4199  _has_bits_[0] |= 0x00000001u;
4200  name_.SetNoArena(
4201  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
4202  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPVariableProto.name)
4203 }
4204 inline void MPVariableProto::set_name(const char* value) {
4205  GOOGLE_DCHECK(value != nullptr);
4206  _has_bits_[0] |= 0x00000001u;
4207  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
4208  // @@protoc_insertion_point(field_set_char:operations_research.MPVariableProto.name)
4209 }
4210 inline void MPVariableProto::set_name(const char* value, size_t size) {
4211  _has_bits_[0] |= 0x00000001u;
4212  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
4213  ::std::string(reinterpret_cast<const char*>(value), size));
4214  // @@protoc_insertion_point(field_set_pointer:operations_research.MPVariableProto.name)
4215 }
4216 inline std::string* MPVariableProto::_internal_mutable_name() {
4217  _has_bits_[0] |= 0x00000001u;
4218  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4219 }
4220 inline std::string* MPVariableProto::release_name() {
4221  // @@protoc_insertion_point(field_release:operations_research.MPVariableProto.name)
4222  if (!_internal_has_name()) {
4223  return nullptr;
4224  }
4225  _has_bits_[0] &= ~0x00000001u;
4226  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4227 }
4228 inline void MPVariableProto::set_allocated_name(std::string* name) {
4229  if (name != nullptr) {
4230  _has_bits_[0] |= 0x00000001u;
4231  } else {
4232  _has_bits_[0] &= ~0x00000001u;
4233  }
4234  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
4235  // @@protoc_insertion_point(field_set_allocated:operations_research.MPVariableProto.name)
4236 }
4237 
4238 // optional int32 branching_priority = 6 [default = 0];
4239 inline bool MPVariableProto::_internal_has_branching_priority() const {
4240  bool value = (_has_bits_[0] & 0x00000008u) != 0;
4241  return value;
4242 }
4244  return _internal_has_branching_priority();
4245 }
4247  branching_priority_ = 0;
4248  _has_bits_[0] &= ~0x00000008u;
4249 }
4250 inline ::PROTOBUF_NAMESPACE_ID::int32 MPVariableProto::_internal_branching_priority() const {
4251  return branching_priority_;
4252 }
4253 inline ::PROTOBUF_NAMESPACE_ID::int32 MPVariableProto::branching_priority() const {
4254  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.branching_priority)
4255  return _internal_branching_priority();
4256 }
4257 inline void MPVariableProto::_internal_set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value) {
4258  _has_bits_[0] |= 0x00000008u;
4259  branching_priority_ = value;
4260 }
4261 inline void MPVariableProto::set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value) {
4262  _internal_set_branching_priority(value);
4263  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.branching_priority)
4264 }
4265 
4266 // -------------------------------------------------------------------
4267 
4268 // MPConstraintProto
4269 
4270 // repeated int32 var_index = 6 [packed = true];
4271 inline int MPConstraintProto::_internal_var_index_size() const {
4272  return var_index_.size();
4273 }
4275  return _internal_var_index_size();
4276 }
4278  var_index_.Clear();
4279 }
4280 inline ::PROTOBUF_NAMESPACE_ID::int32 MPConstraintProto::_internal_var_index(int index) const {
4281  return var_index_.Get(index);
4282 }
4283 inline ::PROTOBUF_NAMESPACE_ID::int32 MPConstraintProto::var_index(int index) const {
4284  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.var_index)
4285  return _internal_var_index(index);
4286 }
4287 inline void MPConstraintProto::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4288  var_index_.Set(index, value);
4289  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.var_index)
4290 }
4291 inline void MPConstraintProto::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
4292  var_index_.Add(value);
4293 }
4294 inline void MPConstraintProto::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
4295  _internal_add_var_index(value);
4296  // @@protoc_insertion_point(field_add:operations_research.MPConstraintProto.var_index)
4297 }
4298 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4299 MPConstraintProto::_internal_var_index() const {
4300  return var_index_;
4301 }
4302 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4304  // @@protoc_insertion_point(field_list:operations_research.MPConstraintProto.var_index)
4305  return _internal_var_index();
4306 }
4307 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4308 MPConstraintProto::_internal_mutable_var_index() {
4309  return &var_index_;
4310 }
4311 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4313  // @@protoc_insertion_point(field_mutable_list:operations_research.MPConstraintProto.var_index)
4314  return _internal_mutable_var_index();
4315 }
4316 
4317 // repeated double coefficient = 7 [packed = true];
4318 inline int MPConstraintProto::_internal_coefficient_size() const {
4319  return coefficient_.size();
4320 }
4322  return _internal_coefficient_size();
4323 }
4325  coefficient_.Clear();
4326 }
4327 inline double MPConstraintProto::_internal_coefficient(int index) const {
4328  return coefficient_.Get(index);
4329 }
4330 inline double MPConstraintProto::coefficient(int index) const {
4331  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.coefficient)
4332  return _internal_coefficient(index);
4333 }
4334 inline void MPConstraintProto::set_coefficient(int index, double value) {
4335  coefficient_.Set(index, value);
4336  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.coefficient)
4337 }
4338 inline void MPConstraintProto::_internal_add_coefficient(double value) {
4339  coefficient_.Add(value);
4340 }
4341 inline void MPConstraintProto::add_coefficient(double value) {
4342  _internal_add_coefficient(value);
4343  // @@protoc_insertion_point(field_add:operations_research.MPConstraintProto.coefficient)
4344 }
4345 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
4346 MPConstraintProto::_internal_coefficient() const {
4347  return coefficient_;
4348 }
4349 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
4351  // @@protoc_insertion_point(field_list:operations_research.MPConstraintProto.coefficient)
4352  return _internal_coefficient();
4353 }
4354 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
4355 MPConstraintProto::_internal_mutable_coefficient() {
4356  return &coefficient_;
4357 }
4358 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
4360  // @@protoc_insertion_point(field_mutable_list:operations_research.MPConstraintProto.coefficient)
4361  return _internal_mutable_coefficient();
4362 }
4363 
4364 // optional double lower_bound = 2 [default = -inf];
4365 inline bool MPConstraintProto::_internal_has_lower_bound() const {
4366  bool value = (_has_bits_[0] & 0x00000004u) != 0;
4367  return value;
4368 }
4370  return _internal_has_lower_bound();
4371 }
4373  lower_bound_ = -std::numeric_limits<double>::infinity();
4374  _has_bits_[0] &= ~0x00000004u;
4375 }
4376 inline double MPConstraintProto::_internal_lower_bound() const {
4377  return lower_bound_;
4378 }
4379 inline double MPConstraintProto::lower_bound() const {
4380  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.lower_bound)
4381  return _internal_lower_bound();
4382 }
4383 inline void MPConstraintProto::_internal_set_lower_bound(double value) {
4384  _has_bits_[0] |= 0x00000004u;
4385  lower_bound_ = value;
4386 }
4387 inline void MPConstraintProto::set_lower_bound(double value) {
4388  _internal_set_lower_bound(value);
4389  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.lower_bound)
4390 }
4391 
4392 // optional double upper_bound = 3 [default = inf];
4393 inline bool MPConstraintProto::_internal_has_upper_bound() const {
4394  bool value = (_has_bits_[0] & 0x00000008u) != 0;
4395  return value;
4396 }
4398  return _internal_has_upper_bound();
4399 }
4401  upper_bound_ = std::numeric_limits<double>::infinity();
4402  _has_bits_[0] &= ~0x00000008u;
4403 }
4404 inline double MPConstraintProto::_internal_upper_bound() const {
4405  return upper_bound_;
4406 }
4407 inline double MPConstraintProto::upper_bound() const {
4408  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.upper_bound)
4409  return _internal_upper_bound();
4410 }
4411 inline void MPConstraintProto::_internal_set_upper_bound(double value) {
4412  _has_bits_[0] |= 0x00000008u;
4413  upper_bound_ = value;
4414 }
4415 inline void MPConstraintProto::set_upper_bound(double value) {
4416  _internal_set_upper_bound(value);
4417  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.upper_bound)
4418 }
4419 
4420 // optional string name = 4 [default = ""];
4421 inline bool MPConstraintProto::_internal_has_name() const {
4422  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4423  return value;
4424 }
4425 inline bool MPConstraintProto::has_name() const {
4426  return _internal_has_name();
4427 }
4429  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4430  _has_bits_[0] &= ~0x00000001u;
4431 }
4432 inline const std::string& MPConstraintProto::name() const {
4433  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.name)
4434  return _internal_name();
4435 }
4436 inline void MPConstraintProto::set_name(const std::string& value) {
4437  _internal_set_name(value);
4438  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.name)
4439 }
4440 inline std::string* MPConstraintProto::mutable_name() {
4441  // @@protoc_insertion_point(field_mutable:operations_research.MPConstraintProto.name)
4442  return _internal_mutable_name();
4443 }
4444 inline const std::string& MPConstraintProto::_internal_name() const {
4445  return name_.GetNoArena();
4446 }
4447 inline void MPConstraintProto::_internal_set_name(const std::string& value) {
4448  _has_bits_[0] |= 0x00000001u;
4449  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
4450 }
4451 inline void MPConstraintProto::set_name(std::string&& value) {
4452  _has_bits_[0] |= 0x00000001u;
4453  name_.SetNoArena(
4454  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
4455  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPConstraintProto.name)
4456 }
4457 inline void MPConstraintProto::set_name(const char* value) {
4458  GOOGLE_DCHECK(value != nullptr);
4459  _has_bits_[0] |= 0x00000001u;
4460  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
4461  // @@protoc_insertion_point(field_set_char:operations_research.MPConstraintProto.name)
4462 }
4463 inline void MPConstraintProto::set_name(const char* value, size_t size) {
4464  _has_bits_[0] |= 0x00000001u;
4465  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
4466  ::std::string(reinterpret_cast<const char*>(value), size));
4467  // @@protoc_insertion_point(field_set_pointer:operations_research.MPConstraintProto.name)
4468 }
4469 inline std::string* MPConstraintProto::_internal_mutable_name() {
4470  _has_bits_[0] |= 0x00000001u;
4471  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4472 }
4473 inline std::string* MPConstraintProto::release_name() {
4474  // @@protoc_insertion_point(field_release:operations_research.MPConstraintProto.name)
4475  if (!_internal_has_name()) {
4476  return nullptr;
4477  }
4478  _has_bits_[0] &= ~0x00000001u;
4479  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4480 }
4481 inline void MPConstraintProto::set_allocated_name(std::string* name) {
4482  if (name != nullptr) {
4483  _has_bits_[0] |= 0x00000001u;
4484  } else {
4485  _has_bits_[0] &= ~0x00000001u;
4486  }
4487  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
4488  // @@protoc_insertion_point(field_set_allocated:operations_research.MPConstraintProto.name)
4489 }
4490 
4491 // optional bool is_lazy = 5 [default = false];
4492 inline bool MPConstraintProto::_internal_has_is_lazy() const {
4493  bool value = (_has_bits_[0] & 0x00000002u) != 0;
4494  return value;
4495 }
4496 inline bool MPConstraintProto::has_is_lazy() const {
4497  return _internal_has_is_lazy();
4498 }
4500  is_lazy_ = false;
4501  _has_bits_[0] &= ~0x00000002u;
4502 }
4503 inline bool MPConstraintProto::_internal_is_lazy() const {
4504  return is_lazy_;
4505 }
4506 inline bool MPConstraintProto::is_lazy() const {
4507  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.is_lazy)
4508  return _internal_is_lazy();
4509 }
4510 inline void MPConstraintProto::_internal_set_is_lazy(bool value) {
4511  _has_bits_[0] |= 0x00000002u;
4512  is_lazy_ = value;
4513 }
4514 inline void MPConstraintProto::set_is_lazy(bool value) {
4515  _internal_set_is_lazy(value);
4516  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.is_lazy)
4517 }
4518 
4519 // -------------------------------------------------------------------
4520 
4521 // MPGeneralConstraintProto
4522 
4523 // optional string name = 1 [default = ""];
4524 inline bool MPGeneralConstraintProto::_internal_has_name() const {
4525  bool value = (_has_bits_[0] & 0x00000001u) != 0;
4526  return value;
4527 }
4529  return _internal_has_name();
4530 }
4532  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4533  _has_bits_[0] &= ~0x00000001u;
4534 }
4535 inline const std::string& MPGeneralConstraintProto::name() const {
4536  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.name)
4537  return _internal_name();
4538 }
4539 inline void MPGeneralConstraintProto::set_name(const std::string& value) {
4540  _internal_set_name(value);
4541  // @@protoc_insertion_point(field_set:operations_research.MPGeneralConstraintProto.name)
4542 }
4544  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.name)
4545  return _internal_mutable_name();
4546 }
4547 inline const std::string& MPGeneralConstraintProto::_internal_name() const {
4548  return name_.GetNoArena();
4549 }
4550 inline void MPGeneralConstraintProto::_internal_set_name(const std::string& value) {
4551  _has_bits_[0] |= 0x00000001u;
4552  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
4553 }
4554 inline void MPGeneralConstraintProto::set_name(std::string&& value) {
4555  _has_bits_[0] |= 0x00000001u;
4556  name_.SetNoArena(
4557  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
4558  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPGeneralConstraintProto.name)
4559 }
4560 inline void MPGeneralConstraintProto::set_name(const char* value) {
4561  GOOGLE_DCHECK(value != nullptr);
4562  _has_bits_[0] |= 0x00000001u;
4563  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
4564  // @@protoc_insertion_point(field_set_char:operations_research.MPGeneralConstraintProto.name)
4565 }
4566 inline void MPGeneralConstraintProto::set_name(const char* value, size_t size) {
4567  _has_bits_[0] |= 0x00000001u;
4568  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
4569  ::std::string(reinterpret_cast<const char*>(value), size));
4570  // @@protoc_insertion_point(field_set_pointer:operations_research.MPGeneralConstraintProto.name)
4571 }
4572 inline std::string* MPGeneralConstraintProto::_internal_mutable_name() {
4573  _has_bits_[0] |= 0x00000001u;
4574  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4575 }
4577  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.name)
4578  if (!_internal_has_name()) {
4579  return nullptr;
4580  }
4581  _has_bits_[0] &= ~0x00000001u;
4582  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4583 }
4584 inline void MPGeneralConstraintProto::set_allocated_name(std::string* name) {
4585  if (name != nullptr) {
4586  _has_bits_[0] |= 0x00000001u;
4587  } else {
4588  _has_bits_[0] &= ~0x00000001u;
4589  }
4590  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
4591  // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.name)
4592 }
4593 
4594 // optional .operations_research.MPIndicatorConstraint indicator_constraint = 2;
4595 inline bool MPGeneralConstraintProto::_internal_has_indicator_constraint() const {
4597 }
4599  return _internal_has_indicator_constraint();
4600 }
4601 inline void MPGeneralConstraintProto::set_has_indicator_constraint() {
4602  _oneof_case_[0] = kIndicatorConstraint;
4603 }
4605  if (_internal_has_indicator_constraint()) {
4606  delete general_constraint_.indicator_constraint_;
4607  clear_has_general_constraint();
4608  }
4609 }
4610 inline ::operations_research::MPIndicatorConstraint* MPGeneralConstraintProto::release_indicator_constraint() {
4611  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.indicator_constraint)
4612  if (_internal_has_indicator_constraint()) {
4613  clear_has_general_constraint();
4614  ::operations_research::MPIndicatorConstraint* temp = general_constraint_.indicator_constraint_;
4615  general_constraint_.indicator_constraint_ = nullptr;
4616  return temp;
4617  } else {
4618  return nullptr;
4619  }
4620 }
4621 inline const ::operations_research::MPIndicatorConstraint& MPGeneralConstraintProto::_internal_indicator_constraint() const {
4622  return _internal_has_indicator_constraint()
4623  ? *general_constraint_.indicator_constraint_
4625 }
4626 inline const ::operations_research::MPIndicatorConstraint& MPGeneralConstraintProto::indicator_constraint() const {
4627  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.indicator_constraint)
4628  return _internal_indicator_constraint();
4629 }
4630 inline ::operations_research::MPIndicatorConstraint* MPGeneralConstraintProto::_internal_mutable_indicator_constraint() {
4631  if (!_internal_has_indicator_constraint()) {
4633  set_has_indicator_constraint();
4634  general_constraint_.indicator_constraint_ = CreateMaybeMessage< ::operations_research::MPIndicatorConstraint >(
4635  GetArenaNoVirtual());
4636  }
4637  return general_constraint_.indicator_constraint_;
4638 }
4639 inline ::operations_research::MPIndicatorConstraint* MPGeneralConstraintProto::mutable_indicator_constraint() {
4640  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.indicator_constraint)
4641  return _internal_mutable_indicator_constraint();
4642 }
4643 
4644 // optional .operations_research.MPSosConstraint sos_constraint = 3;
4645 inline bool MPGeneralConstraintProto::_internal_has_sos_constraint() const {
4647 }
4649  return _internal_has_sos_constraint();
4650 }
4651 inline void MPGeneralConstraintProto::set_has_sos_constraint() {
4652  _oneof_case_[0] = kSosConstraint;
4653 }
4655  if (_internal_has_sos_constraint()) {
4656  delete general_constraint_.sos_constraint_;
4657  clear_has_general_constraint();
4658  }
4659 }
4660 inline ::operations_research::MPSosConstraint* MPGeneralConstraintProto::release_sos_constraint() {
4661  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.sos_constraint)
4662  if (_internal_has_sos_constraint()) {
4663  clear_has_general_constraint();
4664  ::operations_research::MPSosConstraint* temp = general_constraint_.sos_constraint_;
4665  general_constraint_.sos_constraint_ = nullptr;
4666  return temp;
4667  } else {
4668  return nullptr;
4669  }
4670 }
4671 inline const ::operations_research::MPSosConstraint& MPGeneralConstraintProto::_internal_sos_constraint() const {
4672  return _internal_has_sos_constraint()
4673  ? *general_constraint_.sos_constraint_
4675 }
4676 inline const ::operations_research::MPSosConstraint& MPGeneralConstraintProto::sos_constraint() const {
4677  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.sos_constraint)
4678  return _internal_sos_constraint();
4679 }
4680 inline ::operations_research::MPSosConstraint* MPGeneralConstraintProto::_internal_mutable_sos_constraint() {
4681  if (!_internal_has_sos_constraint()) {
4683  set_has_sos_constraint();
4684  general_constraint_.sos_constraint_ = CreateMaybeMessage< ::operations_research::MPSosConstraint >(
4685  GetArenaNoVirtual());
4686  }
4687  return general_constraint_.sos_constraint_;
4688 }
4689 inline ::operations_research::MPSosConstraint* MPGeneralConstraintProto::mutable_sos_constraint() {
4690  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.sos_constraint)
4691  return _internal_mutable_sos_constraint();
4692 }
4693 
4694 // optional .operations_research.MPQuadraticConstraint quadratic_constraint = 4;
4695 inline bool MPGeneralConstraintProto::_internal_has_quadratic_constraint() const {
4697 }
4699  return _internal_has_quadratic_constraint();
4700 }
4701 inline void MPGeneralConstraintProto::set_has_quadratic_constraint() {
4702  _oneof_case_[0] = kQuadraticConstraint;
4703 }
4705  if (_internal_has_quadratic_constraint()) {
4706  delete general_constraint_.quadratic_constraint_;
4707  clear_has_general_constraint();
4708  }
4709 }
4710 inline ::operations_research::MPQuadraticConstraint* MPGeneralConstraintProto::release_quadratic_constraint() {
4711  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.quadratic_constraint)
4712  if (_internal_has_quadratic_constraint()) {
4713  clear_has_general_constraint();
4714  ::operations_research::MPQuadraticConstraint* temp = general_constraint_.quadratic_constraint_;
4715  general_constraint_.quadratic_constraint_ = nullptr;
4716  return temp;
4717  } else {
4718  return nullptr;
4719  }
4720 }
4721 inline const ::operations_research::MPQuadraticConstraint& MPGeneralConstraintProto::_internal_quadratic_constraint() const {
4722  return _internal_has_quadratic_constraint()
4723  ? *general_constraint_.quadratic_constraint_
4725 }
4726 inline const ::operations_research::MPQuadraticConstraint& MPGeneralConstraintProto::quadratic_constraint() const {
4727  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.quadratic_constraint)
4728  return _internal_quadratic_constraint();
4729 }
4730 inline ::operations_research::MPQuadraticConstraint* MPGeneralConstraintProto::_internal_mutable_quadratic_constraint() {
4731  if (!_internal_has_quadratic_constraint()) {
4733  set_has_quadratic_constraint();
4734  general_constraint_.quadratic_constraint_ = CreateMaybeMessage< ::operations_research::MPQuadraticConstraint >(
4735  GetArenaNoVirtual());
4736  }
4737  return general_constraint_.quadratic_constraint_;
4738 }
4739 inline ::operations_research::MPQuadraticConstraint* MPGeneralConstraintProto::mutable_quadratic_constraint() {
4740  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.quadratic_constraint)
4741  return _internal_mutable_quadratic_constraint();
4742 }
4743 
4744 // optional .operations_research.MPAbsConstraint abs_constraint = 5;
4745 inline bool MPGeneralConstraintProto::_internal_has_abs_constraint() const {
4747 }
4749  return _internal_has_abs_constraint();
4750 }
4751 inline void MPGeneralConstraintProto::set_has_abs_constraint() {
4752  _oneof_case_[0] = kAbsConstraint;
4753 }
4755  if (_internal_has_abs_constraint()) {
4756  delete general_constraint_.abs_constraint_;
4757  clear_has_general_constraint();
4758  }
4759 }
4760 inline ::operations_research::MPAbsConstraint* MPGeneralConstraintProto::release_abs_constraint() {
4761  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.abs_constraint)
4762  if (_internal_has_abs_constraint()) {
4763  clear_has_general_constraint();
4764  ::operations_research::MPAbsConstraint* temp = general_constraint_.abs_constraint_;
4765  general_constraint_.abs_constraint_ = nullptr;
4766  return temp;
4767  } else {
4768  return nullptr;
4769  }
4770 }
4771 inline const ::operations_research::MPAbsConstraint& MPGeneralConstraintProto::_internal_abs_constraint() const {
4772  return _internal_has_abs_constraint()
4773  ? *general_constraint_.abs_constraint_
4775 }
4776 inline const ::operations_research::MPAbsConstraint& MPGeneralConstraintProto::abs_constraint() const {
4777  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.abs_constraint)
4778  return _internal_abs_constraint();
4779 }
4780 inline ::operations_research::MPAbsConstraint* MPGeneralConstraintProto::_internal_mutable_abs_constraint() {
4781  if (!_internal_has_abs_constraint()) {
4783  set_has_abs_constraint();
4784  general_constraint_.abs_constraint_ = CreateMaybeMessage< ::operations_research::MPAbsConstraint >(
4785  GetArenaNoVirtual());
4786  }
4787  return general_constraint_.abs_constraint_;
4788 }
4789 inline ::operations_research::MPAbsConstraint* MPGeneralConstraintProto::mutable_abs_constraint() {
4790  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.abs_constraint)
4791  return _internal_mutable_abs_constraint();
4792 }
4793 
4794 // optional .operations_research.MPArrayConstraint and_constraint = 6;
4795 inline bool MPGeneralConstraintProto::_internal_has_and_constraint() const {
4797 }
4799  return _internal_has_and_constraint();
4800 }
4801 inline void MPGeneralConstraintProto::set_has_and_constraint() {
4802  _oneof_case_[0] = kAndConstraint;
4803 }
4805  if (_internal_has_and_constraint()) {
4806  delete general_constraint_.and_constraint_;
4807  clear_has_general_constraint();
4808  }
4809 }
4810 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::release_and_constraint() {
4811  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.and_constraint)
4812  if (_internal_has_and_constraint()) {
4813  clear_has_general_constraint();
4814  ::operations_research::MPArrayConstraint* temp = general_constraint_.and_constraint_;
4815  general_constraint_.and_constraint_ = nullptr;
4816  return temp;
4817  } else {
4818  return nullptr;
4819  }
4820 }
4821 inline const ::operations_research::MPArrayConstraint& MPGeneralConstraintProto::_internal_and_constraint() const {
4822  return _internal_has_and_constraint()
4823  ? *general_constraint_.and_constraint_
4825 }
4826 inline const ::operations_research::MPArrayConstraint& MPGeneralConstraintProto::and_constraint() const {
4827  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.and_constraint)
4828  return _internal_and_constraint();
4829 }
4830 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::_internal_mutable_and_constraint() {
4831  if (!_internal_has_and_constraint()) {
4833  set_has_and_constraint();
4834  general_constraint_.and_constraint_ = CreateMaybeMessage< ::operations_research::MPArrayConstraint >(
4835  GetArenaNoVirtual());
4836  }
4837  return general_constraint_.and_constraint_;
4838 }
4839 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::mutable_and_constraint() {
4840  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.and_constraint)
4841  return _internal_mutable_and_constraint();
4842 }
4843 
4844 // optional .operations_research.MPArrayConstraint or_constraint = 7;
4845 inline bool MPGeneralConstraintProto::_internal_has_or_constraint() const {
4847 }
4849  return _internal_has_or_constraint();
4850 }
4851 inline void MPGeneralConstraintProto::set_has_or_constraint() {
4852  _oneof_case_[0] = kOrConstraint;
4853 }
4855  if (_internal_has_or_constraint()) {
4856  delete general_constraint_.or_constraint_;
4857  clear_has_general_constraint();
4858  }
4859 }
4860 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::release_or_constraint() {
4861  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.or_constraint)
4862  if (_internal_has_or_constraint()) {
4863  clear_has_general_constraint();
4864  ::operations_research::MPArrayConstraint* temp = general_constraint_.or_constraint_;
4865  general_constraint_.or_constraint_ = nullptr;
4866  return temp;
4867  } else {
4868  return nullptr;
4869  }
4870 }
4871 inline const ::operations_research::MPArrayConstraint& MPGeneralConstraintProto::_internal_or_constraint() const {
4872  return _internal_has_or_constraint()
4873  ? *general_constraint_.or_constraint_
4875 }
4876 inline const ::operations_research::MPArrayConstraint& MPGeneralConstraintProto::or_constraint() const {
4877  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.or_constraint)
4878  return _internal_or_constraint();
4879 }
4880 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::_internal_mutable_or_constraint() {
4881  if (!_internal_has_or_constraint()) {
4883  set_has_or_constraint();
4884  general_constraint_.or_constraint_ = CreateMaybeMessage< ::operations_research::MPArrayConstraint >(
4885  GetArenaNoVirtual());
4886  }
4887  return general_constraint_.or_constraint_;
4888 }
4889 inline ::operations_research::MPArrayConstraint* MPGeneralConstraintProto::mutable_or_constraint() {
4890  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.or_constraint)
4891  return _internal_mutable_or_constraint();
4892 }
4893 
4894 // optional .operations_research.MPArrayWithConstantConstraint min_constraint = 8;
4895 inline bool MPGeneralConstraintProto::_internal_has_min_constraint() const {
4897 }
4899  return _internal_has_min_constraint();
4900 }
4901 inline void MPGeneralConstraintProto::set_has_min_constraint() {
4902  _oneof_case_[0] = kMinConstraint;
4903 }
4905  if (_internal_has_min_constraint()) {
4906  delete general_constraint_.min_constraint_;
4907  clear_has_general_constraint();
4908  }
4909 }
4910 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::release_min_constraint() {
4911  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.min_constraint)
4912  if (_internal_has_min_constraint()) {
4913  clear_has_general_constraint();
4914  ::operations_research::MPArrayWithConstantConstraint* temp = general_constraint_.min_constraint_;
4915  general_constraint_.min_constraint_ = nullptr;
4916  return temp;
4917  } else {
4918  return nullptr;
4919  }
4920 }
4921 inline const ::operations_research::MPArrayWithConstantConstraint& MPGeneralConstraintProto::_internal_min_constraint() const {
4922  return _internal_has_min_constraint()
4923  ? *general_constraint_.min_constraint_
4925 }
4926 inline const ::operations_research::MPArrayWithConstantConstraint& MPGeneralConstraintProto::min_constraint() const {
4927  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.min_constraint)
4928  return _internal_min_constraint();
4929 }
4930 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::_internal_mutable_min_constraint() {
4931  if (!_internal_has_min_constraint()) {
4933  set_has_min_constraint();
4934  general_constraint_.min_constraint_ = CreateMaybeMessage< ::operations_research::MPArrayWithConstantConstraint >(
4935  GetArenaNoVirtual());
4936  }
4937  return general_constraint_.min_constraint_;
4938 }
4939 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::mutable_min_constraint() {
4940  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.min_constraint)
4941  return _internal_mutable_min_constraint();
4942 }
4943 
4944 // optional .operations_research.MPArrayWithConstantConstraint max_constraint = 9;
4945 inline bool MPGeneralConstraintProto::_internal_has_max_constraint() const {
4947 }
4949  return _internal_has_max_constraint();
4950 }
4951 inline void MPGeneralConstraintProto::set_has_max_constraint() {
4952  _oneof_case_[0] = kMaxConstraint;
4953 }
4955  if (_internal_has_max_constraint()) {
4956  delete general_constraint_.max_constraint_;
4957  clear_has_general_constraint();
4958  }
4959 }
4960 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::release_max_constraint() {
4961  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.max_constraint)
4962  if (_internal_has_max_constraint()) {
4963  clear_has_general_constraint();
4964  ::operations_research::MPArrayWithConstantConstraint* temp = general_constraint_.max_constraint_;
4965  general_constraint_.max_constraint_ = nullptr;
4966  return temp;
4967  } else {
4968  return nullptr;
4969  }
4970 }
4971 inline const ::operations_research::MPArrayWithConstantConstraint& MPGeneralConstraintProto::_internal_max_constraint() const {
4972  return _internal_has_max_constraint()
4973  ? *general_constraint_.max_constraint_
4975 }
4976 inline const ::operations_research::MPArrayWithConstantConstraint& MPGeneralConstraintProto::max_constraint() const {
4977  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.max_constraint)
4978  return _internal_max_constraint();
4979 }
4980 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::_internal_mutable_max_constraint() {
4981  if (!_internal_has_max_constraint()) {
4983  set_has_max_constraint();
4984  general_constraint_.max_constraint_ = CreateMaybeMessage< ::operations_research::MPArrayWithConstantConstraint >(
4985  GetArenaNoVirtual());
4986  }
4987  return general_constraint_.max_constraint_;
4988 }
4989 inline ::operations_research::MPArrayWithConstantConstraint* MPGeneralConstraintProto::mutable_max_constraint() {
4990  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.max_constraint)
4991  return _internal_mutable_max_constraint();
4992 }
4993 
4994 inline bool MPGeneralConstraintProto::has_general_constraint() const {
4996 }
4997 inline void MPGeneralConstraintProto::clear_has_general_constraint() {
4998  _oneof_case_[0] = GENERAL_CONSTRAINT_NOT_SET;
4999 }
5001  return MPGeneralConstraintProto::GeneralConstraintCase(_oneof_case_[0]);
5002 }
5003 // -------------------------------------------------------------------
5004 
5005 // MPIndicatorConstraint
5006 
5007 // optional int32 var_index = 1;
5008 inline bool MPIndicatorConstraint::_internal_has_var_index() const {
5009  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5010  return value;
5011 }
5013  return _internal_has_var_index();
5014 }
5016  var_index_ = 0;
5017  _has_bits_[0] &= ~0x00000002u;
5018 }
5019 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::_internal_var_index() const {
5020  return var_index_;
5021 }
5022 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::var_index() const {
5023  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.var_index)
5024  return _internal_var_index();
5025 }
5026 inline void MPIndicatorConstraint::_internal_set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5027  _has_bits_[0] |= 0x00000002u;
5028  var_index_ = value;
5029 }
5030 inline void MPIndicatorConstraint::set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5031  _internal_set_var_index(value);
5032  // @@protoc_insertion_point(field_set:operations_research.MPIndicatorConstraint.var_index)
5033 }
5034 
5035 // optional int32 var_value = 2;
5036 inline bool MPIndicatorConstraint::_internal_has_var_value() const {
5037  bool value = (_has_bits_[0] & 0x00000004u) != 0;
5038  return value;
5039 }
5041  return _internal_has_var_value();
5042 }
5044  var_value_ = 0;
5045  _has_bits_[0] &= ~0x00000004u;
5046 }
5047 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::_internal_var_value() const {
5048  return var_value_;
5049 }
5050 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::var_value() const {
5051  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.var_value)
5052  return _internal_var_value();
5053 }
5054 inline void MPIndicatorConstraint::_internal_set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value) {
5055  _has_bits_[0] |= 0x00000004u;
5056  var_value_ = value;
5057 }
5058 inline void MPIndicatorConstraint::set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value) {
5059  _internal_set_var_value(value);
5060  // @@protoc_insertion_point(field_set:operations_research.MPIndicatorConstraint.var_value)
5061 }
5062 
5063 // optional .operations_research.MPConstraintProto constraint = 3;
5064 inline bool MPIndicatorConstraint::_internal_has_constraint() const {
5065  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5066  PROTOBUF_ASSUME(!value || constraint_ != nullptr);
5067  return value;
5068 }
5070  return _internal_has_constraint();
5071 }
5073  if (constraint_ != nullptr) constraint_->Clear();
5074  _has_bits_[0] &= ~0x00000001u;
5075 }
5076 inline const ::operations_research::MPConstraintProto& MPIndicatorConstraint::_internal_constraint() const {
5077  const ::operations_research::MPConstraintProto* p = constraint_;
5078  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPConstraintProto*>(
5080 }
5081 inline const ::operations_research::MPConstraintProto& MPIndicatorConstraint::constraint() const {
5082  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.constraint)
5083  return _internal_constraint();
5084 }
5085 inline ::operations_research::MPConstraintProto* MPIndicatorConstraint::release_constraint() {
5086  // @@protoc_insertion_point(field_release:operations_research.MPIndicatorConstraint.constraint)
5087  _has_bits_[0] &= ~0x00000001u;
5088  ::operations_research::MPConstraintProto* temp = constraint_;
5089  constraint_ = nullptr;
5090  return temp;
5091 }
5092 inline ::operations_research::MPConstraintProto* MPIndicatorConstraint::_internal_mutable_constraint() {
5093  _has_bits_[0] |= 0x00000001u;
5094  if (constraint_ == nullptr) {
5095  auto* p = CreateMaybeMessage<::operations_research::MPConstraintProto>(GetArenaNoVirtual());
5096  constraint_ = p;
5097  }
5098  return constraint_;
5099 }
5100 inline ::operations_research::MPConstraintProto* MPIndicatorConstraint::mutable_constraint() {
5101  // @@protoc_insertion_point(field_mutable:operations_research.MPIndicatorConstraint.constraint)
5102  return _internal_mutable_constraint();
5103 }
5105  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
5106  if (message_arena == nullptr) {
5107  delete constraint_;
5108  }
5109  if (constraint) {
5110  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
5111  if (message_arena != submessage_arena) {
5112  constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
5113  message_arena, constraint, submessage_arena);
5114  }
5115  _has_bits_[0] |= 0x00000001u;
5116  } else {
5117  _has_bits_[0] &= ~0x00000001u;
5118  }
5119  constraint_ = constraint;
5120  // @@protoc_insertion_point(field_set_allocated:operations_research.MPIndicatorConstraint.constraint)
5121 }
5122 
5123 // -------------------------------------------------------------------
5124 
5125 // MPSosConstraint
5126 
5127 // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
5128 inline bool MPSosConstraint::_internal_has_type() const {
5129  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5130  return value;
5131 }
5132 inline bool MPSosConstraint::has_type() const {
5133  return _internal_has_type();
5134 }
5136  type_ = 0;
5137  _has_bits_[0] &= ~0x00000001u;
5138 }
5139 inline ::operations_research::MPSosConstraint_Type MPSosConstraint::_internal_type() const {
5140  return static_cast< ::operations_research::MPSosConstraint_Type >(type_);
5141 }
5143  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.type)
5144  return _internal_type();
5145 }
5146 inline void MPSosConstraint::_internal_set_type(::operations_research::MPSosConstraint_Type value) {
5148  _has_bits_[0] |= 0x00000001u;
5149  type_ = value;
5150 }
5152  _internal_set_type(value);
5153  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.type)
5154 }
5155 
5156 // repeated int32 var_index = 2;
5157 inline int MPSosConstraint::_internal_var_index_size() const {
5158  return var_index_.size();
5159 }
5161  return _internal_var_index_size();
5162 }
5164  var_index_.Clear();
5165 }
5166 inline ::PROTOBUF_NAMESPACE_ID::int32 MPSosConstraint::_internal_var_index(int index) const {
5167  return var_index_.Get(index);
5168 }
5169 inline ::PROTOBUF_NAMESPACE_ID::int32 MPSosConstraint::var_index(int index) const {
5170  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.var_index)
5171  return _internal_var_index(index);
5172 }
5173 inline void MPSosConstraint::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5174  var_index_.Set(index, value);
5175  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.var_index)
5176 }
5177 inline void MPSosConstraint::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5178  var_index_.Add(value);
5179 }
5180 inline void MPSosConstraint::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5181  _internal_add_var_index(value);
5182  // @@protoc_insertion_point(field_add:operations_research.MPSosConstraint.var_index)
5183 }
5184 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5185 MPSosConstraint::_internal_var_index() const {
5186  return var_index_;
5187 }
5188 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5190  // @@protoc_insertion_point(field_list:operations_research.MPSosConstraint.var_index)
5191  return _internal_var_index();
5192 }
5193 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5194 MPSosConstraint::_internal_mutable_var_index() {
5195  return &var_index_;
5196 }
5197 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5199  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSosConstraint.var_index)
5200  return _internal_mutable_var_index();
5201 }
5202 
5203 // repeated double weight = 3;
5204 inline int MPSosConstraint::_internal_weight_size() const {
5205  return weight_.size();
5206 }
5207 inline int MPSosConstraint::weight_size() const {
5208  return _internal_weight_size();
5209 }
5211  weight_.Clear();
5212 }
5213 inline double MPSosConstraint::_internal_weight(int index) const {
5214  return weight_.Get(index);
5215 }
5216 inline double MPSosConstraint::weight(int index) const {
5217  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.weight)
5218  return _internal_weight(index);
5219 }
5220 inline void MPSosConstraint::set_weight(int index, double value) {
5221  weight_.Set(index, value);
5222  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.weight)
5223 }
5224 inline void MPSosConstraint::_internal_add_weight(double value) {
5225  weight_.Add(value);
5226 }
5227 inline void MPSosConstraint::add_weight(double value) {
5228  _internal_add_weight(value);
5229  // @@protoc_insertion_point(field_add:operations_research.MPSosConstraint.weight)
5230 }
5231 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5232 MPSosConstraint::_internal_weight() const {
5233  return weight_;
5234 }
5235 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5237  // @@protoc_insertion_point(field_list:operations_research.MPSosConstraint.weight)
5238  return _internal_weight();
5239 }
5240 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5241 MPSosConstraint::_internal_mutable_weight() {
5242  return &weight_;
5243 }
5244 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5246  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSosConstraint.weight)
5247  return _internal_mutable_weight();
5248 }
5249 
5250 // -------------------------------------------------------------------
5251 
5252 // MPQuadraticConstraint
5253 
5254 // repeated int32 var_index = 1;
5255 inline int MPQuadraticConstraint::_internal_var_index_size() const {
5256  return var_index_.size();
5257 }
5259  return _internal_var_index_size();
5260 }
5262  var_index_.Clear();
5263 }
5264 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::_internal_var_index(int index) const {
5265  return var_index_.Get(index);
5266 }
5267 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::var_index(int index) const {
5268  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.var_index)
5269  return _internal_var_index(index);
5270 }
5271 inline void MPQuadraticConstraint::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5272  var_index_.Set(index, value);
5273  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.var_index)
5274 }
5275 inline void MPQuadraticConstraint::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5276  var_index_.Add(value);
5277 }
5278 inline void MPQuadraticConstraint::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5279  _internal_add_var_index(value);
5280  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticConstraint.var_index)
5281 }
5282 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5283 MPQuadraticConstraint::_internal_var_index() const {
5284  return var_index_;
5285 }
5286 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5288  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticConstraint.var_index)
5289  return _internal_var_index();
5290 }
5291 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5292 MPQuadraticConstraint::_internal_mutable_var_index() {
5293  return &var_index_;
5294 }
5295 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5297  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticConstraint.var_index)
5298  return _internal_mutable_var_index();
5299 }
5300 
5301 // repeated double coefficient = 2;
5302 inline int MPQuadraticConstraint::_internal_coefficient_size() const {
5303  return coefficient_.size();
5304 }
5306  return _internal_coefficient_size();
5307 }
5309  coefficient_.Clear();
5310 }
5311 inline double MPQuadraticConstraint::_internal_coefficient(int index) const {
5312  return coefficient_.Get(index);
5313 }
5314 inline double MPQuadraticConstraint::coefficient(int index) const {
5315  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.coefficient)
5316  return _internal_coefficient(index);
5317 }
5318 inline void MPQuadraticConstraint::set_coefficient(int index, double value) {
5319  coefficient_.Set(index, value);
5320  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.coefficient)
5321 }
5322 inline void MPQuadraticConstraint::_internal_add_coefficient(double value) {
5323  coefficient_.Add(value);
5324 }
5325 inline void MPQuadraticConstraint::add_coefficient(double value) {
5326  _internal_add_coefficient(value);
5327  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticConstraint.coefficient)
5328 }
5329 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5330 MPQuadraticConstraint::_internal_coefficient() const {
5331  return coefficient_;
5332 }
5333 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5335  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticConstraint.coefficient)
5336  return _internal_coefficient();
5337 }
5338 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5339 MPQuadraticConstraint::_internal_mutable_coefficient() {
5340  return &coefficient_;
5341 }
5342 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5344  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticConstraint.coefficient)
5345  return _internal_mutable_coefficient();
5346 }
5347 
5348 // repeated int32 qvar1_index = 3;
5349 inline int MPQuadraticConstraint::_internal_qvar1_index_size() const {
5350  return qvar1_index_.size();
5351 }
5353  return _internal_qvar1_index_size();
5354 }
5356  qvar1_index_.Clear();
5357 }
5358 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::_internal_qvar1_index(int index) const {
5359  return qvar1_index_.Get(index);
5360 }
5361 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::qvar1_index(int index) const {
5362  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.qvar1_index)
5363  return _internal_qvar1_index(index);
5364 }
5365 inline void MPQuadraticConstraint::set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5366  qvar1_index_.Set(index, value);
5367  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.qvar1_index)
5368 }
5369 inline void MPQuadraticConstraint::_internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5370  qvar1_index_.Add(value);
5371 }
5372 inline void MPQuadraticConstraint::add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5373  _internal_add_qvar1_index(value);
5374  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticConstraint.qvar1_index)
5375 }
5376 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5377 MPQuadraticConstraint::_internal_qvar1_index() const {
5378  return qvar1_index_;
5379 }
5380 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5382  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticConstraint.qvar1_index)
5383  return _internal_qvar1_index();
5384 }
5385 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5386 MPQuadraticConstraint::_internal_mutable_qvar1_index() {
5387  return &qvar1_index_;
5388 }
5389 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5391  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticConstraint.qvar1_index)
5392  return _internal_mutable_qvar1_index();
5393 }
5394 
5395 // repeated int32 qvar2_index = 4;
5396 inline int MPQuadraticConstraint::_internal_qvar2_index_size() const {
5397  return qvar2_index_.size();
5398 }
5400  return _internal_qvar2_index_size();
5401 }
5403  qvar2_index_.Clear();
5404 }
5405 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::_internal_qvar2_index(int index) const {
5406  return qvar2_index_.Get(index);
5407 }
5408 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticConstraint::qvar2_index(int index) const {
5409  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.qvar2_index)
5410  return _internal_qvar2_index(index);
5411 }
5412 inline void MPQuadraticConstraint::set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5413  qvar2_index_.Set(index, value);
5414  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.qvar2_index)
5415 }
5416 inline void MPQuadraticConstraint::_internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5417  qvar2_index_.Add(value);
5418 }
5419 inline void MPQuadraticConstraint::add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5420  _internal_add_qvar2_index(value);
5421  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticConstraint.qvar2_index)
5422 }
5423 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5424 MPQuadraticConstraint::_internal_qvar2_index() const {
5425  return qvar2_index_;
5426 }
5427 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5429  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticConstraint.qvar2_index)
5430  return _internal_qvar2_index();
5431 }
5432 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5433 MPQuadraticConstraint::_internal_mutable_qvar2_index() {
5434  return &qvar2_index_;
5435 }
5436 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5438  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticConstraint.qvar2_index)
5439  return _internal_mutable_qvar2_index();
5440 }
5441 
5442 // repeated double qcoefficient = 5;
5443 inline int MPQuadraticConstraint::_internal_qcoefficient_size() const {
5444  return qcoefficient_.size();
5445 }
5447  return _internal_qcoefficient_size();
5448 }
5450  qcoefficient_.Clear();
5451 }
5452 inline double MPQuadraticConstraint::_internal_qcoefficient(int index) const {
5453  return qcoefficient_.Get(index);
5454 }
5455 inline double MPQuadraticConstraint::qcoefficient(int index) const {
5456  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.qcoefficient)
5457  return _internal_qcoefficient(index);
5458 }
5459 inline void MPQuadraticConstraint::set_qcoefficient(int index, double value) {
5460  qcoefficient_.Set(index, value);
5461  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.qcoefficient)
5462 }
5463 inline void MPQuadraticConstraint::_internal_add_qcoefficient(double value) {
5464  qcoefficient_.Add(value);
5465 }
5466 inline void MPQuadraticConstraint::add_qcoefficient(double value) {
5467  _internal_add_qcoefficient(value);
5468  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticConstraint.qcoefficient)
5469 }
5470 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5471 MPQuadraticConstraint::_internal_qcoefficient() const {
5472  return qcoefficient_;
5473 }
5474 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5476  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticConstraint.qcoefficient)
5477  return _internal_qcoefficient();
5478 }
5479 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5480 MPQuadraticConstraint::_internal_mutable_qcoefficient() {
5481  return &qcoefficient_;
5482 }
5483 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5485  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticConstraint.qcoefficient)
5486  return _internal_mutable_qcoefficient();
5487 }
5488 
5489 // optional double lower_bound = 6 [default = -inf];
5490 inline bool MPQuadraticConstraint::_internal_has_lower_bound() const {
5491  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5492  return value;
5493 }
5495  return _internal_has_lower_bound();
5496 }
5498  lower_bound_ = -std::numeric_limits<double>::infinity();
5499  _has_bits_[0] &= ~0x00000001u;
5500 }
5501 inline double MPQuadraticConstraint::_internal_lower_bound() const {
5502  return lower_bound_;
5503 }
5504 inline double MPQuadraticConstraint::lower_bound() const {
5505  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.lower_bound)
5506  return _internal_lower_bound();
5507 }
5508 inline void MPQuadraticConstraint::_internal_set_lower_bound(double value) {
5509  _has_bits_[0] |= 0x00000001u;
5510  lower_bound_ = value;
5511 }
5512 inline void MPQuadraticConstraint::set_lower_bound(double value) {
5513  _internal_set_lower_bound(value);
5514  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.lower_bound)
5515 }
5516 
5517 // optional double upper_bound = 7 [default = inf];
5518 inline bool MPQuadraticConstraint::_internal_has_upper_bound() const {
5519  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5520  return value;
5521 }
5523  return _internal_has_upper_bound();
5524 }
5526  upper_bound_ = std::numeric_limits<double>::infinity();
5527  _has_bits_[0] &= ~0x00000002u;
5528 }
5529 inline double MPQuadraticConstraint::_internal_upper_bound() const {
5530  return upper_bound_;
5531 }
5532 inline double MPQuadraticConstraint::upper_bound() const {
5533  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticConstraint.upper_bound)
5534  return _internal_upper_bound();
5535 }
5536 inline void MPQuadraticConstraint::_internal_set_upper_bound(double value) {
5537  _has_bits_[0] |= 0x00000002u;
5538  upper_bound_ = value;
5539 }
5540 inline void MPQuadraticConstraint::set_upper_bound(double value) {
5541  _internal_set_upper_bound(value);
5542  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticConstraint.upper_bound)
5543 }
5544 
5545 // -------------------------------------------------------------------
5546 
5547 // MPAbsConstraint
5548 
5549 // optional int32 var_index = 1;
5550 inline bool MPAbsConstraint::_internal_has_var_index() const {
5551  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5552  return value;
5553 }
5554 inline bool MPAbsConstraint::has_var_index() const {
5555  return _internal_has_var_index();
5556 }
5558  var_index_ = 0;
5559  _has_bits_[0] &= ~0x00000001u;
5560 }
5561 inline ::PROTOBUF_NAMESPACE_ID::int32 MPAbsConstraint::_internal_var_index() const {
5562  return var_index_;
5563 }
5564 inline ::PROTOBUF_NAMESPACE_ID::int32 MPAbsConstraint::var_index() const {
5565  // @@protoc_insertion_point(field_get:operations_research.MPAbsConstraint.var_index)
5566  return _internal_var_index();
5567 }
5568 inline void MPAbsConstraint::_internal_set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5569  _has_bits_[0] |= 0x00000001u;
5570  var_index_ = value;
5571 }
5572 inline void MPAbsConstraint::set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5573  _internal_set_var_index(value);
5574  // @@protoc_insertion_point(field_set:operations_research.MPAbsConstraint.var_index)
5575 }
5576 
5577 // optional int32 resultant_var_index = 2;
5578 inline bool MPAbsConstraint::_internal_has_resultant_var_index() const {
5579  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5580  return value;
5581 }
5583  return _internal_has_resultant_var_index();
5584 }
5586  resultant_var_index_ = 0;
5587  _has_bits_[0] &= ~0x00000002u;
5588 }
5589 inline ::PROTOBUF_NAMESPACE_ID::int32 MPAbsConstraint::_internal_resultant_var_index() const {
5590  return resultant_var_index_;
5591 }
5592 inline ::PROTOBUF_NAMESPACE_ID::int32 MPAbsConstraint::resultant_var_index() const {
5593  // @@protoc_insertion_point(field_get:operations_research.MPAbsConstraint.resultant_var_index)
5594  return _internal_resultant_var_index();
5595 }
5596 inline void MPAbsConstraint::_internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5597  _has_bits_[0] |= 0x00000002u;
5598  resultant_var_index_ = value;
5599 }
5600 inline void MPAbsConstraint::set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5601  _internal_set_resultant_var_index(value);
5602  // @@protoc_insertion_point(field_set:operations_research.MPAbsConstraint.resultant_var_index)
5603 }
5604 
5605 // -------------------------------------------------------------------
5606 
5607 // MPArrayConstraint
5608 
5609 // repeated int32 var_index = 1;
5610 inline int MPArrayConstraint::_internal_var_index_size() const {
5611  return var_index_.size();
5612 }
5614  return _internal_var_index_size();
5615 }
5617  var_index_.Clear();
5618 }
5619 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayConstraint::_internal_var_index(int index) const {
5620  return var_index_.Get(index);
5621 }
5622 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayConstraint::var_index(int index) const {
5623  // @@protoc_insertion_point(field_get:operations_research.MPArrayConstraint.var_index)
5624  return _internal_var_index(index);
5625 }
5626 inline void MPArrayConstraint::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5627  var_index_.Set(index, value);
5628  // @@protoc_insertion_point(field_set:operations_research.MPArrayConstraint.var_index)
5629 }
5630 inline void MPArrayConstraint::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5631  var_index_.Add(value);
5632 }
5633 inline void MPArrayConstraint::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5634  _internal_add_var_index(value);
5635  // @@protoc_insertion_point(field_add:operations_research.MPArrayConstraint.var_index)
5636 }
5637 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5638 MPArrayConstraint::_internal_var_index() const {
5639  return var_index_;
5640 }
5641 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5643  // @@protoc_insertion_point(field_list:operations_research.MPArrayConstraint.var_index)
5644  return _internal_var_index();
5645 }
5646 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5647 MPArrayConstraint::_internal_mutable_var_index() {
5648  return &var_index_;
5649 }
5650 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5652  // @@protoc_insertion_point(field_mutable_list:operations_research.MPArrayConstraint.var_index)
5653  return _internal_mutable_var_index();
5654 }
5655 
5656 // optional int32 resultant_var_index = 2;
5657 inline bool MPArrayConstraint::_internal_has_resultant_var_index() const {
5658  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5659  return value;
5660 }
5662  return _internal_has_resultant_var_index();
5663 }
5665  resultant_var_index_ = 0;
5666  _has_bits_[0] &= ~0x00000001u;
5667 }
5668 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayConstraint::_internal_resultant_var_index() const {
5669  return resultant_var_index_;
5670 }
5671 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayConstraint::resultant_var_index() const {
5672  // @@protoc_insertion_point(field_get:operations_research.MPArrayConstraint.resultant_var_index)
5673  return _internal_resultant_var_index();
5674 }
5675 inline void MPArrayConstraint::_internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5676  _has_bits_[0] |= 0x00000001u;
5677  resultant_var_index_ = value;
5678 }
5679 inline void MPArrayConstraint::set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5680  _internal_set_resultant_var_index(value);
5681  // @@protoc_insertion_point(field_set:operations_research.MPArrayConstraint.resultant_var_index)
5682 }
5683 
5684 // -------------------------------------------------------------------
5685 
5686 // MPArrayWithConstantConstraint
5687 
5688 // repeated int32 var_index = 1;
5689 inline int MPArrayWithConstantConstraint::_internal_var_index_size() const {
5690  return var_index_.size();
5691 }
5693  return _internal_var_index_size();
5694 }
5696  var_index_.Clear();
5697 }
5698 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayWithConstantConstraint::_internal_var_index(int index) const {
5699  return var_index_.Get(index);
5700 }
5701 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayWithConstantConstraint::var_index(int index) const {
5702  // @@protoc_insertion_point(field_get:operations_research.MPArrayWithConstantConstraint.var_index)
5703  return _internal_var_index(index);
5704 }
5705 inline void MPArrayWithConstantConstraint::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5706  var_index_.Set(index, value);
5707  // @@protoc_insertion_point(field_set:operations_research.MPArrayWithConstantConstraint.var_index)
5708 }
5709 inline void MPArrayWithConstantConstraint::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5710  var_index_.Add(value);
5711 }
5712 inline void MPArrayWithConstantConstraint::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5713  _internal_add_var_index(value);
5714  // @@protoc_insertion_point(field_add:operations_research.MPArrayWithConstantConstraint.var_index)
5715 }
5716 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5717 MPArrayWithConstantConstraint::_internal_var_index() const {
5718  return var_index_;
5719 }
5720 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5722  // @@protoc_insertion_point(field_list:operations_research.MPArrayWithConstantConstraint.var_index)
5723  return _internal_var_index();
5724 }
5725 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5726 MPArrayWithConstantConstraint::_internal_mutable_var_index() {
5727  return &var_index_;
5728 }
5729 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5731  // @@protoc_insertion_point(field_mutable_list:operations_research.MPArrayWithConstantConstraint.var_index)
5732  return _internal_mutable_var_index();
5733 }
5734 
5735 // optional double constant = 2;
5736 inline bool MPArrayWithConstantConstraint::_internal_has_constant() const {
5737  bool value = (_has_bits_[0] & 0x00000001u) != 0;
5738  return value;
5739 }
5741  return _internal_has_constant();
5742 }
5744  constant_ = 0;
5745  _has_bits_[0] &= ~0x00000001u;
5746 }
5747 inline double MPArrayWithConstantConstraint::_internal_constant() const {
5748  return constant_;
5749 }
5751  // @@protoc_insertion_point(field_get:operations_research.MPArrayWithConstantConstraint.constant)
5752  return _internal_constant();
5753 }
5754 inline void MPArrayWithConstantConstraint::_internal_set_constant(double value) {
5755  _has_bits_[0] |= 0x00000001u;
5756  constant_ = value;
5757 }
5759  _internal_set_constant(value);
5760  // @@protoc_insertion_point(field_set:operations_research.MPArrayWithConstantConstraint.constant)
5761 }
5762 
5763 // optional int32 resultant_var_index = 3;
5764 inline bool MPArrayWithConstantConstraint::_internal_has_resultant_var_index() const {
5765  bool value = (_has_bits_[0] & 0x00000002u) != 0;
5766  return value;
5767 }
5769  return _internal_has_resultant_var_index();
5770 }
5772  resultant_var_index_ = 0;
5773  _has_bits_[0] &= ~0x00000002u;
5774 }
5775 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayWithConstantConstraint::_internal_resultant_var_index() const {
5776  return resultant_var_index_;
5777 }
5778 inline ::PROTOBUF_NAMESPACE_ID::int32 MPArrayWithConstantConstraint::resultant_var_index() const {
5779  // @@protoc_insertion_point(field_get:operations_research.MPArrayWithConstantConstraint.resultant_var_index)
5780  return _internal_resultant_var_index();
5781 }
5782 inline void MPArrayWithConstantConstraint::_internal_set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5783  _has_bits_[0] |= 0x00000002u;
5784  resultant_var_index_ = value;
5785 }
5786 inline void MPArrayWithConstantConstraint::set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5787  _internal_set_resultant_var_index(value);
5788  // @@protoc_insertion_point(field_set:operations_research.MPArrayWithConstantConstraint.resultant_var_index)
5789 }
5790 
5791 // -------------------------------------------------------------------
5792 
5793 // MPQuadraticObjective
5794 
5795 // repeated int32 qvar1_index = 1;
5796 inline int MPQuadraticObjective::_internal_qvar1_index_size() const {
5797  return qvar1_index_.size();
5798 }
5800  return _internal_qvar1_index_size();
5801 }
5803  qvar1_index_.Clear();
5804 }
5805 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticObjective::_internal_qvar1_index(int index) const {
5806  return qvar1_index_.Get(index);
5807 }
5808 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticObjective::qvar1_index(int index) const {
5809  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticObjective.qvar1_index)
5810  return _internal_qvar1_index(index);
5811 }
5812 inline void MPQuadraticObjective::set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5813  qvar1_index_.Set(index, value);
5814  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticObjective.qvar1_index)
5815 }
5816 inline void MPQuadraticObjective::_internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5817  qvar1_index_.Add(value);
5818 }
5819 inline void MPQuadraticObjective::add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5820  _internal_add_qvar1_index(value);
5821  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticObjective.qvar1_index)
5822 }
5823 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5824 MPQuadraticObjective::_internal_qvar1_index() const {
5825  return qvar1_index_;
5826 }
5827 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5829  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticObjective.qvar1_index)
5830  return _internal_qvar1_index();
5831 }
5832 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5833 MPQuadraticObjective::_internal_mutable_qvar1_index() {
5834  return &qvar1_index_;
5835 }
5836 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5838  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticObjective.qvar1_index)
5839  return _internal_mutable_qvar1_index();
5840 }
5841 
5842 // repeated int32 qvar2_index = 2;
5843 inline int MPQuadraticObjective::_internal_qvar2_index_size() const {
5844  return qvar2_index_.size();
5845 }
5847  return _internal_qvar2_index_size();
5848 }
5850  qvar2_index_.Clear();
5851 }
5852 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticObjective::_internal_qvar2_index(int index) const {
5853  return qvar2_index_.Get(index);
5854 }
5855 inline ::PROTOBUF_NAMESPACE_ID::int32 MPQuadraticObjective::qvar2_index(int index) const {
5856  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticObjective.qvar2_index)
5857  return _internal_qvar2_index(index);
5858 }
5859 inline void MPQuadraticObjective::set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5860  qvar2_index_.Set(index, value);
5861  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticObjective.qvar2_index)
5862 }
5863 inline void MPQuadraticObjective::_internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5864  qvar2_index_.Add(value);
5865 }
5866 inline void MPQuadraticObjective::add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5867  _internal_add_qvar2_index(value);
5868  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticObjective.qvar2_index)
5869 }
5870 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5871 MPQuadraticObjective::_internal_qvar2_index() const {
5872  return qvar2_index_;
5873 }
5874 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5876  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticObjective.qvar2_index)
5877  return _internal_qvar2_index();
5878 }
5879 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5880 MPQuadraticObjective::_internal_mutable_qvar2_index() {
5881  return &qvar2_index_;
5882 }
5883 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5885  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticObjective.qvar2_index)
5886  return _internal_mutable_qvar2_index();
5887 }
5888 
5889 // repeated double coefficient = 3;
5890 inline int MPQuadraticObjective::_internal_coefficient_size() const {
5891  return coefficient_.size();
5892 }
5894  return _internal_coefficient_size();
5895 }
5897  coefficient_.Clear();
5898 }
5899 inline double MPQuadraticObjective::_internal_coefficient(int index) const {
5900  return coefficient_.Get(index);
5901 }
5902 inline double MPQuadraticObjective::coefficient(int index) const {
5903  // @@protoc_insertion_point(field_get:operations_research.MPQuadraticObjective.coefficient)
5904  return _internal_coefficient(index);
5905 }
5906 inline void MPQuadraticObjective::set_coefficient(int index, double value) {
5907  coefficient_.Set(index, value);
5908  // @@protoc_insertion_point(field_set:operations_research.MPQuadraticObjective.coefficient)
5909 }
5910 inline void MPQuadraticObjective::_internal_add_coefficient(double value) {
5911  coefficient_.Add(value);
5912 }
5913 inline void MPQuadraticObjective::add_coefficient(double value) {
5914  _internal_add_coefficient(value);
5915  // @@protoc_insertion_point(field_add:operations_research.MPQuadraticObjective.coefficient)
5916 }
5917 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5918 MPQuadraticObjective::_internal_coefficient() const {
5919  return coefficient_;
5920 }
5921 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
5923  // @@protoc_insertion_point(field_list:operations_research.MPQuadraticObjective.coefficient)
5924  return _internal_coefficient();
5925 }
5926 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5927 MPQuadraticObjective::_internal_mutable_coefficient() {
5928  return &coefficient_;
5929 }
5930 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
5932  // @@protoc_insertion_point(field_mutable_list:operations_research.MPQuadraticObjective.coefficient)
5933  return _internal_mutable_coefficient();
5934 }
5935 
5936 // -------------------------------------------------------------------
5937 
5938 // PartialVariableAssignment
5939 
5940 // repeated int32 var_index = 1 [packed = true];
5941 inline int PartialVariableAssignment::_internal_var_index_size() const {
5942  return var_index_.size();
5943 }
5945  return _internal_var_index_size();
5946 }
5948  var_index_.Clear();
5949 }
5950 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::_internal_var_index(int index) const {
5951  return var_index_.Get(index);
5952 }
5953 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::var_index(int index) const {
5954  // @@protoc_insertion_point(field_get:operations_research.PartialVariableAssignment.var_index)
5955  return _internal_var_index(index);
5956 }
5957 inline void PartialVariableAssignment::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5958  var_index_.Set(index, value);
5959  // @@protoc_insertion_point(field_set:operations_research.PartialVariableAssignment.var_index)
5960 }
5961 inline void PartialVariableAssignment::_internal_add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5962  var_index_.Add(value);
5963 }
5964 inline void PartialVariableAssignment::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
5965  _internal_add_var_index(value);
5966  // @@protoc_insertion_point(field_add:operations_research.PartialVariableAssignment.var_index)
5967 }
5968 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5969 PartialVariableAssignment::_internal_var_index() const {
5970  return var_index_;
5971 }
5972 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5974  // @@protoc_insertion_point(field_list:operations_research.PartialVariableAssignment.var_index)
5975  return _internal_var_index();
5976 }
5977 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5978 PartialVariableAssignment::_internal_mutable_var_index() {
5979  return &var_index_;
5980 }
5981 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5983  // @@protoc_insertion_point(field_mutable_list:operations_research.PartialVariableAssignment.var_index)
5984  return _internal_mutable_var_index();
5985 }
5986 
5987 // repeated double var_value = 2 [packed = true];
5988 inline int PartialVariableAssignment::_internal_var_value_size() const {
5989  return var_value_.size();
5990 }
5992  return _internal_var_value_size();
5993 }
5995  var_value_.Clear();
5996 }
5997 inline double PartialVariableAssignment::_internal_var_value(int index) const {
5998  return var_value_.Get(index);
5999 }
6000 inline double PartialVariableAssignment::var_value(int index) const {
6001  // @@protoc_insertion_point(field_get:operations_research.PartialVariableAssignment.var_value)
6002  return _internal_var_value(index);
6003 }
6004 inline void PartialVariableAssignment::set_var_value(int index, double value) {
6005  var_value_.Set(index, value);
6006  // @@protoc_insertion_point(field_set:operations_research.PartialVariableAssignment.var_value)
6007 }
6008 inline void PartialVariableAssignment::_internal_add_var_value(double value) {
6009  var_value_.Add(value);
6010 }
6011 inline void PartialVariableAssignment::add_var_value(double value) {
6012  _internal_add_var_value(value);
6013  // @@protoc_insertion_point(field_add:operations_research.PartialVariableAssignment.var_value)
6014 }
6015 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
6016 PartialVariableAssignment::_internal_var_value() const {
6017  return var_value_;
6018 }
6019 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
6021  // @@protoc_insertion_point(field_list:operations_research.PartialVariableAssignment.var_value)
6022  return _internal_var_value();
6023 }
6024 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
6025 PartialVariableAssignment::_internal_mutable_var_value() {
6026  return &var_value_;
6027 }
6028 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
6030  // @@protoc_insertion_point(field_mutable_list:operations_research.PartialVariableAssignment.var_value)
6031  return _internal_mutable_var_value();
6032 }
6033 
6034 // -------------------------------------------------------------------
6035 
6036 // MPModelProto
6037 
6038 // repeated .operations_research.MPVariableProto variable = 3;
6039 inline int MPModelProto::_internal_variable_size() const {
6040  return variable_.size();
6041 }
6042 inline int MPModelProto::variable_size() const {
6043  return _internal_variable_size();
6044 }
6046  variable_.Clear();
6047 }
6048 inline ::operations_research::MPVariableProto* MPModelProto::mutable_variable(int index) {
6049  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.variable)
6050  return variable_.Mutable(index);
6051 }
6052 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >*
6054  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.variable)
6055  return &variable_;
6056 }
6057 inline const ::operations_research::MPVariableProto& MPModelProto::_internal_variable(int index) const {
6058  return variable_.Get(index);
6059 }
6060 inline const ::operations_research::MPVariableProto& MPModelProto::variable(int index) const {
6061  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.variable)
6062  return _internal_variable(index);
6063 }
6064 inline ::operations_research::MPVariableProto* MPModelProto::_internal_add_variable() {
6065  return variable_.Add();
6066 }
6067 inline ::operations_research::MPVariableProto* MPModelProto::add_variable() {
6068  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.variable)
6069  return _internal_add_variable();
6070 }
6071 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >&
6073  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.variable)
6074  return variable_;
6075 }
6076 
6077 // repeated .operations_research.MPConstraintProto constraint = 4;
6078 inline int MPModelProto::_internal_constraint_size() const {
6079  return constraint_.size();
6080 }
6081 inline int MPModelProto::constraint_size() const {
6082  return _internal_constraint_size();
6083 }
6085  constraint_.Clear();
6086 }
6087 inline ::operations_research::MPConstraintProto* MPModelProto::mutable_constraint(int index) {
6088  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.constraint)
6089  return constraint_.Mutable(index);
6090 }
6091 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >*
6093  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.constraint)
6094  return &constraint_;
6095 }
6096 inline const ::operations_research::MPConstraintProto& MPModelProto::_internal_constraint(int index) const {
6097  return constraint_.Get(index);
6098 }
6099 inline const ::operations_research::MPConstraintProto& MPModelProto::constraint(int index) const {
6100  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.constraint)
6101  return _internal_constraint(index);
6102 }
6103 inline ::operations_research::MPConstraintProto* MPModelProto::_internal_add_constraint() {
6104  return constraint_.Add();
6105 }
6106 inline ::operations_research::MPConstraintProto* MPModelProto::add_constraint() {
6107  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.constraint)
6108  return _internal_add_constraint();
6109 }
6110 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >&
6112  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.constraint)
6113  return constraint_;
6114 }
6115 
6116 // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
6117 inline int MPModelProto::_internal_general_constraint_size() const {
6118  return general_constraint_.size();
6119 }
6121  return _internal_general_constraint_size();
6122 }
6124  general_constraint_.Clear();
6125 }
6126 inline ::operations_research::MPGeneralConstraintProto* MPModelProto::mutable_general_constraint(int index) {
6127  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.general_constraint)
6128  return general_constraint_.Mutable(index);
6129 }
6130 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >*
6132  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.general_constraint)
6133  return &general_constraint_;
6134 }
6135 inline const ::operations_research::MPGeneralConstraintProto& MPModelProto::_internal_general_constraint(int index) const {
6136  return general_constraint_.Get(index);
6137 }
6138 inline const ::operations_research::MPGeneralConstraintProto& MPModelProto::general_constraint(int index) const {
6139  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.general_constraint)
6140  return _internal_general_constraint(index);
6141 }
6142 inline ::operations_research::MPGeneralConstraintProto* MPModelProto::_internal_add_general_constraint() {
6143  return general_constraint_.Add();
6144 }
6145 inline ::operations_research::MPGeneralConstraintProto* MPModelProto::add_general_constraint() {
6146  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.general_constraint)
6147  return _internal_add_general_constraint();
6148 }
6149 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >&
6151  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.general_constraint)
6152  return general_constraint_;
6153 }
6154 
6155 // optional bool maximize = 1 [default = false];
6156 inline bool MPModelProto::_internal_has_maximize() const {
6157  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6158  return value;
6159 }
6160 inline bool MPModelProto::has_maximize() const {
6161  return _internal_has_maximize();
6162 }
6164  maximize_ = false;
6165  _has_bits_[0] &= ~0x00000010u;
6166 }
6167 inline bool MPModelProto::_internal_maximize() const {
6168  return maximize_;
6169 }
6170 inline bool MPModelProto::maximize() const {
6171  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.maximize)
6172  return _internal_maximize();
6173 }
6174 inline void MPModelProto::_internal_set_maximize(bool value) {
6175  _has_bits_[0] |= 0x00000010u;
6176  maximize_ = value;
6177 }
6178 inline void MPModelProto::set_maximize(bool value) {
6179  _internal_set_maximize(value);
6180  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.maximize)
6181 }
6182 
6183 // optional double objective_offset = 2 [default = 0];
6184 inline bool MPModelProto::_internal_has_objective_offset() const {
6185  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6186  return value;
6187 }
6189  return _internal_has_objective_offset();
6190 }
6192  objective_offset_ = 0;
6193  _has_bits_[0] &= ~0x00000008u;
6194 }
6195 inline double MPModelProto::_internal_objective_offset() const {
6196  return objective_offset_;
6197 }
6198 inline double MPModelProto::objective_offset() const {
6199  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.objective_offset)
6200  return _internal_objective_offset();
6201 }
6202 inline void MPModelProto::_internal_set_objective_offset(double value) {
6203  _has_bits_[0] |= 0x00000008u;
6204  objective_offset_ = value;
6205 }
6206 inline void MPModelProto::set_objective_offset(double value) {
6207  _internal_set_objective_offset(value);
6208  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.objective_offset)
6209 }
6210 
6211 // optional .operations_research.MPQuadraticObjective quadratic_objective = 8;
6212 inline bool MPModelProto::_internal_has_quadratic_objective() const {
6213  bool value = (_has_bits_[0] & 0x00000004u) != 0;
6214  PROTOBUF_ASSUME(!value || quadratic_objective_ != nullptr);
6215  return value;
6216 }
6218  return _internal_has_quadratic_objective();
6219 }
6221  if (quadratic_objective_ != nullptr) quadratic_objective_->Clear();
6222  _has_bits_[0] &= ~0x00000004u;
6223 }
6224 inline const ::operations_research::MPQuadraticObjective& MPModelProto::_internal_quadratic_objective() const {
6225  const ::operations_research::MPQuadraticObjective* p = quadratic_objective_;
6226  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPQuadraticObjective*>(
6228 }
6229 inline const ::operations_research::MPQuadraticObjective& MPModelProto::quadratic_objective() const {
6230  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.quadratic_objective)
6231  return _internal_quadratic_objective();
6232 }
6233 inline ::operations_research::MPQuadraticObjective* MPModelProto::release_quadratic_objective() {
6234  // @@protoc_insertion_point(field_release:operations_research.MPModelProto.quadratic_objective)
6235  _has_bits_[0] &= ~0x00000004u;
6236  ::operations_research::MPQuadraticObjective* temp = quadratic_objective_;
6237  quadratic_objective_ = nullptr;
6238  return temp;
6239 }
6240 inline ::operations_research::MPQuadraticObjective* MPModelProto::_internal_mutable_quadratic_objective() {
6241  _has_bits_[0] |= 0x00000004u;
6242  if (quadratic_objective_ == nullptr) {
6243  auto* p = CreateMaybeMessage<::operations_research::MPQuadraticObjective>(GetArenaNoVirtual());
6244  quadratic_objective_ = p;
6245  }
6246  return quadratic_objective_;
6247 }
6248 inline ::operations_research::MPQuadraticObjective* MPModelProto::mutable_quadratic_objective() {
6249  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.quadratic_objective)
6250  return _internal_mutable_quadratic_objective();
6251 }
6253  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6254  if (message_arena == nullptr) {
6255  delete quadratic_objective_;
6256  }
6257  if (quadratic_objective) {
6258  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6259  if (message_arena != submessage_arena) {
6260  quadratic_objective = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6261  message_arena, quadratic_objective, submessage_arena);
6262  }
6263  _has_bits_[0] |= 0x00000004u;
6264  } else {
6265  _has_bits_[0] &= ~0x00000004u;
6266  }
6267  quadratic_objective_ = quadratic_objective;
6268  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelProto.quadratic_objective)
6269 }
6270 
6271 // optional string name = 5 [default = ""];
6272 inline bool MPModelProto::_internal_has_name() const {
6273  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6274  return value;
6275 }
6276 inline bool MPModelProto::has_name() const {
6277  return _internal_has_name();
6278 }
6280  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6281  _has_bits_[0] &= ~0x00000001u;
6282 }
6283 inline const std::string& MPModelProto::name() const {
6284  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.name)
6285  return _internal_name();
6286 }
6287 inline void MPModelProto::set_name(const std::string& value) {
6288  _internal_set_name(value);
6289  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.name)
6290 }
6291 inline std::string* MPModelProto::mutable_name() {
6292  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.name)
6293  return _internal_mutable_name();
6294 }
6295 inline const std::string& MPModelProto::_internal_name() const {
6296  return name_.GetNoArena();
6297 }
6298 inline void MPModelProto::_internal_set_name(const std::string& value) {
6299  _has_bits_[0] |= 0x00000001u;
6300  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
6301 }
6302 inline void MPModelProto::set_name(std::string&& value) {
6303  _has_bits_[0] |= 0x00000001u;
6304  name_.SetNoArena(
6305  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
6306  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPModelProto.name)
6307 }
6308 inline void MPModelProto::set_name(const char* value) {
6309  GOOGLE_DCHECK(value != nullptr);
6310  _has_bits_[0] |= 0x00000001u;
6311  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
6312  // @@protoc_insertion_point(field_set_char:operations_research.MPModelProto.name)
6313 }
6314 inline void MPModelProto::set_name(const char* value, size_t size) {
6315  _has_bits_[0] |= 0x00000001u;
6316  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
6317  ::std::string(reinterpret_cast<const char*>(value), size));
6318  // @@protoc_insertion_point(field_set_pointer:operations_research.MPModelProto.name)
6319 }
6320 inline std::string* MPModelProto::_internal_mutable_name() {
6321  _has_bits_[0] |= 0x00000001u;
6322  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6323 }
6324 inline std::string* MPModelProto::release_name() {
6325  // @@protoc_insertion_point(field_release:operations_research.MPModelProto.name)
6326  if (!_internal_has_name()) {
6327  return nullptr;
6328  }
6329  _has_bits_[0] &= ~0x00000001u;
6330  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6331 }
6332 inline void MPModelProto::set_allocated_name(std::string* name) {
6333  if (name != nullptr) {
6334  _has_bits_[0] |= 0x00000001u;
6335  } else {
6336  _has_bits_[0] &= ~0x00000001u;
6337  }
6338  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
6339  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelProto.name)
6340 }
6341 
6342 // optional .operations_research.PartialVariableAssignment solution_hint = 6;
6343 inline bool MPModelProto::_internal_has_solution_hint() const {
6344  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6345  PROTOBUF_ASSUME(!value || solution_hint_ != nullptr);
6346  return value;
6347 }
6348 inline bool MPModelProto::has_solution_hint() const {
6349  return _internal_has_solution_hint();
6350 }
6352  if (solution_hint_ != nullptr) solution_hint_->Clear();
6353  _has_bits_[0] &= ~0x00000002u;
6354 }
6355 inline const ::operations_research::PartialVariableAssignment& MPModelProto::_internal_solution_hint() const {
6356  const ::operations_research::PartialVariableAssignment* p = solution_hint_;
6357  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::PartialVariableAssignment*>(
6359 }
6360 inline const ::operations_research::PartialVariableAssignment& MPModelProto::solution_hint() const {
6361  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.solution_hint)
6362  return _internal_solution_hint();
6363 }
6364 inline ::operations_research::PartialVariableAssignment* MPModelProto::release_solution_hint() {
6365  // @@protoc_insertion_point(field_release:operations_research.MPModelProto.solution_hint)
6366  _has_bits_[0] &= ~0x00000002u;
6367  ::operations_research::PartialVariableAssignment* temp = solution_hint_;
6368  solution_hint_ = nullptr;
6369  return temp;
6370 }
6371 inline ::operations_research::PartialVariableAssignment* MPModelProto::_internal_mutable_solution_hint() {
6372  _has_bits_[0] |= 0x00000002u;
6373  if (solution_hint_ == nullptr) {
6374  auto* p = CreateMaybeMessage<::operations_research::PartialVariableAssignment>(GetArenaNoVirtual());
6375  solution_hint_ = p;
6376  }
6377  return solution_hint_;
6378 }
6379 inline ::operations_research::PartialVariableAssignment* MPModelProto::mutable_solution_hint() {
6380  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.solution_hint)
6381  return _internal_mutable_solution_hint();
6382 }
6384  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6385  if (message_arena == nullptr) {
6386  delete solution_hint_;
6387  }
6388  if (solution_hint) {
6389  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6390  if (message_arena != submessage_arena) {
6391  solution_hint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6392  message_arena, solution_hint, submessage_arena);
6393  }
6394  _has_bits_[0] |= 0x00000002u;
6395  } else {
6396  _has_bits_[0] &= ~0x00000002u;
6397  }
6398  solution_hint_ = solution_hint;
6399  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelProto.solution_hint)
6400 }
6401 
6402 // -------------------------------------------------------------------
6403 
6404 // OptionalDouble
6405 
6406 // optional double value = 1;
6407 inline bool OptionalDouble::_internal_has_value() const {
6408  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6409  return value;
6410 }
6411 inline bool OptionalDouble::has_value() const {
6412  return _internal_has_value();
6413 }
6415  value_ = 0;
6416  _has_bits_[0] &= ~0x00000001u;
6417 }
6418 inline double OptionalDouble::_internal_value() const {
6419  return value_;
6420 }
6421 inline double OptionalDouble::value() const {
6422  // @@protoc_insertion_point(field_get:operations_research.OptionalDouble.value)
6423  return _internal_value();
6424 }
6425 inline void OptionalDouble::_internal_set_value(double value) {
6426  _has_bits_[0] |= 0x00000001u;
6427  value_ = value;
6428 }
6429 inline void OptionalDouble::set_value(double value) {
6430  _internal_set_value(value);
6431  // @@protoc_insertion_point(field_set:operations_research.OptionalDouble.value)
6432 }
6433 
6434 // -------------------------------------------------------------------
6435 
6436 // MPSolverCommonParameters
6437 
6438 // optional .operations_research.OptionalDouble relative_mip_gap = 1;
6439 inline bool MPSolverCommonParameters::_internal_has_relative_mip_gap() const {
6440  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6441  PROTOBUF_ASSUME(!value || relative_mip_gap_ != nullptr);
6442  return value;
6443 }
6445  return _internal_has_relative_mip_gap();
6446 }
6448  if (relative_mip_gap_ != nullptr) relative_mip_gap_->Clear();
6449  _has_bits_[0] &= ~0x00000001u;
6450 }
6451 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::_internal_relative_mip_gap() const {
6452  const ::operations_research::OptionalDouble* p = relative_mip_gap_;
6453  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
6455 }
6456 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::relative_mip_gap() const {
6457  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.relative_mip_gap)
6458  return _internal_relative_mip_gap();
6459 }
6460 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_relative_mip_gap() {
6461  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.relative_mip_gap)
6462  _has_bits_[0] &= ~0x00000001u;
6463  ::operations_research::OptionalDouble* temp = relative_mip_gap_;
6464  relative_mip_gap_ = nullptr;
6465  return temp;
6466 }
6467 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::_internal_mutable_relative_mip_gap() {
6468  _has_bits_[0] |= 0x00000001u;
6469  if (relative_mip_gap_ == nullptr) {
6470  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
6471  relative_mip_gap_ = p;
6472  }
6473  return relative_mip_gap_;
6474 }
6475 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_relative_mip_gap() {
6476  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.relative_mip_gap)
6477  return _internal_mutable_relative_mip_gap();
6478 }
6480  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6481  if (message_arena == nullptr) {
6482  delete relative_mip_gap_;
6483  }
6484  if (relative_mip_gap) {
6485  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6486  if (message_arena != submessage_arena) {
6487  relative_mip_gap = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6488  message_arena, relative_mip_gap, submessage_arena);
6489  }
6490  _has_bits_[0] |= 0x00000001u;
6491  } else {
6492  _has_bits_[0] &= ~0x00000001u;
6493  }
6494  relative_mip_gap_ = relative_mip_gap;
6495  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.relative_mip_gap)
6496 }
6497 
6498 // optional .operations_research.OptionalDouble primal_tolerance = 2;
6499 inline bool MPSolverCommonParameters::_internal_has_primal_tolerance() const {
6500  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6501  PROTOBUF_ASSUME(!value || primal_tolerance_ != nullptr);
6502  return value;
6503 }
6505  return _internal_has_primal_tolerance();
6506 }
6508  if (primal_tolerance_ != nullptr) primal_tolerance_->Clear();
6509  _has_bits_[0] &= ~0x00000002u;
6510 }
6511 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::_internal_primal_tolerance() const {
6512  const ::operations_research::OptionalDouble* p = primal_tolerance_;
6513  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
6515 }
6516 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::primal_tolerance() const {
6517  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.primal_tolerance)
6518  return _internal_primal_tolerance();
6519 }
6520 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_primal_tolerance() {
6521  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.primal_tolerance)
6522  _has_bits_[0] &= ~0x00000002u;
6523  ::operations_research::OptionalDouble* temp = primal_tolerance_;
6524  primal_tolerance_ = nullptr;
6525  return temp;
6526 }
6527 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::_internal_mutable_primal_tolerance() {
6528  _has_bits_[0] |= 0x00000002u;
6529  if (primal_tolerance_ == nullptr) {
6530  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
6531  primal_tolerance_ = p;
6532  }
6533  return primal_tolerance_;
6534 }
6535 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_primal_tolerance() {
6536  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.primal_tolerance)
6537  return _internal_mutable_primal_tolerance();
6538 }
6540  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6541  if (message_arena == nullptr) {
6542  delete primal_tolerance_;
6543  }
6544  if (primal_tolerance) {
6545  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6546  if (message_arena != submessage_arena) {
6547  primal_tolerance = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6548  message_arena, primal_tolerance, submessage_arena);
6549  }
6550  _has_bits_[0] |= 0x00000002u;
6551  } else {
6552  _has_bits_[0] &= ~0x00000002u;
6553  }
6554  primal_tolerance_ = primal_tolerance;
6555  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.primal_tolerance)
6556 }
6557 
6558 // optional .operations_research.OptionalDouble dual_tolerance = 3;
6559 inline bool MPSolverCommonParameters::_internal_has_dual_tolerance() const {
6560  bool value = (_has_bits_[0] & 0x00000004u) != 0;
6561  PROTOBUF_ASSUME(!value || dual_tolerance_ != nullptr);
6562  return value;
6563 }
6565  return _internal_has_dual_tolerance();
6566 }
6568  if (dual_tolerance_ != nullptr) dual_tolerance_->Clear();
6569  _has_bits_[0] &= ~0x00000004u;
6570 }
6571 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::_internal_dual_tolerance() const {
6572  const ::operations_research::OptionalDouble* p = dual_tolerance_;
6573  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
6575 }
6576 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::dual_tolerance() const {
6577  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.dual_tolerance)
6578  return _internal_dual_tolerance();
6579 }
6580 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_dual_tolerance() {
6581  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.dual_tolerance)
6582  _has_bits_[0] &= ~0x00000004u;
6583  ::operations_research::OptionalDouble* temp = dual_tolerance_;
6584  dual_tolerance_ = nullptr;
6585  return temp;
6586 }
6587 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::_internal_mutable_dual_tolerance() {
6588  _has_bits_[0] |= 0x00000004u;
6589  if (dual_tolerance_ == nullptr) {
6590  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
6591  dual_tolerance_ = p;
6592  }
6593  return dual_tolerance_;
6594 }
6595 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_dual_tolerance() {
6596  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.dual_tolerance)
6597  return _internal_mutable_dual_tolerance();
6598 }
6600  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6601  if (message_arena == nullptr) {
6602  delete dual_tolerance_;
6603  }
6604  if (dual_tolerance) {
6605  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6606  if (message_arena != submessage_arena) {
6607  dual_tolerance = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6608  message_arena, dual_tolerance, submessage_arena);
6609  }
6610  _has_bits_[0] |= 0x00000004u;
6611  } else {
6612  _has_bits_[0] &= ~0x00000004u;
6613  }
6614  dual_tolerance_ = dual_tolerance;
6615  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.dual_tolerance)
6616 }
6617 
6618 // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
6619 inline bool MPSolverCommonParameters::_internal_has_lp_algorithm() const {
6620  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6621  return value;
6622 }
6624  return _internal_has_lp_algorithm();
6625 }
6627  lp_algorithm_ = 0;
6628  _has_bits_[0] &= ~0x00000008u;
6629 }
6630 inline ::operations_research::MPSolverCommonParameters_LPAlgorithmValues MPSolverCommonParameters::_internal_lp_algorithm() const {
6631  return static_cast< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues >(lp_algorithm_);
6632 }
6634  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.lp_algorithm)
6635  return _internal_lp_algorithm();
6636 }
6637 inline void MPSolverCommonParameters::_internal_set_lp_algorithm(::operations_research::MPSolverCommonParameters_LPAlgorithmValues value) {
6639  _has_bits_[0] |= 0x00000008u;
6640  lp_algorithm_ = value;
6641 }
6643  _internal_set_lp_algorithm(value);
6644  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.lp_algorithm)
6645 }
6646 
6647 // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
6648 inline bool MPSolverCommonParameters::_internal_has_presolve() const {
6649  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6650  return value;
6651 }
6653  return _internal_has_presolve();
6654 }
6656  presolve_ = 0;
6657  _has_bits_[0] &= ~0x00000010u;
6658 }
6659 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::_internal_presolve() const {
6660  return static_cast< ::operations_research::OptionalBoolean >(presolve_);
6661 }
6662 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::presolve() const {
6663  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.presolve)
6664  return _internal_presolve();
6665 }
6666 inline void MPSolverCommonParameters::_internal_set_presolve(::operations_research::OptionalBoolean value) {
6667  assert(::operations_research::OptionalBoolean_IsValid(value));
6668  _has_bits_[0] |= 0x00000010u;
6669  presolve_ = value;
6670 }
6671 inline void MPSolverCommonParameters::set_presolve(::operations_research::OptionalBoolean value) {
6672  _internal_set_presolve(value);
6673  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.presolve)
6674 }
6675 
6676 // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
6677 inline bool MPSolverCommonParameters::_internal_has_scaling() const {
6678  bool value = (_has_bits_[0] & 0x00000020u) != 0;
6679  return value;
6680 }
6682  return _internal_has_scaling();
6683 }
6685  scaling_ = 0;
6686  _has_bits_[0] &= ~0x00000020u;
6687 }
6688 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::_internal_scaling() const {
6689  return static_cast< ::operations_research::OptionalBoolean >(scaling_);
6690 }
6691 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::scaling() const {
6692  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.scaling)
6693  return _internal_scaling();
6694 }
6695 inline void MPSolverCommonParameters::_internal_set_scaling(::operations_research::OptionalBoolean value) {
6696  assert(::operations_research::OptionalBoolean_IsValid(value));
6697  _has_bits_[0] |= 0x00000020u;
6698  scaling_ = value;
6699 }
6700 inline void MPSolverCommonParameters::set_scaling(::operations_research::OptionalBoolean value) {
6701  _internal_set_scaling(value);
6702  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.scaling)
6703 }
6704 
6705 // -------------------------------------------------------------------
6706 
6707 // -------------------------------------------------------------------
6708 
6709 // -------------------------------------------------------------------
6710 
6711 // MPModelDeltaProto
6712 
6713 // optional string baseline_model_file_path = 1;
6714 inline bool MPModelDeltaProto::_internal_has_baseline_model_file_path() const {
6715  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6716  return value;
6717 }
6719  return _internal_has_baseline_model_file_path();
6720 }
6722  baseline_model_file_path_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6723  _has_bits_[0] &= ~0x00000001u;
6724 }
6725 inline const std::string& MPModelDeltaProto::baseline_model_file_path() const {
6726  // @@protoc_insertion_point(field_get:operations_research.MPModelDeltaProto.baseline_model_file_path)
6727  return _internal_baseline_model_file_path();
6728 }
6729 inline void MPModelDeltaProto::set_baseline_model_file_path(const std::string& value) {
6730  _internal_set_baseline_model_file_path(value);
6731  // @@protoc_insertion_point(field_set:operations_research.MPModelDeltaProto.baseline_model_file_path)
6732 }
6734  // @@protoc_insertion_point(field_mutable:operations_research.MPModelDeltaProto.baseline_model_file_path)
6735  return _internal_mutable_baseline_model_file_path();
6736 }
6737 inline const std::string& MPModelDeltaProto::_internal_baseline_model_file_path() const {
6738  return baseline_model_file_path_.GetNoArena();
6739 }
6740 inline void MPModelDeltaProto::_internal_set_baseline_model_file_path(const std::string& value) {
6741  _has_bits_[0] |= 0x00000001u;
6742  baseline_model_file_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
6743 }
6744 inline void MPModelDeltaProto::set_baseline_model_file_path(std::string&& value) {
6745  _has_bits_[0] |= 0x00000001u;
6746  baseline_model_file_path_.SetNoArena(
6747  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
6748  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPModelDeltaProto.baseline_model_file_path)
6749 }
6750 inline void MPModelDeltaProto::set_baseline_model_file_path(const char* value) {
6751  GOOGLE_DCHECK(value != nullptr);
6752  _has_bits_[0] |= 0x00000001u;
6753  baseline_model_file_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
6754  // @@protoc_insertion_point(field_set_char:operations_research.MPModelDeltaProto.baseline_model_file_path)
6755 }
6756 inline void MPModelDeltaProto::set_baseline_model_file_path(const char* value, size_t size) {
6757  _has_bits_[0] |= 0x00000001u;
6758  baseline_model_file_path_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
6759  ::std::string(reinterpret_cast<const char*>(value), size));
6760  // @@protoc_insertion_point(field_set_pointer:operations_research.MPModelDeltaProto.baseline_model_file_path)
6761 }
6762 inline std::string* MPModelDeltaProto::_internal_mutable_baseline_model_file_path() {
6763  _has_bits_[0] |= 0x00000001u;
6764  return baseline_model_file_path_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6765 }
6767  // @@protoc_insertion_point(field_release:operations_research.MPModelDeltaProto.baseline_model_file_path)
6768  if (!_internal_has_baseline_model_file_path()) {
6769  return nullptr;
6770  }
6771  _has_bits_[0] &= ~0x00000001u;
6772  return baseline_model_file_path_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6773 }
6774 inline void MPModelDeltaProto::set_allocated_baseline_model_file_path(std::string* baseline_model_file_path) {
6775  if (baseline_model_file_path != nullptr) {
6776  _has_bits_[0] |= 0x00000001u;
6777  } else {
6778  _has_bits_[0] &= ~0x00000001u;
6779  }
6780  baseline_model_file_path_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), baseline_model_file_path);
6781  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelDeltaProto.baseline_model_file_path)
6782 }
6783 
6784 // map<int32, .operations_research.MPVariableProto> variable_overrides = 2;
6785 inline int MPModelDeltaProto::_internal_variable_overrides_size() const {
6786  return variable_overrides_.size();
6787 }
6789  return _internal_variable_overrides_size();
6790 }
6792  variable_overrides_.Clear();
6793 }
6794 inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >&
6795 MPModelDeltaProto::_internal_variable_overrides() const {
6796  return variable_overrides_.GetMap();
6797 }
6798 inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >&
6800  // @@protoc_insertion_point(field_map:operations_research.MPModelDeltaProto.variable_overrides)
6801  return _internal_variable_overrides();
6802 }
6803 inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >*
6804 MPModelDeltaProto::_internal_mutable_variable_overrides() {
6805  return variable_overrides_.MutableMap();
6806 }
6807 inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >*
6809  // @@protoc_insertion_point(field_mutable_map:operations_research.MPModelDeltaProto.variable_overrides)
6810  return _internal_mutable_variable_overrides();
6811 }
6812 
6813 // map<int32, .operations_research.MPConstraintProto> constraint_overrides = 3;
6814 inline int MPModelDeltaProto::_internal_constraint_overrides_size() const {
6815  return constraint_overrides_.size();
6816 }
6818  return _internal_constraint_overrides_size();
6819 }
6821  constraint_overrides_.Clear();
6822 }
6823 inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >&
6824 MPModelDeltaProto::_internal_constraint_overrides() const {
6825  return constraint_overrides_.GetMap();
6826 }
6827 inline const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >&
6829  // @@protoc_insertion_point(field_map:operations_research.MPModelDeltaProto.constraint_overrides)
6830  return _internal_constraint_overrides();
6831 }
6832 inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >*
6833 MPModelDeltaProto::_internal_mutable_constraint_overrides() {
6834  return constraint_overrides_.MutableMap();
6835 }
6836 inline ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >*
6838  // @@protoc_insertion_point(field_mutable_map:operations_research.MPModelDeltaProto.constraint_overrides)
6839  return _internal_mutable_constraint_overrides();
6840 }
6841 
6842 // -------------------------------------------------------------------
6843 
6844 // MPModelRequest
6845 
6846 // optional .operations_research.MPModelProto model = 1;
6847 inline bool MPModelRequest::_internal_has_model() const {
6848  bool value = (_has_bits_[0] & 0x00000002u) != 0;
6849  PROTOBUF_ASSUME(!value || model_ != nullptr);
6850  return value;
6851 }
6852 inline bool MPModelRequest::has_model() const {
6853  return _internal_has_model();
6854 }
6856  if (model_ != nullptr) model_->Clear();
6857  _has_bits_[0] &= ~0x00000002u;
6858 }
6859 inline const ::operations_research::MPModelProto& MPModelRequest::_internal_model() const {
6860  const ::operations_research::MPModelProto* p = model_;
6861  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPModelProto*>(
6863 }
6864 inline const ::operations_research::MPModelProto& MPModelRequest::model() const {
6865  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.model)
6866  return _internal_model();
6867 }
6868 inline ::operations_research::MPModelProto* MPModelRequest::release_model() {
6869  // @@protoc_insertion_point(field_release:operations_research.MPModelRequest.model)
6870  _has_bits_[0] &= ~0x00000002u;
6871  ::operations_research::MPModelProto* temp = model_;
6872  model_ = nullptr;
6873  return temp;
6874 }
6875 inline ::operations_research::MPModelProto* MPModelRequest::_internal_mutable_model() {
6876  _has_bits_[0] |= 0x00000002u;
6877  if (model_ == nullptr) {
6878  auto* p = CreateMaybeMessage<::operations_research::MPModelProto>(GetArenaNoVirtual());
6879  model_ = p;
6880  }
6881  return model_;
6882 }
6883 inline ::operations_research::MPModelProto* MPModelRequest::mutable_model() {
6884  // @@protoc_insertion_point(field_mutable:operations_research.MPModelRequest.model)
6885  return _internal_mutable_model();
6886 }
6888  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6889  if (message_arena == nullptr) {
6890  delete model_;
6891  }
6892  if (model) {
6893  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6894  if (message_arena != submessage_arena) {
6895  model = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6896  message_arena, model, submessage_arena);
6897  }
6898  _has_bits_[0] |= 0x00000002u;
6899  } else {
6900  _has_bits_[0] &= ~0x00000002u;
6901  }
6902  model_ = model;
6903  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelRequest.model)
6904 }
6905 
6906 // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
6907 inline bool MPModelRequest::_internal_has_solver_type() const {
6908  bool value = (_has_bits_[0] & 0x00000020u) != 0;
6909  return value;
6910 }
6911 inline bool MPModelRequest::has_solver_type() const {
6912  return _internal_has_solver_type();
6913 }
6915  solver_type_ = 2;
6916  _has_bits_[0] &= ~0x00000020u;
6917 }
6918 inline ::operations_research::MPModelRequest_SolverType MPModelRequest::_internal_solver_type() const {
6919  return static_cast< ::operations_research::MPModelRequest_SolverType >(solver_type_);
6920 }
6922  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_type)
6923  return _internal_solver_type();
6924 }
6925 inline void MPModelRequest::_internal_set_solver_type(::operations_research::MPModelRequest_SolverType value) {
6927  _has_bits_[0] |= 0x00000020u;
6928  solver_type_ = value;
6929 }
6931  _internal_set_solver_type(value);
6932  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_type)
6933 }
6934 
6935 // optional double solver_time_limit_seconds = 3;
6936 inline bool MPModelRequest::_internal_has_solver_time_limit_seconds() const {
6937  bool value = (_has_bits_[0] & 0x00000008u) != 0;
6938  return value;
6939 }
6941  return _internal_has_solver_time_limit_seconds();
6942 }
6944  solver_time_limit_seconds_ = 0;
6945  _has_bits_[0] &= ~0x00000008u;
6946 }
6947 inline double MPModelRequest::_internal_solver_time_limit_seconds() const {
6948  return solver_time_limit_seconds_;
6949 }
6951  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_time_limit_seconds)
6952  return _internal_solver_time_limit_seconds();
6953 }
6954 inline void MPModelRequest::_internal_set_solver_time_limit_seconds(double value) {
6955  _has_bits_[0] |= 0x00000008u;
6956  solver_time_limit_seconds_ = value;
6957 }
6959  _internal_set_solver_time_limit_seconds(value);
6960  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_time_limit_seconds)
6961 }
6962 
6963 // optional bool enable_internal_solver_output = 4 [default = false];
6964 inline bool MPModelRequest::_internal_has_enable_internal_solver_output() const {
6965  bool value = (_has_bits_[0] & 0x00000010u) != 0;
6966  return value;
6967 }
6969  return _internal_has_enable_internal_solver_output();
6970 }
6972  enable_internal_solver_output_ = false;
6973  _has_bits_[0] &= ~0x00000010u;
6974 }
6975 inline bool MPModelRequest::_internal_enable_internal_solver_output() const {
6976  return enable_internal_solver_output_;
6977 }
6979  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.enable_internal_solver_output)
6980  return _internal_enable_internal_solver_output();
6981 }
6982 inline void MPModelRequest::_internal_set_enable_internal_solver_output(bool value) {
6983  _has_bits_[0] |= 0x00000010u;
6984  enable_internal_solver_output_ = value;
6985 }
6987  _internal_set_enable_internal_solver_output(value);
6988  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.enable_internal_solver_output)
6989 }
6990 
6991 // optional string solver_specific_parameters = 5;
6992 inline bool MPModelRequest::_internal_has_solver_specific_parameters() const {
6993  bool value = (_has_bits_[0] & 0x00000001u) != 0;
6994  return value;
6995 }
6997  return _internal_has_solver_specific_parameters();
6998 }
7000  solver_specific_parameters_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7001  _has_bits_[0] &= ~0x00000001u;
7002 }
7003 inline const std::string& MPModelRequest::solver_specific_parameters() const {
7004  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_specific_parameters)
7005  return _internal_solver_specific_parameters();
7006 }
7007 inline void MPModelRequest::set_solver_specific_parameters(const std::string& value) {
7008  _internal_set_solver_specific_parameters(value);
7009  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_specific_parameters)
7010 }
7012  // @@protoc_insertion_point(field_mutable:operations_research.MPModelRequest.solver_specific_parameters)
7013  return _internal_mutable_solver_specific_parameters();
7014 }
7015 inline const std::string& MPModelRequest::_internal_solver_specific_parameters() const {
7016  return solver_specific_parameters_.GetNoArena();
7017 }
7018 inline void MPModelRequest::_internal_set_solver_specific_parameters(const std::string& value) {
7019  _has_bits_[0] |= 0x00000001u;
7020  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7021 }
7022 inline void MPModelRequest::set_solver_specific_parameters(std::string&& value) {
7023  _has_bits_[0] |= 0x00000001u;
7024  solver_specific_parameters_.SetNoArena(
7025  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7026  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPModelRequest.solver_specific_parameters)
7027 }
7028 inline void MPModelRequest::set_solver_specific_parameters(const char* value) {
7029  GOOGLE_DCHECK(value != nullptr);
7030  _has_bits_[0] |= 0x00000001u;
7031  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7032  // @@protoc_insertion_point(field_set_char:operations_research.MPModelRequest.solver_specific_parameters)
7033 }
7034 inline void MPModelRequest::set_solver_specific_parameters(const char* value, size_t size) {
7035  _has_bits_[0] |= 0x00000001u;
7036  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7037  ::std::string(reinterpret_cast<const char*>(value), size));
7038  // @@protoc_insertion_point(field_set_pointer:operations_research.MPModelRequest.solver_specific_parameters)
7039 }
7040 inline std::string* MPModelRequest::_internal_mutable_solver_specific_parameters() {
7041  _has_bits_[0] |= 0x00000001u;
7042  return solver_specific_parameters_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7043 }
7045  // @@protoc_insertion_point(field_release:operations_research.MPModelRequest.solver_specific_parameters)
7046  if (!_internal_has_solver_specific_parameters()) {
7047  return nullptr;
7048  }
7049  _has_bits_[0] &= ~0x00000001u;
7050  return solver_specific_parameters_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7051 }
7052 inline void MPModelRequest::set_allocated_solver_specific_parameters(std::string* solver_specific_parameters) {
7053  if (solver_specific_parameters != nullptr) {
7054  _has_bits_[0] |= 0x00000001u;
7055  } else {
7056  _has_bits_[0] &= ~0x00000001u;
7057  }
7058  solver_specific_parameters_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), solver_specific_parameters);
7059  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelRequest.solver_specific_parameters)
7060 }
7061 
7062 // optional .operations_research.MPModelDeltaProto model_delta = 8;
7063 inline bool MPModelRequest::_internal_has_model_delta() const {
7064  bool value = (_has_bits_[0] & 0x00000004u) != 0;
7065  PROTOBUF_ASSUME(!value || model_delta_ != nullptr);
7066  return value;
7067 }
7068 inline bool MPModelRequest::has_model_delta() const {
7069  return _internal_has_model_delta();
7070 }
7072  if (model_delta_ != nullptr) model_delta_->Clear();
7073  _has_bits_[0] &= ~0x00000004u;
7074 }
7075 inline const ::operations_research::MPModelDeltaProto& MPModelRequest::_internal_model_delta() const {
7076  const ::operations_research::MPModelDeltaProto* p = model_delta_;
7077  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPModelDeltaProto*>(
7079 }
7080 inline const ::operations_research::MPModelDeltaProto& MPModelRequest::model_delta() const {
7081  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.model_delta)
7082  return _internal_model_delta();
7083 }
7084 inline ::operations_research::MPModelDeltaProto* MPModelRequest::release_model_delta() {
7085  // @@protoc_insertion_point(field_release:operations_research.MPModelRequest.model_delta)
7086  _has_bits_[0] &= ~0x00000004u;
7087  ::operations_research::MPModelDeltaProto* temp = model_delta_;
7088  model_delta_ = nullptr;
7089  return temp;
7090 }
7091 inline ::operations_research::MPModelDeltaProto* MPModelRequest::_internal_mutable_model_delta() {
7092  _has_bits_[0] |= 0x00000004u;
7093  if (model_delta_ == nullptr) {
7094  auto* p = CreateMaybeMessage<::operations_research::MPModelDeltaProto>(GetArenaNoVirtual());
7095  model_delta_ = p;
7096  }
7097  return model_delta_;
7098 }
7099 inline ::operations_research::MPModelDeltaProto* MPModelRequest::mutable_model_delta() {
7100  // @@protoc_insertion_point(field_mutable:operations_research.MPModelRequest.model_delta)
7101  return _internal_mutable_model_delta();
7102 }
7104  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
7105  if (message_arena == nullptr) {
7106  delete model_delta_;
7107  }
7108  if (model_delta) {
7109  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
7110  if (message_arena != submessage_arena) {
7111  model_delta = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7112  message_arena, model_delta, submessage_arena);
7113  }
7114  _has_bits_[0] |= 0x00000004u;
7115  } else {
7116  _has_bits_[0] &= ~0x00000004u;
7117  }
7118  model_delta_ = model_delta;
7119  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelRequest.model_delta)
7120 }
7121 
7122 // -------------------------------------------------------------------
7123 
7124 // MPSolutionResponse
7125 
7126 // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
7127 inline bool MPSolutionResponse::_internal_has_status() const {
7128  bool value = (_has_bits_[0] & 0x00000008u) != 0;
7129  return value;
7130 }
7131 inline bool MPSolutionResponse::has_status() const {
7132  return _internal_has_status();
7133 }
7135  status_ = 99;
7136  _has_bits_[0] &= ~0x00000008u;
7137 }
7138 inline ::operations_research::MPSolverResponseStatus MPSolutionResponse::_internal_status() const {
7139  return static_cast< ::operations_research::MPSolverResponseStatus >(status_);
7140 }
7142  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.status)
7143  return _internal_status();
7144 }
7145 inline void MPSolutionResponse::_internal_set_status(::operations_research::MPSolverResponseStatus value) {
7147  _has_bits_[0] |= 0x00000008u;
7148  status_ = value;
7149 }
7151  _internal_set_status(value);
7152  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.status)
7153 }
7154 
7155 // optional string status_str = 7;
7156 inline bool MPSolutionResponse::_internal_has_status_str() const {
7157  bool value = (_has_bits_[0] & 0x00000001u) != 0;
7158  return value;
7159 }
7161  return _internal_has_status_str();
7162 }
7164  status_str_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7165  _has_bits_[0] &= ~0x00000001u;
7166 }
7167 inline const std::string& MPSolutionResponse::status_str() const {
7168  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.status_str)
7169  return _internal_status_str();
7170 }
7171 inline void MPSolutionResponse::set_status_str(const std::string& value) {
7172  _internal_set_status_str(value);
7173  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.status_str)
7174 }
7176  // @@protoc_insertion_point(field_mutable:operations_research.MPSolutionResponse.status_str)
7177  return _internal_mutable_status_str();
7178 }
7179 inline const std::string& MPSolutionResponse::_internal_status_str() const {
7180  return status_str_.GetNoArena();
7181 }
7182 inline void MPSolutionResponse::_internal_set_status_str(const std::string& value) {
7183  _has_bits_[0] |= 0x00000001u;
7184  status_str_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7185 }
7186 inline void MPSolutionResponse::set_status_str(std::string&& value) {
7187  _has_bits_[0] |= 0x00000001u;
7188  status_str_.SetNoArena(
7189  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7190  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPSolutionResponse.status_str)
7191 }
7192 inline void MPSolutionResponse::set_status_str(const char* value) {
7193  GOOGLE_DCHECK(value != nullptr);
7194  _has_bits_[0] |= 0x00000001u;
7195  status_str_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7196  // @@protoc_insertion_point(field_set_char:operations_research.MPSolutionResponse.status_str)
7197 }
7198 inline void MPSolutionResponse::set_status_str(const char* value, size_t size) {
7199  _has_bits_[0] |= 0x00000001u;
7200  status_str_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7201  ::std::string(reinterpret_cast<const char*>(value), size));
7202  // @@protoc_insertion_point(field_set_pointer:operations_research.MPSolutionResponse.status_str)
7203 }
7204 inline std::string* MPSolutionResponse::_internal_mutable_status_str() {
7205  _has_bits_[0] |= 0x00000001u;
7206  return status_str_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7207 }
7209  // @@protoc_insertion_point(field_release:operations_research.MPSolutionResponse.status_str)
7210  if (!_internal_has_status_str()) {
7211  return nullptr;
7212  }
7213  _has_bits_[0] &= ~0x00000001u;
7214  return status_str_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7215 }
7216 inline void MPSolutionResponse::set_allocated_status_str(std::string* status_str) {
7217  if (status_str != nullptr) {
7218  _has_bits_[0] |= 0x00000001u;
7219  } else {
7220  _has_bits_[0] &= ~0x00000001u;
7221  }
7222  status_str_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), status_str);
7223  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolutionResponse.status_str)
7224 }
7225 
7226 // optional double objective_value = 2;
7227 inline bool MPSolutionResponse::_internal_has_objective_value() const {
7228  bool value = (_has_bits_[0] & 0x00000002u) != 0;
7229  return value;
7230 }
7232  return _internal_has_objective_value();
7233 }
7235  objective_value_ = 0;
7236  _has_bits_[0] &= ~0x00000002u;
7237 }
7238 inline double MPSolutionResponse::_internal_objective_value() const {
7239  return objective_value_;
7240 }
7242  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.objective_value)
7243  return _internal_objective_value();
7244 }
7245 inline void MPSolutionResponse::_internal_set_objective_value(double value) {
7246  _has_bits_[0] |= 0x00000002u;
7247  objective_value_ = value;
7248 }
7249 inline void MPSolutionResponse::set_objective_value(double value) {
7250  _internal_set_objective_value(value);
7251  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.objective_value)
7252 }
7253 
7254 // optional double best_objective_bound = 5;
7255 inline bool MPSolutionResponse::_internal_has_best_objective_bound() const {
7256  bool value = (_has_bits_[0] & 0x00000004u) != 0;
7257  return value;
7258 }
7260  return _internal_has_best_objective_bound();
7261 }
7263  best_objective_bound_ = 0;
7264  _has_bits_[0] &= ~0x00000004u;
7265 }
7266 inline double MPSolutionResponse::_internal_best_objective_bound() const {
7267  return best_objective_bound_;
7268 }
7270  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.best_objective_bound)
7271  return _internal_best_objective_bound();
7272 }
7273 inline void MPSolutionResponse::_internal_set_best_objective_bound(double value) {
7274  _has_bits_[0] |= 0x00000004u;
7275  best_objective_bound_ = value;
7276 }
7278  _internal_set_best_objective_bound(value);
7279  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.best_objective_bound)
7280 }
7281 
7282 // repeated double variable_value = 3 [packed = true];
7283 inline int MPSolutionResponse::_internal_variable_value_size() const {
7284  return variable_value_.size();
7285 }
7287  return _internal_variable_value_size();
7288 }
7290  variable_value_.Clear();
7291 }
7292 inline double MPSolutionResponse::_internal_variable_value(int index) const {
7293  return variable_value_.Get(index);
7294 }
7295 inline double MPSolutionResponse::variable_value(int index) const {
7296  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.variable_value)
7297  return _internal_variable_value(index);
7298 }
7299 inline void MPSolutionResponse::set_variable_value(int index, double value) {
7300  variable_value_.Set(index, value);
7301  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.variable_value)
7302 }
7303 inline void MPSolutionResponse::_internal_add_variable_value(double value) {
7304  variable_value_.Add(value);
7305 }
7306 inline void MPSolutionResponse::add_variable_value(double value) {
7307  _internal_add_variable_value(value);
7308  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.variable_value)
7309 }
7310 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7311 MPSolutionResponse::_internal_variable_value() const {
7312  return variable_value_;
7313 }
7314 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7316  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.variable_value)
7317  return _internal_variable_value();
7318 }
7319 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7320 MPSolutionResponse::_internal_mutable_variable_value() {
7321  return &variable_value_;
7322 }
7323 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7325  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.variable_value)
7326  return _internal_mutable_variable_value();
7327 }
7328 
7329 // repeated double dual_value = 4 [packed = true];
7330 inline int MPSolutionResponse::_internal_dual_value_size() const {
7331  return dual_value_.size();
7332 }
7334  return _internal_dual_value_size();
7335 }
7337  dual_value_.Clear();
7338 }
7339 inline double MPSolutionResponse::_internal_dual_value(int index) const {
7340  return dual_value_.Get(index);
7341 }
7342 inline double MPSolutionResponse::dual_value(int index) const {
7343  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.dual_value)
7344  return _internal_dual_value(index);
7345 }
7346 inline void MPSolutionResponse::set_dual_value(int index, double value) {
7347  dual_value_.Set(index, value);
7348  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.dual_value)
7349 }
7350 inline void MPSolutionResponse::_internal_add_dual_value(double value) {
7351  dual_value_.Add(value);
7352 }
7353 inline void MPSolutionResponse::add_dual_value(double value) {
7354  _internal_add_dual_value(value);
7355  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.dual_value)
7356 }
7357 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7358 MPSolutionResponse::_internal_dual_value() const {
7359  return dual_value_;
7360 }
7361 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7363  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.dual_value)
7364  return _internal_dual_value();
7365 }
7366 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7367 MPSolutionResponse::_internal_mutable_dual_value() {
7368  return &dual_value_;
7369 }
7370 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7372  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.dual_value)
7373  return _internal_mutable_dual_value();
7374 }
7375 
7376 // repeated double reduced_cost = 6 [packed = true];
7377 inline int MPSolutionResponse::_internal_reduced_cost_size() const {
7378  return reduced_cost_.size();
7379 }
7381  return _internal_reduced_cost_size();
7382 }
7384  reduced_cost_.Clear();
7385 }
7386 inline double MPSolutionResponse::_internal_reduced_cost(int index) const {
7387  return reduced_cost_.Get(index);
7388 }
7389 inline double MPSolutionResponse::reduced_cost(int index) const {
7390  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.reduced_cost)
7391  return _internal_reduced_cost(index);
7392 }
7393 inline void MPSolutionResponse::set_reduced_cost(int index, double value) {
7394  reduced_cost_.Set(index, value);
7395  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.reduced_cost)
7396 }
7397 inline void MPSolutionResponse::_internal_add_reduced_cost(double value) {
7398  reduced_cost_.Add(value);
7399 }
7400 inline void MPSolutionResponse::add_reduced_cost(double value) {
7401  _internal_add_reduced_cost(value);
7402  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.reduced_cost)
7403 }
7404 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7405 MPSolutionResponse::_internal_reduced_cost() const {
7406  return reduced_cost_;
7407 }
7408 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
7410  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.reduced_cost)
7411  return _internal_reduced_cost();
7412 }
7413 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7414 MPSolutionResponse::_internal_mutable_reduced_cost() {
7415  return &reduced_cost_;
7416 }
7417 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
7419  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.reduced_cost)
7420  return _internal_mutable_reduced_cost();
7421 }
7422 
7423 #ifdef __GNUC__
7424  #pragma GCC diagnostic pop
7425 #endif // __GNUC__
7426 // -------------------------------------------------------------------
7427 
7428 // -------------------------------------------------------------------
7429 
7430 // -------------------------------------------------------------------
7431 
7432 // -------------------------------------------------------------------
7433 
7434 // -------------------------------------------------------------------
7435 
7436 // -------------------------------------------------------------------
7437 
7438 // -------------------------------------------------------------------
7439 
7440 // -------------------------------------------------------------------
7441 
7442 // -------------------------------------------------------------------
7443 
7444 // -------------------------------------------------------------------
7445 
7446 // -------------------------------------------------------------------
7447 
7448 // -------------------------------------------------------------------
7449 
7450 // -------------------------------------------------------------------
7451 
7452 // -------------------------------------------------------------------
7453 
7454 // -------------------------------------------------------------------
7455 
7456 // -------------------------------------------------------------------
7457 
7458 // -------------------------------------------------------------------
7459 
7460 // -------------------------------------------------------------------
7461 
7462 
7463 // @@protoc_insertion_point(namespace_scope)
7464 
7465 } // namespace operations_research
7466 
7467 PROTOBUF_NAMESPACE_OPEN
7468 
7469 template <> struct is_proto_enum< ::operations_research::MPSosConstraint_Type> : ::std::true_type {};
7470 template <>
7471 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSosConstraint_Type>() {
7473 }
7474 template <> struct is_proto_enum< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues> : ::std::true_type {};
7475 template <>
7476 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues>() {
7478 }
7479 template <> struct is_proto_enum< ::operations_research::MPModelRequest_SolverType> : ::std::true_type {};
7480 template <>
7481 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPModelRequest_SolverType>() {
7483 }
7484 template <> struct is_proto_enum< ::operations_research::MPSolverResponseStatus> : ::std::true_type {};
7485 template <>
7486 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSolverResponseStatus>() {
7488 }
7489 
7490 PROTOBUF_NAMESPACE_CLOSE
7491 
7492 // @@protoc_insertion_point(global_scope)
7493 
7494 #include <google/protobuf/port_undef.inc>
7495 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
static const MPModelDeltaProto & default_instance()
static void InitAsDefaultInstance()
void clear_branching_priority()
static bool Type_Parse(const std::string &name, Type *value)
void add_coefficient(double value)
const std::string & name() const
MPIndicatorConstraintDefaultTypeInternal _MPIndicatorConstraint_default_instance_
MPSolutionResponse * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static void InitAsDefaultInstance()
constexpr int MPModelRequest_SolverType_SolverType_ARRAYSIZE
@ MPSOLVER_UNKNOWN_STATUS
@ MPModelRequest_SolverType_GLOP_LINEAR_PROGRAMMING
MPModelProto & operator=(MPModelProto &&from) noexcept
bool has_name() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > & variable() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_name()
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr MPSolverResponseStatus MPSolverResponseStatus_MIN
void set_qcoefficient(int index, double value)
@ kVariableValueFieldNumber
const std::string & MPSolverCommonParameters_LPAlgorithmValues_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::internal::MapEntry< MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse, ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE, 0 > SuperType
virtual ~MPQuadraticConstraint()
const std::string & status_str() const
bool has_type() const
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_allocated_name(std::string *name)
::operations_research::MPSosConstraint * release_sos_constraint()
void set_allocated_dual_tolerance(::operations_research::OptionalDouble *dual_tolerance)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
size_t ByteSizeLong() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
constexpr MPSosConstraint_Type MPSosConstraint_Type_Type_MAX
void clear_solver_specific_parameters()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_objective_offset() const
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
MPSosConstraint_Type
void clear_constraint_overrides()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void add_qcoefficient(double value)
std::string * release_name()
int var_index_size() const
size_t ByteSizeLong() const final
MPModelDeltaProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_allocated_max_constraint(::operations_research::MPArrayWithConstantConstraint *max_constraint)
std::string * mutable_solver_specific_parameters()
const std::string & MPModelRequest_SolverType_Name(T enum_t_value)
MPArrayWithConstantConstraint * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_upper_bound()
MPGeneralConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MPModelDeltaProto_VariableOverridesEntry_DoNotUse * internal_default_instance()
MPIndicatorConstraint & operator=(MPIndicatorConstraint &&from) noexcept
int qvar2_index_size() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
int variable_overrides_size() const
static const MPArrayConstraint & default_instance()
static bool LPAlgorithmValues_Parse(const std::string &name, LPAlgorithmValues *value)
int GetCachedSize() const final
bool has_min_constraint() const
static constexpr LPAlgorithmValues LP_ALGO_PRIMAL
int var_index_size() const
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr LPAlgorithmValues LP_ALGO_BARRIER
friend void swap(MPQuadraticObjective &a, MPQuadraticObjective &b)
void set_lp_algorithm(::operations_research::MPSolverCommonParameters_LPAlgorithmValues value)
double objective_offset() const
@ kVarIndexFieldNumber
::operations_research::MPGeneralConstraintProto * add_general_constraint()
MPVariableProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const ::operations_research::MPArrayWithConstantConstraint & max_constraint() const
bool IsInitialized() const final
size_t ByteSizeLong() const final
double lower_bound() const
const ::operations_research::OptionalDouble & primal_tolerance() const
void set_allocated_indicator_constraint(::operations_research::MPIndicatorConstraint *indicator_constraint)
static constexpr int Type_ARRAYSIZE
@ kAbsConstraintFieldNumber
@ kOrConstraint
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
virtual ~MPArrayWithConstantConstraint()
static constexpr Type Type_MIN
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_qcoefficient()
MPConstraintProto & operator=(MPConstraintProto &&from) noexcept
virtual ~MPQuadraticObjective()
constexpr MPSosConstraint_Type MPSosConstraint_Type_Type_MIN
int GetCachedSize() const final
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPModelRequest_SolverType_descriptor()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & qvar2_index() const
void clear_qvar2_index()
constexpr MPModelRequest_SolverType MPModelRequest_SolverType_SolverType_MAX
friend void swap(MPIndicatorConstraint &a, MPIndicatorConstraint &b)
::operations_research::PartialVariableAssignment * mutable_solution_hint()
friend void swap(MPModelProto &a, MPModelProto &b)
MPSosConstraint_Type Type
@ MPModelRequest_SolverType_XPRESS_LINEAR_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
bool has_solver_specific_parameters() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
MPSolverResponseStatus
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
void Swap(MPAbsConstraint *other)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool MPSosConstraint_Type_Parse(const std::string &name, MPSosConstraint_Type *value)
@ kVarIndexFieldNumber
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & dual_value() const
size_t ByteSizeLong() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
bool has_relative_mip_gap() const
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ kIndicatorConstraint
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_allocated_abs_constraint(::operations_research::MPAbsConstraint *abs_constraint)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
size_t ByteSizeLong() const final
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
PartialVariableAssignment()
@ kDualValueFieldNumber
void add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
const std::string & MPSolverResponseStatus_Name(T enum_t_value)
void clear_qvar1_index()
static constexpr SolverType XPRESS_MIXED_INTEGER_PROGRAMMING
void clear_is_lazy()
void set_enable_internal_solver_output(bool value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static bool SolverType_IsValid(int value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool has_primal_tolerance() const
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::MPSosConstraint_Type type() const
MPModelRequest_SolverType SolverType
static constexpr SolverType GLOP_LINEAR_PROGRAMMING
static const std::string & Type_Name(T enum_t_value)
::operations_research::OptionalBoolean scaling() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
std::string * mutable_name()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & qvar1_index() const
int qvar1_index_size() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
bool IsInitialized() const final
static const MPSolutionResponse & default_instance()
virtual ~MPModelRequest()
void set_allocated_solver_specific_parameters(std::string *solver_specific_parameters)
MPQuadraticObjective(MPQuadraticObjective &&from) noexcept
void add_reduced_cost(double value)
GeneralConstraintCase
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & reduced_cost() const
static const MPVariableProto * internal_default_instance()
virtual ~MPConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
bool IsInitialized() const final
const ::operations_research::MPModelProto & model() const
static const MPConstraintProto & default_instance()
int variable_value_size() const
static constexpr SolverType BOP_INTEGER_PROGRAMMING
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_name(const std::string &value)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
@ MPSOLVER_MODEL_INVALID_SOLUTION_HINT
bool IsInitialized() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
@ kObjectiveCoefficientFieldNumber
const ::operations_research::MPAbsConstraint & abs_constraint() const
void set_scaling(::operations_research::OptionalBoolean value)
size_t ByteSizeLong() const final
void clear_lower_bound()
void clear_var_index()
const ::operations_research::MPConstraintProto & constraint() const
int var_index_size() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void Swap(PartialVariableAssignment *other)
MPModelRequest * New() const final
MPQuadraticConstraint * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void Swap(MPSolverCommonParameters *other)
static constexpr int kIndexInFileMessages
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_dual_value()
@ kResultantVarIndexFieldNumber
std::string * release_name()
const std::string & name() const
PartialVariableAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_reduced_cost(int index, double value)
@ MPSosConstraint_Type_SOS2
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static constexpr int kIndexInFileMessages
void clear_lower_bound()
virtual ~MPIndicatorConstraint()
void set_allocated_name(std::string *name)
friend void swap(OptionalDouble &a, OptionalDouble &b)
void set_allocated_primal_tolerance(::operations_research::OptionalDouble *primal_tolerance)
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > * mutable_constraint()
MPQuadraticObjective * New() const final
@ kObjectiveOffsetFieldNumber
int var_value_size() const
int GetCachedSize() const final
int qvar1_index_size() const
MPArrayConstraint()
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverCommonParameters_LPAlgorithmValues_descriptor()
static constexpr int kIndexInFileMessages
static const PartialVariableAssignment & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & variable_value() const
void clear_min_constraint()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
MPArrayWithConstantConstraint & operator=(const MPArrayWithConstantConstraint &from)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_
MPSolverCommonParametersDefaultTypeInternal _MPSolverCommonParameters_default_instance_
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MPSosConstraint & operator=(MPSosConstraint &&from) noexcept
bool has_status_str() const
::operations_research::MPConstraintProto * mutable_constraint()
bool has_status() const
@ kAndConstraint
void clear_name()
bool has_baseline_model_file_path() const
void clear_var_index()
void Swap(MPGeneralConstraintProto *other)
void Swap(MPArrayWithConstantConstraint *other)
size_t ByteSizeLong() const final
size_t ByteSizeLong() const final
const ::operations_research::MPArrayWithConstantConstraint & min_constraint() const
static const MPSosConstraint & default_instance()
MPQuadraticConstraint(MPQuadraticConstraint &&from) noexcept
static constexpr SolverType GUROBI_LINEAR_PROGRAMMING
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
@ kLowerBoundFieldNumber
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
void clear_max_constraint()
@ MPSOLVER_ABNORMAL
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
bool has_lower_bound() const
::operations_research::MPArrayConstraint * release_or_constraint()
void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > & general_constraint() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
@ MPModelRequest_SolverType_CBC_MIXED_INTEGER_PROGRAMMING
@ kUpperBoundFieldNumber
bool has_solver_type() const
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
MPSolutionResponse & operator=(const MPSolutionResponse &from)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
@ MPSolverCommonParameters_LPAlgorithmValues_LP_ALGO_UNSPECIFIED
@ kVarIndexFieldNumber
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void clear_name()
MPSolutionResponse()
static constexpr int kIndexInFileMessages
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
@ kBaselineModelFilePathFieldNumber
bool MPModelRequest_SolverType_IsValid(int value)
bool has_indicator_constraint() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static constexpr int kIndexInFileMessages
static constexpr int kIndexInFileMessages
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: linear_expr.h:84
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void clear_is_integer()
bool has_constraint() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::MPArrayWithConstantConstraint * release_max_constraint()
void set_best_objective_bound(double value)
void Swap(MPModelRequest *other)
@ MPModelRequest_SolverType_XPRESS_MIXED_INTEGER_PROGRAMMING
void clear_upper_bound()
virtual ~MPModelProto()
static const MPSolverCommonParameters * internal_default_instance()
@ kValueFieldNumber
bool has_upper_bound() const
void add_var_value(double value)
void clear_var_index()
static void InitAsDefaultInstance()
double objective_coefficient() const
size_t ByteSizeLong() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(MPModelRequest &a, MPModelRequest &b)
size_t ByteSizeLong() const final
bool IsInitialized() const final
MPGeneralConstraintProto & operator=(const MPGeneralConstraintProto &from)
void Swap(MPConstraintProto *other)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value)
@ kGeneralConstraintFieldNumber
MPSosConstraint()
static constexpr int kIndexInFileMessages
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_name() const
static constexpr Type SOS2
int var_index_size() const
::operations_research::OptionalDouble * mutable_primal_tolerance()
@ kQvar2IndexFieldNumber
::operations_research::MPSosConstraint * mutable_sos_constraint()
static void InitAsDefaultInstance()
void clear_or_constraint()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool has_quadratic_constraint() const
@ kLowerBoundFieldNumber
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > * mutable_variable()
::operations_research::MPConstraintProto * release_constraint()
MPIndicatorConstraint()
@ kLpAlgorithmFieldNumber
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kEnableInternalSolverOutputFieldNumber
::operations_research::MPAbsConstraint * mutable_abs_constraint()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const MPGeneralConstraintProto * internal_default_instance()
MPArrayWithConstantConstraintDefaultTypeInternal _MPArrayWithConstantConstraint_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
bool has_max_constraint() const
int qcoefficient_size() const
virtual ~MPSolverCommonParameters()
MPModelRequest()
MPVariableProto()
bool has_constant() const
static const MPGeneralConstraintProto & default_instance()
bool IsInitialized() const final
@ kSosConstraint
@ kWeightFieldNumber
int reduced_cost_size() const
void clear_dual_tolerance()
size_t ByteSizeLong() const final
bool has_upper_bound() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
bool has_or_constraint() const
int coefficient_size() const
static constexpr int kIndexInFileMessages
const std::string & name() const
MPAbsConstraint * New() const final
void set_lower_bound(double value)
void clear_var_index()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
int GetCachedSize() const final
static const MPQuadraticConstraint & default_instance()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void set_constant(double value)
virtual ~MPAbsConstraint()
void clear_constraint()
PartialVariableAssignment & operator=(const PartialVariableAssignment &from)
static constexpr int kIndexInFileMessages
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
friend void swap(MPSolverCommonParameters &a, MPSolverCommonParameters &b)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static constexpr SolverType CPLEX_MIXED_INTEGER_PROGRAMMING
@ kBestObjectiveBoundFieldNumber
MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static bool Type_IsValid(int value)
void clear_abs_constraint()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & coefficient() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MPArrayConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
MPQuadraticObjective & operator=(MPQuadraticObjective &&from) noexcept
void clear_variable()
MPModelDeltaProto & operator=(const MPModelDeltaProto &from)
bool IsInitialized() const final
static const MPSolverCommonParameters & default_instance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
MPQuadraticConstraint & operator=(const MPQuadraticConstraint &from)
void set_name(const std::string &value)
int GetCachedSize() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_objective_value()
static void InitAsDefaultInstance()
OptionalDouble(OptionalDouble &&from) noexcept
void clear_lower_bound()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto > & variable_overrides() const
friend void swap(MPQuadraticConstraint &a, MPQuadraticConstraint &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * Type_descriptor()
static constexpr int kIndexInFileMessages
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
std::string * release_status_str()
MPArrayWithConstantConstraint & operator=(MPArrayWithConstantConstraint &&from) noexcept
bool has_resultant_var_index() const
::operations_research::MPArrayConstraint * mutable_and_constraint()
MPModelRequest & operator=(const MPModelRequest &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
static const MPArrayConstraint * internal_default_instance()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static void InitAsDefaultInstance()
MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_
static constexpr SolverType XPRESS_LINEAR_PROGRAMMING
static bool ValidateValue(void *)
void clear_primal_tolerance()
virtual ~OptionalDouble()
static constexpr SolverType GLPK_MIXED_INTEGER_PROGRAMMING
MPSosConstraint & operator=(const MPSosConstraint &from)
@ kVarIndexFieldNumber
void clear_resultant_var_index()
void set_value(double value)
bool has_scaling() const
@ MPModelRequest_SolverType_SCIP_MIXED_INTEGER_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
MPSolverCommonParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
@ kNameFieldNumber
static void InitAsDefaultInstance()
friend void swap(PartialVariableAssignment &a, PartialVariableAssignment &b)
static constexpr LPAlgorithmValues LP_ALGO_UNSPECIFIED
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
bool IsInitialized() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MPModelDeltaProto * internal_default_instance()
friend void swap(MPArrayWithConstantConstraint &a, MPArrayWithConstantConstraint &b)
int coefficient_size() const
@ kConstraintFieldNumber
@ kMaxConstraint
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_coefficient()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ MPModelRequest_SolverType_GUROBI_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType GLPK_LINEAR_PROGRAMMING
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
static constexpr SolverType SolverType_MAX
void clear_model()
MPGeneralConstraintProto * New() const final
MPSolverCommonParameters_LPAlgorithmValues
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::MPIndicatorConstraint * mutable_indicator_constraint()
void clear_var_index()
@ kResultantVarIndexFieldNumber
void set_coefficient(int index, double value)
bool has_presolve() const
void add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value)
virtual ~PartialVariableAssignment()
bool has_sos_constraint() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void clear_resultant_var_index()
int GetCachedSize() const final
::operations_research::MPModelRequest_SolverType solver_type() const
double upper_bound() const
virtual ~MPModelDeltaProto()
const ::operations_research::MPSosConstraint & sos_constraint() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
constexpr int MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_ARRAYSIZE
::operations_research::MPQuadraticConstraint * mutable_quadratic_constraint()
void clear_relative_mip_gap()
static constexpr int kIndexInFileMessages
@ kUpperBoundFieldNumber
::operations_research::MPConstraintProto * add_constraint()
static const MPQuadraticConstraint * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
int constraint_size() const
MPSosConstraint(MPSosConstraint &&from) noexcept
MPConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & weight() const
MPGeneralConstraintProtoDefaultTypeInternal _MPGeneralConstraintProto_default_instance_
::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const
const ::operations_research::MPModelDeltaProto & model_delta() const
MPModelDeltaProto()
static constexpr int kIndexInFileMessages
int GetCachedSize() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ MPSOLVER_FEASIBLE
void Swap(MPArrayConstraint *other)
MPQuadraticObjective * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
bool has_lower_bound() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::internal::MapEntry< MPModelDeltaProto_VariableOverridesEntry_DoNotUse, ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE, 0 > SuperType
void set_status_str(const std::string &value)
void clear_variable_overrides()
void clear_variable_value()
static const MPModelProto * internal_default_instance()
void clear_upper_bound()
void set_variable_value(int index, double value)
@ kVarValueFieldNumber
MPAbsConstraint & operator=(const MPAbsConstraint &from)
double lower_bound() const
bool has_name() const
const std::string & baseline_model_file_path() const
void clear_general_constraint()
static constexpr SolverType CPLEX_LINEAR_PROGRAMMING
void clear_solver_time_limit_seconds()
MPConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SolverType_descriptor()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
virtual ~MPArrayConstraint()
static constexpr int kIndexInFileMessages
void set_allocated_quadratic_constraint(::operations_research::MPQuadraticConstraint *quadratic_constraint)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
::operations_research::OptionalDouble * release_primal_tolerance()
void set_allocated_status_str(std::string *status_str)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & coefficient() const
@ kNameFieldNumber
void clear_constant()
@ kSolutionHintFieldNumber
OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_
void clear_status()
virtual ~MPGeneralConstraintProto()
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_var_index()
@ MPSOLVER_UNBOUNDED
bool has_lower_bound() const
void clear_name()
OptionalDouble & operator=(const OptionalDouble &from)
static void InitAsDefaultInstance()
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
static bool LPAlgorithmValues_IsValid(int value)
const ::operations_research::MPArrayConstraint & and_constraint() const
int GetCachedSize() const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_coefficient()
MPConstraintProto & operator=(const MPConstraintProto &from)
::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::int32 var_index() const
::operations_research::MPVariableProto * add_variable()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_solver_time_limit_seconds(double value)
const std::string & name() const
MPModelProto & operator=(const MPModelProto &from)
void clear_lp_algorithm()
void set_upper_bound(double value)
void set_allocated_baseline_model_file_path(std::string *baseline_model_file_path)
static const PartialVariableAssignment * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_qvar1_index()
GeneralConstraintCase general_constraint_case() const
MPVariableProto & operator=(const MPVariableProto &from)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_general_constraint()
MPArrayConstraint & operator=(MPArrayConstraint &&from) noexcept
MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse()
void set_lower_bound(double value)
@ kVarIndexFieldNumber
MPConstraintProto * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void clear_coefficient()
bool IsInitialized() const final
MPSolutionResponseDefaultTypeInternal _MPSolutionResponse_default_instance_
void set_weight(int index, double value)
static const MPAbsConstraint & default_instance()
static constexpr SolverType SolverType_MIN
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool has_model() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
MPArrayConstraint * New() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
MPModelProto * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
::operations_research::OptionalBoolean presolve() const
constexpr MPModelRequest_SolverType MPModelRequest_SolverType_SolverType_MIN
void add_qvar2_index(::PROTOBUF_NAMESPACE_ID::int32 value)
@ kBranchingPriorityFieldNumber
MPQuadraticConstraint & operator=(MPQuadraticConstraint &&from) noexcept
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & qcoefficient() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MPVariableProto & default_instance()
@ kConstantFieldNumber
void clear_presolve()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & var_value() const
@ kNameFieldNumber
@ kCoefficientFieldNumber
MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
@ MPSOLVER_MODEL_IS_VALID
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & qvar2_index() const
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::operations_research::MPArrayConstraint & or_constraint() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
@ kQvar1IndexFieldNumber
::operations_research::MPQuadraticObjective * release_quadratic_objective()
static const MPSosConstraint * internal_default_instance()
@ kMaxConstraintFieldNumber
bool has_best_objective_bound() const
std::string * mutable_baseline_model_file_path()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ MPSosConstraint_Type_SOS1_DEFAULT
MPModelRequest * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
bool has_var_index() const
bool has_enable_internal_solver_output() const
@ kMaximizeFieldNumber
@ MPSOLVER_SOLVER_TYPE_UNAVAILABLE
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_weight()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::operations_research::MPQuadraticObjective & quadratic_objective() const
MPSolverCommonParameters * New() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
@ MPSOLVER_MODEL_INVALID_SOLVER_PARAMETERS
::operations_research::MPQuadraticObjective * mutable_quadratic_objective()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
size_t ByteSizeLong() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
@ kVarIndexFieldNumber
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
std::string * release_solver_specific_parameters()
MPGeneralConstraintProto & operator=(MPGeneralConstraintProto &&from) noexcept
MPGeneralConstraintProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_qvar2_index()
MPModelDeltaProto_VariableOverridesEntry_DoNotUse()
void set_baseline_model_file_path(const std::string &value)
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_qvar1_index()
@ kQcoefficientFieldNumber
MPQuadraticObjective()
void set_objective_coefficient(double value)
static constexpr LPAlgorithmValues LPAlgorithmValues_MAX
bool IsInitialized() const final
void set_name(const std::string &value)
const std::string & solver_specific_parameters() const
void clear_quadratic_objective()
bool IsInitialized() const final
@ MPSolverCommonParameters_LPAlgorithmValues_LP_ALGO_DUAL
::PROTOBUF_NAMESPACE_ID::int32 branching_priority() const
void set_allocated_quadratic_objective(::operations_research::MPQuadraticObjective *quadratic_objective)
void clear_constraint()
MPModelDeltaProto(MPModelDeltaProto &&from) noexcept
::operations_research::PartialVariableAssignment * release_solution_hint()
void clear_solution_hint()
static const OptionalDouble & default_instance()
void Swap(MPIndicatorConstraint *other)
bool MPSosConstraint_Type_IsValid(int value)
void clear_objective_offset()
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
MPQuadraticConstraint()
static const MPArrayWithConstantConstraint * internal_default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
bool has_lp_algorithm() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
MPIndicatorConstraint & operator=(const MPIndicatorConstraint &from)
::operations_research::MPArrayConstraint * mutable_or_constraint()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_weight()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
bool has_model_delta() const
MPConstraintProto(MPConstraintProto &&from) noexcept
MPArrayConstraintDefaultTypeInternal _MPArrayConstraint_default_instance_
@ kStatusStrFieldNumber
MPSosConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static bool SolverType_Parse(const std::string &name, SolverType *value)
@ MPModelRequest_SolverType_CPLEX_MIXED_INTEGER_PROGRAMMING
static const MPQuadraticObjective * internal_default_instance()
friend void swap(MPSosConstraint &a, MPSosConstraint &b)
bool has_maximize() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
MPSolverCommonParameters_LPAlgorithmValues LPAlgorithmValues
bool MPSolverCommonParameters_LPAlgorithmValues_IsValid(int value)
void clear_enable_internal_solver_output()
void add_coefficient(double value)
@ kSolverSpecificParametersFieldNumber
int weight_size() const
static void InitAsDefaultInstance()
static const MPSolutionResponse * internal_default_instance()
void set_dual_value(int index, double value)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
bool has_abs_constraint() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
virtual ~MPSosConstraint()
MPModelProto(MPModelProto &&from) noexcept
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_qcoefficient()
size_t ByteSizeLong() const final
MPSosConstraint * New() const final
MPSolutionResponse * New() const final
::operations_research::MPArrayWithConstantConstraint * release_min_constraint()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_upper_bound(double value)
void set_coefficient(int index, double value)
bool IsInitialized() const final
int var_index_size() const
static constexpr SolverType SCIP_MIXED_INTEGER_PROGRAMMING
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void add_dual_value(double value)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
@ MPSolverCommonParameters_LPAlgorithmValues_LP_ALGO_BARRIER
MPModelProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void clear_and_constraint()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_name(std::string *name)
bool is_lazy() const
const ::operations_research::OptionalDouble & relative_mip_gap() const
friend void swap(MPArrayConstraint &a, MPArrayConstraint &b)
friend void swap(MPConstraintProto &a, MPConstraintProto &b)
MPModelDeltaProto & operator=(MPModelDeltaProto &&from) noexcept
void set_objective_offset(double value)
MPAbsConstraint(MPAbsConstraint &&from) noexcept
::operations_research::MPArrayWithConstantConstraint * mutable_min_constraint()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void clear_coefficient()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
@ kLowerBoundFieldNumber
int GetCachedSize() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
const std::string & MPSosConstraint_Type_Name(T enum_t_value)
@ kObjectiveValueFieldNumber
OptionalDouble()
MPArrayWithConstantConstraint(MPArrayWithConstantConstraint &&from) noexcept
int variable_size() const
@ MPModelRequest_SolverType_CPLEX_LINEAR_PROGRAMMING
@ MPModelRequest_SolverType_BOP_INTEGER_PROGRAMMING
static void InitAsDefaultInstance()
static const MPIndicatorConstraint & default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
@ MPSOLVER_NOT_SOLVED
static constexpr int kIndexInFileMessages
::operations_research::OptionalDouble * mutable_relative_mip_gap()
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSosConstraint_Type_descriptor()
bool has_upper_bound() const
void set_qvar1_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr MPSolverCommonParameters_LPAlgorithmValues MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_MAX
void clear_sos_constraint()
bool has_resultant_var_index() const
static void InitAsDefaultInstance()
void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value)
void Swap(MPModelDeltaProto *other)
std::string * release_name()
static const OptionalDouble * internal_default_instance()
bool has_and_constraint() const
@ kSolverTimeLimitSecondsFieldNumber
void set_coefficient(int index, double value)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * LPAlgorithmValues_descriptor()
MPQuadraticConstraintDefaultTypeInternal _MPQuadraticConstraint_default_instance_
MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_VariableOverridesEntry_DoNotUse_default_instance_
static constexpr int SolverType_ARRAYSIZE
void set_allocated_sos_constraint(::operations_research::MPSosConstraint *sos_constraint)
@ kResultantVarIndexFieldNumber
bool has_quadratic_objective() const
@ kSosConstraintFieldNumber
static void InitAsDefaultInstance()
static constexpr SolverType KNAPSACK_MIXED_INTEGER_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & coefficient() const
static constexpr SolverType CBC_MIXED_INTEGER_PROGRAMMING
void clear_qvar1_index()
::operations_research::MPAbsConstraint * release_abs_constraint()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & qvar1_index() const
void clear_model_delta()
@ kModelFieldNumber
virtual ~MPSolutionResponse()
void set_is_integer(bool value)
static constexpr int kIndexInFileMessages
@ kMinConstraint
@ kVarIndexFieldNumber
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void clear_maximize()
@ kAndConstraintFieldNumber
void Swap(MPModelProto *other)
double value() const
static const MPArrayWithConstantConstraint & default_instance()
std::string * mutable_name()
constexpr MPSolverResponseStatus MPSolverResponseStatus_MAX
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_allocated_constraint(::operations_research::MPConstraintProto *constraint)
void set_allocated_or_constraint(::operations_research::MPArrayConstraint *or_constraint)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
std::string * mutable_name()
@ kReducedCostFieldNumber
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
OptionalDouble * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
int var_index_size() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_var_value()
::operations_research::OptionalDouble * release_relative_mip_gap()
OptionalDouble * New() const final
@ kVariableOverridesFieldNumber
MPSolverCommonParameters & operator=(const MPSolverCommonParameters &from)
@ MPModelRequest_SolverType_SAT_INTEGER_PROGRAMMING
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ MPSOLVER_MODEL_INVALID
static constexpr LPAlgorithmValues LPAlgorithmValues_MIN
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const MPIndicatorConstraint * internal_default_instance()
friend void swap(MPSolutionResponse &a, MPSolutionResponse &b)
@ kSolverTypeFieldNumber
static const MPConstraintProto * internal_default_instance()
void add_weight(double value)
friend void swap(MPModelDeltaProto &a, MPModelDeltaProto &b)
MPAbsConstraintDefaultTypeInternal _MPAbsConstraint_default_instance_
static const MPQuadraticObjective & default_instance()
void add_qvar1_index(::PROTOBUF_NAMESPACE_ID::int32 value)
bool has_var_value() const
bool has_value() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void add_coefficient(double value)
@ kQuadraticConstraintFieldNumber
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
double upper_bound() const
void clear_quadratic_constraint()
int GetCachedSize() const final
@ kModelDeltaFieldNumber
MPSolverCommonParameters()
void clear_var_value()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
@ MPSolverCommonParameters_LPAlgorithmValues_LP_ALGO_PRIMAL
static void InitAsDefaultInstance()
PartialVariableAssignment * New() const final
MPModelRequest & operator=(MPModelRequest &&from) noexcept
double upper_bound() const
::operations_research::MPModelDeltaProto * mutable_model_delta()
const ::operations_research::PartialVariableAssignment & solution_hint() const
::PROTOBUF_NAMESPACE_ID::int32 var_index() const
static constexpr Type Type_MAX
@ kMinConstraintFieldNumber
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::MPQuadraticConstraint * release_quadratic_constraint()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
@ kScalingFieldNumber
void clear_value()
void clear_solver_type()
void clear_dual_value()
::operations_research::MPSolverResponseStatus status() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
MPSolutionResponse & operator=(MPSolutionResponse &&from) noexcept
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MPModelDeltaProto * New() const final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
@ kVarValueFieldNumber
int GetCachedSize() const final
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
MPAbsConstraint()
void Swap(MPQuadraticConstraint *other)
void Swap(MPVariableProto *other)
@ MPSOLVER_INFEASIBLE
void clear_objective_coefficient()
@ MPModelRequest_SolverType_GUROBI_LINEAR_PROGRAMMING
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(MPVariableProto &a, MPVariableProto &b)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::operations_research::OptionalDouble * mutable_dual_tolerance()
::operations_research::MPSolverCommonParameters_LPAlgorithmValues lp_algorithm() const
::operations_research::OptionalDouble * release_dual_tolerance()
static const std::string & LPAlgorithmValues_Name(T enum_t_value)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void clear_best_objective_bound()
bool MPSolverResponseStatus_Parse(const std::string &name, MPSolverResponseStatus *value)
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_variable_value()
bool has_dual_tolerance() const
bool is_integer() const
MPSolverCommonParameters & operator=(MPSolverCommonParameters &&from) noexcept
@ kIsIntegerFieldNumber
bool has_name() const
MPArrayWithConstantConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_allocated_relative_mip_gap(::operations_research::OptionalDouble *relative_mip_gap)
@ MPModelRequest_SolverType_GLPK_LINEAR_PROGRAMMING
void MergeFrom(const MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse &other)
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_reduced_cost()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_lower_bound(double value)
constexpr int MPSosConstraint_Type_Type_ARRAYSIZE
::operations_research::MPModelProto * mutable_model()
static constexpr Type SOS1_DEFAULT
int GetCachedSize() const final
void clear_status_str()
bool has_is_integer() const
void set_presolve(::operations_research::OptionalBoolean value)
::operations_research::MPIndicatorConstraint * release_indicator_constraint()
void set_qvar2_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
void set_allocated_model_delta(::operations_research::MPModelDeltaProto *model_delta)
MPQuadraticConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
::operations_research::MPArrayWithConstantConstraint * mutable_max_constraint()
double solver_time_limit_seconds() const
::operations_research::MPArrayConstraint * release_and_constraint()
int GetCachedSize() const final
@ kVariableFieldNumber
::PROTOBUF_NAMESPACE_ID::int32 var_value() const
constexpr MPSolverCommonParameters_LPAlgorithmValues MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_MIN
void clear_var_index()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
@ kNameFieldNumber
std::string * mutable_status_str()
MPIndicatorConstraint(MPIndicatorConstraint &&from) noexcept
static const MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse * internal_default_instance()
void set_var_value(int index, double value)
@ kPresolveFieldNumber
MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const std::string & SolverType_Name(T enum_t_value)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ kQuadraticConstraint
void Swap(MPSolutionResponse *other)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr SolverType SAT_INTEGER_PROGRAMMING
virtual ~MPVariableProto()
@ kQuadraticObjectiveFieldNumber
void set_allocated_solution_hint(::operations_research::PartialVariableAssignment *solution_hint)
void set_allocated_and_constraint(::operations_research::MPArrayConstraint *and_constraint)
double constant() const
@ MPSOLVER_OPTIMAL
@ kCoefficientFieldNumber
bool has_solution_hint() const
OptionalDouble & operator=(OptionalDouble &&from) noexcept
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
bool IsInitialized() const final
MPQuadraticObjectiveDefaultTypeInternal _MPQuadraticObjective_default_instance_
const ::operations_research::MPQuadraticConstraint & quadratic_constraint() const
void set_type(::operations_research::MPSosConstraint_Type value)
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_reduced_cost()
@ GENERAL_CONSTRAINT_NOT_SET
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
@ kOrConstraintFieldNumber
MPVariableProto(MPVariableProto &&from) noexcept
void set_allocated_name(std::string *name)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
PartialVariableAssignment(PartialVariableAssignment &&from) noexcept
static const MPModelRequest * internal_default_instance()
MPArrayConstraint(MPArrayConstraint &&from) noexcept
@ kAbsConstraint
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
int dual_value_size() const
int qvar2_index_size() const
void clear_var_index()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static bool ValidateKey(void *)
void clear_var_value()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto > * mutable_variable_overrides()
@ kTypeFieldNumber
bool MPSolverCommonParameters_LPAlgorithmValues_Parse(const std::string &name, MPSolverCommonParameters_LPAlgorithmValues *value)
void set_allocated_min_constraint(::operations_research::MPArrayWithConstantConstraint *min_constraint)
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > & constraint() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
@ kDualToleranceFieldNumber
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
@ kIsLazyFieldNumber
@ kUpperBoundFieldNumber
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_type()
@ MPModelRequest_SolverType_GLPK_MIXED_INTEGER_PROGRAMMING
static constexpr int kIndexInFileMessages
MPArrayConstraint & operator=(const MPArrayConstraint &from)
const ::operations_research::MPIndicatorConstraint & indicator_constraint() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void clear_scaling()
void set_resultant_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverResponseStatus_descriptor()
MPModelRequest_SolverType
std::string * mutable_name()
void set_name(const std::string &value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
@ kStatusFieldNumber
::operations_research::MPModelDeltaProto * release_model_delta()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_solver_time_limit_seconds() const
static void InitAsDefaultInstance()
int coefficient_size() const
bool has_objective_value() const
int constraint_overrides_size() const
double lower_bound() const
@ kVarIndexFieldNumber
bool has_resultant_var_index() const
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
static const MPAbsConstraint * internal_default_instance()
PartialVariableAssignment & operator=(PartialVariableAssignment &&from) noexcept
double objective_value() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
MPAbsConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto > & constraint_overrides() const
size_t ByteSizeLong() const final
bool has_objective_coefficient() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
MPIndicatorConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
bool IsInitialized() const final
static constexpr int kIndexInFileMessages
@ kConstraintFieldNumber
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_objective_value(double value)
void set_status(::operations_research::MPSolverResponseStatus value)
void set_allocated_model(::operations_research::MPModelProto *model)
MPAbsConstraint & operator=(MPAbsConstraint &&from) noexcept
MPModelProto()
static constexpr int LPAlgorithmValues_ARRAYSIZE
static constexpr SolverType GUROBI_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType CLP_LINEAR_PROGRAMMING
void clear_indicator_constraint()
MPGeneralConstraintProto(MPGeneralConstraintProto &&from) noexcept
void set_solver_type(::operations_research::MPModelRequest_SolverType value)
size_t ByteSizeLong() const final
void set_solver_specific_parameters(const std::string &value)
double best_objective_bound() const
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void add_variable_value(double value)
friend void swap(MPGeneralConstraintProto &a, MPGeneralConstraintProto &b)
@ kConstraintOverridesFieldNumber
@ kQvar2IndexFieldNumber
@ MPModelRequest_SolverType_KNAPSACK_MIXED_INTEGER_PROGRAMMING
MPSolverCommonParameters(MPSolverCommonParameters &&from) noexcept
void clear_qvar2_index()
bool MPSolverResponseStatus_IsValid(int value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
@ kCoefficientFieldNumber
bool IsInitialized() const final
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
MPIndicatorConstraint * New() const final
int general_constraint_size() const
bool enable_internal_solver_output() const
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
::PROTOBUF_NAMESPACE_ID::int32 resultant_var_index() const
int GetCachedSize() const final
@ kQvar1IndexFieldNumber
void set_is_lazy(bool value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kRelativeMipGapFieldNumber
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > * mutable_general_constraint()
MPVariableProto * New() const final
std::string * release_baseline_model_file_path()
size_t ByteSizeLong() const final
::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto > * mutable_constraint_overrides()
int GetCachedSize() const final
@ kPrimalToleranceFieldNumber
void set_maximize(bool value)
void clear_coefficient()
void Swap(MPQuadraticObjective *other)
MPQuadraticObjective & operator=(const MPQuadraticObjective &from)
::operations_research::MPModelProto * release_model()
MPVariableProto & operator=(MPVariableProto &&from) noexcept
static const MPModelRequest & default_instance()
void Swap(OptionalDouble *other)
void clear_resultant_var_index()
static constexpr LPAlgorithmValues LP_ALGO_DUAL
static bool ValidateValue(void *)
int GetCachedSize() const final
bool MPModelRequest_SolverType_Parse(const std::string &name, MPModelRequest_SolverType *value)
@ kIndicatorConstraintFieldNumber
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
friend void swap(MPAbsConstraint &a, MPAbsConstraint &b)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
MPModelDeltaProtoDefaultTypeInternal _MPModelDeltaProto_default_instance_
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ MPModelRequest_SolverType_CLP_LINEAR_PROGRAMMING
constexpr int MPSolverResponseStatus_ARRAYSIZE
void MergeFrom(const MPModelDeltaProto_VariableOverridesEntry_DoNotUse &other)
bool has_branching_priority() const
bool maximize() const
bool has_var_index() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_baseline_model_file_path()
bool IsInitialized() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void Swap(MPSosConstraint *other)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
bool IsInitialized() const final
void set_upper_bound(double value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static bool ValidateKey(void *)
MPModelRequest(MPModelRequest &&from) noexcept
std::string * release_name()
const ::operations_research::OptionalDouble & dual_tolerance() const
MPArrayWithConstantConstraint()
static const MPModelProto & default_instance()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse_default_instance_
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_coefficient()
bool has_is_lazy() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_qvar2_index()
MPSolutionResponse(MPSolutionResponse &&from) noexcept