C++ Reference

C++ Reference: CP-SAT

boolean_problem.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/sat/boolean_problem.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3013000
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 3013000 < 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_lite.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/unknown_field_set.h>
35 // @@protoc_insertion_point(includes)
36 #include <google/protobuf/port_def.inc>
37 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fboolean_5fproblem_2eproto
38 PROTOBUF_NAMESPACE_OPEN
39 namespace internal {
40 class AnyMetadata;
41 } // namespace internal
42 PROTOBUF_NAMESPACE_CLOSE
43 
44 // Internal implementation detail -- do not use these members.
46  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
47  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
48  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
49  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
50  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4]
51  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
52  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
53  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
54  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
55 };
56 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto;
57 namespace operations_research {
58 namespace sat {
59 class BooleanAssignment;
60 class BooleanAssignmentDefaultTypeInternal;
61 extern BooleanAssignmentDefaultTypeInternal _BooleanAssignment_default_instance_;
62 class LinearBooleanConstraint;
63 class LinearBooleanConstraintDefaultTypeInternal;
64 extern LinearBooleanConstraintDefaultTypeInternal _LinearBooleanConstraint_default_instance_;
65 class LinearBooleanProblem;
66 class LinearBooleanProblemDefaultTypeInternal;
67 extern LinearBooleanProblemDefaultTypeInternal _LinearBooleanProblem_default_instance_;
68 class LinearObjective;
69 class LinearObjectiveDefaultTypeInternal;
70 extern LinearObjectiveDefaultTypeInternal _LinearObjective_default_instance_;
71 } // namespace sat
72 } // namespace operations_research
73 PROTOBUF_NAMESPACE_OPEN
74 template<> ::operations_research::sat::BooleanAssignment* Arena::CreateMaybeMessage<::operations_research::sat::BooleanAssignment>(Arena*);
75 template<> ::operations_research::sat::LinearBooleanConstraint* Arena::CreateMaybeMessage<::operations_research::sat::LinearBooleanConstraint>(Arena*);
76 template<> ::operations_research::sat::LinearBooleanProblem* Arena::CreateMaybeMessage<::operations_research::sat::LinearBooleanProblem>(Arena*);
77 template<> ::operations_research::sat::LinearObjective* Arena::CreateMaybeMessage<::operations_research::sat::LinearObjective>(Arena*);
78 PROTOBUF_NAMESPACE_CLOSE
79 namespace operations_research {
80 namespace sat {
81 
82 // ===================================================================
83 
84 class LinearBooleanConstraint PROTOBUF_FINAL :
85  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearBooleanConstraint) */ {
86  public:
87  inline LinearBooleanConstraint() : LinearBooleanConstraint(nullptr) {}
89 
90  LinearBooleanConstraint(const LinearBooleanConstraint& from);
91  LinearBooleanConstraint(LinearBooleanConstraint&& from) noexcept
92  : LinearBooleanConstraint() {
93  *this = ::std::move(from);
94  }
95 
96  inline LinearBooleanConstraint& operator=(const LinearBooleanConstraint& from) {
97  CopyFrom(from);
98  return *this;
99  }
100  inline LinearBooleanConstraint& operator=(LinearBooleanConstraint&& from) noexcept {
101  if (GetArena() == from.GetArena()) {
102  if (this != &from) InternalSwap(&from);
103  } else {
104  CopyFrom(from);
105  }
106  return *this;
107  }
108 
109  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
110  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
111  }
112  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
113  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
114  }
115 
116  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
117  return GetDescriptor();
118  }
119  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
120  return GetMetadataStatic().descriptor;
121  }
122  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
123  return GetMetadataStatic().reflection;
124  }
125  static const LinearBooleanConstraint& default_instance();
126 
127  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
128  static inline const LinearBooleanConstraint* internal_default_instance() {
129  return reinterpret_cast<const LinearBooleanConstraint*>(
131  }
132  static constexpr int kIndexInFileMessages =
133  0;
134 
135  friend void swap(LinearBooleanConstraint& a, LinearBooleanConstraint& b) {
136  a.Swap(&b);
137  }
138  inline void Swap(LinearBooleanConstraint* other) {
139  if (other == this) return;
140  if (GetArena() == other->GetArena()) {
141  InternalSwap(other);
142  } else {
143  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
144  }
145  }
146  void UnsafeArenaSwap(LinearBooleanConstraint* other) {
147  if (other == this) return;
148  GOOGLE_DCHECK(GetArena() == other->GetArena());
149  InternalSwap(other);
150  }
151 
152  // implements Message ----------------------------------------------
153 
154  inline LinearBooleanConstraint* New() const final {
155  return CreateMaybeMessage<LinearBooleanConstraint>(nullptr);
156  }
157 
158  LinearBooleanConstraint* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
159  return CreateMaybeMessage<LinearBooleanConstraint>(arena);
160  }
161  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
162  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
163  void CopyFrom(const LinearBooleanConstraint& from);
164  void MergeFrom(const LinearBooleanConstraint& from);
165  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
166  bool IsInitialized() const final;
167 
168  size_t ByteSizeLong() const final;
169  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
170  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
171  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
172  int GetCachedSize() const final { return _cached_size_.Get(); }
173 
174  private:
175  inline void SharedCtor();
176  inline void SharedDtor();
177  void SetCachedSize(int size) const final;
178  void InternalSwap(LinearBooleanConstraint* other);
179  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
180  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
181  return "operations_research.sat.LinearBooleanConstraint";
182  }
183  protected:
184  explicit LinearBooleanConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena);
185  private:
186  static void ArenaDtor(void* object);
187  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
188  public:
189 
190  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
191  private:
192  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
193  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto);
194  return ::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto.file_level_metadata[kIndexInFileMessages];
195  }
196 
197  public:
198 
199  // nested types ----------------------------------------------------
200 
201  // accessors -------------------------------------------------------
202 
203  enum : int {
204  kLiteralsFieldNumber = 1,
205  kCoefficientsFieldNumber = 2,
206  kNameFieldNumber = 5,
207  kLowerBoundFieldNumber = 3,
208  kUpperBoundFieldNumber = 4,
209  };
210  // repeated int32 literals = 1;
211  int literals_size() const;
212  private:
213  int _internal_literals_size() const;
214  public:
216  private:
217  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
218  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
219  _internal_literals() const;
220  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
221  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
222  _internal_mutable_literals();
223  public:
224  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
225  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
226  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
227  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
228  literals() const;
229  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
231 
232  // repeated int64 coefficients = 2;
233  int coefficients_size() const;
234  private:
235  int _internal_coefficients_size() const;
236  public:
238  private:
239  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coefficients(int index) const;
240  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
241  _internal_coefficients() const;
242  void _internal_add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value);
243  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
244  _internal_mutable_coefficients();
245  public:
246  ::PROTOBUF_NAMESPACE_ID::int64 coefficients(int index) const;
247  void set_coefficients(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
248  void add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value);
249  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
250  coefficients() const;
251  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
253 
254  // optional string name = 5 [default = ""];
255  bool has_name() const;
256  private:
257  bool _internal_has_name() const;
258  public:
259  void clear_name();
260  const std::string& name() const;
261  void set_name(const std::string& value);
262  void set_name(std::string&& value);
263  void set_name(const char* value);
264  void set_name(const char* value, size_t size);
265  std::string* mutable_name();
266  std::string* release_name();
267  void set_allocated_name(std::string* name);
268  private:
269  const std::string& _internal_name() const;
270  void _internal_set_name(const std::string& value);
271  std::string* _internal_mutable_name();
272  public:
273 
274  // optional int64 lower_bound = 3;
275  bool has_lower_bound() const;
276  private:
277  bool _internal_has_lower_bound() const;
278  public:
280  ::PROTOBUF_NAMESPACE_ID::int64 lower_bound() const;
281  void set_lower_bound(::PROTOBUF_NAMESPACE_ID::int64 value);
282  private:
283  ::PROTOBUF_NAMESPACE_ID::int64 _internal_lower_bound() const;
284  void _internal_set_lower_bound(::PROTOBUF_NAMESPACE_ID::int64 value);
285  public:
286 
287  // optional int64 upper_bound = 4;
288  bool has_upper_bound() const;
289  private:
290  bool _internal_has_upper_bound() const;
291  public:
293  ::PROTOBUF_NAMESPACE_ID::int64 upper_bound() const;
294  void set_upper_bound(::PROTOBUF_NAMESPACE_ID::int64 value);
295  private:
296  ::PROTOBUF_NAMESPACE_ID::int64 _internal_upper_bound() const;
297  void _internal_set_upper_bound(::PROTOBUF_NAMESPACE_ID::int64 value);
298  public:
299 
300  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearBooleanConstraint)
301  private:
302  class _Internal;
303 
304  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
305  typedef void InternalArenaConstructable_;
306  typedef void DestructorSkippable_;
307  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
308  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
309  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
310  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coefficients_;
311  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
312  ::PROTOBUF_NAMESPACE_ID::int64 lower_bound_;
313  ::PROTOBUF_NAMESPACE_ID::int64 upper_bound_;
314  friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
315 };
316 // -------------------------------------------------------------------
317 
318 class LinearObjective PROTOBUF_FINAL :
319  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearObjective) */ {
320  public:
321  inline LinearObjective() : LinearObjective(nullptr) {}
322  virtual ~LinearObjective();
323 
324  LinearObjective(const LinearObjective& from);
325  LinearObjective(LinearObjective&& from) noexcept
326  : LinearObjective() {
327  *this = ::std::move(from);
328  }
329 
330  inline LinearObjective& operator=(const LinearObjective& from) {
331  CopyFrom(from);
332  return *this;
333  }
334  inline LinearObjective& operator=(LinearObjective&& from) noexcept {
335  if (GetArena() == from.GetArena()) {
336  if (this != &from) InternalSwap(&from);
337  } else {
338  CopyFrom(from);
339  }
340  return *this;
341  }
342 
343  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
344  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
345  }
346  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
347  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
348  }
349 
350  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
351  return GetDescriptor();
352  }
353  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
354  return GetMetadataStatic().descriptor;
355  }
356  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
357  return GetMetadataStatic().reflection;
358  }
359  static const LinearObjective& default_instance();
360 
361  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
362  static inline const LinearObjective* internal_default_instance() {
363  return reinterpret_cast<const LinearObjective*>(
365  }
366  static constexpr int kIndexInFileMessages =
367  1;
368 
369  friend void swap(LinearObjective& a, LinearObjective& b) {
370  a.Swap(&b);
371  }
372  inline void Swap(LinearObjective* other) {
373  if (other == this) return;
374  if (GetArena() == other->GetArena()) {
375  InternalSwap(other);
376  } else {
377  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
378  }
379  }
380  void UnsafeArenaSwap(LinearObjective* other) {
381  if (other == this) return;
382  GOOGLE_DCHECK(GetArena() == other->GetArena());
383  InternalSwap(other);
384  }
385 
386  // implements Message ----------------------------------------------
387 
388  inline LinearObjective* New() const final {
389  return CreateMaybeMessage<LinearObjective>(nullptr);
390  }
391 
392  LinearObjective* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
393  return CreateMaybeMessage<LinearObjective>(arena);
394  }
395  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
396  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
397  void CopyFrom(const LinearObjective& from);
398  void MergeFrom(const LinearObjective& from);
399  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
400  bool IsInitialized() const final;
401 
402  size_t ByteSizeLong() const final;
403  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
404  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
405  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
406  int GetCachedSize() const final { return _cached_size_.Get(); }
407 
408  private:
409  inline void SharedCtor();
410  inline void SharedDtor();
411  void SetCachedSize(int size) const final;
412  void InternalSwap(LinearObjective* other);
413  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
414  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
415  return "operations_research.sat.LinearObjective";
416  }
417  protected:
418  explicit LinearObjective(::PROTOBUF_NAMESPACE_ID::Arena* arena);
419  private:
420  static void ArenaDtor(void* object);
421  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
422  public:
423 
424  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
425  private:
426  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
427  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto);
428  return ::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto.file_level_metadata[kIndexInFileMessages];
429  }
430 
431  public:
432 
433  // nested types ----------------------------------------------------
434 
435  // accessors -------------------------------------------------------
436 
437  enum : int {
438  kLiteralsFieldNumber = 1,
439  kCoefficientsFieldNumber = 2,
440  kOffsetFieldNumber = 3,
441  kScalingFactorFieldNumber = 4,
442  };
443  // repeated int32 literals = 1;
444  int literals_size() const;
445  private:
446  int _internal_literals_size() const;
447  public:
449  private:
450  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
451  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
452  _internal_literals() const;
453  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
454  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
455  _internal_mutable_literals();
456  public:
457  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
458  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
459  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
460  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
461  literals() const;
462  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
464 
465  // repeated int64 coefficients = 2;
466  int coefficients_size() const;
467  private:
468  int _internal_coefficients_size() const;
469  public:
471  private:
472  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coefficients(int index) const;
473  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
474  _internal_coefficients() const;
475  void _internal_add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value);
476  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
477  _internal_mutable_coefficients();
478  public:
479  ::PROTOBUF_NAMESPACE_ID::int64 coefficients(int index) const;
480  void set_coefficients(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
481  void add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value);
482  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
483  coefficients() const;
484  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
486 
487  // optional double offset = 3 [default = 0];
488  bool has_offset() const;
489  private:
490  bool _internal_has_offset() const;
491  public:
492  void clear_offset();
493  double offset() const;
494  void set_offset(double value);
495  private:
496  double _internal_offset() const;
497  void _internal_set_offset(double value);
498  public:
499 
500  // optional double scaling_factor = 4 [default = 1];
501  bool has_scaling_factor() const;
502  private:
503  bool _internal_has_scaling_factor() const;
504  public:
506  double scaling_factor() const;
507  void set_scaling_factor(double value);
508  private:
509  double _internal_scaling_factor() const;
510  void _internal_set_scaling_factor(double value);
511  public:
512 
513  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearObjective)
514  private:
515  class _Internal;
516 
517  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
518  typedef void InternalArenaConstructable_;
519  typedef void DestructorSkippable_;
520  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
521  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
522  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
523  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coefficients_;
524  double offset_;
525  double scaling_factor_;
526  friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
527 };
528 // -------------------------------------------------------------------
529 
530 class BooleanAssignment PROTOBUF_FINAL :
531  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.BooleanAssignment) */ {
532  public:
533  inline BooleanAssignment() : BooleanAssignment(nullptr) {}
535 
536  BooleanAssignment(const BooleanAssignment& from);
537  BooleanAssignment(BooleanAssignment&& from) noexcept
538  : BooleanAssignment() {
539  *this = ::std::move(from);
540  }
541 
542  inline BooleanAssignment& operator=(const BooleanAssignment& from) {
543  CopyFrom(from);
544  return *this;
545  }
546  inline BooleanAssignment& operator=(BooleanAssignment&& from) noexcept {
547  if (GetArena() == from.GetArena()) {
548  if (this != &from) InternalSwap(&from);
549  } else {
550  CopyFrom(from);
551  }
552  return *this;
553  }
554 
555  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
556  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
557  }
558  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
559  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
560  }
561 
562  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
563  return GetDescriptor();
564  }
565  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
566  return GetMetadataStatic().descriptor;
567  }
568  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
569  return GetMetadataStatic().reflection;
570  }
571  static const BooleanAssignment& default_instance();
572 
573  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
574  static inline const BooleanAssignment* internal_default_instance() {
575  return reinterpret_cast<const BooleanAssignment*>(
577  }
578  static constexpr int kIndexInFileMessages =
579  2;
580 
581  friend void swap(BooleanAssignment& a, BooleanAssignment& b) {
582  a.Swap(&b);
583  }
584  inline void Swap(BooleanAssignment* other) {
585  if (other == this) return;
586  if (GetArena() == other->GetArena()) {
587  InternalSwap(other);
588  } else {
589  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
590  }
591  }
592  void UnsafeArenaSwap(BooleanAssignment* other) {
593  if (other == this) return;
594  GOOGLE_DCHECK(GetArena() == other->GetArena());
595  InternalSwap(other);
596  }
597 
598  // implements Message ----------------------------------------------
599 
600  inline BooleanAssignment* New() const final {
601  return CreateMaybeMessage<BooleanAssignment>(nullptr);
602  }
603 
604  BooleanAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
605  return CreateMaybeMessage<BooleanAssignment>(arena);
606  }
607  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
608  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
609  void CopyFrom(const BooleanAssignment& from);
610  void MergeFrom(const BooleanAssignment& from);
611  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
612  bool IsInitialized() const final;
613 
614  size_t ByteSizeLong() const final;
615  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
616  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
617  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
618  int GetCachedSize() const final { return _cached_size_.Get(); }
619 
620  private:
621  inline void SharedCtor();
622  inline void SharedDtor();
623  void SetCachedSize(int size) const final;
624  void InternalSwap(BooleanAssignment* other);
625  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
626  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
627  return "operations_research.sat.BooleanAssignment";
628  }
629  protected:
630  explicit BooleanAssignment(::PROTOBUF_NAMESPACE_ID::Arena* arena);
631  private:
632  static void ArenaDtor(void* object);
633  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
634  public:
635 
636  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
637  private:
638  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
639  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto);
640  return ::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto.file_level_metadata[kIndexInFileMessages];
641  }
642 
643  public:
644 
645  // nested types ----------------------------------------------------
646 
647  // accessors -------------------------------------------------------
648 
649  enum : int {
650  kLiteralsFieldNumber = 1,
651  };
652  // repeated int32 literals = 1;
653  int literals_size() const;
654  private:
655  int _internal_literals_size() const;
656  public:
658  private:
659  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
660  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
661  _internal_literals() const;
662  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
663  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
664  _internal_mutable_literals();
665  public:
666  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
667  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
668  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
669  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
670  literals() const;
671  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
673 
674  // @@protoc_insertion_point(class_scope:operations_research.sat.BooleanAssignment)
675  private:
676  class _Internal;
677 
678  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
679  typedef void InternalArenaConstructable_;
680  typedef void DestructorSkippable_;
681  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
682  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
683  friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
684 };
685 // -------------------------------------------------------------------
686 
687 class LinearBooleanProblem PROTOBUF_FINAL :
688  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearBooleanProblem) */ {
689  public:
690  inline LinearBooleanProblem() : LinearBooleanProblem(nullptr) {}
692 
693  LinearBooleanProblem(const LinearBooleanProblem& from);
694  LinearBooleanProblem(LinearBooleanProblem&& from) noexcept
695  : LinearBooleanProblem() {
696  *this = ::std::move(from);
697  }
698 
699  inline LinearBooleanProblem& operator=(const LinearBooleanProblem& from) {
700  CopyFrom(from);
701  return *this;
702  }
703  inline LinearBooleanProblem& operator=(LinearBooleanProblem&& from) noexcept {
704  if (GetArena() == from.GetArena()) {
705  if (this != &from) InternalSwap(&from);
706  } else {
707  CopyFrom(from);
708  }
709  return *this;
710  }
711 
712  inline const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet& unknown_fields() const {
713  return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
714  }
715  inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet* mutable_unknown_fields() {
716  return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
717  }
718 
719  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
720  return GetDescriptor();
721  }
722  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
723  return GetMetadataStatic().descriptor;
724  }
725  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
726  return GetMetadataStatic().reflection;
727  }
728  static const LinearBooleanProblem& default_instance();
729 
730  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
731  static inline const LinearBooleanProblem* internal_default_instance() {
732  return reinterpret_cast<const LinearBooleanProblem*>(
734  }
735  static constexpr int kIndexInFileMessages =
736  3;
737 
738  friend void swap(LinearBooleanProblem& a, LinearBooleanProblem& b) {
739  a.Swap(&b);
740  }
741  inline void Swap(LinearBooleanProblem* other) {
742  if (other == this) return;
743  if (GetArena() == other->GetArena()) {
744  InternalSwap(other);
745  } else {
746  ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(this, other);
747  }
748  }
749  void UnsafeArenaSwap(LinearBooleanProblem* other) {
750  if (other == this) return;
751  GOOGLE_DCHECK(GetArena() == other->GetArena());
752  InternalSwap(other);
753  }
754 
755  // implements Message ----------------------------------------------
756 
757  inline LinearBooleanProblem* New() const final {
758  return CreateMaybeMessage<LinearBooleanProblem>(nullptr);
759  }
760 
761  LinearBooleanProblem* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
762  return CreateMaybeMessage<LinearBooleanProblem>(arena);
763  }
764  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
765  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
766  void CopyFrom(const LinearBooleanProblem& from);
767  void MergeFrom(const LinearBooleanProblem& from);
768  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
769  bool IsInitialized() const final;
770 
771  size_t ByteSizeLong() const final;
772  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
773  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
774  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
775  int GetCachedSize() const final { return _cached_size_.Get(); }
776 
777  private:
778  inline void SharedCtor();
779  inline void SharedDtor();
780  void SetCachedSize(int size) const final;
781  void InternalSwap(LinearBooleanProblem* other);
782  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
783  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
784  return "operations_research.sat.LinearBooleanProblem";
785  }
786  protected:
787  explicit LinearBooleanProblem(::PROTOBUF_NAMESPACE_ID::Arena* arena);
788  private:
789  static void ArenaDtor(void* object);
790  inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
791  public:
792 
793  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
794  private:
795  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
796  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto);
797  return ::descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto.file_level_metadata[kIndexInFileMessages];
798  }
799 
800  public:
801 
802  // nested types ----------------------------------------------------
803 
804  // accessors -------------------------------------------------------
805 
806  enum : int {
807  kConstraintsFieldNumber = 4,
808  kVarNamesFieldNumber = 6,
809  kNameFieldNumber = 1,
810  kObjectiveFieldNumber = 5,
811  kAssignmentFieldNumber = 7,
812  kNumVariablesFieldNumber = 3,
813  kOriginalNumVariablesFieldNumber = 8,
814  };
815  // repeated .operations_research.sat.LinearBooleanConstraint constraints = 4;
816  int constraints_size() const;
817  private:
818  int _internal_constraints_size() const;
819  public:
821  ::operations_research::sat::LinearBooleanConstraint* mutable_constraints(int index);
822  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >*
824  private:
825  const ::operations_research::sat::LinearBooleanConstraint& _internal_constraints(int index) const;
826  ::operations_research::sat::LinearBooleanConstraint* _internal_add_constraints();
827  public:
828  const ::operations_research::sat::LinearBooleanConstraint& constraints(int index) const;
829  ::operations_research::sat::LinearBooleanConstraint* add_constraints();
830  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >&
831  constraints() const;
832 
833  // repeated string var_names = 6;
834  int var_names_size() const;
835  private:
836  int _internal_var_names_size() const;
837  public:
839  const std::string& var_names(int index) const;
840  std::string* mutable_var_names(int index);
841  void set_var_names(int index, const std::string& value);
842  void set_var_names(int index, std::string&& value);
843  void set_var_names(int index, const char* value);
844  void set_var_names(int index, const char* value, size_t size);
845  std::string* add_var_names();
846  void add_var_names(const std::string& value);
847  void add_var_names(std::string&& value);
848  void add_var_names(const char* value);
849  void add_var_names(const char* value, size_t size);
850  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>& var_names() const;
851  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>* mutable_var_names();
852  private:
853  const std::string& _internal_var_names(int index) const;
854  std::string* _internal_add_var_names();
855  public:
856 
857  // optional string name = 1 [default = ""];
858  bool has_name() const;
859  private:
860  bool _internal_has_name() const;
861  public:
862  void clear_name();
863  const std::string& name() const;
864  void set_name(const std::string& value);
865  void set_name(std::string&& value);
866  void set_name(const char* value);
867  void set_name(const char* value, size_t size);
868  std::string* mutable_name();
869  std::string* release_name();
870  void set_allocated_name(std::string* name);
871  private:
872  const std::string& _internal_name() const;
873  void _internal_set_name(const std::string& value);
874  std::string* _internal_mutable_name();
875  public:
876 
877  // optional .operations_research.sat.LinearObjective objective = 5;
878  bool has_objective() const;
879  private:
880  bool _internal_has_objective() const;
881  public:
883  const ::operations_research::sat::LinearObjective& objective() const;
884  ::operations_research::sat::LinearObjective* release_objective();
885  ::operations_research::sat::LinearObjective* mutable_objective();
886  void set_allocated_objective(::operations_research::sat::LinearObjective* objective);
887  private:
888  const ::operations_research::sat::LinearObjective& _internal_objective() const;
889  ::operations_research::sat::LinearObjective* _internal_mutable_objective();
890  public:
892  ::operations_research::sat::LinearObjective* objective);
893  ::operations_research::sat::LinearObjective* unsafe_arena_release_objective();
894 
895  // optional .operations_research.sat.BooleanAssignment assignment = 7;
896  bool has_assignment() const;
897  private:
898  bool _internal_has_assignment() const;
899  public:
901  const ::operations_research::sat::BooleanAssignment& assignment() const;
902  ::operations_research::sat::BooleanAssignment* release_assignment();
903  ::operations_research::sat::BooleanAssignment* mutable_assignment();
904  void set_allocated_assignment(::operations_research::sat::BooleanAssignment* assignment);
905  private:
906  const ::operations_research::sat::BooleanAssignment& _internal_assignment() const;
907  ::operations_research::sat::BooleanAssignment* _internal_mutable_assignment();
908  public:
910  ::operations_research::sat::BooleanAssignment* assignment);
911  ::operations_research::sat::BooleanAssignment* unsafe_arena_release_assignment();
912 
913  // optional int32 num_variables = 3;
914  bool has_num_variables() const;
915  private:
916  bool _internal_has_num_variables() const;
917  public:
919  ::PROTOBUF_NAMESPACE_ID::int32 num_variables() const;
920  void set_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
921  private:
922  ::PROTOBUF_NAMESPACE_ID::int32 _internal_num_variables() const;
923  void _internal_set_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
924  public:
925 
926  // optional int32 original_num_variables = 8;
928  private:
929  bool _internal_has_original_num_variables() const;
930  public:
932  ::PROTOBUF_NAMESPACE_ID::int32 original_num_variables() const;
933  void set_original_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
934  private:
935  ::PROTOBUF_NAMESPACE_ID::int32 _internal_original_num_variables() const;
936  void _internal_set_original_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
937  public:
938 
939  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearBooleanProblem)
940  private:
941  class _Internal;
942 
943  template <typename T> friend class ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper;
944  typedef void InternalArenaConstructable_;
945  typedef void DestructorSkippable_;
946  ::PROTOBUF_NAMESPACE_ID::internal::HasBits<1> _has_bits_;
947  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
948  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint > constraints_;
949  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string> var_names_;
950  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
951  ::operations_research::sat::LinearObjective* objective_;
952  ::operations_research::sat::BooleanAssignment* assignment_;
953  ::PROTOBUF_NAMESPACE_ID::int32 num_variables_;
954  ::PROTOBUF_NAMESPACE_ID::int32 original_num_variables_;
955  friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
956 };
957 // ===================================================================
958 
959 
960 // ===================================================================
961 
962 #ifdef __GNUC__
963  #pragma GCC diagnostic push
964  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
965 #endif // __GNUC__
966 // LinearBooleanConstraint
967 
968 // repeated int32 literals = 1;
969 inline int LinearBooleanConstraint::_internal_literals_size() const {
970  return literals_.size();
971 }
972 inline int LinearBooleanConstraint::literals_size() const {
973  return _internal_literals_size();
974 }
975 inline void LinearBooleanConstraint::clear_literals() {
976  literals_.Clear();
977 }
978 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanConstraint::_internal_literals(int index) const {
979  return literals_.Get(index);
980 }
981 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanConstraint::literals(int index) const {
982  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanConstraint.literals)
983  return _internal_literals(index);
984 }
985 inline void LinearBooleanConstraint::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
986  literals_.Set(index, value);
987  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanConstraint.literals)
988 }
989 inline void LinearBooleanConstraint::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
990  literals_.Add(value);
991 }
992 inline void LinearBooleanConstraint::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
993  _internal_add_literals(value);
994  // @@protoc_insertion_point(field_add:operations_research.sat.LinearBooleanConstraint.literals)
995 }
996 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
997 LinearBooleanConstraint::_internal_literals() const {
998  return literals_;
999 }
1000 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1001 LinearBooleanConstraint::literals() const {
1002  // @@protoc_insertion_point(field_list:operations_research.sat.LinearBooleanConstraint.literals)
1003  return _internal_literals();
1004 }
1005 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1006 LinearBooleanConstraint::_internal_mutable_literals() {
1007  return &literals_;
1008 }
1009 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1010 LinearBooleanConstraint::mutable_literals() {
1011  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearBooleanConstraint.literals)
1012  return _internal_mutable_literals();
1013 }
1014 
1015 // repeated int64 coefficients = 2;
1016 inline int LinearBooleanConstraint::_internal_coefficients_size() const {
1017  return coefficients_.size();
1018 }
1019 inline int LinearBooleanConstraint::coefficients_size() const {
1020  return _internal_coefficients_size();
1021 }
1022 inline void LinearBooleanConstraint::clear_coefficients() {
1023  coefficients_.Clear();
1024 }
1025 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::_internal_coefficients(int index) const {
1026  return coefficients_.Get(index);
1027 }
1028 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::coefficients(int index) const {
1029  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanConstraint.coefficients)
1030  return _internal_coefficients(index);
1031 }
1032 inline void LinearBooleanConstraint::set_coefficients(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
1033  coefficients_.Set(index, value);
1034  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanConstraint.coefficients)
1035 }
1036 inline void LinearBooleanConstraint::_internal_add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value) {
1037  coefficients_.Add(value);
1038 }
1039 inline void LinearBooleanConstraint::add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value) {
1040  _internal_add_coefficients(value);
1041  // @@protoc_insertion_point(field_add:operations_research.sat.LinearBooleanConstraint.coefficients)
1042 }
1043 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1044 LinearBooleanConstraint::_internal_coefficients() const {
1045  return coefficients_;
1046 }
1047 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1048 LinearBooleanConstraint::coefficients() const {
1049  // @@protoc_insertion_point(field_list:operations_research.sat.LinearBooleanConstraint.coefficients)
1050  return _internal_coefficients();
1051 }
1052 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1053 LinearBooleanConstraint::_internal_mutable_coefficients() {
1054  return &coefficients_;
1055 }
1056 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1057 LinearBooleanConstraint::mutable_coefficients() {
1058  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearBooleanConstraint.coefficients)
1059  return _internal_mutable_coefficients();
1060 }
1061 
1062 // optional int64 lower_bound = 3;
1063 inline bool LinearBooleanConstraint::_internal_has_lower_bound() const {
1064  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1065  return value;
1066 }
1067 inline bool LinearBooleanConstraint::has_lower_bound() const {
1068  return _internal_has_lower_bound();
1069 }
1070 inline void LinearBooleanConstraint::clear_lower_bound() {
1071  lower_bound_ = PROTOBUF_LONGLONG(0);
1072  _has_bits_[0] &= ~0x00000002u;
1073 }
1074 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::_internal_lower_bound() const {
1075  return lower_bound_;
1076 }
1077 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::lower_bound() const {
1078  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanConstraint.lower_bound)
1079  return _internal_lower_bound();
1080 }
1081 inline void LinearBooleanConstraint::_internal_set_lower_bound(::PROTOBUF_NAMESPACE_ID::int64 value) {
1082  _has_bits_[0] |= 0x00000002u;
1083  lower_bound_ = value;
1084 }
1085 inline void LinearBooleanConstraint::set_lower_bound(::PROTOBUF_NAMESPACE_ID::int64 value) {
1086  _internal_set_lower_bound(value);
1087  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanConstraint.lower_bound)
1088 }
1089 
1090 // optional int64 upper_bound = 4;
1091 inline bool LinearBooleanConstraint::_internal_has_upper_bound() const {
1092  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1093  return value;
1094 }
1095 inline bool LinearBooleanConstraint::has_upper_bound() const {
1096  return _internal_has_upper_bound();
1097 }
1098 inline void LinearBooleanConstraint::clear_upper_bound() {
1099  upper_bound_ = PROTOBUF_LONGLONG(0);
1100  _has_bits_[0] &= ~0x00000004u;
1101 }
1102 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::_internal_upper_bound() const {
1103  return upper_bound_;
1104 }
1105 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearBooleanConstraint::upper_bound() const {
1106  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanConstraint.upper_bound)
1107  return _internal_upper_bound();
1108 }
1109 inline void LinearBooleanConstraint::_internal_set_upper_bound(::PROTOBUF_NAMESPACE_ID::int64 value) {
1110  _has_bits_[0] |= 0x00000004u;
1111  upper_bound_ = value;
1112 }
1113 inline void LinearBooleanConstraint::set_upper_bound(::PROTOBUF_NAMESPACE_ID::int64 value) {
1114  _internal_set_upper_bound(value);
1115  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanConstraint.upper_bound)
1116 }
1117 
1118 // optional string name = 5 [default = ""];
1119 inline bool LinearBooleanConstraint::_internal_has_name() const {
1120  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1121  return value;
1122 }
1123 inline bool LinearBooleanConstraint::has_name() const {
1124  return _internal_has_name();
1125 }
1126 inline void LinearBooleanConstraint::clear_name() {
1127  name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1128  _has_bits_[0] &= ~0x00000001u;
1129 }
1130 inline const std::string& LinearBooleanConstraint::name() const {
1131  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanConstraint.name)
1132  return _internal_name();
1133 }
1134 inline void LinearBooleanConstraint::set_name(const std::string& value) {
1135  _internal_set_name(value);
1136  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanConstraint.name)
1137 }
1138 inline std::string* LinearBooleanConstraint::mutable_name() {
1139  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanConstraint.name)
1140  return _internal_mutable_name();
1141 }
1142 inline const std::string& LinearBooleanConstraint::_internal_name() const {
1143  return name_.Get();
1144 }
1145 inline void LinearBooleanConstraint::_internal_set_name(const std::string& value) {
1146  _has_bits_[0] |= 0x00000001u;
1147  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
1148 }
1149 inline void LinearBooleanConstraint::set_name(std::string&& value) {
1150  _has_bits_[0] |= 0x00000001u;
1151  name_.Set(
1152  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
1153  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.LinearBooleanConstraint.name)
1154 }
1155 inline void LinearBooleanConstraint::set_name(const char* value) {
1156  GOOGLE_DCHECK(value != nullptr);
1157  _has_bits_[0] |= 0x00000001u;
1158  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
1159  GetArena());
1160  // @@protoc_insertion_point(field_set_char:operations_research.sat.LinearBooleanConstraint.name)
1161 }
1162 inline void LinearBooleanConstraint::set_name(const char* value,
1163  size_t size) {
1164  _has_bits_[0] |= 0x00000001u;
1165  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
1166  reinterpret_cast<const char*>(value), size), GetArena());
1167  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.LinearBooleanConstraint.name)
1168 }
1169 inline std::string* LinearBooleanConstraint::_internal_mutable_name() {
1170  _has_bits_[0] |= 0x00000001u;
1171  return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1172 }
1173 inline std::string* LinearBooleanConstraint::release_name() {
1174  // @@protoc_insertion_point(field_release:operations_research.sat.LinearBooleanConstraint.name)
1175  if (!_internal_has_name()) {
1176  return nullptr;
1177  }
1178  _has_bits_[0] &= ~0x00000001u;
1179  return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1180 }
1181 inline void LinearBooleanConstraint::set_allocated_name(std::string* name) {
1182  if (name != nullptr) {
1183  _has_bits_[0] |= 0x00000001u;
1184  } else {
1185  _has_bits_[0] &= ~0x00000001u;
1186  }
1187  name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name,
1188  GetArena());
1189  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearBooleanConstraint.name)
1190 }
1191 
1192 // -------------------------------------------------------------------
1193 
1194 // LinearObjective
1195 
1196 // repeated int32 literals = 1;
1197 inline int LinearObjective::_internal_literals_size() const {
1198  return literals_.size();
1199 }
1200 inline int LinearObjective::literals_size() const {
1201  return _internal_literals_size();
1202 }
1203 inline void LinearObjective::clear_literals() {
1204  literals_.Clear();
1205 }
1206 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearObjective::_internal_literals(int index) const {
1207  return literals_.Get(index);
1208 }
1209 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearObjective::literals(int index) const {
1210  // @@protoc_insertion_point(field_get:operations_research.sat.LinearObjective.literals)
1211  return _internal_literals(index);
1212 }
1213 inline void LinearObjective::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
1214  literals_.Set(index, value);
1215  // @@protoc_insertion_point(field_set:operations_research.sat.LinearObjective.literals)
1216 }
1217 inline void LinearObjective::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
1218  literals_.Add(value);
1219 }
1220 inline void LinearObjective::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
1221  _internal_add_literals(value);
1222  // @@protoc_insertion_point(field_add:operations_research.sat.LinearObjective.literals)
1223 }
1224 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1225 LinearObjective::_internal_literals() const {
1226  return literals_;
1227 }
1228 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1229 LinearObjective::literals() const {
1230  // @@protoc_insertion_point(field_list:operations_research.sat.LinearObjective.literals)
1231  return _internal_literals();
1232 }
1233 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1234 LinearObjective::_internal_mutable_literals() {
1235  return &literals_;
1236 }
1237 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1238 LinearObjective::mutable_literals() {
1239  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearObjective.literals)
1240  return _internal_mutable_literals();
1241 }
1242 
1243 // repeated int64 coefficients = 2;
1244 inline int LinearObjective::_internal_coefficients_size() const {
1245  return coefficients_.size();
1246 }
1247 inline int LinearObjective::coefficients_size() const {
1248  return _internal_coefficients_size();
1249 }
1250 inline void LinearObjective::clear_coefficients() {
1251  coefficients_.Clear();
1252 }
1253 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearObjective::_internal_coefficients(int index) const {
1254  return coefficients_.Get(index);
1255 }
1256 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearObjective::coefficients(int index) const {
1257  // @@protoc_insertion_point(field_get:operations_research.sat.LinearObjective.coefficients)
1258  return _internal_coefficients(index);
1259 }
1260 inline void LinearObjective::set_coefficients(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
1261  coefficients_.Set(index, value);
1262  // @@protoc_insertion_point(field_set:operations_research.sat.LinearObjective.coefficients)
1263 }
1264 inline void LinearObjective::_internal_add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value) {
1265  coefficients_.Add(value);
1266 }
1267 inline void LinearObjective::add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value) {
1268  _internal_add_coefficients(value);
1269  // @@protoc_insertion_point(field_add:operations_research.sat.LinearObjective.coefficients)
1270 }
1271 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1272 LinearObjective::_internal_coefficients() const {
1273  return coefficients_;
1274 }
1275 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1276 LinearObjective::coefficients() const {
1277  // @@protoc_insertion_point(field_list:operations_research.sat.LinearObjective.coefficients)
1278  return _internal_coefficients();
1279 }
1280 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1281 LinearObjective::_internal_mutable_coefficients() {
1282  return &coefficients_;
1283 }
1284 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1285 LinearObjective::mutable_coefficients() {
1286  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearObjective.coefficients)
1287  return _internal_mutable_coefficients();
1288 }
1289 
1290 // optional double offset = 3 [default = 0];
1291 inline bool LinearObjective::_internal_has_offset() const {
1292  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1293  return value;
1294 }
1295 inline bool LinearObjective::has_offset() const {
1296  return _internal_has_offset();
1297 }
1298 inline void LinearObjective::clear_offset() {
1299  offset_ = 0;
1300  _has_bits_[0] &= ~0x00000001u;
1301 }
1302 inline double LinearObjective::_internal_offset() const {
1303  return offset_;
1304 }
1305 inline double LinearObjective::offset() const {
1306  // @@protoc_insertion_point(field_get:operations_research.sat.LinearObjective.offset)
1307  return _internal_offset();
1308 }
1309 inline void LinearObjective::_internal_set_offset(double value) {
1310  _has_bits_[0] |= 0x00000001u;
1311  offset_ = value;
1312 }
1313 inline void LinearObjective::set_offset(double value) {
1314  _internal_set_offset(value);
1315  // @@protoc_insertion_point(field_set:operations_research.sat.LinearObjective.offset)
1316 }
1317 
1318 // optional double scaling_factor = 4 [default = 1];
1319 inline bool LinearObjective::_internal_has_scaling_factor() const {
1320  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1321  return value;
1322 }
1323 inline bool LinearObjective::has_scaling_factor() const {
1324  return _internal_has_scaling_factor();
1325 }
1326 inline void LinearObjective::clear_scaling_factor() {
1327  scaling_factor_ = 1;
1328  _has_bits_[0] &= ~0x00000002u;
1329 }
1330 inline double LinearObjective::_internal_scaling_factor() const {
1331  return scaling_factor_;
1332 }
1333 inline double LinearObjective::scaling_factor() const {
1334  // @@protoc_insertion_point(field_get:operations_research.sat.LinearObjective.scaling_factor)
1335  return _internal_scaling_factor();
1336 }
1337 inline void LinearObjective::_internal_set_scaling_factor(double value) {
1338  _has_bits_[0] |= 0x00000002u;
1339  scaling_factor_ = value;
1340 }
1341 inline void LinearObjective::set_scaling_factor(double value) {
1342  _internal_set_scaling_factor(value);
1343  // @@protoc_insertion_point(field_set:operations_research.sat.LinearObjective.scaling_factor)
1344 }
1345 
1346 // -------------------------------------------------------------------
1347 
1348 // BooleanAssignment
1349 
1350 // repeated int32 literals = 1;
1351 inline int BooleanAssignment::_internal_literals_size() const {
1352  return literals_.size();
1353 }
1354 inline int BooleanAssignment::literals_size() const {
1355  return _internal_literals_size();
1356 }
1357 inline void BooleanAssignment::clear_literals() {
1358  literals_.Clear();
1359 }
1360 inline ::PROTOBUF_NAMESPACE_ID::int32 BooleanAssignment::_internal_literals(int index) const {
1361  return literals_.Get(index);
1362 }
1363 inline ::PROTOBUF_NAMESPACE_ID::int32 BooleanAssignment::literals(int index) const {
1364  // @@protoc_insertion_point(field_get:operations_research.sat.BooleanAssignment.literals)
1365  return _internal_literals(index);
1366 }
1367 inline void BooleanAssignment::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
1368  literals_.Set(index, value);
1369  // @@protoc_insertion_point(field_set:operations_research.sat.BooleanAssignment.literals)
1370 }
1371 inline void BooleanAssignment::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
1372  literals_.Add(value);
1373 }
1374 inline void BooleanAssignment::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
1375  _internal_add_literals(value);
1376  // @@protoc_insertion_point(field_add:operations_research.sat.BooleanAssignment.literals)
1377 }
1378 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1379 BooleanAssignment::_internal_literals() const {
1380  return literals_;
1381 }
1382 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1383 BooleanAssignment::literals() const {
1384  // @@protoc_insertion_point(field_list:operations_research.sat.BooleanAssignment.literals)
1385  return _internal_literals();
1386 }
1387 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1388 BooleanAssignment::_internal_mutable_literals() {
1389  return &literals_;
1390 }
1391 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1392 BooleanAssignment::mutable_literals() {
1393  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.BooleanAssignment.literals)
1394  return _internal_mutable_literals();
1395 }
1396 
1397 // -------------------------------------------------------------------
1398 
1399 // LinearBooleanProblem
1400 
1401 // optional string name = 1 [default = ""];
1402 inline bool LinearBooleanProblem::_internal_has_name() const {
1403  bool value = (_has_bits_[0] & 0x00000001u) != 0;
1404  return value;
1405 }
1406 inline bool LinearBooleanProblem::has_name() const {
1407  return _internal_has_name();
1408 }
1409 inline void LinearBooleanProblem::clear_name() {
1410  name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1411  _has_bits_[0] &= ~0x00000001u;
1412 }
1413 inline const std::string& LinearBooleanProblem::name() const {
1414  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.name)
1415  return _internal_name();
1416 }
1417 inline void LinearBooleanProblem::set_name(const std::string& value) {
1418  _internal_set_name(value);
1419  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanProblem.name)
1420 }
1421 inline std::string* LinearBooleanProblem::mutable_name() {
1422  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanProblem.name)
1423  return _internal_mutable_name();
1424 }
1425 inline const std::string& LinearBooleanProblem::_internal_name() const {
1426  return name_.Get();
1427 }
1428 inline void LinearBooleanProblem::_internal_set_name(const std::string& value) {
1429  _has_bits_[0] |= 0x00000001u;
1430  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value, GetArena());
1431 }
1432 inline void LinearBooleanProblem::set_name(std::string&& value) {
1433  _has_bits_[0] |= 0x00000001u;
1434  name_.Set(
1435  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value), GetArena());
1436  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.LinearBooleanProblem.name)
1437 }
1438 inline void LinearBooleanProblem::set_name(const char* value) {
1439  GOOGLE_DCHECK(value != nullptr);
1440  _has_bits_[0] |= 0x00000001u;
1441  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value),
1442  GetArena());
1443  // @@protoc_insertion_point(field_set_char:operations_research.sat.LinearBooleanProblem.name)
1444 }
1445 inline void LinearBooleanProblem::set_name(const char* value,
1446  size_t size) {
1447  _has_bits_[0] |= 0x00000001u;
1448  name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
1449  reinterpret_cast<const char*>(value), size), GetArena());
1450  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.LinearBooleanProblem.name)
1451 }
1452 inline std::string* LinearBooleanProblem::_internal_mutable_name() {
1453  _has_bits_[0] |= 0x00000001u;
1454  return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1455 }
1456 inline std::string* LinearBooleanProblem::release_name() {
1457  // @@protoc_insertion_point(field_release:operations_research.sat.LinearBooleanProblem.name)
1458  if (!_internal_has_name()) {
1459  return nullptr;
1460  }
1461  _has_bits_[0] &= ~0x00000001u;
1462  return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1463 }
1464 inline void LinearBooleanProblem::set_allocated_name(std::string* name) {
1465  if (name != nullptr) {
1466  _has_bits_[0] |= 0x00000001u;
1467  } else {
1468  _has_bits_[0] &= ~0x00000001u;
1469  }
1470  name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name,
1471  GetArena());
1472  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearBooleanProblem.name)
1473 }
1474 
1475 // optional int32 num_variables = 3;
1476 inline bool LinearBooleanProblem::_internal_has_num_variables() const {
1477  bool value = (_has_bits_[0] & 0x00000008u) != 0;
1478  return value;
1479 }
1480 inline bool LinearBooleanProblem::has_num_variables() const {
1481  return _internal_has_num_variables();
1482 }
1483 inline void LinearBooleanProblem::clear_num_variables() {
1484  num_variables_ = 0;
1485  _has_bits_[0] &= ~0x00000008u;
1486 }
1487 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanProblem::_internal_num_variables() const {
1488  return num_variables_;
1489 }
1490 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanProblem::num_variables() const {
1491  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.num_variables)
1492  return _internal_num_variables();
1493 }
1494 inline void LinearBooleanProblem::_internal_set_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
1495  _has_bits_[0] |= 0x00000008u;
1496  num_variables_ = value;
1497 }
1498 inline void LinearBooleanProblem::set_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
1499  _internal_set_num_variables(value);
1500  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanProblem.num_variables)
1501 }
1502 
1503 // repeated .operations_research.sat.LinearBooleanConstraint constraints = 4;
1504 inline int LinearBooleanProblem::_internal_constraints_size() const {
1505  return constraints_.size();
1506 }
1507 inline int LinearBooleanProblem::constraints_size() const {
1508  return _internal_constraints_size();
1509 }
1510 inline void LinearBooleanProblem::clear_constraints() {
1511  constraints_.Clear();
1512 }
1513 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::mutable_constraints(int index) {
1514  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanProblem.constraints)
1515  return constraints_.Mutable(index);
1516 }
1517 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >*
1518 LinearBooleanProblem::mutable_constraints() {
1519  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearBooleanProblem.constraints)
1520  return &constraints_;
1521 }
1522 inline const ::operations_research::sat::LinearBooleanConstraint& LinearBooleanProblem::_internal_constraints(int index) const {
1523  return constraints_.Get(index);
1524 }
1525 inline const ::operations_research::sat::LinearBooleanConstraint& LinearBooleanProblem::constraints(int index) const {
1526  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.constraints)
1527  return _internal_constraints(index);
1528 }
1529 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::_internal_add_constraints() {
1530  return constraints_.Add();
1531 }
1532 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::add_constraints() {
1533  // @@protoc_insertion_point(field_add:operations_research.sat.LinearBooleanProblem.constraints)
1534  return _internal_add_constraints();
1535 }
1536 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >&
1537 LinearBooleanProblem::constraints() const {
1538  // @@protoc_insertion_point(field_list:operations_research.sat.LinearBooleanProblem.constraints)
1539  return constraints_;
1540 }
1541 
1542 // optional .operations_research.sat.LinearObjective objective = 5;
1543 inline bool LinearBooleanProblem::_internal_has_objective() const {
1544  bool value = (_has_bits_[0] & 0x00000002u) != 0;
1545  PROTOBUF_ASSUME(!value || objective_ != nullptr);
1546  return value;
1547 }
1548 inline bool LinearBooleanProblem::has_objective() const {
1549  return _internal_has_objective();
1550 }
1551 inline void LinearBooleanProblem::clear_objective() {
1552  if (objective_ != nullptr) objective_->Clear();
1553  _has_bits_[0] &= ~0x00000002u;
1554 }
1555 inline const ::operations_research::sat::LinearObjective& LinearBooleanProblem::_internal_objective() const {
1556  const ::operations_research::sat::LinearObjective* p = objective_;
1557  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::LinearObjective*>(
1559 }
1560 inline const ::operations_research::sat::LinearObjective& LinearBooleanProblem::objective() const {
1561  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.objective)
1562  return _internal_objective();
1563 }
1564 inline void LinearBooleanProblem::unsafe_arena_set_allocated_objective(
1565  ::operations_research::sat::LinearObjective* objective) {
1566  if (GetArena() == nullptr) {
1567  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(objective_);
1568  }
1569  objective_ = objective;
1570  if (objective) {
1571  _has_bits_[0] |= 0x00000002u;
1572  } else {
1573  _has_bits_[0] &= ~0x00000002u;
1574  }
1575  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.sat.LinearBooleanProblem.objective)
1576 }
1577 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::release_objective() {
1578  _has_bits_[0] &= ~0x00000002u;
1579  ::operations_research::sat::LinearObjective* temp = objective_;
1580  objective_ = nullptr;
1581  if (GetArena() != nullptr) {
1582  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1583  }
1584  return temp;
1585 }
1586 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::unsafe_arena_release_objective() {
1587  // @@protoc_insertion_point(field_release:operations_research.sat.LinearBooleanProblem.objective)
1588  _has_bits_[0] &= ~0x00000002u;
1589  ::operations_research::sat::LinearObjective* temp = objective_;
1590  objective_ = nullptr;
1591  return temp;
1592 }
1593 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::_internal_mutable_objective() {
1594  _has_bits_[0] |= 0x00000002u;
1595  if (objective_ == nullptr) {
1596  auto* p = CreateMaybeMessage<::operations_research::sat::LinearObjective>(GetArena());
1597  objective_ = p;
1598  }
1599  return objective_;
1600 }
1601 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::mutable_objective() {
1602  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanProblem.objective)
1603  return _internal_mutable_objective();
1604 }
1605 inline void LinearBooleanProblem::set_allocated_objective(::operations_research::sat::LinearObjective* objective) {
1606  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1607  if (message_arena == nullptr) {
1608  delete objective_;
1609  }
1610  if (objective) {
1611  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1612  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(objective);
1613  if (message_arena != submessage_arena) {
1614  objective = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1615  message_arena, objective, submessage_arena);
1616  }
1617  _has_bits_[0] |= 0x00000002u;
1618  } else {
1619  _has_bits_[0] &= ~0x00000002u;
1620  }
1621  objective_ = objective;
1622  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearBooleanProblem.objective)
1623 }
1624 
1625 // repeated string var_names = 6;
1626 inline int LinearBooleanProblem::_internal_var_names_size() const {
1627  return var_names_.size();
1628 }
1629 inline int LinearBooleanProblem::var_names_size() const {
1630  return _internal_var_names_size();
1631 }
1632 inline void LinearBooleanProblem::clear_var_names() {
1633  var_names_.Clear();
1634 }
1635 inline std::string* LinearBooleanProblem::add_var_names() {
1636  // @@protoc_insertion_point(field_add_mutable:operations_research.sat.LinearBooleanProblem.var_names)
1637  return _internal_add_var_names();
1638 }
1639 inline const std::string& LinearBooleanProblem::_internal_var_names(int index) const {
1640  return var_names_.Get(index);
1641 }
1642 inline const std::string& LinearBooleanProblem::var_names(int index) const {
1643  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.var_names)
1644  return _internal_var_names(index);
1645 }
1646 inline std::string* LinearBooleanProblem::mutable_var_names(int index) {
1647  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanProblem.var_names)
1648  return var_names_.Mutable(index);
1649 }
1650 inline void LinearBooleanProblem::set_var_names(int index, const std::string& value) {
1651  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanProblem.var_names)
1652  var_names_.Mutable(index)->assign(value);
1653 }
1654 inline void LinearBooleanProblem::set_var_names(int index, std::string&& value) {
1655  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanProblem.var_names)
1656  var_names_.Mutable(index)->assign(std::move(value));
1657 }
1658 inline void LinearBooleanProblem::set_var_names(int index, const char* value) {
1659  GOOGLE_DCHECK(value != nullptr);
1660  var_names_.Mutable(index)->assign(value);
1661  // @@protoc_insertion_point(field_set_char:operations_research.sat.LinearBooleanProblem.var_names)
1662 }
1663 inline void LinearBooleanProblem::set_var_names(int index, const char* value, size_t size) {
1664  var_names_.Mutable(index)->assign(
1665  reinterpret_cast<const char*>(value), size);
1666  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.LinearBooleanProblem.var_names)
1667 }
1668 inline std::string* LinearBooleanProblem::_internal_add_var_names() {
1669  return var_names_.Add();
1670 }
1671 inline void LinearBooleanProblem::add_var_names(const std::string& value) {
1672  var_names_.Add()->assign(value);
1673  // @@protoc_insertion_point(field_add:operations_research.sat.LinearBooleanProblem.var_names)
1674 }
1675 inline void LinearBooleanProblem::add_var_names(std::string&& value) {
1676  var_names_.Add(std::move(value));
1677  // @@protoc_insertion_point(field_add:operations_research.sat.LinearBooleanProblem.var_names)
1678 }
1679 inline void LinearBooleanProblem::add_var_names(const char* value) {
1680  GOOGLE_DCHECK(value != nullptr);
1681  var_names_.Add()->assign(value);
1682  // @@protoc_insertion_point(field_add_char:operations_research.sat.LinearBooleanProblem.var_names)
1683 }
1684 inline void LinearBooleanProblem::add_var_names(const char* value, size_t size) {
1685  var_names_.Add()->assign(reinterpret_cast<const char*>(value), size);
1686  // @@protoc_insertion_point(field_add_pointer:operations_research.sat.LinearBooleanProblem.var_names)
1687 }
1688 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
1689 LinearBooleanProblem::var_names() const {
1690  // @@protoc_insertion_point(field_list:operations_research.sat.LinearBooleanProblem.var_names)
1691  return var_names_;
1692 }
1693 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
1694 LinearBooleanProblem::mutable_var_names() {
1695  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearBooleanProblem.var_names)
1696  return &var_names_;
1697 }
1698 
1699 // optional .operations_research.sat.BooleanAssignment assignment = 7;
1700 inline bool LinearBooleanProblem::_internal_has_assignment() const {
1701  bool value = (_has_bits_[0] & 0x00000004u) != 0;
1702  PROTOBUF_ASSUME(!value || assignment_ != nullptr);
1703  return value;
1704 }
1705 inline bool LinearBooleanProblem::has_assignment() const {
1706  return _internal_has_assignment();
1707 }
1708 inline void LinearBooleanProblem::clear_assignment() {
1709  if (assignment_ != nullptr) assignment_->Clear();
1710  _has_bits_[0] &= ~0x00000004u;
1711 }
1712 inline const ::operations_research::sat::BooleanAssignment& LinearBooleanProblem::_internal_assignment() const {
1713  const ::operations_research::sat::BooleanAssignment* p = assignment_;
1714  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::BooleanAssignment*>(
1716 }
1717 inline const ::operations_research::sat::BooleanAssignment& LinearBooleanProblem::assignment() const {
1718  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.assignment)
1719  return _internal_assignment();
1720 }
1721 inline void LinearBooleanProblem::unsafe_arena_set_allocated_assignment(
1722  ::operations_research::sat::BooleanAssignment* assignment) {
1723  if (GetArena() == nullptr) {
1724  delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*>(assignment_);
1725  }
1726  assignment_ = assignment;
1727  if (assignment) {
1728  _has_bits_[0] |= 0x00000004u;
1729  } else {
1730  _has_bits_[0] &= ~0x00000004u;
1731  }
1732  // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.sat.LinearBooleanProblem.assignment)
1733 }
1734 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::release_assignment() {
1735  _has_bits_[0] &= ~0x00000004u;
1736  ::operations_research::sat::BooleanAssignment* temp = assignment_;
1737  assignment_ = nullptr;
1738  if (GetArena() != nullptr) {
1739  temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1740  }
1741  return temp;
1742 }
1743 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::unsafe_arena_release_assignment() {
1744  // @@protoc_insertion_point(field_release:operations_research.sat.LinearBooleanProblem.assignment)
1745  _has_bits_[0] &= ~0x00000004u;
1746  ::operations_research::sat::BooleanAssignment* temp = assignment_;
1747  assignment_ = nullptr;
1748  return temp;
1749 }
1750 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::_internal_mutable_assignment() {
1751  _has_bits_[0] |= 0x00000004u;
1752  if (assignment_ == nullptr) {
1753  auto* p = CreateMaybeMessage<::operations_research::sat::BooleanAssignment>(GetArena());
1754  assignment_ = p;
1755  }
1756  return assignment_;
1757 }
1758 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::mutable_assignment() {
1759  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearBooleanProblem.assignment)
1760  return _internal_mutable_assignment();
1761 }
1762 inline void LinearBooleanProblem::set_allocated_assignment(::operations_research::sat::BooleanAssignment* assignment) {
1763  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1764  if (message_arena == nullptr) {
1765  delete assignment_;
1766  }
1767  if (assignment) {
1768  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1769  ::PROTOBUF_NAMESPACE_ID::Arena::GetArena(assignment);
1770  if (message_arena != submessage_arena) {
1771  assignment = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1772  message_arena, assignment, submessage_arena);
1773  }
1774  _has_bits_[0] |= 0x00000004u;
1775  } else {
1776  _has_bits_[0] &= ~0x00000004u;
1777  }
1778  assignment_ = assignment;
1779  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearBooleanProblem.assignment)
1780 }
1781 
1782 // optional int32 original_num_variables = 8;
1783 inline bool LinearBooleanProblem::_internal_has_original_num_variables() const {
1784  bool value = (_has_bits_[0] & 0x00000010u) != 0;
1785  return value;
1786 }
1787 inline bool LinearBooleanProblem::has_original_num_variables() const {
1788  return _internal_has_original_num_variables();
1789 }
1790 inline void LinearBooleanProblem::clear_original_num_variables() {
1791  original_num_variables_ = 0;
1792  _has_bits_[0] &= ~0x00000010u;
1793 }
1794 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanProblem::_internal_original_num_variables() const {
1795  return original_num_variables_;
1796 }
1797 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearBooleanProblem::original_num_variables() const {
1798  // @@protoc_insertion_point(field_get:operations_research.sat.LinearBooleanProblem.original_num_variables)
1799  return _internal_original_num_variables();
1800 }
1801 inline void LinearBooleanProblem::_internal_set_original_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
1802  _has_bits_[0] |= 0x00000010u;
1803  original_num_variables_ = value;
1804 }
1805 inline void LinearBooleanProblem::set_original_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
1806  _internal_set_original_num_variables(value);
1807  // @@protoc_insertion_point(field_set:operations_research.sat.LinearBooleanProblem.original_num_variables)
1808 }
1809 
1810 #ifdef __GNUC__
1811  #pragma GCC diagnostic pop
1812 #endif // __GNUC__
1813 // -------------------------------------------------------------------
1814 
1815 // -------------------------------------------------------------------
1816 
1817 // -------------------------------------------------------------------
1818 
1819 
1820 // @@protoc_insertion_point(namespace_scope)
1821 
1822 } // namespace sat
1823 } // namespace operations_research
1824 
1825 // @@protoc_insertion_point(global_scope)
1826 
1827 #include <google/protobuf/port_undef.inc>
1828 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto
void clear_lower_bound()
LinearBooleanProblemDefaultTypeInternal _LinearBooleanProblem_default_instance_
void Swap(BooleanAssignment *other)
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
void set_allocated_name(std::string *name)
const std::string & name() const
LinearObjective(const LinearObjective &from)
LinearBooleanConstraint & operator=(LinearBooleanConstraint &&from) noexcept
void add_var_names(const char *value)
void set_var_names(int index, const std::string &value)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::LinearObjective * release_objective()
void CopyFrom(const LinearBooleanProblem &from)
const std::string & var_names(int index) const
static const LinearBooleanConstraint * internal_default_instance()
const ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet & unknown_fields() const
::operations_research::sat::BooleanAssignment * mutable_assignment()
void clear_original_num_variables()
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
BooleanAssignment & operator=(const BooleanAssignment &from)
void set_offset(double value)
const ::operations_research::sat::BooleanAssignment & assignment() const
void clear_offset()
void Swap(LinearBooleanConstraint *other)
static const BooleanAssignment * internal_default_instance()
int literals_size() const
friend void swap(LinearObjective &a, LinearObjective &b)
virtual ~LinearObjective()
::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const
virtual ~BooleanAssignment()
void CopyFrom(const LinearBooleanConstraint &from)
void set_allocated_objective(::operations_research::sat::LinearObjective *objective)
bool has_objective() const
LinearBooleanConstraintDefaultTypeInternal _LinearBooleanConstraint_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
::operations_research::sat::LinearObjective * unsafe_arena_release_objective()
friend void swap(LinearBooleanProblem &a, LinearBooleanProblem &b)
bool has_upper_bound() const
void set_original_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value)
void MergeFrom(const LinearObjective &from)
LinearBooleanProblem(const LinearBooleanProblem &from)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint > & constraints() const
void CopyFrom(const BooleanAssignment &from)
void clear_num_variables()
void add_var_names(const std::string &value)
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
void clear_assignment()
std::string * release_name()
::PROTOBUF_NAMESPACE_ID::int64 lower_bound() const
BooleanAssignment()
void add_var_names(const char *value, size_t size)
void add_coefficients(::PROTOBUF_NAMESPACE_ID::int64 value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
BooleanAssignment(::PROTOBUF_NAMESPACE_ID::Arena *arena)
Definition: cp_model.h:52
LinearBooleanProblem()
bool has_offset() const
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
LinearBooleanConstraint * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
void set_var_names(int index, const char *value, size_t size)
void clear_objective()
void MergeFrom(const LinearBooleanProblem &from)
BooleanAssignmentDefaultTypeInternal _BooleanAssignment_default_instance_
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
LinearObjective(LinearObjective &&from) noexcept
LinearBooleanConstraint()
BooleanAssignment & operator=(BooleanAssignment &&from) noexcept
void CopyFrom(const LinearObjective &from)
void clear_literals()
::operations_research::sat::LinearObjective * mutable_objective()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
void clear_var_names()
void set_name(const char *value, size_t size)
::PROTOBUF_NAMESPACE_ID::int32 original_num_variables() const
void UnsafeArenaSwap(BooleanAssignment *other)
BooleanAssignment * New() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
::operations_research::sat::LinearBooleanConstraint * mutable_constraints(int index)
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coefficients() const
LinearBooleanConstraint & operator=(const LinearBooleanConstraint &from)
static const LinearObjective & default_instance()
std::string * add_var_names()
int coefficients_size() const
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
friend void swap(LinearBooleanConstraint &a, LinearBooleanConstraint &b)
bool has_assignment() const
void UnsafeArenaSwap(LinearObjective *other)
double scaling_factor() const
LinearBooleanProblem(::PROTOBUF_NAMESPACE_ID::Arena *arena)
double offset() const
LinearObjective()
LinearBooleanConstraint(LinearBooleanConstraint &&from) noexcept
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
BooleanAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
const ::operations_research::sat::LinearBooleanConstraint & constraints(int index) const
void MergeFrom(const LinearBooleanConstraint &from)
void clear_upper_bound()
void clear_name()
static void InitAsDefaultInstance()
void set_var_names(int index, std::string &&value)
void set_name(const char *value)
LinearBooleanProblem * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
LinearBooleanConstraint(const LinearBooleanConstraint &from)
const ::operations_research::sat::LinearObjective & objective() const
void set_allocated_assignment(::operations_research::sat::BooleanAssignment *assignment)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fboolean_5fproblem_2eproto
void set_scaling_factor(double value)
virtual ~LinearBooleanProblem()
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< std::string > * mutable_var_names()
LinearObjectiveDefaultTypeInternal _LinearObjective_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
void set_upper_bound(::PROTOBUF_NAMESPACE_ID::int64 value)
LinearBooleanProblem(LinearBooleanProblem &&from) noexcept
void clear_constraints()
void clear_coefficients()
void set_name(std::string &&value)
static const BooleanAssignment & default_instance()
void set_lower_bound(::PROTOBUF_NAMESPACE_ID::int64 value)
void set_coefficients(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
LinearBooleanProblem & operator=(const LinearBooleanProblem &from)
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< std::string > & var_names() const
void add_var_names(std::string &&value)
bool has_lower_bound() const
void Swap(LinearBooleanProblem *other)
static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
BooleanAssignment(BooleanAssignment &&from) noexcept
static const LinearBooleanProblem * internal_default_instance()
void Swap(LinearObjective *other)
::PROTOBUF_NAMESPACE_ID::int32 num_variables() const
::PROTOBUF_NAMESPACE_ID::int64 upper_bound() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
BooleanAssignment(const BooleanAssignment &from)
void UnsafeArenaSwap(LinearBooleanProblem *other)
bool has_name() const
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
int var_names_size() const
LinearObjective * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
::operations_research::sat::BooleanAssignment * unsafe_arena_release_assignment()
bool has_num_variables() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coefficients()
::operations_research::sat::LinearBooleanConstraint * add_constraints()
void MergeFrom(const BooleanAssignment &from)
LinearObjective(::PROTOBUF_NAMESPACE_ID::Arena *arena)
void set_num_variables(::PROTOBUF_NAMESPACE_ID::int32 value)
void set_name(const std::string &value)
LinearBooleanConstraint(::PROTOBUF_NAMESPACE_ID::Arena *arena)
bool has_scaling_factor() const
LinearObjective & operator=(const LinearObjective &from)
int constraints_size() const
static const LinearBooleanConstraint & default_instance()
std::string * mutable_name()
static const LinearObjective * internal_default_instance()
static const LinearBooleanProblem & default_instance()
void unsafe_arena_set_allocated_assignment(::operations_research::sat::BooleanAssignment *assignment)
::operations_research::sat::BooleanAssignment * release_assignment()
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint > * mutable_constraints()
void unsafe_arena_set_allocated_objective(::operations_research::sat::LinearObjective *objective)
void UnsafeArenaSwap(LinearBooleanConstraint *other)
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
bool has_original_num_variables() const
void clear_scaling_factor()
LinearBooleanConstraint * New() const final
friend void swap(BooleanAssignment &a, BooleanAssignment &b)
LinearBooleanProblem & operator=(LinearBooleanProblem &&from) noexcept
::PROTOBUF_NAMESPACE_ID::int64 coefficients(int index) const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
virtual ~LinearBooleanConstraint()
LinearObjective & operator=(LinearObjective &&from) noexcept
std::string * mutable_var_names(int index)
LinearObjective * New() const final
LinearBooleanProblem * New() const final
void set_var_names(int index, const char *value)