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