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