4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto
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
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.
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>
33 #include <google/protobuf/extension_set.h>
34 #include <google/protobuf/unknown_field_set.h>
36 #include <google/protobuf/port_def.inc>
37 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fboolean_5fproblem_2eproto
38 PROTOBUF_NAMESPACE_OPEN
42 PROTOBUF_NAMESPACE_CLOSE
46 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
48 static const ::PROTOBUF_NAMESPACE_ID::internal::AuxiliaryParseTableField aux[]
50 static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[4]
52 static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata
field_metadata[];
59 class BooleanAssignment;
60 class BooleanAssignmentDefaultTypeInternal;
62 class LinearBooleanConstraint;
65 class LinearBooleanProblem;
68 class LinearObjective;
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
85 public ::PROTOBUF_NAMESPACE_ID::Message {
92 : LinearBooleanConstraint() {
93 *
this = ::std::move(from);
96 inline LinearBooleanConstraint&
operator=(
const LinearBooleanConstraint& from) {
100 inline LinearBooleanConstraint&
operator=(LinearBooleanConstraint&& from) noexcept {
101 if (GetArena() == from.GetArena()) {
102 if (
this != &from) InternalSwap(&from);
110 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
113 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
116 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
117 return GetDescriptor();
120 return GetMetadataStatic().descriptor;
123 return GetMetadataStatic().reflection;
129 return reinterpret_cast<const LinearBooleanConstraint*
>(
132 static constexpr
int kIndexInFileMessages =
135 friend void swap(LinearBooleanConstraint&
a, LinearBooleanConstraint&
b) {
138 inline void Swap(LinearBooleanConstraint* other) {
139 if (other ==
this)
return;
140 if (GetArena() == other->GetArena()) {
143 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
147 if (other ==
this)
return;
148 GOOGLE_DCHECK(GetArena() == other->GetArena());
154 inline LinearBooleanConstraint*
New() const final {
155 return CreateMaybeMessage<LinearBooleanConstraint>(
nullptr);
158 LinearBooleanConstraint*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
159 return CreateMaybeMessage<LinearBooleanConstraint>(arena);
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);
165 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
166 bool IsInitialized() const final;
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(); }
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";
186 static void ArenaDtor(
void*
object);
187 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
192 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
204 kLiteralsFieldNumber = 1,
205 kCoefficientsFieldNumber = 2,
206 kNameFieldNumber = 5,
207 kLowerBoundFieldNumber = 3,
208 kUpperBoundFieldNumber = 4,
213 int _internal_literals_size()
const;
218 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
219 _internal_literals()
const;
221 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
222 _internal_mutable_literals();
227 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
229 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
235 int _internal_coefficients_size()
const;
240 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
241 _internal_coefficients()
const;
243 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
244 _internal_mutable_coefficients();
249 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
251 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
257 bool _internal_has_name()
const;
260 const std::string&
name()
const;
269 const std::string& _internal_name()
const;
270 void _internal_set_name(
const std::string&
value);
271 std::string* _internal_mutable_name();
277 bool _internal_has_lower_bound()
const;
290 bool _internal_has_upper_bound()
const;
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_;
314 friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
319 public ::PROTOBUF_NAMESPACE_ID::Message {
326 : LinearObjective() {
327 *
this = ::std::move(from);
330 inline LinearObjective&
operator=(
const LinearObjective& from) {
334 inline LinearObjective&
operator=(LinearObjective&& from) noexcept {
335 if (GetArena() == from.GetArena()) {
336 if (
this != &from) InternalSwap(&from);
344 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
347 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
350 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
351 return GetDescriptor();
354 return GetMetadataStatic().descriptor;
357 return GetMetadataStatic().reflection;
363 return reinterpret_cast<const LinearObjective*
>(
366 static constexpr
int kIndexInFileMessages =
369 friend void swap(LinearObjective&
a, LinearObjective&
b) {
372 inline void Swap(LinearObjective* other) {
373 if (other ==
this)
return;
374 if (GetArena() == other->GetArena()) {
377 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
381 if (other ==
this)
return;
382 GOOGLE_DCHECK(GetArena() == other->GetArena());
388 inline LinearObjective*
New() const final {
389 return CreateMaybeMessage<LinearObjective>(
nullptr);
392 LinearObjective*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
393 return CreateMaybeMessage<LinearObjective>(arena);
395 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
396 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
399 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
400 bool IsInitialized() const final;
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(); }
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";
420 static void ArenaDtor(
void*
object);
421 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
426 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
438 kLiteralsFieldNumber = 1,
439 kCoefficientsFieldNumber = 2,
440 kOffsetFieldNumber = 3,
441 kScalingFactorFieldNumber = 4,
446 int _internal_literals_size()
const;
451 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
452 _internal_literals()
const;
454 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
455 _internal_mutable_literals();
460 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
462 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
468 int _internal_coefficients_size()
const;
473 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
474 _internal_coefficients()
const;
476 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
477 _internal_mutable_coefficients();
482 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
484 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
490 bool _internal_has_offset()
const;
496 double _internal_offset()
const;
497 void _internal_set_offset(
double value);
503 bool _internal_has_scaling_factor()
const;
509 double _internal_scaling_factor()
const;
510 void _internal_set_scaling_factor(
double value);
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_;
525 double scaling_factor_;
526 friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
531 public ::PROTOBUF_NAMESPACE_ID::Message {
538 : BooleanAssignment() {
539 *
this = ::std::move(from);
542 inline BooleanAssignment&
operator=(
const BooleanAssignment& from) {
546 inline BooleanAssignment&
operator=(BooleanAssignment&& from) noexcept {
547 if (GetArena() == from.GetArena()) {
548 if (
this != &from) InternalSwap(&from);
556 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
559 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
562 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
563 return GetDescriptor();
566 return GetMetadataStatic().descriptor;
569 return GetMetadataStatic().reflection;
575 return reinterpret_cast<const BooleanAssignment*
>(
578 static constexpr
int kIndexInFileMessages =
581 friend void swap(BooleanAssignment&
a, BooleanAssignment&
b) {
584 inline void Swap(BooleanAssignment* other) {
585 if (other ==
this)
return;
586 if (GetArena() == other->GetArena()) {
589 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
593 if (other ==
this)
return;
594 GOOGLE_DCHECK(GetArena() == other->GetArena());
600 inline BooleanAssignment*
New() const final {
601 return CreateMaybeMessage<BooleanAssignment>(
nullptr);
604 BooleanAssignment*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
605 return CreateMaybeMessage<BooleanAssignment>(arena);
607 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
608 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
611 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
612 bool IsInitialized() const final;
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(); }
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";
632 static void ArenaDtor(
void*
object);
633 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
638 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
650 kLiteralsFieldNumber = 1,
655 int _internal_literals_size()
const;
660 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
661 _internal_literals()
const;
663 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
664 _internal_mutable_literals();
669 const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
671 ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
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;
688 public ::PROTOBUF_NAMESPACE_ID::Message {
695 : LinearBooleanProblem() {
696 *
this = ::std::move(from);
699 inline LinearBooleanProblem&
operator=(
const LinearBooleanProblem& from) {
703 inline LinearBooleanProblem&
operator=(LinearBooleanProblem&& from) noexcept {
704 if (GetArena() == from.GetArena()) {
705 if (
this != &from) InternalSwap(&from);
713 return _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance);
716 return _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
719 static const ::PROTOBUF_NAMESPACE_ID::Descriptor*
descriptor() {
720 return GetDescriptor();
723 return GetMetadataStatic().descriptor;
726 return GetMetadataStatic().reflection;
732 return reinterpret_cast<const LinearBooleanProblem*
>(
735 static constexpr
int kIndexInFileMessages =
738 friend void swap(LinearBooleanProblem&
a, LinearBooleanProblem&
b) {
741 inline void Swap(LinearBooleanProblem* other) {
742 if (other ==
this)
return;
743 if (GetArena() == other->GetArena()) {
746 ::PROTOBUF_NAMESPACE_ID::internal::GenericSwap(
this, other);
750 if (other ==
this)
return;
751 GOOGLE_DCHECK(GetArena() == other->GetArena());
757 inline LinearBooleanProblem*
New() const final {
758 return CreateMaybeMessage<LinearBooleanProblem>(
nullptr);
761 LinearBooleanProblem*
New(::PROTOBUF_NAMESPACE_ID::Arena* arena)
const final {
762 return CreateMaybeMessage<LinearBooleanProblem>(arena);
764 void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
765 void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from)
final;
768 PROTOBUF_ATTRIBUTE_REINITIALIZES
void Clear() final;
769 bool IsInitialized() const final;
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(); }
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";
789 static void ArenaDtor(
void*
object);
790 inline void RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena);
795 static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
807 kConstraintsFieldNumber = 4,
808 kVarNamesFieldNumber = 6,
809 kNameFieldNumber = 1,
810 kObjectiveFieldNumber = 5,
811 kAssignmentFieldNumber = 7,
812 kNumVariablesFieldNumber = 3,
813 kOriginalNumVariablesFieldNumber = 8,
818 int _internal_constraints_size()
const;
822 ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >*
825 const ::operations_research::sat::LinearBooleanConstraint& _internal_constraints(
int index)
const;
826 ::operations_research::sat::LinearBooleanConstraint* _internal_add_constraints();
830 const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >&
836 int _internal_var_names_size()
const;
850 const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
var_names()
const;
853 const std::string& _internal_var_names(
int index)
const;
854 std::string* _internal_add_var_names();
860 bool _internal_has_name()
const;
863 const std::string&
name()
const;
872 const std::string& _internal_name()
const;
873 void _internal_set_name(
const std::string&
value);
874 std::string* _internal_mutable_name();
880 bool _internal_has_objective()
const;
883 const ::operations_research::sat::LinearObjective&
objective()
const;
888 const ::operations_research::sat::LinearObjective& _internal_objective()
const;
889 ::operations_research::sat::LinearObjective* _internal_mutable_objective();
898 bool _internal_has_assignment()
const;
901 const ::operations_research::sat::BooleanAssignment&
assignment()
const;
906 const ::operations_research::sat::BooleanAssignment& _internal_assignment()
const;
907 ::operations_research::sat::BooleanAssignment* _internal_mutable_assignment();
916 bool _internal_has_num_variables()
const;
929 bool _internal_has_original_num_variables()
const;
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_;
955 friend struct ::TableStruct_ortools_2fsat_2fboolean_5fproblem_2eproto;
963 #pragma GCC diagnostic push
964 #pragma GCC diagnostic ignored "-Wstrict-aliasing"
969 inline int LinearBooleanConstraint::_internal_literals_size()
const {
970 return literals_.size();
972 inline int LinearBooleanConstraint::literals_size()
const {
973 return _internal_literals_size();
975 inline void LinearBooleanConstraint::clear_literals() {
979 return literals_.Get(
index);
983 return _internal_literals(
index);
990 literals_.Add(
value);
993 _internal_add_literals(
value);
996 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
997 LinearBooleanConstraint::_internal_literals()
const {
1000 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1001 LinearBooleanConstraint::literals()
const {
1003 return _internal_literals();
1005 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1006 LinearBooleanConstraint::_internal_mutable_literals() {
1009 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1010 LinearBooleanConstraint::mutable_literals() {
1012 return _internal_mutable_literals();
1016 inline int LinearBooleanConstraint::_internal_coefficients_size()
const {
1017 return coefficients_.size();
1019 inline int LinearBooleanConstraint::coefficients_size()
const {
1020 return _internal_coefficients_size();
1022 inline void LinearBooleanConstraint::clear_coefficients() {
1023 coefficients_.Clear();
1026 return coefficients_.Get(
index);
1030 return _internal_coefficients(
index);
1037 coefficients_.Add(
value);
1040 _internal_add_coefficients(
value);
1043 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1044 LinearBooleanConstraint::_internal_coefficients()
const {
1045 return coefficients_;
1047 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1050 return _internal_coefficients();
1052 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1053 LinearBooleanConstraint::_internal_mutable_coefficients() {
1054 return &coefficients_;
1056 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1057 LinearBooleanConstraint::mutable_coefficients() {
1059 return _internal_mutable_coefficients();
1063 inline bool LinearBooleanConstraint::_internal_has_lower_bound()
const {
1064 bool value = (_has_bits_[0] & 0x00000002u) != 0;
1067 inline bool LinearBooleanConstraint::has_lower_bound()
const {
1068 return _internal_has_lower_bound();
1070 inline void LinearBooleanConstraint::clear_lower_bound() {
1071 lower_bound_ = PROTOBUF_LONGLONG(0);
1072 _has_bits_[0] &= ~0x00000002u;
1075 return lower_bound_;
1079 return _internal_lower_bound();
1082 _has_bits_[0] |= 0x00000002u;
1083 lower_bound_ =
value;
1086 _internal_set_lower_bound(
value);
1091 inline bool LinearBooleanConstraint::_internal_has_upper_bound()
const {
1092 bool value = (_has_bits_[0] & 0x00000004u) != 0;
1095 inline bool LinearBooleanConstraint::has_upper_bound()
const {
1096 return _internal_has_upper_bound();
1098 inline void LinearBooleanConstraint::clear_upper_bound() {
1099 upper_bound_ = PROTOBUF_LONGLONG(0);
1100 _has_bits_[0] &= ~0x00000004u;
1103 return upper_bound_;
1107 return _internal_upper_bound();
1110 _has_bits_[0] |= 0x00000004u;
1111 upper_bound_ =
value;
1114 _internal_set_upper_bound(
value);
1119 inline bool LinearBooleanConstraint::_internal_has_name()
const {
1120 bool value = (_has_bits_[0] & 0x00000001u) != 0;
1123 inline bool LinearBooleanConstraint::has_name()
const {
1124 return _internal_has_name();
1126 inline void LinearBooleanConstraint::clear_name() {
1127 name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1128 _has_bits_[0] &= ~0x00000001u;
1132 return _internal_name();
1134 inline void LinearBooleanConstraint::set_name(
const std::string&
value) {
1135 _internal_set_name(
value);
1138 inline std::string* LinearBooleanConstraint::mutable_name() {
1140 return _internal_mutable_name();
1142 inline const std::string& LinearBooleanConstraint::_internal_name()
const {
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());
1149 inline void LinearBooleanConstraint::set_name(std::string&&
value) {
1150 _has_bits_[0] |= 0x00000001u;
1152 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(
value), GetArena());
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),
1162 inline void LinearBooleanConstraint::set_name(
const char*
value,
1164 _has_bits_[0] |= 0x00000001u;
1165 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
1166 reinterpret_cast<const char*
>(
value), size), GetArena());
1169 inline std::string* LinearBooleanConstraint::_internal_mutable_name() {
1170 _has_bits_[0] |= 0x00000001u;
1171 return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1173 inline std::string* LinearBooleanConstraint::release_name() {
1175 if (!_internal_has_name()) {
1178 _has_bits_[0] &= ~0x00000001u;
1179 return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1181 inline void LinearBooleanConstraint::set_allocated_name(std::string*
name) {
1182 if (
name !=
nullptr) {
1183 _has_bits_[0] |= 0x00000001u;
1185 _has_bits_[0] &= ~0x00000001u;
1187 name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
name,
1197 inline int LinearObjective::_internal_literals_size()
const {
1198 return literals_.size();
1200 inline int LinearObjective::literals_size()
const {
1201 return _internal_literals_size();
1203 inline void LinearObjective::clear_literals() {
1207 return literals_.Get(
index);
1211 return _internal_literals(
index);
1218 literals_.Add(
value);
1221 _internal_add_literals(
value);
1224 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1225 LinearObjective::_internal_literals()
const {
1228 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1229 LinearObjective::literals()
const {
1231 return _internal_literals();
1233 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1234 LinearObjective::_internal_mutable_literals() {
1237 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1238 LinearObjective::mutable_literals() {
1240 return _internal_mutable_literals();
1244 inline int LinearObjective::_internal_coefficients_size()
const {
1245 return coefficients_.size();
1247 inline int LinearObjective::coefficients_size()
const {
1248 return _internal_coefficients_size();
1250 inline void LinearObjective::clear_coefficients() {
1251 coefficients_.Clear();
1254 return coefficients_.Get(
index);
1258 return _internal_coefficients(
index);
1265 coefficients_.Add(
value);
1268 _internal_add_coefficients(
value);
1271 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1272 LinearObjective::_internal_coefficients()
const {
1273 return coefficients_;
1275 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1278 return _internal_coefficients();
1280 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1281 LinearObjective::_internal_mutable_coefficients() {
1282 return &coefficients_;
1284 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1285 LinearObjective::mutable_coefficients() {
1287 return _internal_mutable_coefficients();
1291 inline bool LinearObjective::_internal_has_offset()
const {
1292 bool value = (_has_bits_[0] & 0x00000001u) != 0;
1295 inline bool LinearObjective::has_offset()
const {
1296 return _internal_has_offset();
1298 inline void LinearObjective::clear_offset() {
1300 _has_bits_[0] &= ~0x00000001u;
1302 inline double LinearObjective::_internal_offset()
const {
1305 inline double LinearObjective::offset()
const {
1307 return _internal_offset();
1309 inline void LinearObjective::_internal_set_offset(
double value) {
1310 _has_bits_[0] |= 0x00000001u;
1313 inline void LinearObjective::set_offset(
double value) {
1314 _internal_set_offset(
value);
1319 inline bool LinearObjective::_internal_has_scaling_factor()
const {
1320 bool value = (_has_bits_[0] & 0x00000002u) != 0;
1323 inline bool LinearObjective::has_scaling_factor()
const {
1324 return _internal_has_scaling_factor();
1326 inline void LinearObjective::clear_scaling_factor() {
1327 scaling_factor_ = 1;
1328 _has_bits_[0] &= ~0x00000002u;
1330 inline double LinearObjective::_internal_scaling_factor()
const {
1331 return scaling_factor_;
1333 inline double LinearObjective::scaling_factor()
const {
1335 return _internal_scaling_factor();
1337 inline void LinearObjective::_internal_set_scaling_factor(
double value) {
1338 _has_bits_[0] |= 0x00000002u;
1339 scaling_factor_ =
value;
1341 inline void LinearObjective::set_scaling_factor(
double value) {
1342 _internal_set_scaling_factor(
value);
1351 inline int BooleanAssignment::_internal_literals_size()
const {
1352 return literals_.size();
1354 inline int BooleanAssignment::literals_size()
const {
1355 return _internal_literals_size();
1357 inline void BooleanAssignment::clear_literals() {
1361 return literals_.Get(
index);
1365 return _internal_literals(
index);
1372 literals_.Add(
value);
1375 _internal_add_literals(
value);
1378 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1379 BooleanAssignment::_internal_literals()
const {
1382 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1383 BooleanAssignment::literals()
const {
1385 return _internal_literals();
1387 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1388 BooleanAssignment::_internal_mutable_literals() {
1391 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1392 BooleanAssignment::mutable_literals() {
1394 return _internal_mutable_literals();
1402 inline bool LinearBooleanProblem::_internal_has_name()
const {
1403 bool value = (_has_bits_[0] & 0x00000001u) != 0;
1406 inline bool LinearBooleanProblem::has_name()
const {
1407 return _internal_has_name();
1409 inline void LinearBooleanProblem::clear_name() {
1410 name_.ClearToEmpty(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1411 _has_bits_[0] &= ~0x00000001u;
1415 return _internal_name();
1417 inline void LinearBooleanProblem::set_name(
const std::string&
value) {
1418 _internal_set_name(
value);
1421 inline std::string* LinearBooleanProblem::mutable_name() {
1423 return _internal_mutable_name();
1425 inline const std::string& LinearBooleanProblem::_internal_name()
const {
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());
1432 inline void LinearBooleanProblem::set_name(std::string&&
value) {
1433 _has_bits_[0] |= 0x00000001u;
1435 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(
value), GetArena());
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),
1445 inline void LinearBooleanProblem::set_name(
const char*
value,
1447 _has_bits_[0] |= 0x00000001u;
1448 name_.Set(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(
1449 reinterpret_cast<const char*
>(
value), size), GetArena());
1452 inline std::string* LinearBooleanProblem::_internal_mutable_name() {
1453 _has_bits_[0] |= 0x00000001u;
1454 return name_.Mutable(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1456 inline std::string* LinearBooleanProblem::release_name() {
1458 if (!_internal_has_name()) {
1461 _has_bits_[0] &= ~0x00000001u;
1462 return name_.ReleaseNonDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), GetArena());
1464 inline void LinearBooleanProblem::set_allocated_name(std::string*
name) {
1465 if (
name !=
nullptr) {
1466 _has_bits_[0] |= 0x00000001u;
1468 _has_bits_[0] &= ~0x00000001u;
1470 name_.SetAllocated(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
name,
1476 inline bool LinearBooleanProblem::_internal_has_num_variables()
const {
1477 bool value = (_has_bits_[0] & 0x00000008u) != 0;
1480 inline bool LinearBooleanProblem::has_num_variables()
const {
1481 return _internal_has_num_variables();
1483 inline void LinearBooleanProblem::clear_num_variables() {
1485 _has_bits_[0] &= ~0x00000008u;
1488 return num_variables_;
1492 return _internal_num_variables();
1495 _has_bits_[0] |= 0x00000008u;
1496 num_variables_ =
value;
1499 _internal_set_num_variables(
value);
1504 inline int LinearBooleanProblem::_internal_constraints_size()
const {
1505 return constraints_.size();
1507 inline int LinearBooleanProblem::constraints_size()
const {
1508 return _internal_constraints_size();
1510 inline void LinearBooleanProblem::clear_constraints() {
1511 constraints_.Clear();
1513 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::mutable_constraints(
int index) {
1515 return constraints_.Mutable(
index);
1517 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >*
1518 LinearBooleanProblem::mutable_constraints() {
1520 return &constraints_;
1522 inline const ::operations_research::sat::LinearBooleanConstraint& LinearBooleanProblem::_internal_constraints(
int index)
const {
1523 return constraints_.Get(
index);
1525 inline const ::operations_research::sat::LinearBooleanConstraint& LinearBooleanProblem::constraints(
int index)
const {
1527 return _internal_constraints(
index);
1529 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::_internal_add_constraints() {
1530 return constraints_.Add();
1532 inline ::operations_research::sat::LinearBooleanConstraint* LinearBooleanProblem::add_constraints() {
1534 return _internal_add_constraints();
1536 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearBooleanConstraint >&
1537 LinearBooleanProblem::constraints()
const {
1539 return constraints_;
1543 inline bool LinearBooleanProblem::_internal_has_objective()
const {
1544 bool value = (_has_bits_[0] & 0x00000002u) != 0;
1548 inline bool LinearBooleanProblem::has_objective()
const {
1549 return _internal_has_objective();
1551 inline void LinearBooleanProblem::clear_objective() {
1553 _has_bits_[0] &= ~0x00000002u;
1555 inline const ::operations_research::sat::LinearObjective& LinearBooleanProblem::_internal_objective()
const {
1556 const ::operations_research::sat::LinearObjective* p =
objective_;
1560 inline const ::operations_research::sat::LinearObjective& LinearBooleanProblem::objective()
const {
1562 return _internal_objective();
1564 inline void LinearBooleanProblem::unsafe_arena_set_allocated_objective(
1566 if (GetArena() ==
nullptr) {
1567 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(
objective_);
1571 _has_bits_[0] |= 0x00000002u;
1573 _has_bits_[0] &= ~0x00000002u;
1577 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::release_objective() {
1578 _has_bits_[0] &= ~0x00000002u;
1579 ::operations_research::sat::LinearObjective* temp =
objective_;
1581 if (GetArena() !=
nullptr) {
1582 temp = ::PROTOBUF_NAMESPACE_ID::internal::DuplicateIfNonNull(temp);
1586 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::unsafe_arena_release_objective() {
1588 _has_bits_[0] &= ~0x00000002u;
1589 ::operations_research::sat::LinearObjective* temp =
objective_;
1593 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::_internal_mutable_objective() {
1594 _has_bits_[0] |= 0x00000002u;
1596 auto* p = CreateMaybeMessage<::operations_research::sat::LinearObjective>(GetArena());
1601 inline ::operations_research::sat::LinearObjective* LinearBooleanProblem::mutable_objective() {
1603 return _internal_mutable_objective();
1606 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1607 if (message_arena ==
nullptr) {
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);
1617 _has_bits_[0] |= 0x00000002u;
1619 _has_bits_[0] &= ~0x00000002u;
1626 inline int LinearBooleanProblem::_internal_var_names_size()
const {
1627 return var_names_.size();
1629 inline int LinearBooleanProblem::var_names_size()
const {
1630 return _internal_var_names_size();
1632 inline void LinearBooleanProblem::clear_var_names() {
1635 inline std::string* LinearBooleanProblem::add_var_names() {
1637 return _internal_add_var_names();
1639 inline const std::string& LinearBooleanProblem::_internal_var_names(
int index)
const {
1640 return var_names_.Get(
index);
1642 inline const std::string& LinearBooleanProblem::var_names(
int index)
const {
1644 return _internal_var_names(
index);
1646 inline std::string* LinearBooleanProblem::mutable_var_names(
int index) {
1648 return var_names_.Mutable(
index);
1650 inline void LinearBooleanProblem::set_var_names(
int index,
const std::string&
value) {
1654 inline void LinearBooleanProblem::set_var_names(
int index, std::string&&
value) {
1656 var_names_.Mutable(
index)->assign(std::move(
value));
1658 inline void LinearBooleanProblem::set_var_names(
int index,
const char*
value) {
1659 GOOGLE_DCHECK(
value !=
nullptr);
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);
1668 inline std::string* LinearBooleanProblem::_internal_add_var_names() {
1669 return var_names_.Add();
1671 inline void LinearBooleanProblem::add_var_names(
const std::string&
value) {
1672 var_names_.Add()->assign(
value);
1675 inline void LinearBooleanProblem::add_var_names(std::string&&
value) {
1676 var_names_.Add(std::move(
value));
1679 inline void LinearBooleanProblem::add_var_names(
const char*
value) {
1680 GOOGLE_DCHECK(
value !=
nullptr);
1681 var_names_.Add()->assign(
value);
1684 inline void LinearBooleanProblem::add_var_names(
const char*
value,
size_t size) {
1685 var_names_.Add()->assign(
reinterpret_cast<const char*
>(
value), size);
1688 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>&
1689 LinearBooleanProblem::var_names()
const {
1693 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField<std::string>*
1694 LinearBooleanProblem::mutable_var_names() {
1700 inline bool LinearBooleanProblem::_internal_has_assignment()
const {
1701 bool value = (_has_bits_[0] & 0x00000004u) != 0;
1702 PROTOBUF_ASSUME(!
value || assignment_ !=
nullptr);
1705 inline bool LinearBooleanProblem::has_assignment()
const {
1706 return _internal_has_assignment();
1708 inline void LinearBooleanProblem::clear_assignment() {
1709 if (assignment_ !=
nullptr) assignment_->Clear();
1710 _has_bits_[0] &= ~0x00000004u;
1712 inline const ::operations_research::sat::BooleanAssignment& LinearBooleanProblem::_internal_assignment()
const {
1713 const ::operations_research::sat::BooleanAssignment* p = assignment_;
1717 inline const ::operations_research::sat::BooleanAssignment& LinearBooleanProblem::assignment()
const {
1719 return _internal_assignment();
1721 inline void LinearBooleanProblem::unsafe_arena_set_allocated_assignment(
1723 if (GetArena() ==
nullptr) {
1724 delete reinterpret_cast<::PROTOBUF_NAMESPACE_ID::MessageLite*
>(assignment_);
1726 assignment_ = assignment;
1728 _has_bits_[0] |= 0x00000004u;
1730 _has_bits_[0] &= ~0x00000004u;
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);
1743 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::unsafe_arena_release_assignment() {
1745 _has_bits_[0] &= ~0x00000004u;
1746 ::operations_research::sat::BooleanAssignment* temp = assignment_;
1747 assignment_ =
nullptr;
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());
1758 inline ::operations_research::sat::BooleanAssignment* LinearBooleanProblem::mutable_assignment() {
1760 return _internal_mutable_assignment();
1763 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArena();
1764 if (message_arena ==
nullptr) {
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);
1774 _has_bits_[0] |= 0x00000004u;
1776 _has_bits_[0] &= ~0x00000004u;
1778 assignment_ = assignment;
1783 inline bool LinearBooleanProblem::_internal_has_original_num_variables()
const {
1784 bool value = (_has_bits_[0] & 0x00000010u) != 0;
1787 inline bool LinearBooleanProblem::has_original_num_variables()
const {
1788 return _internal_has_original_num_variables();
1790 inline void LinearBooleanProblem::clear_original_num_variables() {
1791 original_num_variables_ = 0;
1792 _has_bits_[0] &= ~0x00000010u;
1795 return original_num_variables_;
1799 return _internal_original_num_variables();
1802 _has_bits_[0] |= 0x00000010u;
1803 original_num_variables_ =
value;
1806 _internal_set_original_num_variables(
value);
1811 #pragma GCC diagnostic pop
1827 #include <google/protobuf/port_undef.inc>
1828 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fboolean_5fproblem_2eproto