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 < 3008000
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 3008000 < 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/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
36 #include "ortools/util/optional_boolean.pb.h"
37 // @@protoc_insertion_point(includes)
38 #include <google/protobuf/port_def.inc>
39 #define PROTOBUF_INTERNAL_EXPORT_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
40 PROTOBUF_NAMESPACE_OPEN
41 namespace internal {
42 class AnyMetadata;
43 } // namespace internal
44 PROTOBUF_NAMESPACE_CLOSE
45 
46 // Internal implementation detail -- do not use these members.
48  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
49  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
50  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
51  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
52  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[11]
53  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
54  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
55  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
56  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
57 };
58 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
59 namespace operations_research {
60 class MPConstraintProto;
61 class MPConstraintProtoDefaultTypeInternal;
62 extern MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_;
63 class MPGeneralConstraintProto;
64 class MPGeneralConstraintProtoDefaultTypeInternal;
65 extern MPGeneralConstraintProtoDefaultTypeInternal _MPGeneralConstraintProto_default_instance_;
66 class MPIndicatorConstraint;
67 class MPIndicatorConstraintDefaultTypeInternal;
68 extern MPIndicatorConstraintDefaultTypeInternal _MPIndicatorConstraint_default_instance_;
69 class MPModelProto;
70 class MPModelProtoDefaultTypeInternal;
71 extern MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_;
72 class MPModelRequest;
73 class MPModelRequestDefaultTypeInternal;
74 extern MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_;
75 class MPSolutionResponse;
76 class MPSolutionResponseDefaultTypeInternal;
77 extern MPSolutionResponseDefaultTypeInternal _MPSolutionResponse_default_instance_;
78 class MPSolverCommonParameters;
79 class MPSolverCommonParametersDefaultTypeInternal;
80 extern MPSolverCommonParametersDefaultTypeInternal _MPSolverCommonParameters_default_instance_;
81 class MPSosConstraint;
82 class MPSosConstraintDefaultTypeInternal;
83 extern MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_;
84 class MPVariableProto;
85 class MPVariableProtoDefaultTypeInternal;
86 extern MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_;
87 class OptionalDouble;
88 class OptionalDoubleDefaultTypeInternal;
89 extern OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_;
90 class PartialVariableAssignment;
91 class PartialVariableAssignmentDefaultTypeInternal;
92 extern PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_;
93 } // namespace operations_research
94 PROTOBUF_NAMESPACE_OPEN
95 template<> ::operations_research::MPConstraintProto* Arena::CreateMaybeMessage<::operations_research::MPConstraintProto>(Arena*);
96 template<> ::operations_research::MPGeneralConstraintProto* Arena::CreateMaybeMessage<::operations_research::MPGeneralConstraintProto>(Arena*);
97 template<> ::operations_research::MPIndicatorConstraint* Arena::CreateMaybeMessage<::operations_research::MPIndicatorConstraint>(Arena*);
98 template<> ::operations_research::MPModelProto* Arena::CreateMaybeMessage<::operations_research::MPModelProto>(Arena*);
99 template<> ::operations_research::MPModelRequest* Arena::CreateMaybeMessage<::operations_research::MPModelRequest>(Arena*);
100 template<> ::operations_research::MPSolutionResponse* Arena::CreateMaybeMessage<::operations_research::MPSolutionResponse>(Arena*);
101 template<> ::operations_research::MPSolverCommonParameters* Arena::CreateMaybeMessage<::operations_research::MPSolverCommonParameters>(Arena*);
102 template<> ::operations_research::MPSosConstraint* Arena::CreateMaybeMessage<::operations_research::MPSosConstraint>(Arena*);
103 template<> ::operations_research::MPVariableProto* Arena::CreateMaybeMessage<::operations_research::MPVariableProto>(Arena*);
104 template<> ::operations_research::OptionalDouble* Arena::CreateMaybeMessage<::operations_research::OptionalDouble>(Arena*);
105 template<> ::operations_research::PartialVariableAssignment* Arena::CreateMaybeMessage<::operations_research::PartialVariableAssignment>(Arena*);
106 PROTOBUF_NAMESPACE_CLOSE
107 namespace operations_research {
108 
112 };
113 bool MPSosConstraint_Type_IsValid(int value);
117 
118 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSosConstraint_Type_descriptor();
119 template<typename T>
120 inline const std::string& MPSosConstraint_Type_Name(T enum_t_value) {
121  static_assert(::std::is_same<T, MPSosConstraint_Type>::value ||
122  ::std::is_integral<T>::value,
123  "Incorrect type passed to function MPSosConstraint_Type_Name.");
124  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
125  MPSosConstraint_Type_descriptor(), enum_t_value);
126 }
128  const std::string& name, MPSosConstraint_Type* value) {
129  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSosConstraint_Type>(
130  MPSosConstraint_Type_descriptor(), name, value);
131 }
137 };
142 
143 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverCommonParameters_LPAlgorithmValues_descriptor();
144 template<typename T>
145 inline const std::string& MPSolverCommonParameters_LPAlgorithmValues_Name(T enum_t_value) {
146  static_assert(::std::is_same<T, MPSolverCommonParameters_LPAlgorithmValues>::value ||
147  ::std::is_integral<T>::value,
148  "Incorrect type passed to function MPSolverCommonParameters_LPAlgorithmValues_Name.");
149  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
151 }
153  const std::string& name, MPSolverCommonParameters_LPAlgorithmValues* value) {
154  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSolverCommonParameters_LPAlgorithmValues>(
156 }
171 };
172 bool MPModelRequest_SolverType_IsValid(int value);
176 
177 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPModelRequest_SolverType_descriptor();
178 template<typename T>
179 inline const std::string& MPModelRequest_SolverType_Name(T enum_t_value) {
180  static_assert(::std::is_same<T, MPModelRequest_SolverType>::value ||
181  ::std::is_integral<T>::value,
182  "Incorrect type passed to function MPModelRequest_SolverType_Name.");
183  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
184  MPModelRequest_SolverType_descriptor(), enum_t_value);
185 }
187  const std::string& name, MPModelRequest_SolverType* value) {
188  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPModelRequest_SolverType>(
189  MPModelRequest_SolverType_descriptor(), name, value);
190 }
204 };
205 bool MPSolverResponseStatus_IsValid(int value);
209 
210 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverResponseStatus_descriptor();
211 template<typename T>
212 inline const std::string& MPSolverResponseStatus_Name(T enum_t_value) {
213  static_assert(::std::is_same<T, MPSolverResponseStatus>::value ||
214  ::std::is_integral<T>::value,
215  "Incorrect type passed to function MPSolverResponseStatus_Name.");
216  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
217  MPSolverResponseStatus_descriptor(), enum_t_value);
218 }
220  const std::string& name, MPSolverResponseStatus* value) {
221  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<MPSolverResponseStatus>(
222  MPSolverResponseStatus_descriptor(), name, value);
223 }
224 // ===================================================================
225 
227  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPVariableProto) */ {
228  public:
229  MPVariableProto();
230  virtual ~MPVariableProto();
231 
232  MPVariableProto(const MPVariableProto& from);
234  : MPVariableProto() {
235  *this = ::std::move(from);
236  }
237 
239  CopyFrom(from);
240  return *this;
241  }
242  inline MPVariableProto& operator=(MPVariableProto&& from) noexcept {
243  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
244  if (this != &from) InternalSwap(&from);
245  } else {
246  CopyFrom(from);
247  }
248  return *this;
249  }
250 
251  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
252  return _internal_metadata_.unknown_fields();
253  }
254  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
255  return _internal_metadata_.mutable_unknown_fields();
256  }
257 
258  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
259  return GetDescriptor();
260  }
261  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
262  return GetMetadataStatic().descriptor;
263  }
264  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
265  return GetMetadataStatic().reflection;
266  }
267  static const MPVariableProto& default_instance();
268 
269  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
271  return reinterpret_cast<const MPVariableProto*>(
273  }
274  static constexpr int kIndexInFileMessages =
275  0;
276 
277  void Swap(MPVariableProto* other);
278  friend void swap(MPVariableProto& a, MPVariableProto& b) {
279  a.Swap(&b);
280  }
281 
282  // implements Message ----------------------------------------------
283 
284  inline MPVariableProto* New() const final {
285  return CreateMaybeMessage<MPVariableProto>(nullptr);
286  }
287 
288  MPVariableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
289  return CreateMaybeMessage<MPVariableProto>(arena);
290  }
291  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
292  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
293  void CopyFrom(const MPVariableProto& from);
294  void MergeFrom(const MPVariableProto& from);
295  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
296  bool IsInitialized() const final;
297 
298  size_t ByteSizeLong() const final;
299  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
300  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
301  #else
303  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
304  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
306  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
307  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
308  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
309  int GetCachedSize() const final { return _cached_size_.Get(); }
310 
311  private:
312  inline void SharedCtor();
313  inline void SharedDtor();
314  void SetCachedSize(int size) const final;
315  void InternalSwap(MPVariableProto* other);
316  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
317  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
318  return "operations_research.MPVariableProto";
319  }
320  private:
321  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
322  return nullptr;
323  }
324  inline void* MaybeArenaPtr() const {
325  return nullptr;
326  }
327  public:
328 
329  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
330  private:
331  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
332  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
334  }
335 
336  public:
337 
338  // nested types ----------------------------------------------------
339 
340  // accessors -------------------------------------------------------
341 
342  // optional string name = 5 [default = ""];
343  bool has_name() const;
344  void clear_name();
345  static const int kNameFieldNumber = 5;
346  const std::string& name() const;
347  void set_name(const std::string& value);
348  void set_name(std::string&& value);
349  void set_name(const char* value);
350  void set_name(const char* value, size_t size);
351  std::string* mutable_name();
352  std::string* release_name();
353  void set_allocated_name(std::string* name);
354 
355  // optional double objective_coefficient = 3 [default = 0];
356  bool has_objective_coefficient() const;
358  static const int kObjectiveCoefficientFieldNumber = 3;
359  double objective_coefficient() const;
360  void set_objective_coefficient(double value);
361 
362  // optional bool is_integer = 4 [default = false];
363  bool has_is_integer() const;
364  void clear_is_integer();
365  static const int kIsIntegerFieldNumber = 4;
366  bool is_integer() const;
367  void set_is_integer(bool value);
368 
369  // optional int32 branching_priority = 6 [default = 0];
370  bool has_branching_priority() const;
372  static const int kBranchingPriorityFieldNumber = 6;
373  ::PROTOBUF_NAMESPACE_ID::int32 branching_priority() const;
374  void set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value);
375 
376  // optional double lower_bound = 1 [default = -inf];
377  bool has_lower_bound() const;
378  void clear_lower_bound();
379  static const int kLowerBoundFieldNumber = 1;
380  double lower_bound() const;
381  void set_lower_bound(double value);
382 
383  // optional double upper_bound = 2 [default = inf];
384  bool has_upper_bound() const;
385  void clear_upper_bound();
386  static const int kUpperBoundFieldNumber = 2;
387  double upper_bound() const;
388  void set_upper_bound(double value);
389 
390  // @@protoc_insertion_point(class_scope:operations_research.MPVariableProto)
391  private:
392  class HasBitSetters;
393 
394  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
395  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
396  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
397  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
398  double objective_coefficient_;
399  bool is_integer_;
400  ::PROTOBUF_NAMESPACE_ID::int32 branching_priority_;
401  double lower_bound_;
402  double upper_bound_;
403  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
404 };
405 // -------------------------------------------------------------------
406 
408  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPConstraintProto) */ {
409  public:
411  virtual ~MPConstraintProto();
412 
415  : MPConstraintProto() {
416  *this = ::std::move(from);
417  }
418 
420  CopyFrom(from);
421  return *this;
422  }
423  inline MPConstraintProto& operator=(MPConstraintProto&& from) noexcept {
424  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
425  if (this != &from) InternalSwap(&from);
426  } else {
427  CopyFrom(from);
428  }
429  return *this;
430  }
431 
432  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
433  return _internal_metadata_.unknown_fields();
434  }
435  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
436  return _internal_metadata_.mutable_unknown_fields();
437  }
438 
439  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
440  return GetDescriptor();
441  }
442  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
443  return GetMetadataStatic().descriptor;
444  }
445  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
446  return GetMetadataStatic().reflection;
447  }
448  static const MPConstraintProto& default_instance();
449 
450  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
452  return reinterpret_cast<const MPConstraintProto*>(
454  }
455  static constexpr int kIndexInFileMessages =
456  1;
457 
458  void Swap(MPConstraintProto* other);
460  a.Swap(&b);
461  }
462 
463  // implements Message ----------------------------------------------
464 
465  inline MPConstraintProto* New() const final {
466  return CreateMaybeMessage<MPConstraintProto>(nullptr);
467  }
468 
469  MPConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
470  return CreateMaybeMessage<MPConstraintProto>(arena);
471  }
472  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
473  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
474  void CopyFrom(const MPConstraintProto& from);
475  void MergeFrom(const MPConstraintProto& from);
476  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
477  bool IsInitialized() const final;
478 
479  size_t ByteSizeLong() const final;
480  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
481  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
482  #else
484  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
485  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
487  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
488  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
489  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
490  int GetCachedSize() const final { return _cached_size_.Get(); }
491 
492  private:
493  inline void SharedCtor();
494  inline void SharedDtor();
495  void SetCachedSize(int size) const final;
496  void InternalSwap(MPConstraintProto* other);
497  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
498  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
499  return "operations_research.MPConstraintProto";
500  }
501  private:
502  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
503  return nullptr;
504  }
505  inline void* MaybeArenaPtr() const {
506  return nullptr;
507  }
508  public:
509 
510  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
511  private:
512  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
513  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
515  }
516 
517  public:
518 
519  // nested types ----------------------------------------------------
520 
521  // accessors -------------------------------------------------------
522 
523  // repeated int32 var_index = 6 [packed = true];
524  int var_index_size() const;
525  void clear_var_index();
526  static const int kVarIndexFieldNumber = 6;
527  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
528  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
529  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
530  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
531  var_index() const;
532  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
534 
535  // repeated double coefficient = 7 [packed = true];
536  int coefficient_size() const;
537  void clear_coefficient();
538  static const int kCoefficientFieldNumber = 7;
539  double coefficient(int index) const;
540  void set_coefficient(int index, double value);
541  void add_coefficient(double value);
542  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
543  coefficient() const;
544  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
546 
547  // optional string name = 4 [default = ""];
548  bool has_name() const;
549  void clear_name();
550  static const int kNameFieldNumber = 4;
551  const std::string& name() const;
552  void set_name(const std::string& value);
553  void set_name(std::string&& value);
554  void set_name(const char* value);
555  void set_name(const char* value, size_t size);
556  std::string* mutable_name();
557  std::string* release_name();
558  void set_allocated_name(std::string* name);
559 
560  // optional bool is_lazy = 5 [default = false];
561  bool has_is_lazy() const;
562  void clear_is_lazy();
563  static const int kIsLazyFieldNumber = 5;
564  bool is_lazy() const;
565  void set_is_lazy(bool value);
566 
567  // optional double lower_bound = 2 [default = -inf];
568  bool has_lower_bound() const;
569  void clear_lower_bound();
570  static const int kLowerBoundFieldNumber = 2;
571  double lower_bound() const;
572  void set_lower_bound(double value);
573 
574  // optional double upper_bound = 3 [default = inf];
575  bool has_upper_bound() const;
576  void clear_upper_bound();
577  static const int kUpperBoundFieldNumber = 3;
578  double upper_bound() const;
579  void set_upper_bound(double value);
580 
581  // @@protoc_insertion_point(class_scope:operations_research.MPConstraintProto)
582  private:
583  class HasBitSetters;
584 
585  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
586  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
587  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
588  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
589  mutable std::atomic<int> _var_index_cached_byte_size_;
590  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > coefficient_;
591  mutable std::atomic<int> _coefficient_cached_byte_size_;
592  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
593  bool is_lazy_;
594  double lower_bound_;
595  double upper_bound_;
596  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
597 };
598 // -------------------------------------------------------------------
599 
601  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPGeneralConstraintProto) */ {
602  public:
604  virtual ~MPGeneralConstraintProto();
605 
609  *this = ::std::move(from);
610  }
611 
613  CopyFrom(from);
614  return *this;
615  }
617  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
618  if (this != &from) InternalSwap(&from);
619  } else {
620  CopyFrom(from);
621  }
622  return *this;
623  }
624 
625  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
626  return _internal_metadata_.unknown_fields();
627  }
628  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
629  return _internal_metadata_.mutable_unknown_fields();
630  }
631 
632  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
633  return GetDescriptor();
634  }
635  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
636  return GetMetadataStatic().descriptor;
637  }
638  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
639  return GetMetadataStatic().reflection;
640  }
642 
647  };
648 
649  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
651  return reinterpret_cast<const MPGeneralConstraintProto*>(
653  }
654  static constexpr int kIndexInFileMessages =
655  2;
656 
657  void Swap(MPGeneralConstraintProto* other);
659  a.Swap(&b);
660  }
661 
662  // implements Message ----------------------------------------------
663 
664  inline MPGeneralConstraintProto* New() const final {
665  return CreateMaybeMessage<MPGeneralConstraintProto>(nullptr);
666  }
667 
668  MPGeneralConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
669  return CreateMaybeMessage<MPGeneralConstraintProto>(arena);
670  }
671  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
672  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
673  void CopyFrom(const MPGeneralConstraintProto& from);
674  void MergeFrom(const MPGeneralConstraintProto& from);
675  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
676  bool IsInitialized() const final;
677 
678  size_t ByteSizeLong() const final;
679  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
680  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
681  #else
683  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
684  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
686  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
687  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
688  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
689  int GetCachedSize() const final { return _cached_size_.Get(); }
690 
691  private:
692  inline void SharedCtor();
693  inline void SharedDtor();
694  void SetCachedSize(int size) const final;
695  void InternalSwap(MPGeneralConstraintProto* other);
696  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
697  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
698  return "operations_research.MPGeneralConstraintProto";
699  }
700  private:
701  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
702  return nullptr;
703  }
704  inline void* MaybeArenaPtr() const {
705  return nullptr;
706  }
707  public:
708 
709  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
710  private:
711  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
712  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
714  }
715 
716  public:
717 
718  // nested types ----------------------------------------------------
719 
720  // accessors -------------------------------------------------------
721 
722  // optional string name = 1 [default = ""];
723  bool has_name() const;
724  void clear_name();
725  static const int kNameFieldNumber = 1;
726  const std::string& name() const;
727  void set_name(const std::string& value);
728  void set_name(std::string&& value);
729  void set_name(const char* value);
730  void set_name(const char* value, size_t size);
731  std::string* mutable_name();
732  std::string* release_name();
733  void set_allocated_name(std::string* name);
734 
735  // optional .operations_research.MPIndicatorConstraint indicator_constraint = 2;
736  bool has_indicator_constraint() const;
738  static const int kIndicatorConstraintFieldNumber = 2;
739  const ::operations_research::MPIndicatorConstraint& indicator_constraint() const;
743 
744  // optional .operations_research.MPSosConstraint sos_constraint = 3;
745  bool has_sos_constraint() const;
746  void clear_sos_constraint();
747  static const int kSosConstraintFieldNumber = 3;
748  const ::operations_research::MPSosConstraint& sos_constraint() const;
752 
755  // @@protoc_insertion_point(class_scope:operations_research.MPGeneralConstraintProto)
756  private:
757  class HasBitSetters;
758  void set_has_indicator_constraint();
759  void set_has_sos_constraint();
760 
761  inline bool has_general_constraint() const;
762  inline void clear_has_general_constraint();
763 
764  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
765  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
766  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
767  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
768  union GeneralConstraintUnion {
769  GeneralConstraintUnion() {}
770  ::operations_research::MPIndicatorConstraint* indicator_constraint_;
772  } general_constraint_;
773  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
774 
775  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
776 };
777 // -------------------------------------------------------------------
778 
780  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPIndicatorConstraint) */ {
781  public:
783  virtual ~MPIndicatorConstraint();
784 
788  *this = ::std::move(from);
789  }
790 
792  CopyFrom(from);
793  return *this;
794  }
796  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
797  if (this != &from) InternalSwap(&from);
798  } else {
799  CopyFrom(from);
800  }
801  return *this;
802  }
803 
804  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
805  return _internal_metadata_.unknown_fields();
806  }
807  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
808  return _internal_metadata_.mutable_unknown_fields();
809  }
810 
811  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
812  return GetDescriptor();
813  }
814  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
815  return GetMetadataStatic().descriptor;
816  }
817  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
818  return GetMetadataStatic().reflection;
819  }
820  static const MPIndicatorConstraint& default_instance();
821 
822  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
824  return reinterpret_cast<const MPIndicatorConstraint*>(
826  }
827  static constexpr int kIndexInFileMessages =
828  3;
829 
830  void Swap(MPIndicatorConstraint* other);
832  a.Swap(&b);
833  }
834 
835  // implements Message ----------------------------------------------
836 
837  inline MPIndicatorConstraint* New() const final {
838  return CreateMaybeMessage<MPIndicatorConstraint>(nullptr);
839  }
840 
841  MPIndicatorConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
842  return CreateMaybeMessage<MPIndicatorConstraint>(arena);
843  }
844  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
845  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
846  void CopyFrom(const MPIndicatorConstraint& from);
847  void MergeFrom(const MPIndicatorConstraint& from);
848  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
849  bool IsInitialized() const final;
850 
851  size_t ByteSizeLong() const final;
852  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
853  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
854  #else
856  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
857  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
859  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
860  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
861  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
862  int GetCachedSize() const final { return _cached_size_.Get(); }
863 
864  private:
865  inline void SharedCtor();
866  inline void SharedDtor();
867  void SetCachedSize(int size) const final;
868  void InternalSwap(MPIndicatorConstraint* other);
869  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
870  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
871  return "operations_research.MPIndicatorConstraint";
872  }
873  private:
874  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
875  return nullptr;
876  }
877  inline void* MaybeArenaPtr() const {
878  return nullptr;
879  }
880  public:
881 
882  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
883  private:
884  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
885  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
887  }
888 
889  public:
890 
891  // nested types ----------------------------------------------------
892 
893  // accessors -------------------------------------------------------
894 
895  // optional .operations_research.MPConstraintProto constraint = 3;
896  bool has_constraint() const;
897  void clear_constraint();
898  static const int kConstraintFieldNumber = 3;
899  const ::operations_research::MPConstraintProto& constraint() const;
903 
904  // optional int32 var_index = 1;
905  bool has_var_index() const;
906  void clear_var_index();
907  static const int kVarIndexFieldNumber = 1;
908  ::PROTOBUF_NAMESPACE_ID::int32 var_index() const;
909  void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
910 
911  // optional int32 var_value = 2;
912  bool has_var_value() const;
913  void clear_var_value();
914  static const int kVarValueFieldNumber = 2;
915  ::PROTOBUF_NAMESPACE_ID::int32 var_value() const;
916  void set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value);
917 
918  // @@protoc_insertion_point(class_scope:operations_research.MPIndicatorConstraint)
919  private:
920  class HasBitSetters;
921 
922  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
923  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
924  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
926  ::PROTOBUF_NAMESPACE_ID::int32 var_index_;
927  ::PROTOBUF_NAMESPACE_ID::int32 var_value_;
928  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
929 };
930 // -------------------------------------------------------------------
931 
933  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSosConstraint) */ {
934  public:
935  MPSosConstraint();
936  virtual ~MPSosConstraint();
937 
938  MPSosConstraint(const MPSosConstraint& from);
940  : MPSosConstraint() {
941  *this = ::std::move(from);
942  }
943 
945  CopyFrom(from);
946  return *this;
947  }
948  inline MPSosConstraint& operator=(MPSosConstraint&& from) noexcept {
949  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
950  if (this != &from) InternalSwap(&from);
951  } else {
952  CopyFrom(from);
953  }
954  return *this;
955  }
956 
957  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
958  return _internal_metadata_.unknown_fields();
959  }
960  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
961  return _internal_metadata_.mutable_unknown_fields();
962  }
963 
964  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
965  return GetDescriptor();
966  }
967  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
968  return GetMetadataStatic().descriptor;
969  }
970  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
971  return GetMetadataStatic().reflection;
972  }
973  static const MPSosConstraint& default_instance();
974 
975  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
977  return reinterpret_cast<const MPSosConstraint*>(
979  }
980  static constexpr int kIndexInFileMessages =
981  4;
982 
983  void Swap(MPSosConstraint* other);
984  friend void swap(MPSosConstraint& a, MPSosConstraint& b) {
985  a.Swap(&b);
986  }
987 
988  // implements Message ----------------------------------------------
989 
990  inline MPSosConstraint* New() const final {
991  return CreateMaybeMessage<MPSosConstraint>(nullptr);
992  }
993 
994  MPSosConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
995  return CreateMaybeMessage<MPSosConstraint>(arena);
996  }
997  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
998  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
999  void CopyFrom(const MPSosConstraint& from);
1000  void MergeFrom(const MPSosConstraint& from);
1001  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1002  bool IsInitialized() const final;
1003 
1004  size_t ByteSizeLong() const final;
1005  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1006  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1007  #else
1009  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1010  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1012  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1013  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1014  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1015  int GetCachedSize() const final { return _cached_size_.Get(); }
1016 
1017  private:
1018  inline void SharedCtor();
1019  inline void SharedDtor();
1020  void SetCachedSize(int size) const final;
1021  void InternalSwap(MPSosConstraint* other);
1022  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1023  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1024  return "operations_research.MPSosConstraint";
1025  }
1026  private:
1027  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1028  return nullptr;
1029  }
1030  inline void* MaybeArenaPtr() const {
1031  return nullptr;
1032  }
1033  public:
1034 
1035  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1036  private:
1037  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1038  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1040  }
1041 
1042  public:
1043 
1044  // nested types ----------------------------------------------------
1045 
1047  static constexpr Type SOS1_DEFAULT =
1049  static constexpr Type SOS2 =
1051  static inline bool Type_IsValid(int value) {
1052  return MPSosConstraint_Type_IsValid(value);
1053  }
1054  static constexpr Type Type_MIN =
1056  static constexpr Type Type_MAX =
1058  static constexpr int Type_ARRAYSIZE =
1060  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1063  }
1064  template<typename T>
1065  static inline const std::string& Type_Name(T enum_t_value) {
1066  static_assert(::std::is_same<T, Type>::value ||
1067  ::std::is_integral<T>::value,
1068  "Incorrect type passed to function Type_Name.");
1069  return MPSosConstraint_Type_Name(enum_t_value);
1070  }
1071  static inline bool Type_Parse(const std::string& name,
1072  Type* value) {
1073  return MPSosConstraint_Type_Parse(name, value);
1074  }
1075 
1076  // accessors -------------------------------------------------------
1077 
1078  // repeated int32 var_index = 2;
1079  int var_index_size() const;
1080  void clear_var_index();
1081  static const int kVarIndexFieldNumber = 2;
1082  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
1083  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1084  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1085  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1086  var_index() const;
1087  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1089 
1090  // repeated double weight = 3;
1091  int weight_size() const;
1092  void clear_weight();
1093  static const int kWeightFieldNumber = 3;
1094  double weight(int index) const;
1095  void set_weight(int index, double value);
1096  void add_weight(double value);
1097  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1098  weight() const;
1099  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1100  mutable_weight();
1101 
1102  // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
1103  bool has_type() const;
1104  void clear_type();
1105  static const int kTypeFieldNumber = 1;
1108 
1109  // @@protoc_insertion_point(class_scope:operations_research.MPSosConstraint)
1110  private:
1111  class HasBitSetters;
1112 
1113  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1114  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1115  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1116  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
1117  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > weight_;
1118  int type_;
1119  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1120 };
1121 // -------------------------------------------------------------------
1122 
1124  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.PartialVariableAssignment) */ {
1125  public:
1127  virtual ~PartialVariableAssignment();
1128 
1132  *this = ::std::move(from);
1133  }
1134 
1136  CopyFrom(from);
1137  return *this;
1138  }
1140  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1141  if (this != &from) InternalSwap(&from);
1142  } else {
1143  CopyFrom(from);
1144  }
1145  return *this;
1146  }
1147 
1148  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1149  return _internal_metadata_.unknown_fields();
1150  }
1151  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1152  return _internal_metadata_.mutable_unknown_fields();
1153  }
1154 
1155  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1156  return GetDescriptor();
1157  }
1158  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1159  return GetMetadataStatic().descriptor;
1160  }
1161  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1162  return GetMetadataStatic().reflection;
1163  }
1165 
1166  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1168  return reinterpret_cast<const PartialVariableAssignment*>(
1170  }
1171  static constexpr int kIndexInFileMessages =
1172  5;
1173 
1174  void Swap(PartialVariableAssignment* other);
1176  a.Swap(&b);
1177  }
1178 
1179  // implements Message ----------------------------------------------
1180 
1181  inline PartialVariableAssignment* New() const final {
1182  return CreateMaybeMessage<PartialVariableAssignment>(nullptr);
1183  }
1184 
1185  PartialVariableAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1186  return CreateMaybeMessage<PartialVariableAssignment>(arena);
1187  }
1188  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1189  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1190  void CopyFrom(const PartialVariableAssignment& from);
1191  void MergeFrom(const PartialVariableAssignment& from);
1192  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1193  bool IsInitialized() const final;
1194 
1195  size_t ByteSizeLong() const final;
1196  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1197  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1198  #else
1200  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1201  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1203  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1204  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1205  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1206  int GetCachedSize() const final { return _cached_size_.Get(); }
1207 
1208  private:
1209  inline void SharedCtor();
1210  inline void SharedDtor();
1211  void SetCachedSize(int size) const final;
1212  void InternalSwap(PartialVariableAssignment* other);
1213  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1214  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1215  return "operations_research.PartialVariableAssignment";
1216  }
1217  private:
1218  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1219  return nullptr;
1220  }
1221  inline void* MaybeArenaPtr() const {
1222  return nullptr;
1223  }
1224  public:
1225 
1226  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1227  private:
1228  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1229  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1231  }
1232 
1233  public:
1234 
1235  // nested types ----------------------------------------------------
1236 
1237  // accessors -------------------------------------------------------
1238 
1239  // repeated int32 var_index = 1 [packed = true];
1240  int var_index_size() const;
1241  void clear_var_index();
1242  static const int kVarIndexFieldNumber = 1;
1243  ::PROTOBUF_NAMESPACE_ID::int32 var_index(int index) const;
1244  void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1245  void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1246  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1247  var_index() const;
1248  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1250 
1251  // repeated double var_value = 2 [packed = true];
1252  int var_value_size() const;
1253  void clear_var_value();
1254  static const int kVarValueFieldNumber = 2;
1255  double var_value(int index) const;
1256  void set_var_value(int index, double value);
1257  void add_var_value(double value);
1258  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
1259  var_value() const;
1260  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
1262 
1263  // @@protoc_insertion_point(class_scope:operations_research.PartialVariableAssignment)
1264  private:
1265  class HasBitSetters;
1266 
1267  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1268  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1269  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1270  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > var_index_;
1271  mutable std::atomic<int> _var_index_cached_byte_size_;
1272  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > var_value_;
1273  mutable std::atomic<int> _var_value_cached_byte_size_;
1274  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1275 };
1276 // -------------------------------------------------------------------
1277 
1279  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPModelProto) */ {
1280  public:
1281  MPModelProto();
1282  virtual ~MPModelProto();
1283 
1284  MPModelProto(const MPModelProto& from);
1285  MPModelProto(MPModelProto&& from) noexcept
1286  : MPModelProto() {
1287  *this = ::std::move(from);
1288  }
1289 
1290  inline MPModelProto& operator=(const MPModelProto& from) {
1291  CopyFrom(from);
1292  return *this;
1293  }
1294  inline MPModelProto& operator=(MPModelProto&& from) noexcept {
1295  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1296  if (this != &from) InternalSwap(&from);
1297  } else {
1298  CopyFrom(from);
1299  }
1300  return *this;
1301  }
1302 
1303  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1304  return _internal_metadata_.unknown_fields();
1305  }
1306  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1307  return _internal_metadata_.mutable_unknown_fields();
1308  }
1309 
1310  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1311  return GetDescriptor();
1312  }
1313  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1314  return GetMetadataStatic().descriptor;
1315  }
1316  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1317  return GetMetadataStatic().reflection;
1318  }
1319  static const MPModelProto& default_instance();
1320 
1321  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1322  static inline const MPModelProto* internal_default_instance() {
1323  return reinterpret_cast<const MPModelProto*>(
1325  }
1326  static constexpr int kIndexInFileMessages =
1327  6;
1328 
1329  void Swap(MPModelProto* other);
1330  friend void swap(MPModelProto& a, MPModelProto& b) {
1331  a.Swap(&b);
1332  }
1333 
1334  // implements Message ----------------------------------------------
1335 
1336  inline MPModelProto* New() const final {
1337  return CreateMaybeMessage<MPModelProto>(nullptr);
1338  }
1339 
1340  MPModelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1341  return CreateMaybeMessage<MPModelProto>(arena);
1342  }
1343  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1344  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1345  void CopyFrom(const MPModelProto& from);
1346  void MergeFrom(const MPModelProto& from);
1347  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1348  bool IsInitialized() const final;
1349 
1350  size_t ByteSizeLong() const final;
1351  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1352  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1353  #else
1355  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1356  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1358  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1359  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1360  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1361  int GetCachedSize() const final { return _cached_size_.Get(); }
1362 
1363  private:
1364  inline void SharedCtor();
1365  inline void SharedDtor();
1366  void SetCachedSize(int size) const final;
1367  void InternalSwap(MPModelProto* other);
1368  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1369  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1370  return "operations_research.MPModelProto";
1371  }
1372  private:
1373  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1374  return nullptr;
1375  }
1376  inline void* MaybeArenaPtr() const {
1377  return nullptr;
1378  }
1379  public:
1380 
1381  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1382  private:
1383  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1384  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1386  }
1387 
1388  public:
1389 
1390  // nested types ----------------------------------------------------
1391 
1392  // accessors -------------------------------------------------------
1393 
1394  // repeated .operations_research.MPVariableProto variable = 3;
1395  int variable_size() const;
1396  void clear_variable();
1397  static const int kVariableFieldNumber = 3;
1399  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >*
1400  mutable_variable();
1401  const ::operations_research::MPVariableProto& variable(int index) const;
1403  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >&
1404  variable() const;
1405 
1406  // repeated .operations_research.MPConstraintProto constraint = 4;
1407  int constraint_size() const;
1408  void clear_constraint();
1409  static const int kConstraintFieldNumber = 4;
1411  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >*
1413  const ::operations_research::MPConstraintProto& constraint(int index) const;
1415  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >&
1416  constraint() const;
1417 
1418  // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
1419  int general_constraint_size() const;
1420  void clear_general_constraint();
1421  static const int kGeneralConstraintFieldNumber = 7;
1423  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >*
1425  const ::operations_research::MPGeneralConstraintProto& general_constraint(int index) const;
1427  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >&
1428  general_constraint() const;
1429 
1430  // optional string name = 5 [default = ""];
1431  bool has_name() const;
1432  void clear_name();
1433  static const int kNameFieldNumber = 5;
1434  const std::string& name() const;
1435  void set_name(const std::string& value);
1436  void set_name(std::string&& value);
1437  void set_name(const char* value);
1438  void set_name(const char* value, size_t size);
1439  std::string* mutable_name();
1440  std::string* release_name();
1441  void set_allocated_name(std::string* name);
1442 
1443  // optional .operations_research.PartialVariableAssignment solution_hint = 6;
1444  bool has_solution_hint() const;
1445  void clear_solution_hint();
1446  static const int kSolutionHintFieldNumber = 6;
1447  const ::operations_research::PartialVariableAssignment& solution_hint() const;
1451 
1452  // optional double objective_offset = 2 [default = 0];
1453  bool has_objective_offset() const;
1454  void clear_objective_offset();
1455  static const int kObjectiveOffsetFieldNumber = 2;
1456  double objective_offset() const;
1457  void set_objective_offset(double value);
1458 
1459  // optional bool maximize = 1 [default = false];
1460  bool has_maximize() const;
1461  void clear_maximize();
1462  static const int kMaximizeFieldNumber = 1;
1463  bool maximize() const;
1464  void set_maximize(bool value);
1465 
1466  // @@protoc_insertion_point(class_scope:operations_research.MPModelProto)
1467  private:
1468  class HasBitSetters;
1469 
1470  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1471  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1472  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1473  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > variable_;
1474  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > constraint_;
1475  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > general_constraint_;
1476  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
1478  double objective_offset_;
1479  bool maximize_;
1480  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1481 };
1482 // -------------------------------------------------------------------
1483 
1485  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.OptionalDouble) */ {
1486  public:
1487  OptionalDouble();
1488  virtual ~OptionalDouble();
1489 
1490  OptionalDouble(const OptionalDouble& from);
1492  : OptionalDouble() {
1493  *this = ::std::move(from);
1494  }
1495 
1496  inline OptionalDouble& operator=(const OptionalDouble& from) {
1497  CopyFrom(from);
1498  return *this;
1499  }
1500  inline OptionalDouble& operator=(OptionalDouble&& from) noexcept {
1501  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1502  if (this != &from) InternalSwap(&from);
1503  } else {
1504  CopyFrom(from);
1505  }
1506  return *this;
1507  }
1508 
1509  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1510  return _internal_metadata_.unknown_fields();
1511  }
1512  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1513  return _internal_metadata_.mutable_unknown_fields();
1514  }
1515 
1516  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1517  return GetDescriptor();
1518  }
1519  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1520  return GetMetadataStatic().descriptor;
1521  }
1522  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1523  return GetMetadataStatic().reflection;
1524  }
1525  static const OptionalDouble& default_instance();
1526 
1527  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1529  return reinterpret_cast<const OptionalDouble*>(
1531  }
1532  static constexpr int kIndexInFileMessages =
1533  7;
1534 
1535  void Swap(OptionalDouble* other);
1536  friend void swap(OptionalDouble& a, OptionalDouble& b) {
1537  a.Swap(&b);
1538  }
1539 
1540  // implements Message ----------------------------------------------
1541 
1542  inline OptionalDouble* New() const final {
1543  return CreateMaybeMessage<OptionalDouble>(nullptr);
1544  }
1545 
1546  OptionalDouble* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1547  return CreateMaybeMessage<OptionalDouble>(arena);
1548  }
1549  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1550  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1551  void CopyFrom(const OptionalDouble& from);
1552  void MergeFrom(const OptionalDouble& from);
1553  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1554  bool IsInitialized() const final;
1555 
1556  size_t ByteSizeLong() const final;
1557  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1558  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1559  #else
1561  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1562  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1564  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1565  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1566  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1567  int GetCachedSize() const final { return _cached_size_.Get(); }
1568 
1569  private:
1570  inline void SharedCtor();
1571  inline void SharedDtor();
1572  void SetCachedSize(int size) const final;
1573  void InternalSwap(OptionalDouble* other);
1574  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1575  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1576  return "operations_research.OptionalDouble";
1577  }
1578  private:
1579  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1580  return nullptr;
1581  }
1582  inline void* MaybeArenaPtr() const {
1583  return nullptr;
1584  }
1585  public:
1586 
1587  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1588  private:
1589  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1590  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1592  }
1593 
1594  public:
1595 
1596  // nested types ----------------------------------------------------
1597 
1598  // accessors -------------------------------------------------------
1599 
1600  // optional double value = 1;
1601  bool has_value() const;
1602  void clear_value();
1603  static const int kValueFieldNumber = 1;
1604  double value() const;
1605  void set_value(double value);
1606 
1607  // @@protoc_insertion_point(class_scope:operations_research.OptionalDouble)
1608  private:
1609  class HasBitSetters;
1610 
1611  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1612  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1613  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1614  double value_;
1615  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1616 };
1617 // -------------------------------------------------------------------
1618 
1620  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSolverCommonParameters) */ {
1621  public:
1623  virtual ~MPSolverCommonParameters();
1624 
1628  *this = ::std::move(from);
1629  }
1630 
1632  CopyFrom(from);
1633  return *this;
1634  }
1636  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1637  if (this != &from) InternalSwap(&from);
1638  } else {
1639  CopyFrom(from);
1640  }
1641  return *this;
1642  }
1643 
1644  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1645  return _internal_metadata_.unknown_fields();
1646  }
1647  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1648  return _internal_metadata_.mutable_unknown_fields();
1649  }
1650 
1651  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1652  return GetDescriptor();
1653  }
1654  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1655  return GetMetadataStatic().descriptor;
1656  }
1657  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1658  return GetMetadataStatic().reflection;
1659  }
1661 
1662  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1664  return reinterpret_cast<const MPSolverCommonParameters*>(
1666  }
1667  static constexpr int kIndexInFileMessages =
1668  8;
1669 
1670  void Swap(MPSolverCommonParameters* other);
1672  a.Swap(&b);
1673  }
1674 
1675  // implements Message ----------------------------------------------
1676 
1677  inline MPSolverCommonParameters* New() const final {
1678  return CreateMaybeMessage<MPSolverCommonParameters>(nullptr);
1679  }
1680 
1681  MPSolverCommonParameters* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1682  return CreateMaybeMessage<MPSolverCommonParameters>(arena);
1683  }
1684  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1685  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1686  void CopyFrom(const MPSolverCommonParameters& from);
1687  void MergeFrom(const MPSolverCommonParameters& from);
1688  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1689  bool IsInitialized() const final;
1690 
1691  size_t ByteSizeLong() const final;
1692  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1693  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1694  #else
1696  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1697  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1699  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1700  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1701  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1702  int GetCachedSize() const final { return _cached_size_.Get(); }
1703 
1704  private:
1705  inline void SharedCtor();
1706  inline void SharedDtor();
1707  void SetCachedSize(int size) const final;
1708  void InternalSwap(MPSolverCommonParameters* other);
1709  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1710  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1711  return "operations_research.MPSolverCommonParameters";
1712  }
1713  private:
1714  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1715  return nullptr;
1716  }
1717  inline void* MaybeArenaPtr() const {
1718  return nullptr;
1719  }
1720  public:
1721 
1722  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1723  private:
1724  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1725  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1727  }
1728 
1729  public:
1730 
1731  // nested types ----------------------------------------------------
1732 
1736  static constexpr LPAlgorithmValues LP_ALGO_DUAL =
1742  static inline bool LPAlgorithmValues_IsValid(int value) {
1744  }
1749  static constexpr int LPAlgorithmValues_ARRAYSIZE =
1751  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1754  }
1755  template<typename T>
1756  static inline const std::string& LPAlgorithmValues_Name(T enum_t_value) {
1757  static_assert(::std::is_same<T, LPAlgorithmValues>::value ||
1758  ::std::is_integral<T>::value,
1759  "Incorrect type passed to function LPAlgorithmValues_Name.");
1761  }
1762  static inline bool LPAlgorithmValues_Parse(const std::string& name,
1763  LPAlgorithmValues* value) {
1765  }
1766 
1767  // accessors -------------------------------------------------------
1768 
1769  // optional .operations_research.OptionalDouble relative_mip_gap = 1;
1770  bool has_relative_mip_gap() const;
1771  void clear_relative_mip_gap();
1772  static const int kRelativeMipGapFieldNumber = 1;
1773  const ::operations_research::OptionalDouble& relative_mip_gap() const;
1777 
1778  // optional .operations_research.OptionalDouble primal_tolerance = 2;
1779  bool has_primal_tolerance() const;
1780  void clear_primal_tolerance();
1781  static const int kPrimalToleranceFieldNumber = 2;
1782  const ::operations_research::OptionalDouble& primal_tolerance() const;
1786 
1787  // optional .operations_research.OptionalDouble dual_tolerance = 3;
1788  bool has_dual_tolerance() const;
1789  void clear_dual_tolerance();
1790  static const int kDualToleranceFieldNumber = 3;
1791  const ::operations_research::OptionalDouble& dual_tolerance() const;
1795 
1796  // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
1797  bool has_lp_algorithm() const;
1798  void clear_lp_algorithm();
1799  static const int kLpAlgorithmFieldNumber = 4;
1802 
1803  // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
1804  bool has_presolve() const;
1805  void clear_presolve();
1806  static const int kPresolveFieldNumber = 5;
1807  ::operations_research::OptionalBoolean presolve() const;
1808  void set_presolve(::operations_research::OptionalBoolean value);
1809 
1810  // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
1811  bool has_scaling() const;
1812  void clear_scaling();
1813  static const int kScalingFieldNumber = 7;
1814  ::operations_research::OptionalBoolean scaling() const;
1815  void set_scaling(::operations_research::OptionalBoolean value);
1816 
1817  // @@protoc_insertion_point(class_scope:operations_research.MPSolverCommonParameters)
1818  private:
1819  class HasBitSetters;
1820 
1821  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1822  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
1823  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1824  ::operations_research::OptionalDouble* relative_mip_gap_;
1825  ::operations_research::OptionalDouble* primal_tolerance_;
1826  ::operations_research::OptionalDouble* dual_tolerance_;
1827  int lp_algorithm_;
1828  int presolve_;
1829  int scaling_;
1830  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
1831 };
1832 // -------------------------------------------------------------------
1833 
1835  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPModelRequest) */ {
1836  public:
1837  MPModelRequest();
1838  virtual ~MPModelRequest();
1839 
1840  MPModelRequest(const MPModelRequest& from);
1842  : MPModelRequest() {
1843  *this = ::std::move(from);
1844  }
1845 
1846  inline MPModelRequest& operator=(const MPModelRequest& from) {
1847  CopyFrom(from);
1848  return *this;
1849  }
1850  inline MPModelRequest& operator=(MPModelRequest&& from) noexcept {
1851  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1852  if (this != &from) InternalSwap(&from);
1853  } else {
1854  CopyFrom(from);
1855  }
1856  return *this;
1857  }
1858 
1859  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
1860  return _internal_metadata_.unknown_fields();
1861  }
1862  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
1863  return _internal_metadata_.mutable_unknown_fields();
1864  }
1865 
1866  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1867  return GetDescriptor();
1868  }
1869  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1870  return GetMetadataStatic().descriptor;
1871  }
1872  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1873  return GetMetadataStatic().reflection;
1874  }
1875  static const MPModelRequest& default_instance();
1876 
1877  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1879  return reinterpret_cast<const MPModelRequest*>(
1881  }
1882  static constexpr int kIndexInFileMessages =
1883  9;
1884 
1885  void Swap(MPModelRequest* other);
1886  friend void swap(MPModelRequest& a, MPModelRequest& b) {
1887  a.Swap(&b);
1888  }
1889 
1890  // implements Message ----------------------------------------------
1891 
1892  inline MPModelRequest* New() const final {
1893  return CreateMaybeMessage<MPModelRequest>(nullptr);
1894  }
1895 
1896  MPModelRequest* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1897  return CreateMaybeMessage<MPModelRequest>(arena);
1898  }
1899  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1900  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1901  void CopyFrom(const MPModelRequest& from);
1902  void MergeFrom(const MPModelRequest& from);
1903  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1904  bool IsInitialized() const final;
1905 
1906  size_t ByteSizeLong() const final;
1907  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1908  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1909  #else
1911  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1912  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1914  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1915  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1916  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1917  int GetCachedSize() const final { return _cached_size_.Get(); }
1918 
1919  private:
1920  inline void SharedCtor();
1921  inline void SharedDtor();
1922  void SetCachedSize(int size) const final;
1923  void InternalSwap(MPModelRequest* other);
1924  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1925  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1926  return "operations_research.MPModelRequest";
1927  }
1928  private:
1929  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1930  return nullptr;
1931  }
1932  inline void* MaybeArenaPtr() const {
1933  return nullptr;
1934  }
1935  public:
1936 
1937  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1938  private:
1939  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1940  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
1942  }
1943 
1944  public:
1945 
1946  // nested types ----------------------------------------------------
1947 
1975  static inline bool SolverType_IsValid(int value) {
1976  return MPModelRequest_SolverType_IsValid(value);
1977  }
1978  static constexpr SolverType SolverType_MIN =
1980  static constexpr SolverType SolverType_MAX =
1982  static constexpr int SolverType_ARRAYSIZE =
1984  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
1987  }
1988  template<typename T>
1989  static inline const std::string& SolverType_Name(T enum_t_value) {
1990  static_assert(::std::is_same<T, SolverType>::value ||
1991  ::std::is_integral<T>::value,
1992  "Incorrect type passed to function SolverType_Name.");
1993  return MPModelRequest_SolverType_Name(enum_t_value);
1994  }
1995  static inline bool SolverType_Parse(const std::string& name,
1996  SolverType* value) {
1997  return MPModelRequest_SolverType_Parse(name, value);
1998  }
1999 
2000  // accessors -------------------------------------------------------
2001 
2002  // optional string solver_specific_parameters = 5;
2003  bool has_solver_specific_parameters() const;
2006  const std::string& solver_specific_parameters() const;
2007  void set_solver_specific_parameters(const std::string& value);
2008  void set_solver_specific_parameters(std::string&& value);
2009  void set_solver_specific_parameters(const char* value);
2010  void set_solver_specific_parameters(const char* value, size_t size);
2011  std::string* mutable_solver_specific_parameters();
2012  std::string* release_solver_specific_parameters();
2014 
2015  // optional .operations_research.MPModelProto model = 1;
2016  bool has_model() const;
2017  void clear_model();
2018  static const int kModelFieldNumber = 1;
2019  const ::operations_research::MPModelProto& model() const;
2023 
2024  // optional double solver_time_limit_seconds = 3;
2025  bool has_solver_time_limit_seconds() const;
2028  double solver_time_limit_seconds() const;
2029  void set_solver_time_limit_seconds(double value);
2030 
2031  // optional bool enable_internal_solver_output = 4 [default = false];
2032  bool has_enable_internal_solver_output() const;
2035  bool enable_internal_solver_output() const;
2036  void set_enable_internal_solver_output(bool value);
2037 
2038  // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
2039  bool has_solver_type() const;
2040  void clear_solver_type();
2041  static const int kSolverTypeFieldNumber = 2;
2044 
2045  // @@protoc_insertion_point(class_scope:operations_research.MPModelRequest)
2046  private:
2047  class HasBitSetters;
2048 
2049  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2050  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2051  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2052  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr solver_specific_parameters_;
2054  double solver_time_limit_seconds_;
2055  bool enable_internal_solver_output_;
2056  int solver_type_;
2057  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2058 };
2059 // -------------------------------------------------------------------
2060 
2062  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.MPSolutionResponse) */ {
2063  public:
2065  virtual ~MPSolutionResponse();
2066 
2069  : MPSolutionResponse() {
2070  *this = ::std::move(from);
2071  }
2072 
2074  CopyFrom(from);
2075  return *this;
2076  }
2078  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2079  if (this != &from) InternalSwap(&from);
2080  } else {
2081  CopyFrom(from);
2082  }
2083  return *this;
2084  }
2085 
2086  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
2087  return _internal_metadata_.unknown_fields();
2088  }
2089  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
2090  return _internal_metadata_.mutable_unknown_fields();
2091  }
2092 
2093  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2094  return GetDescriptor();
2095  }
2096  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2097  return GetMetadataStatic().descriptor;
2098  }
2099  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2100  return GetMetadataStatic().reflection;
2101  }
2102  static const MPSolutionResponse& default_instance();
2103 
2104  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2106  return reinterpret_cast<const MPSolutionResponse*>(
2108  }
2109  static constexpr int kIndexInFileMessages =
2110  10;
2111 
2112  void Swap(MPSolutionResponse* other);
2114  a.Swap(&b);
2115  }
2116 
2117  // implements Message ----------------------------------------------
2118 
2119  inline MPSolutionResponse* New() const final {
2120  return CreateMaybeMessage<MPSolutionResponse>(nullptr);
2121  }
2122 
2123  MPSolutionResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2124  return CreateMaybeMessage<MPSolutionResponse>(arena);
2125  }
2126  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2127  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2128  void CopyFrom(const MPSolutionResponse& from);
2129  void MergeFrom(const MPSolutionResponse& from);
2130  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2131  bool IsInitialized() const final;
2132 
2133  size_t ByteSizeLong() const final;
2134  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2135  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2136  #else
2138  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2139  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2141  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2142  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2143  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2144  int GetCachedSize() const final { return _cached_size_.Get(); }
2145 
2146  private:
2147  inline void SharedCtor();
2148  inline void SharedDtor();
2149  void SetCachedSize(int size) const final;
2150  void InternalSwap(MPSolutionResponse* other);
2151  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2152  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2153  return "operations_research.MPSolutionResponse";
2154  }
2155  private:
2156  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2157  return nullptr;
2158  }
2159  inline void* MaybeArenaPtr() const {
2160  return nullptr;
2161  }
2162  public:
2163 
2164  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2165  private:
2166  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2167  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
2169  }
2170 
2171  public:
2172 
2173  // nested types ----------------------------------------------------
2174 
2175  // accessors -------------------------------------------------------
2176 
2177  // repeated double variable_value = 3 [packed = true];
2178  int variable_value_size() const;
2179  void clear_variable_value();
2180  static const int kVariableValueFieldNumber = 3;
2181  double variable_value(int index) const;
2182  void set_variable_value(int index, double value);
2183  void add_variable_value(double value);
2184  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2185  variable_value() const;
2186  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2188 
2189  // repeated double dual_value = 4 [packed = true];
2190  int dual_value_size() const;
2191  void clear_dual_value();
2192  static const int kDualValueFieldNumber = 4;
2193  double dual_value(int index) const;
2194  void set_dual_value(int index, double value);
2195  void add_dual_value(double value);
2196  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2197  dual_value() const;
2198  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2200 
2201  // repeated double reduced_cost = 6 [packed = true];
2202  int reduced_cost_size() const;
2203  void clear_reduced_cost();
2204  static const int kReducedCostFieldNumber = 6;
2205  double reduced_cost(int index) const;
2206  void set_reduced_cost(int index, double value);
2207  void add_reduced_cost(double value);
2208  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2209  reduced_cost() const;
2210  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2212 
2213  // optional double objective_value = 2;
2214  bool has_objective_value() const;
2215  void clear_objective_value();
2216  static const int kObjectiveValueFieldNumber = 2;
2217  double objective_value() const;
2218  void set_objective_value(double value);
2219 
2220  // optional double best_objective_bound = 5;
2221  bool has_best_objective_bound() const;
2223  static const int kBestObjectiveBoundFieldNumber = 5;
2224  double best_objective_bound() const;
2225  void set_best_objective_bound(double value);
2226 
2227  // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
2228  bool has_status() const;
2229  void clear_status();
2230  static const int kStatusFieldNumber = 1;
2233 
2234  // @@protoc_insertion_point(class_scope:operations_research.MPSolutionResponse)
2235  private:
2236  class HasBitSetters;
2237 
2238  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2239  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
2240  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2241  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > variable_value_;
2242  mutable std::atomic<int> _variable_value_cached_byte_size_;
2243  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > dual_value_;
2244  mutable std::atomic<int> _dual_value_cached_byte_size_;
2245  ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > reduced_cost_;
2246  mutable std::atomic<int> _reduced_cost_cached_byte_size_;
2247  double objective_value_;
2248  double best_objective_bound_;
2249  int status_;
2250  friend struct ::TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto;
2251 };
2252 // ===================================================================
2253 
2254 
2255 // ===================================================================
2256 
2257 #ifdef __GNUC__
2258  #pragma GCC diagnostic push
2259  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
2260 #endif // __GNUC__
2261 // MPVariableProto
2262 
2263 // optional double lower_bound = 1 [default = -inf];
2265  return (_has_bits_[0] & 0x00000010u) != 0;
2266 }
2268  lower_bound_ = -std::numeric_limits<double>::infinity();
2269  _has_bits_[0] &= ~0x00000010u;
2270 }
2271 inline double MPVariableProto::lower_bound() const {
2272  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.lower_bound)
2273  return lower_bound_;
2274 }
2275 inline void MPVariableProto::set_lower_bound(double value) {
2276  _has_bits_[0] |= 0x00000010u;
2277  lower_bound_ = value;
2278  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.lower_bound)
2279 }
2280 
2281 // optional double upper_bound = 2 [default = inf];
2283  return (_has_bits_[0] & 0x00000020u) != 0;
2284 }
2286  upper_bound_ = std::numeric_limits<double>::infinity();
2287  _has_bits_[0] &= ~0x00000020u;
2288 }
2289 inline double MPVariableProto::upper_bound() const {
2290  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.upper_bound)
2291  return upper_bound_;
2292 }
2293 inline void MPVariableProto::set_upper_bound(double value) {
2294  _has_bits_[0] |= 0x00000020u;
2295  upper_bound_ = value;
2296  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.upper_bound)
2297 }
2298 
2299 // optional double objective_coefficient = 3 [default = 0];
2301  return (_has_bits_[0] & 0x00000002u) != 0;
2302 }
2304  objective_coefficient_ = 0;
2305  _has_bits_[0] &= ~0x00000002u;
2306 }
2308  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.objective_coefficient)
2309  return objective_coefficient_;
2310 }
2312  _has_bits_[0] |= 0x00000002u;
2313  objective_coefficient_ = value;
2314  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.objective_coefficient)
2315 }
2316 
2317 // optional bool is_integer = 4 [default = false];
2318 inline bool MPVariableProto::has_is_integer() const {
2319  return (_has_bits_[0] & 0x00000004u) != 0;
2320 }
2322  is_integer_ = false;
2323  _has_bits_[0] &= ~0x00000004u;
2324 }
2325 inline bool MPVariableProto::is_integer() const {
2326  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.is_integer)
2327  return is_integer_;
2328 }
2329 inline void MPVariableProto::set_is_integer(bool value) {
2330  _has_bits_[0] |= 0x00000004u;
2331  is_integer_ = value;
2332  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.is_integer)
2333 }
2334 
2335 // optional string name = 5 [default = ""];
2336 inline bool MPVariableProto::has_name() const {
2337  return (_has_bits_[0] & 0x00000001u) != 0;
2338 }
2340  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2341  _has_bits_[0] &= ~0x00000001u;
2342 }
2343 inline const std::string& MPVariableProto::name() const {
2344  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.name)
2345  return name_.GetNoArena();
2346 }
2347 inline void MPVariableProto::set_name(const std::string& value) {
2348  _has_bits_[0] |= 0x00000001u;
2349  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
2350  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.name)
2351 }
2352 inline void MPVariableProto::set_name(std::string&& value) {
2353  _has_bits_[0] |= 0x00000001u;
2354  name_.SetNoArena(
2355  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
2356  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPVariableProto.name)
2357 }
2358 inline void MPVariableProto::set_name(const char* value) {
2359  GOOGLE_DCHECK(value != nullptr);
2360  _has_bits_[0] |= 0x00000001u;
2361  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
2362  // @@protoc_insertion_point(field_set_char:operations_research.MPVariableProto.name)
2363 }
2364 inline void MPVariableProto::set_name(const char* value, size_t size) {
2365  _has_bits_[0] |= 0x00000001u;
2366  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
2367  ::std::string(reinterpret_cast<const char*>(value), size));
2368  // @@protoc_insertion_point(field_set_pointer:operations_research.MPVariableProto.name)
2369 }
2370 inline std::string* MPVariableProto::mutable_name() {
2371  _has_bits_[0] |= 0x00000001u;
2372  // @@protoc_insertion_point(field_mutable:operations_research.MPVariableProto.name)
2373  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2374 }
2375 inline std::string* MPVariableProto::release_name() {
2376  // @@protoc_insertion_point(field_release:operations_research.MPVariableProto.name)
2377  if (!has_name()) {
2378  return nullptr;
2379  }
2380  _has_bits_[0] &= ~0x00000001u;
2381  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2382 }
2383 inline void MPVariableProto::set_allocated_name(std::string* name) {
2384  if (name != nullptr) {
2385  _has_bits_[0] |= 0x00000001u;
2386  } else {
2387  _has_bits_[0] &= ~0x00000001u;
2388  }
2389  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
2390  // @@protoc_insertion_point(field_set_allocated:operations_research.MPVariableProto.name)
2391 }
2392 
2393 // optional int32 branching_priority = 6 [default = 0];
2395  return (_has_bits_[0] & 0x00000008u) != 0;
2396 }
2398  branching_priority_ = 0;
2399  _has_bits_[0] &= ~0x00000008u;
2400 }
2401 inline ::PROTOBUF_NAMESPACE_ID::int32 MPVariableProto::branching_priority() const {
2402  // @@protoc_insertion_point(field_get:operations_research.MPVariableProto.branching_priority)
2403  return branching_priority_;
2404 }
2405 inline void MPVariableProto::set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value) {
2406  _has_bits_[0] |= 0x00000008u;
2407  branching_priority_ = value;
2408  // @@protoc_insertion_point(field_set:operations_research.MPVariableProto.branching_priority)
2409 }
2410 
2411 // -------------------------------------------------------------------
2412 
2413 // MPConstraintProto
2414 
2415 // repeated int32 var_index = 6 [packed = true];
2417  return var_index_.size();
2418 }
2420  var_index_.Clear();
2421 }
2422 inline ::PROTOBUF_NAMESPACE_ID::int32 MPConstraintProto::var_index(int index) const {
2423  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.var_index)
2424  return var_index_.Get(index);
2425 }
2426 inline void MPConstraintProto::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
2427  var_index_.Set(index, value);
2428  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.var_index)
2429 }
2430 inline void MPConstraintProto::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
2431  var_index_.Add(value);
2432  // @@protoc_insertion_point(field_add:operations_research.MPConstraintProto.var_index)
2433 }
2434 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2436  // @@protoc_insertion_point(field_list:operations_research.MPConstraintProto.var_index)
2437  return var_index_;
2438 }
2439 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2441  // @@protoc_insertion_point(field_mutable_list:operations_research.MPConstraintProto.var_index)
2442  return &var_index_;
2443 }
2444 
2445 // repeated double coefficient = 7 [packed = true];
2447  return coefficient_.size();
2448 }
2450  coefficient_.Clear();
2451 }
2452 inline double MPConstraintProto::coefficient(int index) const {
2453  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.coefficient)
2454  return coefficient_.Get(index);
2455 }
2456 inline void MPConstraintProto::set_coefficient(int index, double value) {
2457  coefficient_.Set(index, value);
2458  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.coefficient)
2459 }
2460 inline void MPConstraintProto::add_coefficient(double value) {
2461  coefficient_.Add(value);
2462  // @@protoc_insertion_point(field_add:operations_research.MPConstraintProto.coefficient)
2463 }
2464 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2466  // @@protoc_insertion_point(field_list:operations_research.MPConstraintProto.coefficient)
2467  return coefficient_;
2468 }
2469 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2471  // @@protoc_insertion_point(field_mutable_list:operations_research.MPConstraintProto.coefficient)
2472  return &coefficient_;
2473 }
2474 
2475 // optional double lower_bound = 2 [default = -inf];
2477  return (_has_bits_[0] & 0x00000004u) != 0;
2478 }
2480  lower_bound_ = -std::numeric_limits<double>::infinity();
2481  _has_bits_[0] &= ~0x00000004u;
2482 }
2483 inline double MPConstraintProto::lower_bound() const {
2484  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.lower_bound)
2485  return lower_bound_;
2486 }
2487 inline void MPConstraintProto::set_lower_bound(double value) {
2488  _has_bits_[0] |= 0x00000004u;
2489  lower_bound_ = value;
2490  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.lower_bound)
2491 }
2492 
2493 // optional double upper_bound = 3 [default = inf];
2495  return (_has_bits_[0] & 0x00000008u) != 0;
2496 }
2498  upper_bound_ = std::numeric_limits<double>::infinity();
2499  _has_bits_[0] &= ~0x00000008u;
2500 }
2501 inline double MPConstraintProto::upper_bound() const {
2502  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.upper_bound)
2503  return upper_bound_;
2504 }
2505 inline void MPConstraintProto::set_upper_bound(double value) {
2506  _has_bits_[0] |= 0x00000008u;
2507  upper_bound_ = value;
2508  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.upper_bound)
2509 }
2510 
2511 // optional string name = 4 [default = ""];
2512 inline bool MPConstraintProto::has_name() const {
2513  return (_has_bits_[0] & 0x00000001u) != 0;
2514 }
2516  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2517  _has_bits_[0] &= ~0x00000001u;
2518 }
2519 inline const std::string& MPConstraintProto::name() const {
2520  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.name)
2521  return name_.GetNoArena();
2522 }
2523 inline void MPConstraintProto::set_name(const std::string& value) {
2524  _has_bits_[0] |= 0x00000001u;
2525  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
2526  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.name)
2527 }
2528 inline void MPConstraintProto::set_name(std::string&& value) {
2529  _has_bits_[0] |= 0x00000001u;
2530  name_.SetNoArena(
2531  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
2532  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPConstraintProto.name)
2533 }
2534 inline void MPConstraintProto::set_name(const char* value) {
2535  GOOGLE_DCHECK(value != nullptr);
2536  _has_bits_[0] |= 0x00000001u;
2537  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
2538  // @@protoc_insertion_point(field_set_char:operations_research.MPConstraintProto.name)
2539 }
2540 inline void MPConstraintProto::set_name(const char* value, size_t size) {
2541  _has_bits_[0] |= 0x00000001u;
2542  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
2543  ::std::string(reinterpret_cast<const char*>(value), size));
2544  // @@protoc_insertion_point(field_set_pointer:operations_research.MPConstraintProto.name)
2545 }
2546 inline std::string* MPConstraintProto::mutable_name() {
2547  _has_bits_[0] |= 0x00000001u;
2548  // @@protoc_insertion_point(field_mutable:operations_research.MPConstraintProto.name)
2549  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2550 }
2551 inline std::string* MPConstraintProto::release_name() {
2552  // @@protoc_insertion_point(field_release:operations_research.MPConstraintProto.name)
2553  if (!has_name()) {
2554  return nullptr;
2555  }
2556  _has_bits_[0] &= ~0x00000001u;
2557  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2558 }
2559 inline void MPConstraintProto::set_allocated_name(std::string* name) {
2560  if (name != nullptr) {
2561  _has_bits_[0] |= 0x00000001u;
2562  } else {
2563  _has_bits_[0] &= ~0x00000001u;
2564  }
2565  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
2566  // @@protoc_insertion_point(field_set_allocated:operations_research.MPConstraintProto.name)
2567 }
2568 
2569 // optional bool is_lazy = 5 [default = false];
2570 inline bool MPConstraintProto::has_is_lazy() const {
2571  return (_has_bits_[0] & 0x00000002u) != 0;
2572 }
2574  is_lazy_ = false;
2575  _has_bits_[0] &= ~0x00000002u;
2576 }
2577 inline bool MPConstraintProto::is_lazy() const {
2578  // @@protoc_insertion_point(field_get:operations_research.MPConstraintProto.is_lazy)
2579  return is_lazy_;
2580 }
2581 inline void MPConstraintProto::set_is_lazy(bool value) {
2582  _has_bits_[0] |= 0x00000002u;
2583  is_lazy_ = value;
2584  // @@protoc_insertion_point(field_set:operations_research.MPConstraintProto.is_lazy)
2585 }
2586 
2587 // -------------------------------------------------------------------
2588 
2589 // MPGeneralConstraintProto
2590 
2591 // optional string name = 1 [default = ""];
2593  return (_has_bits_[0] & 0x00000001u) != 0;
2594 }
2596  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2597  _has_bits_[0] &= ~0x00000001u;
2598 }
2599 inline const std::string& MPGeneralConstraintProto::name() const {
2600  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.name)
2601  return name_.GetNoArena();
2602 }
2603 inline void MPGeneralConstraintProto::set_name(const std::string& value) {
2604  _has_bits_[0] |= 0x00000001u;
2605  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
2606  // @@protoc_insertion_point(field_set:operations_research.MPGeneralConstraintProto.name)
2607 }
2608 inline void MPGeneralConstraintProto::set_name(std::string&& value) {
2609  _has_bits_[0] |= 0x00000001u;
2610  name_.SetNoArena(
2611  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
2612  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPGeneralConstraintProto.name)
2613 }
2614 inline void MPGeneralConstraintProto::set_name(const char* value) {
2615  GOOGLE_DCHECK(value != nullptr);
2616  _has_bits_[0] |= 0x00000001u;
2617  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
2618  // @@protoc_insertion_point(field_set_char:operations_research.MPGeneralConstraintProto.name)
2619 }
2620 inline void MPGeneralConstraintProto::set_name(const char* value, size_t size) {
2621  _has_bits_[0] |= 0x00000001u;
2622  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
2623  ::std::string(reinterpret_cast<const char*>(value), size));
2624  // @@protoc_insertion_point(field_set_pointer:operations_research.MPGeneralConstraintProto.name)
2625 }
2627  _has_bits_[0] |= 0x00000001u;
2628  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.name)
2629  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2630 }
2632  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.name)
2633  if (!has_name()) {
2634  return nullptr;
2635  }
2636  _has_bits_[0] &= ~0x00000001u;
2637  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
2638 }
2639 inline void MPGeneralConstraintProto::set_allocated_name(std::string* name) {
2640  if (name != nullptr) {
2641  _has_bits_[0] |= 0x00000001u;
2642  } else {
2643  _has_bits_[0] &= ~0x00000001u;
2644  }
2645  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
2646  // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.name)
2647 }
2648 
2649 // optional .operations_research.MPIndicatorConstraint indicator_constraint = 2;
2652 }
2653 inline void MPGeneralConstraintProto::set_has_indicator_constraint() {
2654  _oneof_case_[0] = kIndicatorConstraint;
2655 }
2657  if (has_indicator_constraint()) {
2658  delete general_constraint_.indicator_constraint_;
2659  clear_has_general_constraint();
2660  }
2661 }
2662 inline ::operations_research::MPIndicatorConstraint* MPGeneralConstraintProto::release_indicator_constraint() {
2663  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.indicator_constraint)
2664  if (has_indicator_constraint()) {
2665  clear_has_general_constraint();
2666  ::operations_research::MPIndicatorConstraint* temp = general_constraint_.indicator_constraint_;
2667  general_constraint_.indicator_constraint_ = nullptr;
2668  return temp;
2669  } else {
2670  return nullptr;
2671  }
2672 }
2673 inline const ::operations_research::MPIndicatorConstraint& MPGeneralConstraintProto::indicator_constraint() const {
2674  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.indicator_constraint)
2675  return has_indicator_constraint()
2676  ? *general_constraint_.indicator_constraint_
2677  : *reinterpret_cast< ::operations_research::MPIndicatorConstraint*>(&::operations_research::_MPIndicatorConstraint_default_instance_);
2678 }
2679 inline ::operations_research::MPIndicatorConstraint* MPGeneralConstraintProto::mutable_indicator_constraint() {
2680  if (!has_indicator_constraint()) {
2682  set_has_indicator_constraint();
2683  general_constraint_.indicator_constraint_ = CreateMaybeMessage< ::operations_research::MPIndicatorConstraint >(
2684  GetArenaNoVirtual());
2685  }
2686  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.indicator_constraint)
2687  return general_constraint_.indicator_constraint_;
2688 }
2689 
2690 // optional .operations_research.MPSosConstraint sos_constraint = 3;
2693 }
2694 inline void MPGeneralConstraintProto::set_has_sos_constraint() {
2695  _oneof_case_[0] = kSosConstraint;
2696 }
2698  if (has_sos_constraint()) {
2699  delete general_constraint_.sos_constraint_;
2700  clear_has_general_constraint();
2701  }
2702 }
2703 inline ::operations_research::MPSosConstraint* MPGeneralConstraintProto::release_sos_constraint() {
2704  // @@protoc_insertion_point(field_release:operations_research.MPGeneralConstraintProto.sos_constraint)
2705  if (has_sos_constraint()) {
2706  clear_has_general_constraint();
2707  ::operations_research::MPSosConstraint* temp = general_constraint_.sos_constraint_;
2708  general_constraint_.sos_constraint_ = nullptr;
2709  return temp;
2710  } else {
2711  return nullptr;
2712  }
2713 }
2714 inline const ::operations_research::MPSosConstraint& MPGeneralConstraintProto::sos_constraint() const {
2715  // @@protoc_insertion_point(field_get:operations_research.MPGeneralConstraintProto.sos_constraint)
2716  return has_sos_constraint()
2717  ? *general_constraint_.sos_constraint_
2718  : *reinterpret_cast< ::operations_research::MPSosConstraint*>(&::operations_research::_MPSosConstraint_default_instance_);
2719 }
2720 inline ::operations_research::MPSosConstraint* MPGeneralConstraintProto::mutable_sos_constraint() {
2721  if (!has_sos_constraint()) {
2723  set_has_sos_constraint();
2724  general_constraint_.sos_constraint_ = CreateMaybeMessage< ::operations_research::MPSosConstraint >(
2725  GetArenaNoVirtual());
2726  }
2727  // @@protoc_insertion_point(field_mutable:operations_research.MPGeneralConstraintProto.sos_constraint)
2728  return general_constraint_.sos_constraint_;
2729 }
2730 
2731 inline bool MPGeneralConstraintProto::has_general_constraint() const {
2733 }
2734 inline void MPGeneralConstraintProto::clear_has_general_constraint() {
2735  _oneof_case_[0] = GENERAL_CONSTRAINT_NOT_SET;
2736 }
2738  return MPGeneralConstraintProto::GeneralConstraintCase(_oneof_case_[0]);
2739 }
2740 // -------------------------------------------------------------------
2741 
2742 // MPIndicatorConstraint
2743 
2744 // optional int32 var_index = 1;
2746  return (_has_bits_[0] & 0x00000002u) != 0;
2747 }
2749  var_index_ = 0;
2750  _has_bits_[0] &= ~0x00000002u;
2751 }
2752 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::var_index() const {
2753  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.var_index)
2754  return var_index_;
2755 }
2756 inline void MPIndicatorConstraint::set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
2757  _has_bits_[0] |= 0x00000002u;
2758  var_index_ = value;
2759  // @@protoc_insertion_point(field_set:operations_research.MPIndicatorConstraint.var_index)
2760 }
2761 
2762 // optional int32 var_value = 2;
2764  return (_has_bits_[0] & 0x00000004u) != 0;
2765 }
2767  var_value_ = 0;
2768  _has_bits_[0] &= ~0x00000004u;
2769 }
2770 inline ::PROTOBUF_NAMESPACE_ID::int32 MPIndicatorConstraint::var_value() const {
2771  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.var_value)
2772  return var_value_;
2773 }
2774 inline void MPIndicatorConstraint::set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value) {
2775  _has_bits_[0] |= 0x00000004u;
2776  var_value_ = value;
2777  // @@protoc_insertion_point(field_set:operations_research.MPIndicatorConstraint.var_value)
2778 }
2779 
2780 // optional .operations_research.MPConstraintProto constraint = 3;
2782  return (_has_bits_[0] & 0x00000001u) != 0;
2783 }
2785  if (constraint_ != nullptr) constraint_->Clear();
2786  _has_bits_[0] &= ~0x00000001u;
2787 }
2788 inline const ::operations_research::MPConstraintProto& MPIndicatorConstraint::constraint() const {
2789  const ::operations_research::MPConstraintProto* p = constraint_;
2790  // @@protoc_insertion_point(field_get:operations_research.MPIndicatorConstraint.constraint)
2791  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPConstraintProto*>(
2793 }
2794 inline ::operations_research::MPConstraintProto* MPIndicatorConstraint::release_constraint() {
2795  // @@protoc_insertion_point(field_release:operations_research.MPIndicatorConstraint.constraint)
2796  _has_bits_[0] &= ~0x00000001u;
2797  ::operations_research::MPConstraintProto* temp = constraint_;
2798  constraint_ = nullptr;
2799  return temp;
2800 }
2801 inline ::operations_research::MPConstraintProto* MPIndicatorConstraint::mutable_constraint() {
2802  _has_bits_[0] |= 0x00000001u;
2803  if (constraint_ == nullptr) {
2804  auto* p = CreateMaybeMessage<::operations_research::MPConstraintProto>(GetArenaNoVirtual());
2805  constraint_ = p;
2806  }
2807  // @@protoc_insertion_point(field_mutable:operations_research.MPIndicatorConstraint.constraint)
2808  return constraint_;
2809 }
2811  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
2812  if (message_arena == nullptr) {
2813  delete constraint_;
2814  }
2815  if (constraint) {
2816  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
2817  if (message_arena != submessage_arena) {
2818  constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
2819  message_arena, constraint, submessage_arena);
2820  }
2821  _has_bits_[0] |= 0x00000001u;
2822  } else {
2823  _has_bits_[0] &= ~0x00000001u;
2824  }
2825  constraint_ = constraint;
2826  // @@protoc_insertion_point(field_set_allocated:operations_research.MPIndicatorConstraint.constraint)
2827 }
2828 
2829 // -------------------------------------------------------------------
2830 
2831 // MPSosConstraint
2832 
2833 // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
2834 inline bool MPSosConstraint::has_type() const {
2835  return (_has_bits_[0] & 0x00000001u) != 0;
2836 }
2838  type_ = 0;
2839  _has_bits_[0] &= ~0x00000001u;
2840 }
2842  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.type)
2843  return static_cast< ::operations_research::MPSosConstraint_Type >(type_);
2844 }
2847  _has_bits_[0] |= 0x00000001u;
2848  type_ = value;
2849  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.type)
2850 }
2851 
2852 // repeated int32 var_index = 2;
2854  return var_index_.size();
2855 }
2857  var_index_.Clear();
2858 }
2859 inline ::PROTOBUF_NAMESPACE_ID::int32 MPSosConstraint::var_index(int index) const {
2860  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.var_index)
2861  return var_index_.Get(index);
2862 }
2863 inline void MPSosConstraint::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
2864  var_index_.Set(index, value);
2865  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.var_index)
2866 }
2867 inline void MPSosConstraint::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
2868  var_index_.Add(value);
2869  // @@protoc_insertion_point(field_add:operations_research.MPSosConstraint.var_index)
2870 }
2871 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2873  // @@protoc_insertion_point(field_list:operations_research.MPSosConstraint.var_index)
2874  return var_index_;
2875 }
2876 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2878  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSosConstraint.var_index)
2879  return &var_index_;
2880 }
2881 
2882 // repeated double weight = 3;
2883 inline int MPSosConstraint::weight_size() const {
2884  return weight_.size();
2885 }
2887  weight_.Clear();
2888 }
2889 inline double MPSosConstraint::weight(int index) const {
2890  // @@protoc_insertion_point(field_get:operations_research.MPSosConstraint.weight)
2891  return weight_.Get(index);
2892 }
2893 inline void MPSosConstraint::set_weight(int index, double value) {
2894  weight_.Set(index, value);
2895  // @@protoc_insertion_point(field_set:operations_research.MPSosConstraint.weight)
2896 }
2897 inline void MPSosConstraint::add_weight(double value) {
2898  weight_.Add(value);
2899  // @@protoc_insertion_point(field_add:operations_research.MPSosConstraint.weight)
2900 }
2901 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2903  // @@protoc_insertion_point(field_list:operations_research.MPSosConstraint.weight)
2904  return weight_;
2905 }
2906 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2908  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSosConstraint.weight)
2909  return &weight_;
2910 }
2911 
2912 // -------------------------------------------------------------------
2913 
2914 // PartialVariableAssignment
2915 
2916 // repeated int32 var_index = 1 [packed = true];
2918  return var_index_.size();
2919 }
2921  var_index_.Clear();
2922 }
2923 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::var_index(int index) const {
2924  // @@protoc_insertion_point(field_get:operations_research.PartialVariableAssignment.var_index)
2925  return var_index_.Get(index);
2926 }
2927 inline void PartialVariableAssignment::set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
2928  var_index_.Set(index, value);
2929  // @@protoc_insertion_point(field_set:operations_research.PartialVariableAssignment.var_index)
2930 }
2931 inline void PartialVariableAssignment::add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
2932  var_index_.Add(value);
2933  // @@protoc_insertion_point(field_add:operations_research.PartialVariableAssignment.var_index)
2934 }
2935 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2937  // @@protoc_insertion_point(field_list:operations_research.PartialVariableAssignment.var_index)
2938  return var_index_;
2939 }
2940 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2942  // @@protoc_insertion_point(field_mutable_list:operations_research.PartialVariableAssignment.var_index)
2943  return &var_index_;
2944 }
2945 
2946 // repeated double var_value = 2 [packed = true];
2948  return var_value_.size();
2949 }
2951  var_value_.Clear();
2952 }
2953 inline double PartialVariableAssignment::var_value(int index) const {
2954  // @@protoc_insertion_point(field_get:operations_research.PartialVariableAssignment.var_value)
2955  return var_value_.Get(index);
2956 }
2957 inline void PartialVariableAssignment::set_var_value(int index, double value) {
2958  var_value_.Set(index, value);
2959  // @@protoc_insertion_point(field_set:operations_research.PartialVariableAssignment.var_value)
2960 }
2961 inline void PartialVariableAssignment::add_var_value(double value) {
2962  var_value_.Add(value);
2963  // @@protoc_insertion_point(field_add:operations_research.PartialVariableAssignment.var_value)
2964 }
2965 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
2967  // @@protoc_insertion_point(field_list:operations_research.PartialVariableAssignment.var_value)
2968  return var_value_;
2969 }
2970 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
2972  // @@protoc_insertion_point(field_mutable_list:operations_research.PartialVariableAssignment.var_value)
2973  return &var_value_;
2974 }
2975 
2976 // -------------------------------------------------------------------
2977 
2978 // MPModelProto
2979 
2980 // optional bool maximize = 1 [default = false];
2981 inline bool MPModelProto::has_maximize() const {
2982  return (_has_bits_[0] & 0x00000008u) != 0;
2983 }
2985  maximize_ = false;
2986  _has_bits_[0] &= ~0x00000008u;
2987 }
2988 inline bool MPModelProto::maximize() const {
2989  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.maximize)
2990  return maximize_;
2991 }
2992 inline void MPModelProto::set_maximize(bool value) {
2993  _has_bits_[0] |= 0x00000008u;
2994  maximize_ = value;
2995  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.maximize)
2996 }
2997 
2998 // optional double objective_offset = 2 [default = 0];
3000  return (_has_bits_[0] & 0x00000004u) != 0;
3001 }
3003  objective_offset_ = 0;
3004  _has_bits_[0] &= ~0x00000004u;
3005 }
3006 inline double MPModelProto::objective_offset() const {
3007  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.objective_offset)
3008  return objective_offset_;
3009 }
3010 inline void MPModelProto::set_objective_offset(double value) {
3011  _has_bits_[0] |= 0x00000004u;
3012  objective_offset_ = value;
3013  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.objective_offset)
3014 }
3015 
3016 // repeated .operations_research.MPVariableProto variable = 3;
3017 inline int MPModelProto::variable_size() const {
3018  return variable_.size();
3019 }
3021  variable_.Clear();
3022 }
3023 inline ::operations_research::MPVariableProto* MPModelProto::mutable_variable(int index) {
3024  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.variable)
3025  return variable_.Mutable(index);
3026 }
3027 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >*
3029  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.variable)
3030  return &variable_;
3031 }
3032 inline const ::operations_research::MPVariableProto& MPModelProto::variable(int index) const {
3033  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.variable)
3034  return variable_.Get(index);
3035 }
3036 inline ::operations_research::MPVariableProto* MPModelProto::add_variable() {
3037  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.variable)
3038  return variable_.Add();
3039 }
3040 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto >&
3042  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.variable)
3043  return variable_;
3044 }
3045 
3046 // repeated .operations_research.MPConstraintProto constraint = 4;
3047 inline int MPModelProto::constraint_size() const {
3048  return constraint_.size();
3049 }
3051  constraint_.Clear();
3052 }
3053 inline ::operations_research::MPConstraintProto* MPModelProto::mutable_constraint(int index) {
3054  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.constraint)
3055  return constraint_.Mutable(index);
3056 }
3057 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >*
3059  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.constraint)
3060  return &constraint_;
3061 }
3062 inline const ::operations_research::MPConstraintProto& MPModelProto::constraint(int index) const {
3063  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.constraint)
3064  return constraint_.Get(index);
3065 }
3066 inline ::operations_research::MPConstraintProto* MPModelProto::add_constraint() {
3067  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.constraint)
3068  return constraint_.Add();
3069 }
3070 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto >&
3072  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.constraint)
3073  return constraint_;
3074 }
3075 
3076 // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
3078  return general_constraint_.size();
3079 }
3081  general_constraint_.Clear();
3082 }
3083 inline ::operations_research::MPGeneralConstraintProto* MPModelProto::mutable_general_constraint(int index) {
3084  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.general_constraint)
3085  return general_constraint_.Mutable(index);
3086 }
3087 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >*
3089  // @@protoc_insertion_point(field_mutable_list:operations_research.MPModelProto.general_constraint)
3090  return &general_constraint_;
3091 }
3092 inline const ::operations_research::MPGeneralConstraintProto& MPModelProto::general_constraint(int index) const {
3093  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.general_constraint)
3094  return general_constraint_.Get(index);
3095 }
3096 inline ::operations_research::MPGeneralConstraintProto* MPModelProto::add_general_constraint() {
3097  // @@protoc_insertion_point(field_add:operations_research.MPModelProto.general_constraint)
3098  return general_constraint_.Add();
3099 }
3100 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto >&
3102  // @@protoc_insertion_point(field_list:operations_research.MPModelProto.general_constraint)
3103  return general_constraint_;
3104 }
3105 
3106 // optional string name = 5 [default = ""];
3107 inline bool MPModelProto::has_name() const {
3108  return (_has_bits_[0] & 0x00000001u) != 0;
3109 }
3111  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3112  _has_bits_[0] &= ~0x00000001u;
3113 }
3114 inline const std::string& MPModelProto::name() const {
3115  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.name)
3116  return name_.GetNoArena();
3117 }
3118 inline void MPModelProto::set_name(const std::string& value) {
3119  _has_bits_[0] |= 0x00000001u;
3120  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
3121  // @@protoc_insertion_point(field_set:operations_research.MPModelProto.name)
3122 }
3123 inline void MPModelProto::set_name(std::string&& value) {
3124  _has_bits_[0] |= 0x00000001u;
3125  name_.SetNoArena(
3126  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
3127  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPModelProto.name)
3128 }
3129 inline void MPModelProto::set_name(const char* value) {
3130  GOOGLE_DCHECK(value != nullptr);
3131  _has_bits_[0] |= 0x00000001u;
3132  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
3133  // @@protoc_insertion_point(field_set_char:operations_research.MPModelProto.name)
3134 }
3135 inline void MPModelProto::set_name(const char* value, size_t size) {
3136  _has_bits_[0] |= 0x00000001u;
3137  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3138  ::std::string(reinterpret_cast<const char*>(value), size));
3139  // @@protoc_insertion_point(field_set_pointer:operations_research.MPModelProto.name)
3140 }
3141 inline std::string* MPModelProto::mutable_name() {
3142  _has_bits_[0] |= 0x00000001u;
3143  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.name)
3144  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3145 }
3146 inline std::string* MPModelProto::release_name() {
3147  // @@protoc_insertion_point(field_release:operations_research.MPModelProto.name)
3148  if (!has_name()) {
3149  return nullptr;
3150  }
3151  _has_bits_[0] &= ~0x00000001u;
3152  return name_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3153 }
3154 inline void MPModelProto::set_allocated_name(std::string* name) {
3155  if (name != nullptr) {
3156  _has_bits_[0] |= 0x00000001u;
3157  } else {
3158  _has_bits_[0] &= ~0x00000001u;
3159  }
3160  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
3161  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelProto.name)
3162 }
3163 
3164 // optional .operations_research.PartialVariableAssignment solution_hint = 6;
3165 inline bool MPModelProto::has_solution_hint() const {
3166  return (_has_bits_[0] & 0x00000002u) != 0;
3167 }
3169  if (solution_hint_ != nullptr) solution_hint_->Clear();
3170  _has_bits_[0] &= ~0x00000002u;
3171 }
3172 inline const ::operations_research::PartialVariableAssignment& MPModelProto::solution_hint() const {
3173  const ::operations_research::PartialVariableAssignment* p = solution_hint_;
3174  // @@protoc_insertion_point(field_get:operations_research.MPModelProto.solution_hint)
3175  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::PartialVariableAssignment*>(
3177 }
3178 inline ::operations_research::PartialVariableAssignment* MPModelProto::release_solution_hint() {
3179  // @@protoc_insertion_point(field_release:operations_research.MPModelProto.solution_hint)
3180  _has_bits_[0] &= ~0x00000002u;
3181  ::operations_research::PartialVariableAssignment* temp = solution_hint_;
3182  solution_hint_ = nullptr;
3183  return temp;
3184 }
3185 inline ::operations_research::PartialVariableAssignment* MPModelProto::mutable_solution_hint() {
3186  _has_bits_[0] |= 0x00000002u;
3187  if (solution_hint_ == nullptr) {
3188  auto* p = CreateMaybeMessage<::operations_research::PartialVariableAssignment>(GetArenaNoVirtual());
3189  solution_hint_ = p;
3190  }
3191  // @@protoc_insertion_point(field_mutable:operations_research.MPModelProto.solution_hint)
3192  return solution_hint_;
3193 }
3195  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
3196  if (message_arena == nullptr) {
3197  delete solution_hint_;
3198  }
3199  if (solution_hint) {
3200  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
3201  if (message_arena != submessage_arena) {
3202  solution_hint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3203  message_arena, solution_hint, submessage_arena);
3204  }
3205  _has_bits_[0] |= 0x00000002u;
3206  } else {
3207  _has_bits_[0] &= ~0x00000002u;
3208  }
3209  solution_hint_ = solution_hint;
3210  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelProto.solution_hint)
3211 }
3212 
3213 // -------------------------------------------------------------------
3214 
3215 // OptionalDouble
3216 
3217 // optional double value = 1;
3218 inline bool OptionalDouble::has_value() const {
3219  return (_has_bits_[0] & 0x00000001u) != 0;
3220 }
3222  value_ = 0;
3223  _has_bits_[0] &= ~0x00000001u;
3224 }
3225 inline double OptionalDouble::value() const {
3226  // @@protoc_insertion_point(field_get:operations_research.OptionalDouble.value)
3227  return value_;
3228 }
3229 inline void OptionalDouble::set_value(double value) {
3230  _has_bits_[0] |= 0x00000001u;
3231  value_ = value;
3232  // @@protoc_insertion_point(field_set:operations_research.OptionalDouble.value)
3233 }
3234 
3235 // -------------------------------------------------------------------
3236 
3237 // MPSolverCommonParameters
3238 
3239 // optional .operations_research.OptionalDouble relative_mip_gap = 1;
3241  return (_has_bits_[0] & 0x00000001u) != 0;
3242 }
3244  if (relative_mip_gap_ != nullptr) relative_mip_gap_->Clear();
3245  _has_bits_[0] &= ~0x00000001u;
3246 }
3247 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::relative_mip_gap() const {
3248  const ::operations_research::OptionalDouble* p = relative_mip_gap_;
3249  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.relative_mip_gap)
3250  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
3252 }
3253 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_relative_mip_gap() {
3254  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.relative_mip_gap)
3255  _has_bits_[0] &= ~0x00000001u;
3256  ::operations_research::OptionalDouble* temp = relative_mip_gap_;
3257  relative_mip_gap_ = nullptr;
3258  return temp;
3259 }
3260 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_relative_mip_gap() {
3261  _has_bits_[0] |= 0x00000001u;
3262  if (relative_mip_gap_ == nullptr) {
3263  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
3264  relative_mip_gap_ = p;
3265  }
3266  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.relative_mip_gap)
3267  return relative_mip_gap_;
3268 }
3270  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
3271  if (message_arena == nullptr) {
3272  delete relative_mip_gap_;
3273  }
3274  if (relative_mip_gap) {
3275  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
3276  if (message_arena != submessage_arena) {
3277  relative_mip_gap = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3278  message_arena, relative_mip_gap, submessage_arena);
3279  }
3280  _has_bits_[0] |= 0x00000001u;
3281  } else {
3282  _has_bits_[0] &= ~0x00000001u;
3283  }
3284  relative_mip_gap_ = relative_mip_gap;
3285  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.relative_mip_gap)
3286 }
3287 
3288 // optional .operations_research.OptionalDouble primal_tolerance = 2;
3290  return (_has_bits_[0] & 0x00000002u) != 0;
3291 }
3293  if (primal_tolerance_ != nullptr) primal_tolerance_->Clear();
3294  _has_bits_[0] &= ~0x00000002u;
3295 }
3296 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::primal_tolerance() const {
3297  const ::operations_research::OptionalDouble* p = primal_tolerance_;
3298  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.primal_tolerance)
3299  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
3301 }
3302 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_primal_tolerance() {
3303  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.primal_tolerance)
3304  _has_bits_[0] &= ~0x00000002u;
3305  ::operations_research::OptionalDouble* temp = primal_tolerance_;
3306  primal_tolerance_ = nullptr;
3307  return temp;
3308 }
3309 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_primal_tolerance() {
3310  _has_bits_[0] |= 0x00000002u;
3311  if (primal_tolerance_ == nullptr) {
3312  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
3313  primal_tolerance_ = p;
3314  }
3315  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.primal_tolerance)
3316  return primal_tolerance_;
3317 }
3319  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
3320  if (message_arena == nullptr) {
3321  delete primal_tolerance_;
3322  }
3323  if (primal_tolerance) {
3324  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
3325  if (message_arena != submessage_arena) {
3326  primal_tolerance = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3327  message_arena, primal_tolerance, submessage_arena);
3328  }
3329  _has_bits_[0] |= 0x00000002u;
3330  } else {
3331  _has_bits_[0] &= ~0x00000002u;
3332  }
3333  primal_tolerance_ = primal_tolerance;
3334  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.primal_tolerance)
3335 }
3336 
3337 // optional .operations_research.OptionalDouble dual_tolerance = 3;
3339  return (_has_bits_[0] & 0x00000004u) != 0;
3340 }
3342  if (dual_tolerance_ != nullptr) dual_tolerance_->Clear();
3343  _has_bits_[0] &= ~0x00000004u;
3344 }
3345 inline const ::operations_research::OptionalDouble& MPSolverCommonParameters::dual_tolerance() const {
3346  const ::operations_research::OptionalDouble* p = dual_tolerance_;
3347  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.dual_tolerance)
3348  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::OptionalDouble*>(
3350 }
3351 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::release_dual_tolerance() {
3352  // @@protoc_insertion_point(field_release:operations_research.MPSolverCommonParameters.dual_tolerance)
3353  _has_bits_[0] &= ~0x00000004u;
3354  ::operations_research::OptionalDouble* temp = dual_tolerance_;
3355  dual_tolerance_ = nullptr;
3356  return temp;
3357 }
3358 inline ::operations_research::OptionalDouble* MPSolverCommonParameters::mutable_dual_tolerance() {
3359  _has_bits_[0] |= 0x00000004u;
3360  if (dual_tolerance_ == nullptr) {
3361  auto* p = CreateMaybeMessage<::operations_research::OptionalDouble>(GetArenaNoVirtual());
3362  dual_tolerance_ = p;
3363  }
3364  // @@protoc_insertion_point(field_mutable:operations_research.MPSolverCommonParameters.dual_tolerance)
3365  return dual_tolerance_;
3366 }
3368  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
3369  if (message_arena == nullptr) {
3370  delete dual_tolerance_;
3371  }
3372  if (dual_tolerance) {
3373  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
3374  if (message_arena != submessage_arena) {
3375  dual_tolerance = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3376  message_arena, dual_tolerance, submessage_arena);
3377  }
3378  _has_bits_[0] |= 0x00000004u;
3379  } else {
3380  _has_bits_[0] &= ~0x00000004u;
3381  }
3382  dual_tolerance_ = dual_tolerance;
3383  // @@protoc_insertion_point(field_set_allocated:operations_research.MPSolverCommonParameters.dual_tolerance)
3384 }
3385 
3386 // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
3388  return (_has_bits_[0] & 0x00000008u) != 0;
3389 }
3391  lp_algorithm_ = 0;
3392  _has_bits_[0] &= ~0x00000008u;
3393 }
3395  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.lp_algorithm)
3396  return static_cast< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues >(lp_algorithm_);
3397 }
3400  _has_bits_[0] |= 0x00000008u;
3401  lp_algorithm_ = value;
3402  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.lp_algorithm)
3403 }
3404 
3405 // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
3407  return (_has_bits_[0] & 0x00000010u) != 0;
3408 }
3410  presolve_ = 0;
3411  _has_bits_[0] &= ~0x00000010u;
3412 }
3413 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::presolve() const {
3414  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.presolve)
3415  return static_cast< ::operations_research::OptionalBoolean >(presolve_);
3416 }
3417 inline void MPSolverCommonParameters::set_presolve(::operations_research::OptionalBoolean value) {
3418  assert(::operations_research::OptionalBoolean_IsValid(value));
3419  _has_bits_[0] |= 0x00000010u;
3420  presolve_ = value;
3421  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.presolve)
3422 }
3423 
3424 // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
3426  return (_has_bits_[0] & 0x00000020u) != 0;
3427 }
3429  scaling_ = 0;
3430  _has_bits_[0] &= ~0x00000020u;
3431 }
3432 inline ::operations_research::OptionalBoolean MPSolverCommonParameters::scaling() const {
3433  // @@protoc_insertion_point(field_get:operations_research.MPSolverCommonParameters.scaling)
3434  return static_cast< ::operations_research::OptionalBoolean >(scaling_);
3435 }
3436 inline void MPSolverCommonParameters::set_scaling(::operations_research::OptionalBoolean value) {
3437  assert(::operations_research::OptionalBoolean_IsValid(value));
3438  _has_bits_[0] |= 0x00000020u;
3439  scaling_ = value;
3440  // @@protoc_insertion_point(field_set:operations_research.MPSolverCommonParameters.scaling)
3441 }
3442 
3443 // -------------------------------------------------------------------
3444 
3445 // MPModelRequest
3446 
3447 // optional .operations_research.MPModelProto model = 1;
3448 inline bool MPModelRequest::has_model() const {
3449  return (_has_bits_[0] & 0x00000002u) != 0;
3450 }
3452  if (model_ != nullptr) model_->Clear();
3453  _has_bits_[0] &= ~0x00000002u;
3454 }
3455 inline const ::operations_research::MPModelProto& MPModelRequest::model() const {
3456  const ::operations_research::MPModelProto* p = model_;
3457  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.model)
3458  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::MPModelProto*>(
3460 }
3461 inline ::operations_research::MPModelProto* MPModelRequest::release_model() {
3462  // @@protoc_insertion_point(field_release:operations_research.MPModelRequest.model)
3463  _has_bits_[0] &= ~0x00000002u;
3464  ::operations_research::MPModelProto* temp = model_;
3465  model_ = nullptr;
3466  return temp;
3467 }
3468 inline ::operations_research::MPModelProto* MPModelRequest::mutable_model() {
3469  _has_bits_[0] |= 0x00000002u;
3470  if (model_ == nullptr) {
3471  auto* p = CreateMaybeMessage<::operations_research::MPModelProto>(GetArenaNoVirtual());
3472  model_ = p;
3473  }
3474  // @@protoc_insertion_point(field_mutable:operations_research.MPModelRequest.model)
3475  return model_;
3476 }
3478  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
3479  if (message_arena == nullptr) {
3480  delete model_;
3481  }
3482  if (model) {
3483  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
3484  if (message_arena != submessage_arena) {
3485  model = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
3486  message_arena, model, submessage_arena);
3487  }
3488  _has_bits_[0] |= 0x00000002u;
3489  } else {
3490  _has_bits_[0] &= ~0x00000002u;
3491  }
3492  model_ = model;
3493  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelRequest.model)
3494 }
3495 
3496 // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
3497 inline bool MPModelRequest::has_solver_type() const {
3498  return (_has_bits_[0] & 0x00000010u) != 0;
3499 }
3501  solver_type_ = 2;
3502  _has_bits_[0] &= ~0x00000010u;
3503 }
3505  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_type)
3506  return static_cast< ::operations_research::MPModelRequest_SolverType >(solver_type_);
3507 }
3510  _has_bits_[0] |= 0x00000010u;
3511  solver_type_ = value;
3512  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_type)
3513 }
3514 
3515 // optional double solver_time_limit_seconds = 3;
3517  return (_has_bits_[0] & 0x00000004u) != 0;
3518 }
3520  solver_time_limit_seconds_ = 0;
3521  _has_bits_[0] &= ~0x00000004u;
3522 }
3524  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_time_limit_seconds)
3525  return solver_time_limit_seconds_;
3526 }
3528  _has_bits_[0] |= 0x00000004u;
3529  solver_time_limit_seconds_ = value;
3530  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_time_limit_seconds)
3531 }
3532 
3533 // optional bool enable_internal_solver_output = 4 [default = false];
3535  return (_has_bits_[0] & 0x00000008u) != 0;
3536 }
3538  enable_internal_solver_output_ = false;
3539  _has_bits_[0] &= ~0x00000008u;
3540 }
3542  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.enable_internal_solver_output)
3543  return enable_internal_solver_output_;
3544 }
3546  _has_bits_[0] |= 0x00000008u;
3547  enable_internal_solver_output_ = value;
3548  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.enable_internal_solver_output)
3549 }
3550 
3551 // optional string solver_specific_parameters = 5;
3553  return (_has_bits_[0] & 0x00000001u) != 0;
3554 }
3556  solver_specific_parameters_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3557  _has_bits_[0] &= ~0x00000001u;
3558 }
3559 inline const std::string& MPModelRequest::solver_specific_parameters() const {
3560  // @@protoc_insertion_point(field_get:operations_research.MPModelRequest.solver_specific_parameters)
3561  return solver_specific_parameters_.GetNoArena();
3562 }
3563 inline void MPModelRequest::set_solver_specific_parameters(const std::string& value) {
3564  _has_bits_[0] |= 0x00000001u;
3565  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
3566  // @@protoc_insertion_point(field_set:operations_research.MPModelRequest.solver_specific_parameters)
3567 }
3568 inline void MPModelRequest::set_solver_specific_parameters(std::string&& value) {
3569  _has_bits_[0] |= 0x00000001u;
3570  solver_specific_parameters_.SetNoArena(
3571  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
3572  // @@protoc_insertion_point(field_set_rvalue:operations_research.MPModelRequest.solver_specific_parameters)
3573 }
3574 inline void MPModelRequest::set_solver_specific_parameters(const char* value) {
3575  GOOGLE_DCHECK(value != nullptr);
3576  _has_bits_[0] |= 0x00000001u;
3577  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
3578  // @@protoc_insertion_point(field_set_char:operations_research.MPModelRequest.solver_specific_parameters)
3579 }
3580 inline void MPModelRequest::set_solver_specific_parameters(const char* value, size_t size) {
3581  _has_bits_[0] |= 0x00000001u;
3582  solver_specific_parameters_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
3583  ::std::string(reinterpret_cast<const char*>(value), size));
3584  // @@protoc_insertion_point(field_set_pointer:operations_research.MPModelRequest.solver_specific_parameters)
3585 }
3587  _has_bits_[0] |= 0x00000001u;
3588  // @@protoc_insertion_point(field_mutable:operations_research.MPModelRequest.solver_specific_parameters)
3589  return solver_specific_parameters_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3590 }
3592  // @@protoc_insertion_point(field_release:operations_research.MPModelRequest.solver_specific_parameters)
3594  return nullptr;
3595  }
3596  _has_bits_[0] &= ~0x00000001u;
3597  return solver_specific_parameters_.ReleaseNonDefaultNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
3598 }
3599 inline void MPModelRequest::set_allocated_solver_specific_parameters(std::string* solver_specific_parameters) {
3600  if (solver_specific_parameters != nullptr) {
3601  _has_bits_[0] |= 0x00000001u;
3602  } else {
3603  _has_bits_[0] &= ~0x00000001u;
3604  }
3605  solver_specific_parameters_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), solver_specific_parameters);
3606  // @@protoc_insertion_point(field_set_allocated:operations_research.MPModelRequest.solver_specific_parameters)
3607 }
3608 
3609 // -------------------------------------------------------------------
3610 
3611 // MPSolutionResponse
3612 
3613 // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
3614 inline bool MPSolutionResponse::has_status() const {
3615  return (_has_bits_[0] & 0x00000004u) != 0;
3616 }
3618  status_ = 99;
3619  _has_bits_[0] &= ~0x00000004u;
3620 }
3622  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.status)
3623  return static_cast< ::operations_research::MPSolverResponseStatus >(status_);
3624 }
3627  _has_bits_[0] |= 0x00000004u;
3628  status_ = value;
3629  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.status)
3630 }
3631 
3632 // optional double objective_value = 2;
3634  return (_has_bits_[0] & 0x00000001u) != 0;
3635 }
3637  objective_value_ = 0;
3638  _has_bits_[0] &= ~0x00000001u;
3639 }
3641  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.objective_value)
3642  return objective_value_;
3643 }
3644 inline void MPSolutionResponse::set_objective_value(double value) {
3645  _has_bits_[0] |= 0x00000001u;
3646  objective_value_ = value;
3647  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.objective_value)
3648 }
3649 
3650 // optional double best_objective_bound = 5;
3652  return (_has_bits_[0] & 0x00000002u) != 0;
3653 }
3655  best_objective_bound_ = 0;
3656  _has_bits_[0] &= ~0x00000002u;
3657 }
3659  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.best_objective_bound)
3660  return best_objective_bound_;
3661 }
3663  _has_bits_[0] |= 0x00000002u;
3664  best_objective_bound_ = value;
3665  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.best_objective_bound)
3666 }
3667 
3668 // repeated double variable_value = 3 [packed = true];
3670  return variable_value_.size();
3671 }
3673  variable_value_.Clear();
3674 }
3675 inline double MPSolutionResponse::variable_value(int index) const {
3676  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.variable_value)
3677  return variable_value_.Get(index);
3678 }
3679 inline void MPSolutionResponse::set_variable_value(int index, double value) {
3680  variable_value_.Set(index, value);
3681  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.variable_value)
3682 }
3683 inline void MPSolutionResponse::add_variable_value(double value) {
3684  variable_value_.Add(value);
3685  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.variable_value)
3686 }
3687 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3689  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.variable_value)
3690  return variable_value_;
3691 }
3692 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3694  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.variable_value)
3695  return &variable_value_;
3696 }
3697 
3698 // repeated double dual_value = 4 [packed = true];
3700  return dual_value_.size();
3701 }
3703  dual_value_.Clear();
3704 }
3705 inline double MPSolutionResponse::dual_value(int index) const {
3706  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.dual_value)
3707  return dual_value_.Get(index);
3708 }
3709 inline void MPSolutionResponse::set_dual_value(int index, double value) {
3710  dual_value_.Set(index, value);
3711  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.dual_value)
3712 }
3713 inline void MPSolutionResponse::add_dual_value(double value) {
3714  dual_value_.Add(value);
3715  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.dual_value)
3716 }
3717 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3719  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.dual_value)
3720  return dual_value_;
3721 }
3722 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3724  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.dual_value)
3725  return &dual_value_;
3726 }
3727 
3728 // repeated double reduced_cost = 6 [packed = true];
3730  return reduced_cost_.size();
3731 }
3733  reduced_cost_.Clear();
3734 }
3735 inline double MPSolutionResponse::reduced_cost(int index) const {
3736  // @@protoc_insertion_point(field_get:operations_research.MPSolutionResponse.reduced_cost)
3737  return reduced_cost_.Get(index);
3738 }
3739 inline void MPSolutionResponse::set_reduced_cost(int index, double value) {
3740  reduced_cost_.Set(index, value);
3741  // @@protoc_insertion_point(field_set:operations_research.MPSolutionResponse.reduced_cost)
3742 }
3743 inline void MPSolutionResponse::add_reduced_cost(double value) {
3744  reduced_cost_.Add(value);
3745  // @@protoc_insertion_point(field_add:operations_research.MPSolutionResponse.reduced_cost)
3746 }
3747 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >&
3749  // @@protoc_insertion_point(field_list:operations_research.MPSolutionResponse.reduced_cost)
3750  return reduced_cost_;
3751 }
3752 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< double >*
3754  // @@protoc_insertion_point(field_mutable_list:operations_research.MPSolutionResponse.reduced_cost)
3755  return &reduced_cost_;
3756 }
3757 
3758 #ifdef __GNUC__
3759  #pragma GCC diagnostic pop
3760 #endif // __GNUC__
3761 // -------------------------------------------------------------------
3762 
3763 // -------------------------------------------------------------------
3764 
3765 // -------------------------------------------------------------------
3766 
3767 // -------------------------------------------------------------------
3768 
3769 // -------------------------------------------------------------------
3770 
3771 // -------------------------------------------------------------------
3772 
3773 // -------------------------------------------------------------------
3774 
3775 // -------------------------------------------------------------------
3776 
3777 // -------------------------------------------------------------------
3778 
3779 // -------------------------------------------------------------------
3780 
3781 
3782 // @@protoc_insertion_point(namespace_scope)
3783 
3784 } // namespace operations_research
3785 
3786 PROTOBUF_NAMESPACE_OPEN
3787 
3788 template <> struct is_proto_enum< ::operations_research::MPSosConstraint_Type> : ::std::true_type {};
3789 template <>
3790 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSosConstraint_Type>() {
3792 }
3793 template <> struct is_proto_enum< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues> : ::std::true_type {};
3794 template <>
3795 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSolverCommonParameters_LPAlgorithmValues>() {
3797 }
3798 template <> struct is_proto_enum< ::operations_research::MPModelRequest_SolverType> : ::std::true_type {};
3799 template <>
3800 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPModelRequest_SolverType>() {
3802 }
3803 template <> struct is_proto_enum< ::operations_research::MPSolverResponseStatus> : ::std::true_type {};
3804 template <>
3805 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::MPSolverResponseStatus>() {
3807 }
3808 
3809 PROTOBUF_NAMESPACE_CLOSE
3810 
3811 // @@protoc_insertion_point(global_scope)
3812 
3813 #include <google/protobuf/port_undef.inc>
3814 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void set_solver_time_limit_seconds(double value)
void Swap(MPModelProto *other)
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MPModelRequest & operator=(MPModelRequest &&from) noexcept
MPSolverCommonParameters & operator=(MPSolverCommonParameters &&from) noexcept
static const MPGeneralConstraintProto & default_instance()
const ::operations_research::MPIndicatorConstraint & indicator_constraint() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_variable_value()
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverResponseStatus_descriptor()
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void Swap(MPSosConstraint *other)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
MPModelProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const std::string & name() const
void set_lp_algorithm(::operations_research::MPSolverCommonParameters_LPAlgorithmValues value)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static constexpr SolverType GUROBI_MIXED_INTEGER_PROGRAMMING
static const MPSosConstraint & default_instance()
MPVariableProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
friend void swap(OptionalDouble &a, OptionalDouble &b)
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
friend void swap(MPModelRequest &a, MPModelRequest &b)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
constexpr MPModelRequest_SolverType MPModelRequest_SolverType_SolverType_MIN
static bool SolverType_IsValid(int value)
MPGeneralConstraintProto & operator=(const MPGeneralConstraintProto &from)
void set_type(::operations_research::MPSosConstraint_Type value)
void Swap(PartialVariableAssignment *other)
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
void set_coefficient(int index, double value)
OptionalDouble * New() const final
bool MPModelRequest_SolverType_IsValid(int value)
MPVariableProto * New() const final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * SolverType_descriptor()
::operations_research::MPModelProto * mutable_model()
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > * mutable_general_constraint()
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
static constexpr SolverType SolverType_MAX
MPVariableProto & operator=(const MPVariableProto &from)
static constexpr LPAlgorithmValues LP_ALGO_BARRIER
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries [] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
::operations_research::OptionalDouble * mutable_relative_mip_gap()
void Swap(MPVariableProto *other)
const ::operations_research::MPSosConstraint & sos_constraint() const
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void set_reduced_cost(int index, double value)
MPGeneralConstraintProto & operator=(MPGeneralConstraintProto &&from) noexcept
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
::operations_research::PartialVariableAssignment * release_solution_hint()
const std::string & MPModelRequest_SolverType_Name(T enum_t_value)
constexpr int MPSolverResponseStatus_ARRAYSIZE
bool MPSolverResponseStatus_IsValid(int value)
void set_allocated_constraint(::operations_research::MPConstraintProto *constraint)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPGeneralConstraintProto > & general_constraint() const
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
constexpr MPSosConstraint_Type MPSosConstraint_Type_Type_MAX
const ::operations_research::OptionalDouble & dual_tolerance() const
GeneralConstraintCase general_constraint_case() const
static const MPGeneralConstraintProto * internal_default_instance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MPSolutionResponse & operator=(MPSolutionResponse &&from) noexcept
static const PartialVariableAssignment & default_instance()
PartialVariableAssignment & operator=(PartialVariableAssignment &&from) noexcept
static const MPModelRequest & default_instance()
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
::operations_research::MPGeneralConstraintProto * add_general_constraint()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
void set_status(::operations_research::MPSolverResponseStatus value)
OptionalDouble & operator=(OptionalDouble &&from) noexcept
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(MPGeneralConstraintProto &a, MPGeneralConstraintProto &b)
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
constexpr MPSolverCommonParameters_LPAlgorithmValues MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_MAX
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool MPSolverCommonParameters_LPAlgorithmValues_IsValid(int value)
MPSosConstraint & operator=(MPSosConstraint &&from) noexcept
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
friend void swap(PartialVariableAssignment &a, PartialVariableAssignment &b)
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
::operations_research::OptionalDouble * mutable_dual_tolerance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > & constraint() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > & variable() const
constexpr MPModelRequest_SolverType MPModelRequest_SolverType_SolverType_MAX
static const MPSolutionResponse & default_instance()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
constexpr int MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_ARRAYSIZE
::operations_research::MPModelProto * release_model()
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
constexpr MPSolverCommonParameters_LPAlgorithmValues MPSolverCommonParameters_LPAlgorithmValues_LPAlgorithmValues_MIN
static const MPVariableProto * internal_default_instance()
friend void swap(MPConstraintProto &a, MPConstraintProto &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void Swap(MPSolverCommonParameters *other)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPModelRequest_SolverType_descriptor()
MPModelProto & operator=(const MPModelProto &from)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
static const int kSolverSpecificParametersFieldNumber
MPGeneralConstraintProto(MPGeneralConstraintProto &&from) noexcept
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr SolverType CBC_MIXED_INTEGER_PROGRAMMING
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
static const MPSolutionResponse * internal_default_instance()
void set_solver_specific_parameters(const std::string &value)
MPConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & variable_value() const
MPGeneralConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const std::string & Type_Name(T enum_t_value)
MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::operations_research::MPConstraintProto & constraint() const
friend void swap(MPSosConstraint &a, MPSosConstraint &b)
::operations_research::MPConstraintProto * add_constraint()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
MPSolutionResponse(MPSolutionResponse &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
MPConstraintProto * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
void Swap(MPIndicatorConstraint *other)
const ::operations_research::OptionalDouble & primal_tolerance() const
static constexpr SolverType GLPK_MIXED_INTEGER_PROGRAMMING
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
::PROTOBUF_NAMESPACE_ID::int32 branching_priority() const
MPModelProto * New() const final
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
MPGeneralConstraintProtoDefaultTypeInternal _MPGeneralConstraintProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
MPConstraintProto(MPConstraintProto &&from) noexcept
void set_allocated_primal_tolerance(::operations_research::OptionalDouble *primal_tolerance)
::operations_research::OptionalDouble * release_primal_tolerance()
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
void set_scaling(::operations_research::OptionalBoolean value)
MPIndicatorConstraintDefaultTypeInternal _MPIndicatorConstraint_default_instance_
static constexpr SolverType SCIP_MIXED_INTEGER_PROGRAMMING
void set_name(const std::string &value)
const std::string & name() const
const ::operations_research::PartialVariableAssignment & solution_hint() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
const ::operations_research::OptionalDouble & relative_mip_gap() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
MPIndicatorConstraint * New() const final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & reduced_cost() const
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
const std::string & solver_specific_parameters() const
void set_name(const std::string &value)
MPSolutionResponse & operator=(const MPSolutionResponse &from)
MPModelRequest_SolverType SolverType
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
bool MPModelRequest_SolverType_Parse(const std::string &name, MPModelRequest_SolverType *value)
static const MPIndicatorConstraint & default_instance()
MPSolutionResponse * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const MPSolverCommonParameters & default_instance()
MPModelProto(MPModelProto &&from) noexcept
MPSolverCommonParameters * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
MPConstraintProto & operator=(const MPConstraintProto &from)
::operations_research::OptionalDouble * mutable_primal_tolerance()
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSosConstraint_Type_descriptor()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const int kEnableInternalSolverOutputFieldNumber
static constexpr LPAlgorithmValues LP_ALGO_UNSPECIFIED
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
size_t ByteSizeLong() const final
void Swap(OptionalDouble *other)
::operations_research::MPSosConstraint * mutable_sos_constraint()
void set_dual_value(int index, double value)
static constexpr SolverType SAT_INTEGER_PROGRAMMING
static constexpr SolverType SolverType_MIN
OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
MPSosConstraint * New() const final
MPModelRequest & operator=(const MPModelRequest &from)
static constexpr SolverType KNAPSACK_MIXED_INTEGER_PROGRAMMING
MPModelRequest * New() const final
::operations_research::MPVariableProto * add_variable()
void set_allocated_solution_hint(::operations_research::PartialVariableAssignment *solution_hint)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
constexpr int MPSosConstraint_Type_Type_ARRAYSIZE
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * LPAlgorithmValues_descriptor()
static const OptionalDouble * internal_default_instance()
PartialVariableAssignment * New() const final
static const MPConstraintProto * internal_default_instance()
static constexpr SolverType CPLEX_LINEAR_PROGRAMMING
MPVariableProto & operator=(MPVariableProto &&from) noexcept
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
::operations_research::MPConstraintProto * mutable_constraint()
void set_allocated_name(std::string *name)
::operations_research::OptionalBoolean presolve() const
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_reduced_cost()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
MPSosConstraint & operator=(const MPSosConstraint &from)
void set_allocated_dual_tolerance(::operations_research::OptionalDouble *dual_tolerance)
void set_allocated_sos_constraint(::operations_research::MPSosConstraint *sos_constraint)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool MPSosConstraint_Type_Parse(const std::string &name, MPSosConstraint_Type *value)
MPIndicatorConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & var_index() const
::operations_research::OptionalBoolean scaling() const
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
constexpr int MPModelRequest_SolverType_SolverType_ARRAYSIZE
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr SolverType CLP_LINEAR_PROGRAMMING
friend void swap(MPSolverCommonParameters &a, MPSolverCommonParameters &b)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
static const OptionalDouble & default_instance()
static const PartialVariableAssignment * internal_default_instance()
PartialVariableAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_allocated_solver_specific_parameters(std::string *solver_specific_parameters)
OptionalDouble & operator=(const OptionalDouble &from)
MPModelProto & operator=(MPModelProto &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_name(std::string *name)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPConstraintProto > * mutable_constraint()
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * Type_descriptor()
static const MPConstraintProto & default_instance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static constexpr SolverType GUROBI_LINEAR_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & coefficient() const
void Swap(MPGeneralConstraintProto *other)
static constexpr int kIndexInFileMessages
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_var_value(::PROTOBUF_NAMESPACE_ID::int32 value)
OptionalDouble(OptionalDouble &&from) noexcept
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
constexpr MPSosConstraint_Type MPSosConstraint_Type_Type_MIN
MPGeneralConstraintProto * New() const final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
void set_solver_type(::operations_research::MPModelRequest_SolverType value)
MPSolverCommonParameters_LPAlgorithmValues LPAlgorithmValues
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const MPIndicatorConstraint * internal_default_instance()
MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static constexpr LPAlgorithmValues LP_ALGO_DUAL
::operations_research::MPSolverCommonParameters_LPAlgorithmValues lp_algorithm() const
::operations_research::MPConstraintProto * release_constraint()
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_weight()
PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_coefficient()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void Swap(MPModelRequest *other)
static const std::string & SolverType_Name(T enum_t_value)
static constexpr SolverType GLOP_LINEAR_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
MPConstraintProto & operator=(MPConstraintProto &&from) noexcept
friend void swap(MPSolutionResponse &a, MPSolutionResponse &b)
static const MPModelRequest * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
MPModelRequest(MPModelRequest &&from) noexcept
static constexpr LPAlgorithmValues LPAlgorithmValues_MAX
void add_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
MPIndicatorConstraint(MPIndicatorConstraint &&from) noexcept
::operations_research::PartialVariableAssignment * mutable_solution_hint()
void set_allocated_indicator_constraint(::operations_research::MPIndicatorConstraint *indicator_constraint)
friend void swap(MPIndicatorConstraint &a, MPIndicatorConstraint &b)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void set_allocated_name(std::string *name)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr LPAlgorithmValues LPAlgorithmValues_MIN
MPIndicatorConstraint & operator=(MPIndicatorConstraint &&from) noexcept
void set_var_index(::PROTOBUF_NAMESPACE_ID::int32 value)
void Swap(MPConstraintProto *other)
::PROTOBUF_NAMESPACE_ID::int32 var_value() const
::operations_research::MPSosConstraint * release_sos_constraint()
::operations_research::MPIndicatorConstraint * release_indicator_constraint()
bool MPSolverResponseStatus_Parse(const std::string &name, MPSolverResponseStatus *value)
static const MPSosConstraint * internal_default_instance()
const std::string & MPSolverResponseStatus_Name(T enum_t_value)
static const MPModelProto * internal_default_instance()
void set_branching_priority(::PROTOBUF_NAMESPACE_ID::int32 value)
MPSolverCommonParameters & operator=(const MPSolverCommonParameters &from)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & weight() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & var_value() const
static constexpr LPAlgorithmValues LP_ALGO_PRIMAL
static bool LPAlgorithmValues_Parse(const std::string &name, LPAlgorithmValues *value)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MPSolverCommonParameters * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const MPVariableProto & default_instance()
bool IsInitialized() const final
const std::string & MPSosConstraint_Type_Name(T enum_t_value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
static bool Type_Parse(const std::string &name, Type *value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
constexpr MPSolverResponseStatus MPSolverResponseStatus_MIN
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const int kGeneralConstraintFieldNumber
::PROTOBUF_NAMESPACE_ID::int32 var_index() const
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
MPSosConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static bool SolverType_Parse(const std::string &name, SolverType *value)
MPSolutionResponseDefaultTypeInternal _MPSolutionResponse_default_instance_
friend void swap(MPVariableProto &a, MPVariableProto &b)
::operations_research::MPSosConstraint_Type type() const
const std::string & MPSolverCommonParameters_LPAlgorithmValues_Name(T enum_t_value)
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverCommonParameters_LPAlgorithmValues_descriptor()
void set_presolve(::operations_research::OptionalBoolean value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::OptionalDouble * release_dual_tolerance()
void Swap(MPSolutionResponse *other)
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::MPVariableProto > * mutable_variable()
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MPModelRequest * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
const ::operations_research::MPModelProto & model() const
friend void swap(MPModelProto &a, MPModelProto &b)
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
::operations_research::MPModelRequest_SolverType solver_type() const
MPSolverCommonParametersDefaultTypeInternal _MPSolverCommonParameters_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const MPSolverCommonParameters * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
MPSolutionResponse * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
static constexpr SolverType CPLEX_MIXED_INTEGER_PROGRAMMING
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
bool MPSosConstraint_Type_IsValid(int value)
::operations_research::OptionalDouble * release_relative_mip_gap()
static constexpr SolverType BOP_INTEGER_PROGRAMMING
void set_var_index(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
void set_allocated_model(::operations_research::MPModelProto *model)
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
OptionalDouble * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_var_value()
MPVariableProto(MPVariableProto &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::MPSolverResponseStatus status() const
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
void set_variable_value(int index, double value)
size_t ByteSizeLong() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
MPSolverCommonParameters(MPSolverCommonParameters &&from) noexcept
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
PartialVariableAssignment(PartialVariableAssignment &&from) noexcept
static const int kSolverTimeLimitSecondsFieldNumber
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_var_index()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< double > & dual_value() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::MPIndicatorConstraint * mutable_indicator_constraint()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_name(const std::string &value)
void set_weight(int index, double value)
bool MPSolverCommonParameters_LPAlgorithmValues_Parse(const std::string &name, MPSolverCommonParameters_LPAlgorithmValues *value)
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
static constexpr SolverType GLPK_LINEAR_PROGRAMMING
static const MPModelProto & default_instance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< double > * mutable_dual_value()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
PartialVariableAssignment & operator=(const PartialVariableAssignment &from)
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
MPIndicatorConstraint & operator=(const MPIndicatorConstraint &from)
MPSosConstraint(MPSosConstraint &&from) noexcept
void set_allocated_relative_mip_gap(::operations_research::OptionalDouble *relative_mip_gap)
constexpr MPSolverResponseStatus MPSolverResponseStatus_MAX
static const std::string & LPAlgorithmValues_Name(T enum_t_value)
void set_enable_internal_solver_output(bool value)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final