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