C++ Reference

C++ Reference: CP-SAT

cp_model.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/sat/cp_model.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3011000
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 3011002 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
36 // @@protoc_insertion_point(includes)
37 #include <google/protobuf/port_def.inc>
38 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fcp_5fmodel_2eproto
39 PROTOBUF_NAMESPACE_OPEN
40 namespace internal {
41 class AnyMetadata;
42 } // namespace internal
43 PROTOBUF_NAMESPACE_CLOSE
44 
45 // Internal implementation detail -- do not use these members.
47  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
48  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
49  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
50  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
51  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[26]
52  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
53  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
54  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
55  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
56 };
57 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto;
58 namespace operations_research {
59 namespace sat {
60 class AllDifferentConstraintProto;
61 class AllDifferentConstraintProtoDefaultTypeInternal;
62 extern AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_;
63 class AutomatonConstraintProto;
64 class AutomatonConstraintProtoDefaultTypeInternal;
65 extern AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_;
66 class BoolArgumentProto;
67 class BoolArgumentProtoDefaultTypeInternal;
68 extern BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_;
69 class CircuitConstraintProto;
70 class CircuitConstraintProtoDefaultTypeInternal;
71 extern CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_;
72 class CircuitCoveringConstraintProto;
73 class CircuitCoveringConstraintProtoDefaultTypeInternal;
74 extern CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_;
75 class ConstraintProto;
76 class ConstraintProtoDefaultTypeInternal;
77 extern ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_;
78 class CpModelProto;
79 class CpModelProtoDefaultTypeInternal;
80 extern CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_;
81 class CpObjectiveProto;
82 class CpObjectiveProtoDefaultTypeInternal;
83 extern CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_;
84 class CpSolverResponse;
85 class CpSolverResponseDefaultTypeInternal;
86 extern CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_;
87 class CumulativeConstraintProto;
88 class CumulativeConstraintProtoDefaultTypeInternal;
89 extern CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_;
90 class DecisionStrategyProto;
91 class DecisionStrategyProtoDefaultTypeInternal;
92 extern DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_;
93 class DecisionStrategyProto_AffineTransformation;
94 class DecisionStrategyProto_AffineTransformationDefaultTypeInternal;
95 extern DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_;
96 class ElementConstraintProto;
97 class ElementConstraintProtoDefaultTypeInternal;
98 extern ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_;
99 class IntegerArgumentProto;
100 class IntegerArgumentProtoDefaultTypeInternal;
101 extern IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_;
102 class IntegerVariableProto;
103 class IntegerVariableProtoDefaultTypeInternal;
104 extern IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_;
105 class IntervalConstraintProto;
106 class IntervalConstraintProtoDefaultTypeInternal;
107 extern IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_;
108 class InverseConstraintProto;
109 class InverseConstraintProtoDefaultTypeInternal;
110 extern InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_;
111 class LinearArgumentProto;
112 class LinearArgumentProtoDefaultTypeInternal;
113 extern LinearArgumentProtoDefaultTypeInternal _LinearArgumentProto_default_instance_;
114 class LinearConstraintProto;
115 class LinearConstraintProtoDefaultTypeInternal;
116 extern LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_;
117 class LinearExpressionProto;
118 class LinearExpressionProtoDefaultTypeInternal;
119 extern LinearExpressionProtoDefaultTypeInternal _LinearExpressionProto_default_instance_;
120 class NoOverlap2DConstraintProto;
121 class NoOverlap2DConstraintProtoDefaultTypeInternal;
122 extern NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_;
123 class NoOverlapConstraintProto;
124 class NoOverlapConstraintProtoDefaultTypeInternal;
125 extern NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_;
126 class PartialVariableAssignment;
127 class PartialVariableAssignmentDefaultTypeInternal;
128 extern PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_;
129 class ReservoirConstraintProto;
130 class ReservoirConstraintProtoDefaultTypeInternal;
131 extern ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_;
132 class RoutesConstraintProto;
133 class RoutesConstraintProtoDefaultTypeInternal;
134 extern RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_;
135 class TableConstraintProto;
136 class TableConstraintProtoDefaultTypeInternal;
137 extern TableConstraintProtoDefaultTypeInternal _TableConstraintProto_default_instance_;
138 } // namespace sat
139 } // namespace operations_research
140 PROTOBUF_NAMESPACE_OPEN
141 template<> ::operations_research::sat::AllDifferentConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AllDifferentConstraintProto>(Arena*);
142 template<> ::operations_research::sat::AutomatonConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AutomatonConstraintProto>(Arena*);
143 template<> ::operations_research::sat::BoolArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::BoolArgumentProto>(Arena*);
144 template<> ::operations_research::sat::CircuitConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitConstraintProto>(Arena*);
145 template<> ::operations_research::sat::CircuitCoveringConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitCoveringConstraintProto>(Arena*);
146 template<> ::operations_research::sat::ConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ConstraintProto>(Arena*);
147 template<> ::operations_research::sat::CpModelProto* Arena::CreateMaybeMessage<::operations_research::sat::CpModelProto>(Arena*);
148 template<> ::operations_research::sat::CpObjectiveProto* Arena::CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(Arena*);
149 template<> ::operations_research::sat::CpSolverResponse* Arena::CreateMaybeMessage<::operations_research::sat::CpSolverResponse>(Arena*);
150 template<> ::operations_research::sat::CumulativeConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CumulativeConstraintProto>(Arena*);
151 template<> ::operations_research::sat::DecisionStrategyProto* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto>(Arena*);
152 template<> ::operations_research::sat::DecisionStrategyProto_AffineTransformation* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto_AffineTransformation>(Arena*);
153 template<> ::operations_research::sat::ElementConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ElementConstraintProto>(Arena*);
154 template<> ::operations_research::sat::IntegerArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerArgumentProto>(Arena*);
155 template<> ::operations_research::sat::IntegerVariableProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerVariableProto>(Arena*);
156 template<> ::operations_research::sat::IntervalConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::IntervalConstraintProto>(Arena*);
157 template<> ::operations_research::sat::InverseConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::InverseConstraintProto>(Arena*);
158 template<> ::operations_research::sat::LinearArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearArgumentProto>(Arena*);
159 template<> ::operations_research::sat::LinearConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearConstraintProto>(Arena*);
160 template<> ::operations_research::sat::LinearExpressionProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearExpressionProto>(Arena*);
161 template<> ::operations_research::sat::NoOverlap2DConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlap2DConstraintProto>(Arena*);
162 template<> ::operations_research::sat::NoOverlapConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlapConstraintProto>(Arena*);
163 template<> ::operations_research::sat::PartialVariableAssignment* Arena::CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(Arena*);
164 template<> ::operations_research::sat::ReservoirConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ReservoirConstraintProto>(Arena*);
165 template<> ::operations_research::sat::RoutesConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::RoutesConstraintProto>(Arena*);
166 template<> ::operations_research::sat::TableConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::TableConstraintProto>(Arena*);
167 PROTOBUF_NAMESPACE_CLOSE
168 namespace operations_research {
169 namespace sat {
170 
179 };
184 
185 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_VariableSelectionStrategy_descriptor();
186 template<typename T>
187 inline const std::string& DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value) {
188  static_assert(::std::is_same<T, DecisionStrategyProto_VariableSelectionStrategy>::value ||
189  ::std::is_integral<T>::value,
190  "Incorrect type passed to function DecisionStrategyProto_VariableSelectionStrategy_Name.");
191  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
193 }
195  const std::string& name, DecisionStrategyProto_VariableSelectionStrategy* value) {
196  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_VariableSelectionStrategy>(
198 }
207 };
212 
213 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_DomainReductionStrategy_descriptor();
214 template<typename T>
215 inline const std::string& DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value) {
216  static_assert(::std::is_same<T, DecisionStrategyProto_DomainReductionStrategy>::value ||
217  ::std::is_integral<T>::value,
218  "Incorrect type passed to function DecisionStrategyProto_DomainReductionStrategy_Name.");
219  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
221 }
223  const std::string& name, DecisionStrategyProto_DomainReductionStrategy* value) {
224  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_DomainReductionStrategy>(
226 }
227 enum CpSolverStatus : int {
228  UNKNOWN = 0,
230  FEASIBLE = 2,
232  OPTIMAL = 4,
233  CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
234  CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
235 };
236 bool CpSolverStatus_IsValid(int value);
240 
241 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CpSolverStatus_descriptor();
242 template<typename T>
243 inline const std::string& CpSolverStatus_Name(T enum_t_value) {
244  static_assert(::std::is_same<T, CpSolverStatus>::value ||
245  ::std::is_integral<T>::value,
246  "Incorrect type passed to function CpSolverStatus_Name.");
247  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
248  CpSolverStatus_descriptor(), enum_t_value);
249 }
251  const std::string& name, CpSolverStatus* value) {
252  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CpSolverStatus>(
253  CpSolverStatus_descriptor(), name, value);
254 }
255 // ===================================================================
256 
258  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerVariableProto) */ {
259  public:
261  virtual ~IntegerVariableProto();
262 
266  *this = ::std::move(from);
267  }
268 
270  CopyFrom(from);
271  return *this;
272  }
274  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
275  if (this != &from) InternalSwap(&from);
276  } else {
277  CopyFrom(from);
278  }
279  return *this;
280  }
281 
282  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
283  return GetDescriptor();
284  }
285  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
286  return GetMetadataStatic().descriptor;
287  }
288  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
289  return GetMetadataStatic().reflection;
290  }
291  static const IntegerVariableProto& default_instance();
292 
293  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
295  return reinterpret_cast<const IntegerVariableProto*>(
297  }
298  static constexpr int kIndexInFileMessages =
299  0;
300 
302  a.Swap(&b);
303  }
304  inline void Swap(IntegerVariableProto* other) {
305  if (other == this) return;
306  InternalSwap(other);
307  }
308 
309  // implements Message ----------------------------------------------
310 
311  inline IntegerVariableProto* New() const final {
312  return CreateMaybeMessage<IntegerVariableProto>(nullptr);
313  }
314 
315  IntegerVariableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
316  return CreateMaybeMessage<IntegerVariableProto>(arena);
317  }
318  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
319  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
320  void CopyFrom(const IntegerVariableProto& from);
321  void MergeFrom(const IntegerVariableProto& from);
322  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
323  bool IsInitialized() const final;
324 
325  size_t ByteSizeLong() const final;
326  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
327  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
328  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
329  int GetCachedSize() const final { return _cached_size_.Get(); }
330 
331  private:
332  inline void SharedCtor();
333  inline void SharedDtor();
334  void SetCachedSize(int size) const final;
335  void InternalSwap(IntegerVariableProto* other);
336  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
337  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
338  return "operations_research.sat.IntegerVariableProto";
339  }
340  private:
341  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
342  return nullptr;
343  }
344  inline void* MaybeArenaPtr() const {
345  return nullptr;
346  }
347  public:
348 
349  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
350  private:
351  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
352  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
354  }
355 
356  public:
357 
358  // nested types ----------------------------------------------------
359 
360  // accessors -------------------------------------------------------
361 
362  enum : int {
365  };
366  // repeated int64 domain = 2;
367  int domain_size() const;
368  private:
369  int _internal_domain_size() const;
370  public:
371  void clear_domain();
372  private:
373  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
374  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
375  _internal_domain() const;
376  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
377  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
378  _internal_mutable_domain();
379  public:
380  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
381  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
382  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
383  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
384  domain() const;
385  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
386  mutable_domain();
387 
388  // string name = 1;
389  void clear_name();
390  const std::string& name() const;
391  void set_name(const std::string& value);
392  void set_name(std::string&& value);
393  void set_name(const char* value);
394  void set_name(const char* value, size_t size);
395  std::string* mutable_name();
396  std::string* release_name();
397  void set_allocated_name(std::string* name);
398  private:
399  const std::string& _internal_name() const;
400  void _internal_set_name(const std::string& value);
401  std::string* _internal_mutable_name();
402  public:
403 
404  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerVariableProto)
405  private:
406  class _Internal;
407 
408  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
409  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
410  mutable std::atomic<int> _domain_cached_byte_size_;
411  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
412  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
413  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
414 };
415 // -------------------------------------------------------------------
416 
418  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.BoolArgumentProto) */ {
419  public:
421  virtual ~BoolArgumentProto();
422 
425  : BoolArgumentProto() {
426  *this = ::std::move(from);
427  }
428 
430  CopyFrom(from);
431  return *this;
432  }
433  inline BoolArgumentProto& operator=(BoolArgumentProto&& from) noexcept {
434  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
435  if (this != &from) InternalSwap(&from);
436  } else {
437  CopyFrom(from);
438  }
439  return *this;
440  }
441 
442  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
443  return GetDescriptor();
444  }
445  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
446  return GetMetadataStatic().descriptor;
447  }
448  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
449  return GetMetadataStatic().reflection;
450  }
451  static const BoolArgumentProto& default_instance();
452 
453  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
455  return reinterpret_cast<const BoolArgumentProto*>(
457  }
458  static constexpr int kIndexInFileMessages =
459  1;
460 
462  a.Swap(&b);
463  }
464  inline void Swap(BoolArgumentProto* other) {
465  if (other == this) return;
466  InternalSwap(other);
467  }
468 
469  // implements Message ----------------------------------------------
470 
471  inline BoolArgumentProto* New() const final {
472  return CreateMaybeMessage<BoolArgumentProto>(nullptr);
473  }
474 
475  BoolArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
476  return CreateMaybeMessage<BoolArgumentProto>(arena);
477  }
478  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
479  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
480  void CopyFrom(const BoolArgumentProto& from);
481  void MergeFrom(const BoolArgumentProto& from);
482  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
483  bool IsInitialized() const final;
484 
485  size_t ByteSizeLong() const final;
486  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
487  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
488  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
489  int GetCachedSize() const final { return _cached_size_.Get(); }
490 
491  private:
492  inline void SharedCtor();
493  inline void SharedDtor();
494  void SetCachedSize(int size) const final;
495  void InternalSwap(BoolArgumentProto* other);
496  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
497  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
498  return "operations_research.sat.BoolArgumentProto";
499  }
500  private:
501  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
502  return nullptr;
503  }
504  inline void* MaybeArenaPtr() const {
505  return nullptr;
506  }
507  public:
508 
509  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
510  private:
511  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
512  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
514  }
515 
516  public:
517 
518  // nested types ----------------------------------------------------
519 
520  // accessors -------------------------------------------------------
521 
522  enum : int {
524  };
525  // repeated int32 literals = 1;
526  int literals_size() const;
527  private:
528  int _internal_literals_size() const;
529  public:
530  void clear_literals();
531  private:
532  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
533  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
534  _internal_literals() const;
535  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
536  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
537  _internal_mutable_literals();
538  public:
539  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
540  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
541  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
542  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
543  literals() const;
544  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
546 
547  // @@protoc_insertion_point(class_scope:operations_research.sat.BoolArgumentProto)
548  private:
549  class _Internal;
550 
551  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
552  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
553  mutable std::atomic<int> _literals_cached_byte_size_;
554  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
555  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
556 };
557 // -------------------------------------------------------------------
558 
560  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerArgumentProto) */ {
561  public:
563  virtual ~IntegerArgumentProto();
564 
568  *this = ::std::move(from);
569  }
570 
572  CopyFrom(from);
573  return *this;
574  }
576  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
577  if (this != &from) InternalSwap(&from);
578  } else {
579  CopyFrom(from);
580  }
581  return *this;
582  }
583 
584  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
585  return GetDescriptor();
586  }
587  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
588  return GetMetadataStatic().descriptor;
589  }
590  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
591  return GetMetadataStatic().reflection;
592  }
593  static const IntegerArgumentProto& default_instance();
594 
595  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
597  return reinterpret_cast<const IntegerArgumentProto*>(
599  }
600  static constexpr int kIndexInFileMessages =
601  2;
602 
604  a.Swap(&b);
605  }
606  inline void Swap(IntegerArgumentProto* other) {
607  if (other == this) return;
608  InternalSwap(other);
609  }
610 
611  // implements Message ----------------------------------------------
612 
613  inline IntegerArgumentProto* New() const final {
614  return CreateMaybeMessage<IntegerArgumentProto>(nullptr);
615  }
616 
617  IntegerArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
618  return CreateMaybeMessage<IntegerArgumentProto>(arena);
619  }
620  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
621  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
622  void CopyFrom(const IntegerArgumentProto& from);
623  void MergeFrom(const IntegerArgumentProto& from);
624  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
625  bool IsInitialized() const final;
626 
627  size_t ByteSizeLong() const final;
628  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
629  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
630  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
631  int GetCachedSize() const final { return _cached_size_.Get(); }
632 
633  private:
634  inline void SharedCtor();
635  inline void SharedDtor();
636  void SetCachedSize(int size) const final;
637  void InternalSwap(IntegerArgumentProto* other);
638  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
639  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
640  return "operations_research.sat.IntegerArgumentProto";
641  }
642  private:
643  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
644  return nullptr;
645  }
646  inline void* MaybeArenaPtr() const {
647  return nullptr;
648  }
649  public:
650 
651  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
652  private:
653  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
654  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
656  }
657 
658  public:
659 
660  // nested types ----------------------------------------------------
661 
662  // accessors -------------------------------------------------------
663 
664  enum : int {
667  };
668  // repeated int32 vars = 2;
669  int vars_size() const;
670  private:
671  int _internal_vars_size() const;
672  public:
673  void clear_vars();
674  private:
675  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
676  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
677  _internal_vars() const;
678  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
679  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
680  _internal_mutable_vars();
681  public:
682  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
683  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
684  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
685  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
686  vars() const;
687  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
688  mutable_vars();
689 
690  // int32 target = 1;
691  void clear_target();
692  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
693  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
694  private:
695  ::PROTOBUF_NAMESPACE_ID::int32 _internal_target() const;
696  void _internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
697  public:
698 
699  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerArgumentProto)
700  private:
701  class _Internal;
702 
703  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
704  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
705  mutable std::atomic<int> _vars_cached_byte_size_;
706  ::PROTOBUF_NAMESPACE_ID::int32 target_;
707  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
708  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
709 };
710 // -------------------------------------------------------------------
711 
713  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearExpressionProto) */ {
714  public:
716  virtual ~LinearExpressionProto();
717 
721  *this = ::std::move(from);
722  }
723 
725  CopyFrom(from);
726  return *this;
727  }
729  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
730  if (this != &from) InternalSwap(&from);
731  } else {
732  CopyFrom(from);
733  }
734  return *this;
735  }
736 
737  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
738  return GetDescriptor();
739  }
740  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
741  return GetMetadataStatic().descriptor;
742  }
743  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
744  return GetMetadataStatic().reflection;
745  }
746  static const LinearExpressionProto& default_instance();
747 
748  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
750  return reinterpret_cast<const LinearExpressionProto*>(
752  }
753  static constexpr int kIndexInFileMessages =
754  3;
755 
757  a.Swap(&b);
758  }
759  inline void Swap(LinearExpressionProto* other) {
760  if (other == this) return;
761  InternalSwap(other);
762  }
763 
764  // implements Message ----------------------------------------------
765 
766  inline LinearExpressionProto* New() const final {
767  return CreateMaybeMessage<LinearExpressionProto>(nullptr);
768  }
769 
770  LinearExpressionProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
771  return CreateMaybeMessage<LinearExpressionProto>(arena);
772  }
773  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
774  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
775  void CopyFrom(const LinearExpressionProto& from);
776  void MergeFrom(const LinearExpressionProto& from);
777  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
778  bool IsInitialized() const final;
779 
780  size_t ByteSizeLong() const final;
781  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
782  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
783  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
784  int GetCachedSize() const final { return _cached_size_.Get(); }
785 
786  private:
787  inline void SharedCtor();
788  inline void SharedDtor();
789  void SetCachedSize(int size) const final;
790  void InternalSwap(LinearExpressionProto* other);
791  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
792  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
793  return "operations_research.sat.LinearExpressionProto";
794  }
795  private:
796  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
797  return nullptr;
798  }
799  inline void* MaybeArenaPtr() const {
800  return nullptr;
801  }
802  public:
803 
804  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
805  private:
806  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
807  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
809  }
810 
811  public:
812 
813  // nested types ----------------------------------------------------
814 
815  // accessors -------------------------------------------------------
816 
817  enum : int {
821  };
822  // repeated int32 vars = 1;
823  int vars_size() const;
824  private:
825  int _internal_vars_size() const;
826  public:
827  void clear_vars();
828  private:
829  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
830  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
831  _internal_vars() const;
832  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
833  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
834  _internal_mutable_vars();
835  public:
836  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
837  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
838  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
839  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
840  vars() const;
841  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
842  mutable_vars();
843 
844  // repeated int32 coeffs = 2;
845  int coeffs_size() const;
846  private:
847  int _internal_coeffs_size() const;
848  public:
849  void clear_coeffs();
850  private:
851  ::PROTOBUF_NAMESPACE_ID::int32 _internal_coeffs(int index) const;
852  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
853  _internal_coeffs() const;
854  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
855  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
856  _internal_mutable_coeffs();
857  public:
858  ::PROTOBUF_NAMESPACE_ID::int32 coeffs(int index) const;
859  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
860  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
861  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
862  coeffs() const;
863  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
864  mutable_coeffs();
865 
866  // int64 offset = 3;
867  void clear_offset();
868  ::PROTOBUF_NAMESPACE_ID::int64 offset() const;
869  void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
870  private:
871  ::PROTOBUF_NAMESPACE_ID::int64 _internal_offset() const;
872  void _internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
873  public:
874 
875  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearExpressionProto)
876  private:
877  class _Internal;
878 
879  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
880  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
881  mutable std::atomic<int> _vars_cached_byte_size_;
882  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > coeffs_;
883  mutable std::atomic<int> _coeffs_cached_byte_size_;
884  ::PROTOBUF_NAMESPACE_ID::int64 offset_;
885  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
886  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
887 };
888 // -------------------------------------------------------------------
889 
891  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearArgumentProto) */ {
892  public:
894  virtual ~LinearArgumentProto();
895 
898  : LinearArgumentProto() {
899  *this = ::std::move(from);
900  }
901 
903  CopyFrom(from);
904  return *this;
905  }
907  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
908  if (this != &from) InternalSwap(&from);
909  } else {
910  CopyFrom(from);
911  }
912  return *this;
913  }
914 
915  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
916  return GetDescriptor();
917  }
918  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
919  return GetMetadataStatic().descriptor;
920  }
921  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
922  return GetMetadataStatic().reflection;
923  }
924  static const LinearArgumentProto& default_instance();
925 
926  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
928  return reinterpret_cast<const LinearArgumentProto*>(
930  }
931  static constexpr int kIndexInFileMessages =
932  4;
933 
935  a.Swap(&b);
936  }
937  inline void Swap(LinearArgumentProto* other) {
938  if (other == this) return;
939  InternalSwap(other);
940  }
941 
942  // implements Message ----------------------------------------------
943 
944  inline LinearArgumentProto* New() const final {
945  return CreateMaybeMessage<LinearArgumentProto>(nullptr);
946  }
947 
948  LinearArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
949  return CreateMaybeMessage<LinearArgumentProto>(arena);
950  }
951  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
952  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
953  void CopyFrom(const LinearArgumentProto& from);
954  void MergeFrom(const LinearArgumentProto& from);
955  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
956  bool IsInitialized() const final;
957 
958  size_t ByteSizeLong() const final;
959  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
960  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
961  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
962  int GetCachedSize() const final { return _cached_size_.Get(); }
963 
964  private:
965  inline void SharedCtor();
966  inline void SharedDtor();
967  void SetCachedSize(int size) const final;
968  void InternalSwap(LinearArgumentProto* other);
969  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
970  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
971  return "operations_research.sat.LinearArgumentProto";
972  }
973  private:
974  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
975  return nullptr;
976  }
977  inline void* MaybeArenaPtr() const {
978  return nullptr;
979  }
980  public:
981 
982  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
983  private:
984  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
985  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
987  }
988 
989  public:
990 
991  // nested types ----------------------------------------------------
992 
993  // accessors -------------------------------------------------------
994 
995  enum : int {
998  };
999  // repeated .operations_research.sat.LinearExpressionProto exprs = 2;
1000  int exprs_size() const;
1001  private:
1002  int _internal_exprs_size() const;
1003  public:
1004  void clear_exprs();
1006  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >*
1007  mutable_exprs();
1008  private:
1009  const ::operations_research::sat::LinearExpressionProto& _internal_exprs(int index) const;
1011  public:
1012  const ::operations_research::sat::LinearExpressionProto& exprs(int index) const;
1014  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >&
1015  exprs() const;
1016 
1017  // .operations_research.sat.LinearExpressionProto target = 1;
1018  bool has_target() const;
1019  private:
1020  bool _internal_has_target() const;
1021  public:
1022  void clear_target();
1023  const ::operations_research::sat::LinearExpressionProto& target() const;
1027  private:
1028  const ::operations_research::sat::LinearExpressionProto& _internal_target() const;
1029  ::operations_research::sat::LinearExpressionProto* _internal_mutable_target();
1030  public:
1031 
1032  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearArgumentProto)
1033  private:
1034  class _Internal;
1035 
1036  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1037  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > exprs_;
1039  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1040  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1041 };
1042 // -------------------------------------------------------------------
1043 
1045  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AllDifferentConstraintProto) */ {
1046  public:
1048  virtual ~AllDifferentConstraintProto();
1049 
1053  *this = ::std::move(from);
1054  }
1055 
1057  CopyFrom(from);
1058  return *this;
1059  }
1061  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1062  if (this != &from) InternalSwap(&from);
1063  } else {
1064  CopyFrom(from);
1065  }
1066  return *this;
1067  }
1068 
1069  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1070  return GetDescriptor();
1071  }
1072  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1073  return GetMetadataStatic().descriptor;
1074  }
1075  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1076  return GetMetadataStatic().reflection;
1077  }
1079 
1080  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1082  return reinterpret_cast<const AllDifferentConstraintProto*>(
1084  }
1085  static constexpr int kIndexInFileMessages =
1086  5;
1087 
1089  a.Swap(&b);
1090  }
1091  inline void Swap(AllDifferentConstraintProto* other) {
1092  if (other == this) return;
1093  InternalSwap(other);
1094  }
1095 
1096  // implements Message ----------------------------------------------
1097 
1098  inline AllDifferentConstraintProto* New() const final {
1099  return CreateMaybeMessage<AllDifferentConstraintProto>(nullptr);
1100  }
1101 
1102  AllDifferentConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1103  return CreateMaybeMessage<AllDifferentConstraintProto>(arena);
1104  }
1105  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1106  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1107  void CopyFrom(const AllDifferentConstraintProto& from);
1108  void MergeFrom(const AllDifferentConstraintProto& from);
1109  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1110  bool IsInitialized() const final;
1111 
1112  size_t ByteSizeLong() const final;
1113  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1114  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1115  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1116  int GetCachedSize() const final { return _cached_size_.Get(); }
1117 
1118  private:
1119  inline void SharedCtor();
1120  inline void SharedDtor();
1121  void SetCachedSize(int size) const final;
1122  void InternalSwap(AllDifferentConstraintProto* other);
1123  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1124  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1125  return "operations_research.sat.AllDifferentConstraintProto";
1126  }
1127  private:
1128  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1129  return nullptr;
1130  }
1131  inline void* MaybeArenaPtr() const {
1132  return nullptr;
1133  }
1134  public:
1135 
1136  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1137  private:
1138  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1139  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1141  }
1142 
1143  public:
1144 
1145  // nested types ----------------------------------------------------
1146 
1147  // accessors -------------------------------------------------------
1148 
1149  enum : int {
1151  };
1152  // repeated int32 vars = 1;
1153  int vars_size() const;
1154  private:
1155  int _internal_vars_size() const;
1156  public:
1157  void clear_vars();
1158  private:
1159  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1160  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1161  _internal_vars() const;
1162  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1163  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1164  _internal_mutable_vars();
1165  public:
1166  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1167  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1168  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1169  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1170  vars() const;
1171  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1172  mutable_vars();
1173 
1174  // @@protoc_insertion_point(class_scope:operations_research.sat.AllDifferentConstraintProto)
1175  private:
1176  class _Internal;
1177 
1178  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1179  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1180  mutable std::atomic<int> _vars_cached_byte_size_;
1181  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1182  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1183 };
1184 // -------------------------------------------------------------------
1185 
1187  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearConstraintProto) */ {
1188  public:
1190  virtual ~LinearConstraintProto();
1191 
1194  : LinearConstraintProto() {
1195  *this = ::std::move(from);
1196  }
1197 
1199  CopyFrom(from);
1200  return *this;
1201  }
1203  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1204  if (this != &from) InternalSwap(&from);
1205  } else {
1206  CopyFrom(from);
1207  }
1208  return *this;
1209  }
1210 
1211  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1212  return GetDescriptor();
1213  }
1214  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1215  return GetMetadataStatic().descriptor;
1216  }
1217  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1218  return GetMetadataStatic().reflection;
1219  }
1220  static const LinearConstraintProto& default_instance();
1221 
1222  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1224  return reinterpret_cast<const LinearConstraintProto*>(
1226  }
1227  static constexpr int kIndexInFileMessages =
1228  6;
1229 
1231  a.Swap(&b);
1232  }
1233  inline void Swap(LinearConstraintProto* other) {
1234  if (other == this) return;
1235  InternalSwap(other);
1236  }
1237 
1238  // implements Message ----------------------------------------------
1239 
1240  inline LinearConstraintProto* New() const final {
1241  return CreateMaybeMessage<LinearConstraintProto>(nullptr);
1242  }
1243 
1244  LinearConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1245  return CreateMaybeMessage<LinearConstraintProto>(arena);
1246  }
1247  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1248  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1249  void CopyFrom(const LinearConstraintProto& from);
1250  void MergeFrom(const LinearConstraintProto& from);
1251  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1252  bool IsInitialized() const final;
1253 
1254  size_t ByteSizeLong() const final;
1255  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1256  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1257  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1258  int GetCachedSize() const final { return _cached_size_.Get(); }
1259 
1260  private:
1261  inline void SharedCtor();
1262  inline void SharedDtor();
1263  void SetCachedSize(int size) const final;
1264  void InternalSwap(LinearConstraintProto* other);
1265  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1266  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1267  return "operations_research.sat.LinearConstraintProto";
1268  }
1269  private:
1270  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1271  return nullptr;
1272  }
1273  inline void* MaybeArenaPtr() const {
1274  return nullptr;
1275  }
1276  public:
1277 
1278  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1279  private:
1280  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1281  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1283  }
1284 
1285  public:
1286 
1287  // nested types ----------------------------------------------------
1288 
1289  // accessors -------------------------------------------------------
1290 
1291  enum : int {
1295  };
1296  // repeated int32 vars = 1;
1297  int vars_size() const;
1298  private:
1299  int _internal_vars_size() const;
1300  public:
1301  void clear_vars();
1302  private:
1303  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1304  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1305  _internal_vars() const;
1306  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1307  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1308  _internal_mutable_vars();
1309  public:
1310  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1311  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1312  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1313  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1314  vars() const;
1315  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1316  mutable_vars();
1317 
1318  // repeated int64 coeffs = 2;
1319  int coeffs_size() const;
1320  private:
1321  int _internal_coeffs_size() const;
1322  public:
1323  void clear_coeffs();
1324  private:
1325  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coeffs(int index) const;
1326  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1327  _internal_coeffs() const;
1328  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
1329  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1330  _internal_mutable_coeffs();
1331  public:
1332  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
1333  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
1334  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
1335  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1336  coeffs() const;
1337  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1338  mutable_coeffs();
1339 
1340  // repeated int64 domain = 3;
1341  int domain_size() const;
1342  private:
1343  int _internal_domain_size() const;
1344  public:
1345  void clear_domain();
1346  private:
1347  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
1348  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1349  _internal_domain() const;
1350  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
1351  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1352  _internal_mutable_domain();
1353  public:
1354  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
1355  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
1356  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
1357  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1358  domain() const;
1359  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1360  mutable_domain();
1361 
1362  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearConstraintProto)
1363  private:
1364  class _Internal;
1365 
1366  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1367  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1368  mutable std::atomic<int> _vars_cached_byte_size_;
1369  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
1370  mutable std::atomic<int> _coeffs_cached_byte_size_;
1371  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
1372  mutable std::atomic<int> _domain_cached_byte_size_;
1373  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1374  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1375 };
1376 // -------------------------------------------------------------------
1377 
1379  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ElementConstraintProto) */ {
1380  public:
1382  virtual ~ElementConstraintProto();
1383 
1387  *this = ::std::move(from);
1388  }
1389 
1391  CopyFrom(from);
1392  return *this;
1393  }
1395  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1396  if (this != &from) InternalSwap(&from);
1397  } else {
1398  CopyFrom(from);
1399  }
1400  return *this;
1401  }
1402 
1403  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1404  return GetDescriptor();
1405  }
1406  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1407  return GetMetadataStatic().descriptor;
1408  }
1409  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1410  return GetMetadataStatic().reflection;
1411  }
1412  static const ElementConstraintProto& default_instance();
1413 
1414  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1416  return reinterpret_cast<const ElementConstraintProto*>(
1418  }
1419  static constexpr int kIndexInFileMessages =
1420  7;
1421 
1423  a.Swap(&b);
1424  }
1425  inline void Swap(ElementConstraintProto* other) {
1426  if (other == this) return;
1427  InternalSwap(other);
1428  }
1429 
1430  // implements Message ----------------------------------------------
1431 
1432  inline ElementConstraintProto* New() const final {
1433  return CreateMaybeMessage<ElementConstraintProto>(nullptr);
1434  }
1435 
1436  ElementConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1437  return CreateMaybeMessage<ElementConstraintProto>(arena);
1438  }
1439  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1440  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1441  void CopyFrom(const ElementConstraintProto& from);
1442  void MergeFrom(const ElementConstraintProto& from);
1443  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1444  bool IsInitialized() const final;
1445 
1446  size_t ByteSizeLong() const final;
1447  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1448  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1449  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1450  int GetCachedSize() const final { return _cached_size_.Get(); }
1451 
1452  private:
1453  inline void SharedCtor();
1454  inline void SharedDtor();
1455  void SetCachedSize(int size) const final;
1456  void InternalSwap(ElementConstraintProto* other);
1457  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1458  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1459  return "operations_research.sat.ElementConstraintProto";
1460  }
1461  private:
1462  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1463  return nullptr;
1464  }
1465  inline void* MaybeArenaPtr() const {
1466  return nullptr;
1467  }
1468  public:
1469 
1470  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1471  private:
1472  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1473  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1475  }
1476 
1477  public:
1478 
1479  // nested types ----------------------------------------------------
1480 
1481  // accessors -------------------------------------------------------
1482 
1483  enum : int {
1487  };
1488  // repeated int32 vars = 3;
1489  int vars_size() const;
1490  private:
1491  int _internal_vars_size() const;
1492  public:
1493  void clear_vars();
1494  private:
1495  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1496  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1497  _internal_vars() const;
1498  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1499  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1500  _internal_mutable_vars();
1501  public:
1502  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1503  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1504  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1505  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1506  vars() const;
1507  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1508  mutable_vars();
1509 
1510  // int32 index = 1;
1511  void clear_index();
1512  ::PROTOBUF_NAMESPACE_ID::int32 index() const;
1513  void set_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1514  private:
1515  ::PROTOBUF_NAMESPACE_ID::int32 _internal_index() const;
1516  void _internal_set_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1517  public:
1518 
1519  // int32 target = 2;
1520  void clear_target();
1521  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
1522  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1523  private:
1524  ::PROTOBUF_NAMESPACE_ID::int32 _internal_target() const;
1525  void _internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1526  public:
1527 
1528  // @@protoc_insertion_point(class_scope:operations_research.sat.ElementConstraintProto)
1529  private:
1530  class _Internal;
1531 
1532  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1533  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1534  mutable std::atomic<int> _vars_cached_byte_size_;
1535  ::PROTOBUF_NAMESPACE_ID::int32 index_;
1536  ::PROTOBUF_NAMESPACE_ID::int32 target_;
1537  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1538  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1539 };
1540 // -------------------------------------------------------------------
1541 
1543  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntervalConstraintProto) */ {
1544  public:
1546  virtual ~IntervalConstraintProto();
1547 
1551  *this = ::std::move(from);
1552  }
1553 
1555  CopyFrom(from);
1556  return *this;
1557  }
1559  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1560  if (this != &from) InternalSwap(&from);
1561  } else {
1562  CopyFrom(from);
1563  }
1564  return *this;
1565  }
1566 
1567  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1568  return GetDescriptor();
1569  }
1570  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1571  return GetMetadataStatic().descriptor;
1572  }
1573  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1574  return GetMetadataStatic().reflection;
1575  }
1576  static const IntervalConstraintProto& default_instance();
1577 
1578  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1580  return reinterpret_cast<const IntervalConstraintProto*>(
1582  }
1583  static constexpr int kIndexInFileMessages =
1584  8;
1585 
1587  a.Swap(&b);
1588  }
1589  inline void Swap(IntervalConstraintProto* other) {
1590  if (other == this) return;
1591  InternalSwap(other);
1592  }
1593 
1594  // implements Message ----------------------------------------------
1595 
1596  inline IntervalConstraintProto* New() const final {
1597  return CreateMaybeMessage<IntervalConstraintProto>(nullptr);
1598  }
1599 
1600  IntervalConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1601  return CreateMaybeMessage<IntervalConstraintProto>(arena);
1602  }
1603  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1604  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1605  void CopyFrom(const IntervalConstraintProto& from);
1606  void MergeFrom(const IntervalConstraintProto& from);
1607  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1608  bool IsInitialized() const final;
1609 
1610  size_t ByteSizeLong() const final;
1611  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1612  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1613  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1614  int GetCachedSize() const final { return _cached_size_.Get(); }
1615 
1616  private:
1617  inline void SharedCtor();
1618  inline void SharedDtor();
1619  void SetCachedSize(int size) const final;
1620  void InternalSwap(IntervalConstraintProto* other);
1621  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1622  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1623  return "operations_research.sat.IntervalConstraintProto";
1624  }
1625  private:
1626  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1627  return nullptr;
1628  }
1629  inline void* MaybeArenaPtr() const {
1630  return nullptr;
1631  }
1632  public:
1633 
1634  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1635  private:
1636  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1637  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1639  }
1640 
1641  public:
1642 
1643  // nested types ----------------------------------------------------
1644 
1645  // accessors -------------------------------------------------------
1646 
1647  enum : int {
1651  };
1652  // int32 start = 1;
1653  void clear_start();
1654  ::PROTOBUF_NAMESPACE_ID::int32 start() const;
1655  void set_start(::PROTOBUF_NAMESPACE_ID::int32 value);
1656  private:
1657  ::PROTOBUF_NAMESPACE_ID::int32 _internal_start() const;
1658  void _internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value);
1659  public:
1660 
1661  // int32 end = 2;
1662  void clear_end();
1663  ::PROTOBUF_NAMESPACE_ID::int32 end() const;
1664  void set_end(::PROTOBUF_NAMESPACE_ID::int32 value);
1665  private:
1666  ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const;
1667  void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value);
1668  public:
1669 
1670  // int32 size = 3;
1671  void clear_size();
1672  ::PROTOBUF_NAMESPACE_ID::int32 size() const;
1673  void set_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1674  private:
1675  ::PROTOBUF_NAMESPACE_ID::int32 _internal_size() const;
1676  void _internal_set_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1677  public:
1678 
1679  // @@protoc_insertion_point(class_scope:operations_research.sat.IntervalConstraintProto)
1680  private:
1681  class _Internal;
1682 
1683  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1684  ::PROTOBUF_NAMESPACE_ID::int32 start_;
1685  ::PROTOBUF_NAMESPACE_ID::int32 end_;
1686  ::PROTOBUF_NAMESPACE_ID::int32 size_;
1687  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1688  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1689 };
1690 // -------------------------------------------------------------------
1691 
1693  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlapConstraintProto) */ {
1694  public:
1696  virtual ~NoOverlapConstraintProto();
1697 
1701  *this = ::std::move(from);
1702  }
1703 
1705  CopyFrom(from);
1706  return *this;
1707  }
1709  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1710  if (this != &from) InternalSwap(&from);
1711  } else {
1712  CopyFrom(from);
1713  }
1714  return *this;
1715  }
1716 
1717  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1718  return GetDescriptor();
1719  }
1720  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1721  return GetMetadataStatic().descriptor;
1722  }
1723  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1724  return GetMetadataStatic().reflection;
1725  }
1727 
1728  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1730  return reinterpret_cast<const NoOverlapConstraintProto*>(
1732  }
1733  static constexpr int kIndexInFileMessages =
1734  9;
1735 
1737  a.Swap(&b);
1738  }
1739  inline void Swap(NoOverlapConstraintProto* other) {
1740  if (other == this) return;
1741  InternalSwap(other);
1742  }
1743 
1744  // implements Message ----------------------------------------------
1745 
1746  inline NoOverlapConstraintProto* New() const final {
1747  return CreateMaybeMessage<NoOverlapConstraintProto>(nullptr);
1748  }
1749 
1750  NoOverlapConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1751  return CreateMaybeMessage<NoOverlapConstraintProto>(arena);
1752  }
1753  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1754  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1755  void CopyFrom(const NoOverlapConstraintProto& from);
1756  void MergeFrom(const NoOverlapConstraintProto& from);
1757  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1758  bool IsInitialized() const final;
1759 
1760  size_t ByteSizeLong() const final;
1761  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1762  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1763  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1764  int GetCachedSize() const final { return _cached_size_.Get(); }
1765 
1766  private:
1767  inline void SharedCtor();
1768  inline void SharedDtor();
1769  void SetCachedSize(int size) const final;
1770  void InternalSwap(NoOverlapConstraintProto* other);
1771  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1772  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1773  return "operations_research.sat.NoOverlapConstraintProto";
1774  }
1775  private:
1776  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1777  return nullptr;
1778  }
1779  inline void* MaybeArenaPtr() const {
1780  return nullptr;
1781  }
1782  public:
1783 
1784  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1785  private:
1786  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1787  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1789  }
1790 
1791  public:
1792 
1793  // nested types ----------------------------------------------------
1794 
1795  // accessors -------------------------------------------------------
1796 
1797  enum : int {
1799  };
1800  // repeated int32 intervals = 1;
1801  int intervals_size() const;
1802  private:
1803  int _internal_intervals_size() const;
1804  public:
1805  void clear_intervals();
1806  private:
1807  ::PROTOBUF_NAMESPACE_ID::int32 _internal_intervals(int index) const;
1808  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1809  _internal_intervals() const;
1810  void _internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1811  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1812  _internal_mutable_intervals();
1813  public:
1814  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
1815  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1816  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1817  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1818  intervals() const;
1819  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1821 
1822  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlapConstraintProto)
1823  private:
1824  class _Internal;
1825 
1826  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1827  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
1828  mutable std::atomic<int> _intervals_cached_byte_size_;
1829  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1830  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1831 };
1832 // -------------------------------------------------------------------
1833 
1835  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlap2DConstraintProto) */ {
1836  public:
1838  virtual ~NoOverlap2DConstraintProto();
1839 
1843  *this = ::std::move(from);
1844  }
1845 
1847  CopyFrom(from);
1848  return *this;
1849  }
1851  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1852  if (this != &from) InternalSwap(&from);
1853  } else {
1854  CopyFrom(from);
1855  }
1856  return *this;
1857  }
1858 
1859  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1860  return GetDescriptor();
1861  }
1862  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1863  return GetMetadataStatic().descriptor;
1864  }
1865  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1866  return GetMetadataStatic().reflection;
1867  }
1869 
1870  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1872  return reinterpret_cast<const NoOverlap2DConstraintProto*>(
1874  }
1875  static constexpr int kIndexInFileMessages =
1876  10;
1877 
1879  a.Swap(&b);
1880  }
1881  inline void Swap(NoOverlap2DConstraintProto* other) {
1882  if (other == this) return;
1883  InternalSwap(other);
1884  }
1885 
1886  // implements Message ----------------------------------------------
1887 
1888  inline NoOverlap2DConstraintProto* New() const final {
1889  return CreateMaybeMessage<NoOverlap2DConstraintProto>(nullptr);
1890  }
1891 
1892  NoOverlap2DConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1893  return CreateMaybeMessage<NoOverlap2DConstraintProto>(arena);
1894  }
1895  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1896  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1897  void CopyFrom(const NoOverlap2DConstraintProto& from);
1898  void MergeFrom(const NoOverlap2DConstraintProto& from);
1899  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1900  bool IsInitialized() const final;
1901 
1902  size_t ByteSizeLong() const final;
1903  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1904  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1905  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1906  int GetCachedSize() const final { return _cached_size_.Get(); }
1907 
1908  private:
1909  inline void SharedCtor();
1910  inline void SharedDtor();
1911  void SetCachedSize(int size) const final;
1912  void InternalSwap(NoOverlap2DConstraintProto* other);
1913  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1914  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1915  return "operations_research.sat.NoOverlap2DConstraintProto";
1916  }
1917  private:
1918  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1919  return nullptr;
1920  }
1921  inline void* MaybeArenaPtr() const {
1922  return nullptr;
1923  }
1924  public:
1925 
1926  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1927  private:
1928  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1929  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1931  }
1932 
1933  public:
1934 
1935  // nested types ----------------------------------------------------
1936 
1937  // accessors -------------------------------------------------------
1938 
1939  enum : int {
1943  };
1944  // repeated int32 x_intervals = 1;
1945  int x_intervals_size() const;
1946  private:
1947  int _internal_x_intervals_size() const;
1948  public:
1949  void clear_x_intervals();
1950  private:
1951  ::PROTOBUF_NAMESPACE_ID::int32 _internal_x_intervals(int index) const;
1952  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1953  _internal_x_intervals() const;
1954  void _internal_add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1955  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1956  _internal_mutable_x_intervals();
1957  public:
1958  ::PROTOBUF_NAMESPACE_ID::int32 x_intervals(int index) const;
1959  void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1960  void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1961  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1962  x_intervals() const;
1963  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1965 
1966  // repeated int32 y_intervals = 2;
1967  int y_intervals_size() const;
1968  private:
1969  int _internal_y_intervals_size() const;
1970  public:
1971  void clear_y_intervals();
1972  private:
1973  ::PROTOBUF_NAMESPACE_ID::int32 _internal_y_intervals(int index) const;
1974  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1975  _internal_y_intervals() const;
1976  void _internal_add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1977  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1978  _internal_mutable_y_intervals();
1979  public:
1980  ::PROTOBUF_NAMESPACE_ID::int32 y_intervals(int index) const;
1981  void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1982  void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1983  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1984  y_intervals() const;
1985  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1987 
1988  // bool boxes_with_null_area_can_overlap = 3;
1990  bool boxes_with_null_area_can_overlap() const;
1991  void set_boxes_with_null_area_can_overlap(bool value);
1992  private:
1993  bool _internal_boxes_with_null_area_can_overlap() const;
1994  void _internal_set_boxes_with_null_area_can_overlap(bool value);
1995  public:
1996 
1997  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlap2DConstraintProto)
1998  private:
1999  class _Internal;
2000 
2001  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2002  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > x_intervals_;
2003  mutable std::atomic<int> _x_intervals_cached_byte_size_;
2004  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > y_intervals_;
2005  mutable std::atomic<int> _y_intervals_cached_byte_size_;
2006  bool boxes_with_null_area_can_overlap_;
2007  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2008  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2009 };
2010 // -------------------------------------------------------------------
2011 
2013  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CumulativeConstraintProto) */ {
2014  public:
2016  virtual ~CumulativeConstraintProto();
2017 
2021  *this = ::std::move(from);
2022  }
2023 
2025  CopyFrom(from);
2026  return *this;
2027  }
2029  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2030  if (this != &from) InternalSwap(&from);
2031  } else {
2032  CopyFrom(from);
2033  }
2034  return *this;
2035  }
2036 
2037  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2038  return GetDescriptor();
2039  }
2040  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2041  return GetMetadataStatic().descriptor;
2042  }
2043  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2044  return GetMetadataStatic().reflection;
2045  }
2047 
2048  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2050  return reinterpret_cast<const CumulativeConstraintProto*>(
2052  }
2053  static constexpr int kIndexInFileMessages =
2054  11;
2055 
2057  a.Swap(&b);
2058  }
2059  inline void Swap(CumulativeConstraintProto* other) {
2060  if (other == this) return;
2061  InternalSwap(other);
2062  }
2063 
2064  // implements Message ----------------------------------------------
2065 
2066  inline CumulativeConstraintProto* New() const final {
2067  return CreateMaybeMessage<CumulativeConstraintProto>(nullptr);
2068  }
2069 
2070  CumulativeConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2071  return CreateMaybeMessage<CumulativeConstraintProto>(arena);
2072  }
2073  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2074  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2075  void CopyFrom(const CumulativeConstraintProto& from);
2076  void MergeFrom(const CumulativeConstraintProto& from);
2077  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2078  bool IsInitialized() const final;
2079 
2080  size_t ByteSizeLong() const final;
2081  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2082  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2083  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2084  int GetCachedSize() const final { return _cached_size_.Get(); }
2085 
2086  private:
2087  inline void SharedCtor();
2088  inline void SharedDtor();
2089  void SetCachedSize(int size) const final;
2090  void InternalSwap(CumulativeConstraintProto* other);
2091  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2092  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2093  return "operations_research.sat.CumulativeConstraintProto";
2094  }
2095  private:
2096  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2097  return nullptr;
2098  }
2099  inline void* MaybeArenaPtr() const {
2100  return nullptr;
2101  }
2102  public:
2103 
2104  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2105  private:
2106  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2107  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2109  }
2110 
2111  public:
2112 
2113  // nested types ----------------------------------------------------
2114 
2115  // accessors -------------------------------------------------------
2116 
2117  enum : int {
2121  };
2122  // repeated int32 intervals = 2;
2123  int intervals_size() const;
2124  private:
2125  int _internal_intervals_size() const;
2126  public:
2127  void clear_intervals();
2128  private:
2129  ::PROTOBUF_NAMESPACE_ID::int32 _internal_intervals(int index) const;
2130  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2131  _internal_intervals() const;
2132  void _internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
2133  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2134  _internal_mutable_intervals();
2135  public:
2136  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
2137  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2138  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
2139  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2140  intervals() const;
2141  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2143 
2144  // repeated int32 demands = 3;
2145  int demands_size() const;
2146  private:
2147  int _internal_demands_size() const;
2148  public:
2149  void clear_demands();
2150  private:
2151  ::PROTOBUF_NAMESPACE_ID::int32 _internal_demands(int index) const;
2152  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2153  _internal_demands() const;
2154  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2155  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2156  _internal_mutable_demands();
2157  public:
2158  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
2159  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2160  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2161  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2162  demands() const;
2163  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2164  mutable_demands();
2165 
2166  // int32 capacity = 1;
2167  void clear_capacity();
2168  ::PROTOBUF_NAMESPACE_ID::int32 capacity() const;
2169  void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value);
2170  private:
2171  ::PROTOBUF_NAMESPACE_ID::int32 _internal_capacity() const;
2172  void _internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value);
2173  public:
2174 
2175  // @@protoc_insertion_point(class_scope:operations_research.sat.CumulativeConstraintProto)
2176  private:
2177  class _Internal;
2178 
2179  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2180  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
2181  mutable std::atomic<int> _intervals_cached_byte_size_;
2182  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
2183  mutable std::atomic<int> _demands_cached_byte_size_;
2184  ::PROTOBUF_NAMESPACE_ID::int32 capacity_;
2185  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2186  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2187 };
2188 // -------------------------------------------------------------------
2189 
2191  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ReservoirConstraintProto) */ {
2192  public:
2194  virtual ~ReservoirConstraintProto();
2195 
2199  *this = ::std::move(from);
2200  }
2201 
2203  CopyFrom(from);
2204  return *this;
2205  }
2207  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2208  if (this != &from) InternalSwap(&from);
2209  } else {
2210  CopyFrom(from);
2211  }
2212  return *this;
2213  }
2214 
2215  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2216  return GetDescriptor();
2217  }
2218  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2219  return GetMetadataStatic().descriptor;
2220  }
2221  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2222  return GetMetadataStatic().reflection;
2223  }
2225 
2226  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2228  return reinterpret_cast<const ReservoirConstraintProto*>(
2230  }
2231  static constexpr int kIndexInFileMessages =
2232  12;
2233 
2235  a.Swap(&b);
2236  }
2237  inline void Swap(ReservoirConstraintProto* other) {
2238  if (other == this) return;
2239  InternalSwap(other);
2240  }
2241 
2242  // implements Message ----------------------------------------------
2243 
2244  inline ReservoirConstraintProto* New() const final {
2245  return CreateMaybeMessage<ReservoirConstraintProto>(nullptr);
2246  }
2247 
2248  ReservoirConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2249  return CreateMaybeMessage<ReservoirConstraintProto>(arena);
2250  }
2251  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2252  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2253  void CopyFrom(const ReservoirConstraintProto& from);
2254  void MergeFrom(const ReservoirConstraintProto& from);
2255  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2256  bool IsInitialized() const final;
2257 
2258  size_t ByteSizeLong() const final;
2259  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2260  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2261  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2262  int GetCachedSize() const final { return _cached_size_.Get(); }
2263 
2264  private:
2265  inline void SharedCtor();
2266  inline void SharedDtor();
2267  void SetCachedSize(int size) const final;
2268  void InternalSwap(ReservoirConstraintProto* other);
2269  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2270  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2271  return "operations_research.sat.ReservoirConstraintProto";
2272  }
2273  private:
2274  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2275  return nullptr;
2276  }
2277  inline void* MaybeArenaPtr() const {
2278  return nullptr;
2279  }
2280  public:
2281 
2282  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2283  private:
2284  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2285  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2287  }
2288 
2289  public:
2290 
2291  // nested types ----------------------------------------------------
2292 
2293  // accessors -------------------------------------------------------
2294 
2295  enum : int {
2301  };
2302  // repeated int32 times = 3;
2303  int times_size() const;
2304  private:
2305  int _internal_times_size() const;
2306  public:
2307  void clear_times();
2308  private:
2309  ::PROTOBUF_NAMESPACE_ID::int32 _internal_times(int index) const;
2310  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2311  _internal_times() const;
2312  void _internal_add_times(::PROTOBUF_NAMESPACE_ID::int32 value);
2313  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2314  _internal_mutable_times();
2315  public:
2316  ::PROTOBUF_NAMESPACE_ID::int32 times(int index) const;
2317  void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2318  void add_times(::PROTOBUF_NAMESPACE_ID::int32 value);
2319  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2320  times() const;
2321  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2322  mutable_times();
2323 
2324  // repeated int64 demands = 4;
2325  int demands_size() const;
2326  private:
2327  int _internal_demands_size() const;
2328  public:
2329  void clear_demands();
2330  private:
2331  ::PROTOBUF_NAMESPACE_ID::int64 _internal_demands(int index) const;
2332  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2333  _internal_demands() const;
2334  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int64 value);
2335  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2336  _internal_mutable_demands();
2337  public:
2338  ::PROTOBUF_NAMESPACE_ID::int64 demands(int index) const;
2339  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2340  void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value);
2341  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2342  demands() const;
2343  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2344  mutable_demands();
2345 
2346  // repeated int32 actives = 5;
2347  int actives_size() const;
2348  private:
2349  int _internal_actives_size() const;
2350  public:
2351  void clear_actives();
2352  private:
2353  ::PROTOBUF_NAMESPACE_ID::int32 _internal_actives(int index) const;
2354  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2355  _internal_actives() const;
2356  void _internal_add_actives(::PROTOBUF_NAMESPACE_ID::int32 value);
2357  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2358  _internal_mutable_actives();
2359  public:
2360  ::PROTOBUF_NAMESPACE_ID::int32 actives(int index) const;
2361  void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2362  void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value);
2363  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2364  actives() const;
2365  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2366  mutable_actives();
2367 
2368  // int64 min_level = 1;
2369  void clear_min_level();
2370  ::PROTOBUF_NAMESPACE_ID::int64 min_level() const;
2371  void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2372  private:
2373  ::PROTOBUF_NAMESPACE_ID::int64 _internal_min_level() const;
2374  void _internal_set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2375  public:
2376 
2377  // int64 max_level = 2;
2378  void clear_max_level();
2379  ::PROTOBUF_NAMESPACE_ID::int64 max_level() const;
2380  void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2381  private:
2382  ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_level() const;
2383  void _internal_set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2384  public:
2385 
2386  // @@protoc_insertion_point(class_scope:operations_research.sat.ReservoirConstraintProto)
2387  private:
2388  class _Internal;
2389 
2390  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2391  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > times_;
2392  mutable std::atomic<int> _times_cached_byte_size_;
2393  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > demands_;
2394  mutable std::atomic<int> _demands_cached_byte_size_;
2395  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > actives_;
2396  mutable std::atomic<int> _actives_cached_byte_size_;
2397  ::PROTOBUF_NAMESPACE_ID::int64 min_level_;
2398  ::PROTOBUF_NAMESPACE_ID::int64 max_level_;
2399  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2400  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2401 };
2402 // -------------------------------------------------------------------
2403 
2405  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitConstraintProto) */ {
2406  public:
2408  virtual ~CircuitConstraintProto();
2409 
2413  *this = ::std::move(from);
2414  }
2415 
2417  CopyFrom(from);
2418  return *this;
2419  }
2421  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2422  if (this != &from) InternalSwap(&from);
2423  } else {
2424  CopyFrom(from);
2425  }
2426  return *this;
2427  }
2428 
2429  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2430  return GetDescriptor();
2431  }
2432  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2433  return GetMetadataStatic().descriptor;
2434  }
2435  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2436  return GetMetadataStatic().reflection;
2437  }
2438  static const CircuitConstraintProto& default_instance();
2439 
2440  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2442  return reinterpret_cast<const CircuitConstraintProto*>(
2444  }
2445  static constexpr int kIndexInFileMessages =
2446  13;
2447 
2449  a.Swap(&b);
2450  }
2451  inline void Swap(CircuitConstraintProto* other) {
2452  if (other == this) return;
2453  InternalSwap(other);
2454  }
2455 
2456  // implements Message ----------------------------------------------
2457 
2458  inline CircuitConstraintProto* New() const final {
2459  return CreateMaybeMessage<CircuitConstraintProto>(nullptr);
2460  }
2461 
2462  CircuitConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2463  return CreateMaybeMessage<CircuitConstraintProto>(arena);
2464  }
2465  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2466  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2467  void CopyFrom(const CircuitConstraintProto& from);
2468  void MergeFrom(const CircuitConstraintProto& from);
2469  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2470  bool IsInitialized() const final;
2471 
2472  size_t ByteSizeLong() const final;
2473  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2474  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2475  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2476  int GetCachedSize() const final { return _cached_size_.Get(); }
2477 
2478  private:
2479  inline void SharedCtor();
2480  inline void SharedDtor();
2481  void SetCachedSize(int size) const final;
2482  void InternalSwap(CircuitConstraintProto* other);
2483  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2484  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2485  return "operations_research.sat.CircuitConstraintProto";
2486  }
2487  private:
2488  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2489  return nullptr;
2490  }
2491  inline void* MaybeArenaPtr() const {
2492  return nullptr;
2493  }
2494  public:
2495 
2496  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2497  private:
2498  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2499  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2501  }
2502 
2503  public:
2504 
2505  // nested types ----------------------------------------------------
2506 
2507  // accessors -------------------------------------------------------
2508 
2509  enum : int {
2513  };
2514  // repeated int32 tails = 3;
2515  int tails_size() const;
2516  private:
2517  int _internal_tails_size() const;
2518  public:
2519  void clear_tails();
2520  private:
2521  ::PROTOBUF_NAMESPACE_ID::int32 _internal_tails(int index) const;
2522  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2523  _internal_tails() const;
2524  void _internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2525  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2526  _internal_mutable_tails();
2527  public:
2528  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2529  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2530  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2531  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2532  tails() const;
2533  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2534  mutable_tails();
2535 
2536  // repeated int32 heads = 4;
2537  int heads_size() const;
2538  private:
2539  int _internal_heads_size() const;
2540  public:
2541  void clear_heads();
2542  private:
2543  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heads(int index) const;
2544  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2545  _internal_heads() const;
2546  void _internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2547  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2548  _internal_mutable_heads();
2549  public:
2550  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2551  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2552  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2553  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2554  heads() const;
2555  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2556  mutable_heads();
2557 
2558  // repeated int32 literals = 5;
2559  int literals_size() const;
2560  private:
2561  int _internal_literals_size() const;
2562  public:
2563  void clear_literals();
2564  private:
2565  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
2566  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2567  _internal_literals() const;
2568  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2569  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2570  _internal_mutable_literals();
2571  public:
2572  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2573  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2574  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2575  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2576  literals() const;
2577  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2578  mutable_literals();
2579 
2580  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitConstraintProto)
2581  private:
2582  class _Internal;
2583 
2584  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2585  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2586  mutable std::atomic<int> _tails_cached_byte_size_;
2587  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2588  mutable std::atomic<int> _heads_cached_byte_size_;
2589  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2590  mutable std::atomic<int> _literals_cached_byte_size_;
2591  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2592  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2593 };
2594 // -------------------------------------------------------------------
2595 
2597  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.RoutesConstraintProto) */ {
2598  public:
2600  virtual ~RoutesConstraintProto();
2601 
2604  : RoutesConstraintProto() {
2605  *this = ::std::move(from);
2606  }
2607 
2609  CopyFrom(from);
2610  return *this;
2611  }
2613  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2614  if (this != &from) InternalSwap(&from);
2615  } else {
2616  CopyFrom(from);
2617  }
2618  return *this;
2619  }
2620 
2621  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2622  return GetDescriptor();
2623  }
2624  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2625  return GetMetadataStatic().descriptor;
2626  }
2627  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2628  return GetMetadataStatic().reflection;
2629  }
2630  static const RoutesConstraintProto& default_instance();
2631 
2632  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2634  return reinterpret_cast<const RoutesConstraintProto*>(
2636  }
2637  static constexpr int kIndexInFileMessages =
2638  14;
2639 
2641  a.Swap(&b);
2642  }
2643  inline void Swap(RoutesConstraintProto* other) {
2644  if (other == this) return;
2645  InternalSwap(other);
2646  }
2647 
2648  // implements Message ----------------------------------------------
2649 
2650  inline RoutesConstraintProto* New() const final {
2651  return CreateMaybeMessage<RoutesConstraintProto>(nullptr);
2652  }
2653 
2654  RoutesConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2655  return CreateMaybeMessage<RoutesConstraintProto>(arena);
2656  }
2657  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2658  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2659  void CopyFrom(const RoutesConstraintProto& from);
2660  void MergeFrom(const RoutesConstraintProto& from);
2661  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2662  bool IsInitialized() const final;
2663 
2664  size_t ByteSizeLong() const final;
2665  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2666  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2667  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2668  int GetCachedSize() const final { return _cached_size_.Get(); }
2669 
2670  private:
2671  inline void SharedCtor();
2672  inline void SharedDtor();
2673  void SetCachedSize(int size) const final;
2674  void InternalSwap(RoutesConstraintProto* other);
2675  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2676  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2677  return "operations_research.sat.RoutesConstraintProto";
2678  }
2679  private:
2680  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2681  return nullptr;
2682  }
2683  inline void* MaybeArenaPtr() const {
2684  return nullptr;
2685  }
2686  public:
2687 
2688  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2689  private:
2690  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2691  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2693  }
2694 
2695  public:
2696 
2697  // nested types ----------------------------------------------------
2698 
2699  // accessors -------------------------------------------------------
2700 
2701  enum : int {
2707  };
2708  // repeated int32 tails = 1;
2709  int tails_size() const;
2710  private:
2711  int _internal_tails_size() const;
2712  public:
2713  void clear_tails();
2714  private:
2715  ::PROTOBUF_NAMESPACE_ID::int32 _internal_tails(int index) const;
2716  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2717  _internal_tails() const;
2718  void _internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2719  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2720  _internal_mutable_tails();
2721  public:
2722  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2723  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2724  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2725  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2726  tails() const;
2727  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2728  mutable_tails();
2729 
2730  // repeated int32 heads = 2;
2731  int heads_size() const;
2732  private:
2733  int _internal_heads_size() const;
2734  public:
2735  void clear_heads();
2736  private:
2737  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heads(int index) const;
2738  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2739  _internal_heads() const;
2740  void _internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2741  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2742  _internal_mutable_heads();
2743  public:
2744  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2745  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2746  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2747  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2748  heads() const;
2749  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2750  mutable_heads();
2751 
2752  // repeated int32 literals = 3;
2753  int literals_size() const;
2754  private:
2755  int _internal_literals_size() const;
2756  public:
2757  void clear_literals();
2758  private:
2759  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
2760  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2761  _internal_literals() const;
2762  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2763  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2764  _internal_mutable_literals();
2765  public:
2766  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2767  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2768  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2769  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2770  literals() const;
2771  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2772  mutable_literals();
2773 
2774  // repeated int32 demands = 4;
2775  int demands_size() const;
2776  private:
2777  int _internal_demands_size() const;
2778  public:
2779  void clear_demands();
2780  private:
2781  ::PROTOBUF_NAMESPACE_ID::int32 _internal_demands(int index) const;
2782  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2783  _internal_demands() const;
2784  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2785  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2786  _internal_mutable_demands();
2787  public:
2788  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
2789  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2790  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2791  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2792  demands() const;
2793  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2794  mutable_demands();
2795 
2796  // int64 capacity = 5;
2797  void clear_capacity();
2798  ::PROTOBUF_NAMESPACE_ID::int64 capacity() const;
2799  void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
2800  private:
2801  ::PROTOBUF_NAMESPACE_ID::int64 _internal_capacity() const;
2802  void _internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
2803  public:
2804 
2805  // @@protoc_insertion_point(class_scope:operations_research.sat.RoutesConstraintProto)
2806  private:
2807  class _Internal;
2808 
2809  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2810  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2811  mutable std::atomic<int> _tails_cached_byte_size_;
2812  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2813  mutable std::atomic<int> _heads_cached_byte_size_;
2814  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2815  mutable std::atomic<int> _literals_cached_byte_size_;
2816  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
2817  mutable std::atomic<int> _demands_cached_byte_size_;
2818  ::PROTOBUF_NAMESPACE_ID::int64 capacity_;
2819  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2820  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2821 };
2822 // -------------------------------------------------------------------
2823 
2825  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitCoveringConstraintProto) */ {
2826  public:
2829 
2833  *this = ::std::move(from);
2834  }
2835 
2837  CopyFrom(from);
2838  return *this;
2839  }
2841  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2842  if (this != &from) InternalSwap(&from);
2843  } else {
2844  CopyFrom(from);
2845  }
2846  return *this;
2847  }
2848 
2849  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2850  return GetDescriptor();
2851  }
2852  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2853  return GetMetadataStatic().descriptor;
2854  }
2855  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2856  return GetMetadataStatic().reflection;
2857  }
2859 
2860  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2862  return reinterpret_cast<const CircuitCoveringConstraintProto*>(
2864  }
2865  static constexpr int kIndexInFileMessages =
2866  15;
2867 
2869  a.Swap(&b);
2870  }
2871  inline void Swap(CircuitCoveringConstraintProto* other) {
2872  if (other == this) return;
2873  InternalSwap(other);
2874  }
2875 
2876  // implements Message ----------------------------------------------
2877 
2878  inline CircuitCoveringConstraintProto* New() const final {
2879  return CreateMaybeMessage<CircuitCoveringConstraintProto>(nullptr);
2880  }
2881 
2882  CircuitCoveringConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2883  return CreateMaybeMessage<CircuitCoveringConstraintProto>(arena);
2884  }
2885  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2886  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2887  void CopyFrom(const CircuitCoveringConstraintProto& from);
2888  void MergeFrom(const CircuitCoveringConstraintProto& from);
2889  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2890  bool IsInitialized() const final;
2891 
2892  size_t ByteSizeLong() const final;
2893  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2894  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2895  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2896  int GetCachedSize() const final { return _cached_size_.Get(); }
2897 
2898  private:
2899  inline void SharedCtor();
2900  inline void SharedDtor();
2901  void SetCachedSize(int size) const final;
2902  void InternalSwap(CircuitCoveringConstraintProto* other);
2903  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2904  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2905  return "operations_research.sat.CircuitCoveringConstraintProto";
2906  }
2907  private:
2908  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2909  return nullptr;
2910  }
2911  inline void* MaybeArenaPtr() const {
2912  return nullptr;
2913  }
2914  public:
2915 
2916  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2917  private:
2918  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2919  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2921  }
2922 
2923  public:
2924 
2925  // nested types ----------------------------------------------------
2926 
2927  // accessors -------------------------------------------------------
2928 
2929  enum : int {
2932  };
2933  // repeated int32 nexts = 1;
2934  int nexts_size() const;
2935  private:
2936  int _internal_nexts_size() const;
2937  public:
2938  void clear_nexts();
2939  private:
2940  ::PROTOBUF_NAMESPACE_ID::int32 _internal_nexts(int index) const;
2941  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2942  _internal_nexts() const;
2943  void _internal_add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value);
2944  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2945  _internal_mutable_nexts();
2946  public:
2947  ::PROTOBUF_NAMESPACE_ID::int32 nexts(int index) const;
2948  void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2949  void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value);
2950  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2951  nexts() const;
2952  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2953  mutable_nexts();
2954 
2955  // repeated int64 distinguished_nodes = 2;
2956  int distinguished_nodes_size() const;
2957  private:
2958  int _internal_distinguished_nodes_size() const;
2959  public:
2961  private:
2962  ::PROTOBUF_NAMESPACE_ID::int64 _internal_distinguished_nodes(int index) const;
2963  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2964  _internal_distinguished_nodes() const;
2965  void _internal_add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);
2966  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2967  _internal_mutable_distinguished_nodes();
2968  public:
2969  ::PROTOBUF_NAMESPACE_ID::int64 distinguished_nodes(int index) const;
2970  void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2971  void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);
2972  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2973  distinguished_nodes() const;
2974  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2976 
2977  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitCoveringConstraintProto)
2978  private:
2979  class _Internal;
2980 
2981  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2982  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > nexts_;
2983  mutable std::atomic<int> _nexts_cached_byte_size_;
2984  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > distinguished_nodes_;
2985  mutable std::atomic<int> _distinguished_nodes_cached_byte_size_;
2986  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2987  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2988 };
2989 // -------------------------------------------------------------------
2990 
2992  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.TableConstraintProto) */ {
2993  public:
2995  virtual ~TableConstraintProto();
2996 
2999  : TableConstraintProto() {
3000  *this = ::std::move(from);
3001  }
3002 
3004  CopyFrom(from);
3005  return *this;
3006  }
3008  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3009  if (this != &from) InternalSwap(&from);
3010  } else {
3011  CopyFrom(from);
3012  }
3013  return *this;
3014  }
3015 
3016  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3017  return GetDescriptor();
3018  }
3019  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3020  return GetMetadataStatic().descriptor;
3021  }
3022  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3023  return GetMetadataStatic().reflection;
3024  }
3025  static const TableConstraintProto& default_instance();
3026 
3027  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3029  return reinterpret_cast<const TableConstraintProto*>(
3031  }
3032  static constexpr int kIndexInFileMessages =
3033  16;
3034 
3036  a.Swap(&b);
3037  }
3038  inline void Swap(TableConstraintProto* other) {
3039  if (other == this) return;
3040  InternalSwap(other);
3041  }
3042 
3043  // implements Message ----------------------------------------------
3044 
3045  inline TableConstraintProto* New() const final {
3046  return CreateMaybeMessage<TableConstraintProto>(nullptr);
3047  }
3048 
3049  TableConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3050  return CreateMaybeMessage<TableConstraintProto>(arena);
3051  }
3052  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3053  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3054  void CopyFrom(const TableConstraintProto& from);
3055  void MergeFrom(const TableConstraintProto& from);
3056  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3057  bool IsInitialized() const final;
3058 
3059  size_t ByteSizeLong() const final;
3060  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3061  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3062  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3063  int GetCachedSize() const final { return _cached_size_.Get(); }
3064 
3065  private:
3066  inline void SharedCtor();
3067  inline void SharedDtor();
3068  void SetCachedSize(int size) const final;
3069  void InternalSwap(TableConstraintProto* other);
3070  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3071  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3072  return "operations_research.sat.TableConstraintProto";
3073  }
3074  private:
3075  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3076  return nullptr;
3077  }
3078  inline void* MaybeArenaPtr() const {
3079  return nullptr;
3080  }
3081  public:
3082 
3083  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3084  private:
3085  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3086  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3088  }
3089 
3090  public:
3091 
3092  // nested types ----------------------------------------------------
3093 
3094  // accessors -------------------------------------------------------
3095 
3096  enum : int {
3100  };
3101  // repeated int32 vars = 1;
3102  int vars_size() const;
3103  private:
3104  int _internal_vars_size() const;
3105  public:
3106  void clear_vars();
3107  private:
3108  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
3109  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3110  _internal_vars() const;
3111  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3112  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3113  _internal_mutable_vars();
3114  public:
3115  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
3116  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3117  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3118  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3119  vars() const;
3120  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3121  mutable_vars();
3122 
3123  // repeated int64 values = 2;
3124  int values_size() const;
3125  private:
3126  int _internal_values_size() const;
3127  public:
3128  void clear_values();
3129  private:
3130  ::PROTOBUF_NAMESPACE_ID::int64 _internal_values(int index) const;
3131  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3132  _internal_values() const;
3133  void _internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
3134  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3135  _internal_mutable_values();
3136  public:
3137  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
3138  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3139  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
3140  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3141  values() const;
3142  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3143  mutable_values();
3144 
3145  // bool negated = 3;
3146  void clear_negated();
3147  bool negated() const;
3148  void set_negated(bool value);
3149  private:
3150  bool _internal_negated() const;
3151  void _internal_set_negated(bool value);
3152  public:
3153 
3154  // @@protoc_insertion_point(class_scope:operations_research.sat.TableConstraintProto)
3155  private:
3156  class _Internal;
3157 
3158  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3159  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
3160  mutable std::atomic<int> _vars_cached_byte_size_;
3161  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
3162  mutable std::atomic<int> _values_cached_byte_size_;
3163  bool negated_;
3164  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3165  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3166 };
3167 // -------------------------------------------------------------------
3168 
3170  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.InverseConstraintProto) */ {
3171  public:
3173  virtual ~InverseConstraintProto();
3174 
3178  *this = ::std::move(from);
3179  }
3180 
3182  CopyFrom(from);
3183  return *this;
3184  }
3186  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3187  if (this != &from) InternalSwap(&from);
3188  } else {
3189  CopyFrom(from);
3190  }
3191  return *this;
3192  }
3193 
3194  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3195  return GetDescriptor();
3196  }
3197  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3198  return GetMetadataStatic().descriptor;
3199  }
3200  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3201  return GetMetadataStatic().reflection;
3202  }
3203  static const InverseConstraintProto& default_instance();
3204 
3205  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3207  return reinterpret_cast<const InverseConstraintProto*>(
3209  }
3210  static constexpr int kIndexInFileMessages =
3211  17;
3212 
3214  a.Swap(&b);
3215  }
3216  inline void Swap(InverseConstraintProto* other) {
3217  if (other == this) return;
3218  InternalSwap(other);
3219  }
3220 
3221  // implements Message ----------------------------------------------
3222 
3223  inline InverseConstraintProto* New() const final {
3224  return CreateMaybeMessage<InverseConstraintProto>(nullptr);
3225  }
3226 
3227  InverseConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3228  return CreateMaybeMessage<InverseConstraintProto>(arena);
3229  }
3230  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3231  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3232  void CopyFrom(const InverseConstraintProto& from);
3233  void MergeFrom(const InverseConstraintProto& from);
3234  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3235  bool IsInitialized() const final;
3236 
3237  size_t ByteSizeLong() const final;
3238  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3239  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3240  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3241  int GetCachedSize() const final { return _cached_size_.Get(); }
3242 
3243  private:
3244  inline void SharedCtor();
3245  inline void SharedDtor();
3246  void SetCachedSize(int size) const final;
3247  void InternalSwap(InverseConstraintProto* other);
3248  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3249  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3250  return "operations_research.sat.InverseConstraintProto";
3251  }
3252  private:
3253  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3254  return nullptr;
3255  }
3256  inline void* MaybeArenaPtr() const {
3257  return nullptr;
3258  }
3259  public:
3260 
3261  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3262  private:
3263  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3264  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3266  }
3267 
3268  public:
3269 
3270  // nested types ----------------------------------------------------
3271 
3272  // accessors -------------------------------------------------------
3273 
3274  enum : int {
3277  };
3278  // repeated int32 f_direct = 1;
3279  int f_direct_size() const;
3280  private:
3281  int _internal_f_direct_size() const;
3282  public:
3283  void clear_f_direct();
3284  private:
3285  ::PROTOBUF_NAMESPACE_ID::int32 _internal_f_direct(int index) const;
3286  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3287  _internal_f_direct() const;
3288  void _internal_add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
3289  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3290  _internal_mutable_f_direct();
3291  public:
3292  ::PROTOBUF_NAMESPACE_ID::int32 f_direct(int index) const;
3293  void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3294  void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
3295  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3296  f_direct() const;
3297  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3298  mutable_f_direct();
3299 
3300  // repeated int32 f_inverse = 2;
3301  int f_inverse_size() const;
3302  private:
3303  int _internal_f_inverse_size() const;
3304  public:
3305  void clear_f_inverse();
3306  private:
3307  ::PROTOBUF_NAMESPACE_ID::int32 _internal_f_inverse(int index) const;
3308  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3309  _internal_f_inverse() const;
3310  void _internal_add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value);
3311  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3312  _internal_mutable_f_inverse();
3313  public:
3314  ::PROTOBUF_NAMESPACE_ID::int32 f_inverse(int index) const;
3315  void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3316  void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value);
3317  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3318  f_inverse() const;
3319  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3321 
3322  // @@protoc_insertion_point(class_scope:operations_research.sat.InverseConstraintProto)
3323  private:
3324  class _Internal;
3325 
3326  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3327  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_direct_;
3328  mutable std::atomic<int> _f_direct_cached_byte_size_;
3329  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_inverse_;
3330  mutable std::atomic<int> _f_inverse_cached_byte_size_;
3331  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3332  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3333 };
3334 // -------------------------------------------------------------------
3335 
3337  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AutomatonConstraintProto) */ {
3338  public:
3340  virtual ~AutomatonConstraintProto();
3341 
3345  *this = ::std::move(from);
3346  }
3347 
3349  CopyFrom(from);
3350  return *this;
3351  }
3353  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3354  if (this != &from) InternalSwap(&from);
3355  } else {
3356  CopyFrom(from);
3357  }
3358  return *this;
3359  }
3360 
3361  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3362  return GetDescriptor();
3363  }
3364  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3365  return GetMetadataStatic().descriptor;
3366  }
3367  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3368  return GetMetadataStatic().reflection;
3369  }
3371 
3372  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3374  return reinterpret_cast<const AutomatonConstraintProto*>(
3376  }
3377  static constexpr int kIndexInFileMessages =
3378  18;
3379 
3381  a.Swap(&b);
3382  }
3383  inline void Swap(AutomatonConstraintProto* other) {
3384  if (other == this) return;
3385  InternalSwap(other);
3386  }
3387 
3388  // implements Message ----------------------------------------------
3389 
3390  inline AutomatonConstraintProto* New() const final {
3391  return CreateMaybeMessage<AutomatonConstraintProto>(nullptr);
3392  }
3393 
3394  AutomatonConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3395  return CreateMaybeMessage<AutomatonConstraintProto>(arena);
3396  }
3397  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3398  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3399  void CopyFrom(const AutomatonConstraintProto& from);
3400  void MergeFrom(const AutomatonConstraintProto& from);
3401  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3402  bool IsInitialized() const final;
3403 
3404  size_t ByteSizeLong() const final;
3405  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3406  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3407  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3408  int GetCachedSize() const final { return _cached_size_.Get(); }
3409 
3410  private:
3411  inline void SharedCtor();
3412  inline void SharedDtor();
3413  void SetCachedSize(int size) const final;
3414  void InternalSwap(AutomatonConstraintProto* other);
3415  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3416  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3417  return "operations_research.sat.AutomatonConstraintProto";
3418  }
3419  private:
3420  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3421  return nullptr;
3422  }
3423  inline void* MaybeArenaPtr() const {
3424  return nullptr;
3425  }
3426  public:
3427 
3428  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3429  private:
3430  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3431  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3433  }
3434 
3435  public:
3436 
3437  // nested types ----------------------------------------------------
3438 
3439  // accessors -------------------------------------------------------
3440 
3441  enum : int {
3448  };
3449  // repeated int64 final_states = 3;
3450  int final_states_size() const;
3451  private:
3452  int _internal_final_states_size() const;
3453  public:
3454  void clear_final_states();
3455  private:
3456  ::PROTOBUF_NAMESPACE_ID::int64 _internal_final_states(int index) const;
3457  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3458  _internal_final_states() const;
3459  void _internal_add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value);
3460  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3461  _internal_mutable_final_states();
3462  public:
3463  ::PROTOBUF_NAMESPACE_ID::int64 final_states(int index) const;
3464  void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3465  void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value);
3466  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3467  final_states() const;
3468  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3470 
3471  // repeated int64 transition_tail = 4;
3472  int transition_tail_size() const;
3473  private:
3474  int _internal_transition_tail_size() const;
3475  public:
3476  void clear_transition_tail();
3477  private:
3478  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_tail(int index) const;
3479  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3480  _internal_transition_tail() const;
3481  void _internal_add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value);
3482  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3483  _internal_mutable_transition_tail();
3484  public:
3485  ::PROTOBUF_NAMESPACE_ID::int64 transition_tail(int index) const;
3486  void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3487  void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value);
3488  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3489  transition_tail() const;
3490  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3492 
3493  // repeated int64 transition_head = 5;
3494  int transition_head_size() const;
3495  private:
3496  int _internal_transition_head_size() const;
3497  public:
3498  void clear_transition_head();
3499  private:
3500  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_head(int index) const;
3501  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3502  _internal_transition_head() const;
3503  void _internal_add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value);
3504  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3505  _internal_mutable_transition_head();
3506  public:
3507  ::PROTOBUF_NAMESPACE_ID::int64 transition_head(int index) const;
3508  void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3509  void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value);
3510  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3511  transition_head() const;
3512  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3514 
3515  // repeated int64 transition_label = 6;
3516  int transition_label_size() const;
3517  private:
3518  int _internal_transition_label_size() const;
3519  public:
3520  void clear_transition_label();
3521  private:
3522  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_label(int index) const;
3523  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3524  _internal_transition_label() const;
3525  void _internal_add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value);
3526  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3527  _internal_mutable_transition_label();
3528  public:
3529  ::PROTOBUF_NAMESPACE_ID::int64 transition_label(int index) const;
3530  void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3531  void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value);
3532  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3533  transition_label() const;
3534  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3536 
3537  // repeated int32 vars = 7;
3538  int vars_size() const;
3539  private:
3540  int _internal_vars_size() const;
3541  public:
3542  void clear_vars();
3543  private:
3544  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
3545  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3546  _internal_vars() const;
3547  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3548  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3549  _internal_mutable_vars();
3550  public:
3551  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
3552  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3553  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3554  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3555  vars() const;
3556  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3557  mutable_vars();
3558 
3559  // int64 starting_state = 2;
3560  void clear_starting_state();
3561  ::PROTOBUF_NAMESPACE_ID::int64 starting_state() const;
3562  void set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value);
3563  private:
3564  ::PROTOBUF_NAMESPACE_ID::int64 _internal_starting_state() const;
3565  void _internal_set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value);
3566  public:
3567 
3568  // @@protoc_insertion_point(class_scope:operations_research.sat.AutomatonConstraintProto)
3569  private:
3570  class _Internal;
3571 
3572  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3573  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > final_states_;
3574  mutable std::atomic<int> _final_states_cached_byte_size_;
3575  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_tail_;
3576  mutable std::atomic<int> _transition_tail_cached_byte_size_;
3577  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_head_;
3578  mutable std::atomic<int> _transition_head_cached_byte_size_;
3579  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_label_;
3580  mutable std::atomic<int> _transition_label_cached_byte_size_;
3581  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
3582  mutable std::atomic<int> _vars_cached_byte_size_;
3583  ::PROTOBUF_NAMESPACE_ID::int64 starting_state_;
3584  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3585  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3586 };
3587 // -------------------------------------------------------------------
3588 
3590  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ConstraintProto) */ {
3591  public:
3592  ConstraintProto();
3593  virtual ~ConstraintProto();
3594 
3595  ConstraintProto(const ConstraintProto& from);
3597  : ConstraintProto() {
3598  *this = ::std::move(from);
3599  }
3600 
3602  CopyFrom(from);
3603  return *this;
3604  }
3605  inline ConstraintProto& operator=(ConstraintProto&& from) noexcept {
3606  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3607  if (this != &from) InternalSwap(&from);
3608  } else {
3609  CopyFrom(from);
3610  }
3611  return *this;
3612  }
3613 
3614  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3615  return GetDescriptor();
3616  }
3617  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3618  return GetMetadataStatic().descriptor;
3619  }
3620  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3621  return GetMetadataStatic().reflection;
3622  }
3623  static const ConstraintProto& default_instance();
3624 
3626  kBoolOr = 3,
3630  kIntDiv = 7,
3631  kIntMod = 8,
3632  kIntMax = 9,
3633  kLinMax = 27,
3634  kIntMin = 10,
3635  kLinMin = 28,
3636  kIntProd = 11,
3637  kLinear = 12,
3638  kAllDiff = 13,
3639  kElement = 14,
3640  kCircuit = 15,
3641  kRoutes = 23,
3643  kTable = 16,
3645  kInverse = 18,
3652  };
3653 
3654  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3656  return reinterpret_cast<const ConstraintProto*>(
3658  }
3659  static constexpr int kIndexInFileMessages =
3660  19;
3661 
3662  friend void swap(ConstraintProto& a, ConstraintProto& b) {
3663  a.Swap(&b);
3664  }
3665  inline void Swap(ConstraintProto* other) {
3666  if (other == this) return;
3667  InternalSwap(other);
3668  }
3669 
3670  // implements Message ----------------------------------------------
3671 
3672  inline ConstraintProto* New() const final {
3673  return CreateMaybeMessage<ConstraintProto>(nullptr);
3674  }
3675 
3676  ConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3677  return CreateMaybeMessage<ConstraintProto>(arena);
3678  }
3679  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3680  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3681  void CopyFrom(const ConstraintProto& from);
3682  void MergeFrom(const ConstraintProto& from);
3683  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3684  bool IsInitialized() const final;
3685 
3686  size_t ByteSizeLong() const final;
3687  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3688  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3689  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3690  int GetCachedSize() const final { return _cached_size_.Get(); }
3691 
3692  private:
3693  inline void SharedCtor();
3694  inline void SharedDtor();
3695  void SetCachedSize(int size) const final;
3696  void InternalSwap(ConstraintProto* other);
3697  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3698  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3699  return "operations_research.sat.ConstraintProto";
3700  }
3701  private:
3702  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3703  return nullptr;
3704  }
3705  inline void* MaybeArenaPtr() const {
3706  return nullptr;
3707  }
3708  public:
3709 
3710  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3711  private:
3712  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3713  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3715  }
3716 
3717  public:
3718 
3719  // nested types ----------------------------------------------------
3720 
3721  // accessors -------------------------------------------------------
3722 
3723  enum : int {
3751  };
3752  // repeated int32 enforcement_literal = 2;
3753  int enforcement_literal_size() const;
3754  private:
3755  int _internal_enforcement_literal_size() const;
3756  public:
3758  private:
3759  ::PROTOBUF_NAMESPACE_ID::int32 _internal_enforcement_literal(int index) const;
3760  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3761  _internal_enforcement_literal() const;
3762  void _internal_add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value);
3763  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3764  _internal_mutable_enforcement_literal();
3765  public:
3766  ::PROTOBUF_NAMESPACE_ID::int32 enforcement_literal(int index) const;
3767  void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3768  void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value);
3769  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3770  enforcement_literal() const;
3771  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3773 
3774  // string name = 1;
3775  void clear_name();
3776  const std::string& name() const;
3777  void set_name(const std::string& value);
3778  void set_name(std::string&& value);
3779  void set_name(const char* value);
3780  void set_name(const char* value, size_t size);
3781  std::string* mutable_name();
3782  std::string* release_name();
3783  void set_allocated_name(std::string* name);
3784  private:
3785  const std::string& _internal_name() const;
3786  void _internal_set_name(const std::string& value);
3787  std::string* _internal_mutable_name();
3788  public:
3789 
3790  // .operations_research.sat.BoolArgumentProto bool_or = 3;
3791  bool has_bool_or() const;
3792  private:
3793  bool _internal_has_bool_or() const;
3794  public:
3795  void clear_bool_or();
3796  const ::operations_research::sat::BoolArgumentProto& bool_or() const;
3800  private:
3801  const ::operations_research::sat::BoolArgumentProto& _internal_bool_or() const;
3802  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_or();
3803  public:
3804 
3805  // .operations_research.sat.BoolArgumentProto bool_and = 4;
3806  bool has_bool_and() const;
3807  private:
3808  bool _internal_has_bool_and() const;
3809  public:
3810  void clear_bool_and();
3811  const ::operations_research::sat::BoolArgumentProto& bool_and() const;
3815  private:
3816  const ::operations_research::sat::BoolArgumentProto& _internal_bool_and() const;
3817  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_and();
3818  public:
3819 
3820  // .operations_research.sat.BoolArgumentProto at_most_one = 26;
3821  bool has_at_most_one() const;
3822  private:
3823  bool _internal_has_at_most_one() const;
3824  public:
3825  void clear_at_most_one();
3826  const ::operations_research::sat::BoolArgumentProto& at_most_one() const;
3830  private:
3831  const ::operations_research::sat::BoolArgumentProto& _internal_at_most_one() const;
3832  ::operations_research::sat::BoolArgumentProto* _internal_mutable_at_most_one();
3833  public:
3834 
3835  // .operations_research.sat.BoolArgumentProto bool_xor = 5;
3836  bool has_bool_xor() const;
3837  private:
3838  bool _internal_has_bool_xor() const;
3839  public:
3840  void clear_bool_xor();
3841  const ::operations_research::sat::BoolArgumentProto& bool_xor() const;
3845  private:
3846  const ::operations_research::sat::BoolArgumentProto& _internal_bool_xor() const;
3847  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_xor();
3848  public:
3849 
3850  // .operations_research.sat.IntegerArgumentProto int_div = 7;
3851  bool has_int_div() const;
3852  private:
3853  bool _internal_has_int_div() const;
3854  public:
3855  void clear_int_div();
3856  const ::operations_research::sat::IntegerArgumentProto& int_div() const;
3860  private:
3861  const ::operations_research::sat::IntegerArgumentProto& _internal_int_div() const;
3862  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_div();
3863  public:
3864 
3865  // .operations_research.sat.IntegerArgumentProto int_mod = 8;
3866  bool has_int_mod() const;
3867  private:
3868  bool _internal_has_int_mod() const;
3869  public:
3870  void clear_int_mod();
3871  const ::operations_research::sat::IntegerArgumentProto& int_mod() const;
3875  private:
3876  const ::operations_research::sat::IntegerArgumentProto& _internal_int_mod() const;
3877  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_mod();
3878  public:
3879 
3880  // .operations_research.sat.IntegerArgumentProto int_max = 9;
3881  bool has_int_max() const;
3882  private:
3883  bool _internal_has_int_max() const;
3884  public:
3885  void clear_int_max();
3886  const ::operations_research::sat::IntegerArgumentProto& int_max() const;
3890  private:
3891  const ::operations_research::sat::IntegerArgumentProto& _internal_int_max() const;
3892  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_max();
3893  public:
3894 
3895  // .operations_research.sat.LinearArgumentProto lin_max = 27;
3896  bool has_lin_max() const;
3897  private:
3898  bool _internal_has_lin_max() const;
3899  public:
3900  void clear_lin_max();
3901  const ::operations_research::sat::LinearArgumentProto& lin_max() const;
3905  private:
3906  const ::operations_research::sat::LinearArgumentProto& _internal_lin_max() const;
3907  ::operations_research::sat::LinearArgumentProto* _internal_mutable_lin_max();
3908  public:
3909 
3910  // .operations_research.sat.IntegerArgumentProto int_min = 10;
3911  bool has_int_min() const;
3912  private:
3913  bool _internal_has_int_min() const;
3914  public:
3915  void clear_int_min();
3916  const ::operations_research::sat::IntegerArgumentProto& int_min() const;
3920  private:
3921  const ::operations_research::sat::IntegerArgumentProto& _internal_int_min() const;
3922  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_min();
3923  public:
3924 
3925  // .operations_research.sat.LinearArgumentProto lin_min = 28;
3926  bool has_lin_min() const;
3927  private:
3928  bool _internal_has_lin_min() const;
3929  public:
3930  void clear_lin_min();
3931  const ::operations_research::sat::LinearArgumentProto& lin_min() const;
3935  private:
3936  const ::operations_research::sat::LinearArgumentProto& _internal_lin_min() const;
3937  ::operations_research::sat::LinearArgumentProto* _internal_mutable_lin_min();
3938  public:
3939 
3940  // .operations_research.sat.IntegerArgumentProto int_prod = 11;
3941  bool has_int_prod() const;
3942  private:
3943  bool _internal_has_int_prod() const;
3944  public:
3945  void clear_int_prod();
3946  const ::operations_research::sat::IntegerArgumentProto& int_prod() const;
3950  private:
3951  const ::operations_research::sat::IntegerArgumentProto& _internal_int_prod() const;
3952  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_prod();
3953  public:
3954 
3955  // .operations_research.sat.LinearConstraintProto linear = 12;
3956  bool has_linear() const;
3957  private:
3958  bool _internal_has_linear() const;
3959  public:
3960  void clear_linear();
3961  const ::operations_research::sat::LinearConstraintProto& linear() const;
3965  private:
3966  const ::operations_research::sat::LinearConstraintProto& _internal_linear() const;
3967  ::operations_research::sat::LinearConstraintProto* _internal_mutable_linear();
3968  public:
3969 
3970  // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
3971  bool has_all_diff() const;
3972  private:
3973  bool _internal_has_all_diff() const;
3974  public:
3975  void clear_all_diff();
3976  const ::operations_research::sat::AllDifferentConstraintProto& all_diff() const;
3980  private:
3981  const ::operations_research::sat::AllDifferentConstraintProto& _internal_all_diff() const;
3982  ::operations_research::sat::AllDifferentConstraintProto* _internal_mutable_all_diff();
3983  public:
3984 
3985  // .operations_research.sat.ElementConstraintProto element = 14;
3986  bool has_element() const;
3987  private:
3988  bool _internal_has_element() const;
3989  public:
3990  void clear_element();
3991  const ::operations_research::sat::ElementConstraintProto& element() const;
3995  private:
3996  const ::operations_research::sat::ElementConstraintProto& _internal_element() const;
3997  ::operations_research::sat::ElementConstraintProto* _internal_mutable_element();
3998  public:
3999 
4000  // .operations_research.sat.CircuitConstraintProto circuit = 15;
4001  bool has_circuit() const;
4002  private:
4003  bool _internal_has_circuit() const;
4004  public:
4005  void clear_circuit();
4006  const ::operations_research::sat::CircuitConstraintProto& circuit() const;
4010  private:
4011  const ::operations_research::sat::CircuitConstraintProto& _internal_circuit() const;
4012  ::operations_research::sat::CircuitConstraintProto* _internal_mutable_circuit();
4013  public:
4014 
4015  // .operations_research.sat.RoutesConstraintProto routes = 23;
4016  bool has_routes() const;
4017  private:
4018  bool _internal_has_routes() const;
4019  public:
4020  void clear_routes();
4021  const ::operations_research::sat::RoutesConstraintProto& routes() const;
4025  private:
4026  const ::operations_research::sat::RoutesConstraintProto& _internal_routes() const;
4027  ::operations_research::sat::RoutesConstraintProto* _internal_mutable_routes();
4028  public:
4029 
4030  // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
4031  bool has_circuit_covering() const;
4032  private:
4033  bool _internal_has_circuit_covering() const;
4034  public:
4035  void clear_circuit_covering();
4036  const ::operations_research::sat::CircuitCoveringConstraintProto& circuit_covering() const;
4040  private:
4041  const ::operations_research::sat::CircuitCoveringConstraintProto& _internal_circuit_covering() const;
4042  ::operations_research::sat::CircuitCoveringConstraintProto* _internal_mutable_circuit_covering();
4043  public:
4044 
4045  // .operations_research.sat.TableConstraintProto table = 16;
4046  bool has_table() const;
4047  private:
4048  bool _internal_has_table() const;
4049  public:
4050  void clear_table();
4051  const ::operations_research::sat::TableConstraintProto& table() const;
4055  private:
4056  const ::operations_research::sat::TableConstraintProto& _internal_table() const;
4057  ::operations_research::sat::TableConstraintProto* _internal_mutable_table();
4058  public:
4059 
4060  // .operations_research.sat.AutomatonConstraintProto automaton = 17;
4061  bool has_automaton() const;
4062  private:
4063  bool _internal_has_automaton() const;
4064  public:
4065  void clear_automaton();
4066  const ::operations_research::sat::AutomatonConstraintProto& automaton() const;
4070  private:
4071  const ::operations_research::sat::AutomatonConstraintProto& _internal_automaton() const;
4072  ::operations_research::sat::AutomatonConstraintProto* _internal_mutable_automaton();
4073  public:
4074 
4075  // .operations_research.sat.InverseConstraintProto inverse = 18;
4076  bool has_inverse() const;
4077  private:
4078  bool _internal_has_inverse() const;
4079  public:
4080  void clear_inverse();
4081  const ::operations_research::sat::InverseConstraintProto& inverse() const;
4085  private:
4086  const ::operations_research::sat::InverseConstraintProto& _internal_inverse() const;
4087  ::operations_research::sat::InverseConstraintProto* _internal_mutable_inverse();
4088  public:
4089 
4090  // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
4091  bool has_reservoir() const;
4092  private:
4093  bool _internal_has_reservoir() const;
4094  public:
4095  void clear_reservoir();
4096  const ::operations_research::sat::ReservoirConstraintProto& reservoir() const;
4100  private:
4101  const ::operations_research::sat::ReservoirConstraintProto& _internal_reservoir() const;
4102  ::operations_research::sat::ReservoirConstraintProto* _internal_mutable_reservoir();
4103  public:
4104 
4105  // .operations_research.sat.IntervalConstraintProto interval = 19;
4106  bool has_interval() const;
4107  private:
4108  bool _internal_has_interval() const;
4109  public:
4110  void clear_interval();
4111  const ::operations_research::sat::IntervalConstraintProto& interval() const;
4115  private:
4116  const ::operations_research::sat::IntervalConstraintProto& _internal_interval() const;
4117  ::operations_research::sat::IntervalConstraintProto* _internal_mutable_interval();
4118  public:
4119 
4120  // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
4121  bool has_no_overlap() const;
4122  private:
4123  bool _internal_has_no_overlap() const;
4124  public:
4125  void clear_no_overlap();
4126  const ::operations_research::sat::NoOverlapConstraintProto& no_overlap() const;
4130  private:
4131  const ::operations_research::sat::NoOverlapConstraintProto& _internal_no_overlap() const;
4132  ::operations_research::sat::NoOverlapConstraintProto* _internal_mutable_no_overlap();
4133  public:
4134 
4135  // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
4136  bool has_no_overlap_2d() const;
4137  private:
4138  bool _internal_has_no_overlap_2d() const;
4139  public:
4140  void clear_no_overlap_2d();
4141  const ::operations_research::sat::NoOverlap2DConstraintProto& no_overlap_2d() const;
4145  private:
4146  const ::operations_research::sat::NoOverlap2DConstraintProto& _internal_no_overlap_2d() const;
4147  ::operations_research::sat::NoOverlap2DConstraintProto* _internal_mutable_no_overlap_2d();
4148  public:
4149 
4150  // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
4151  bool has_cumulative() const;
4152  private:
4153  bool _internal_has_cumulative() const;
4154  public:
4155  void clear_cumulative();
4156  const ::operations_research::sat::CumulativeConstraintProto& cumulative() const;
4160  private:
4161  const ::operations_research::sat::CumulativeConstraintProto& _internal_cumulative() const;
4162  ::operations_research::sat::CumulativeConstraintProto* _internal_mutable_cumulative();
4163  public:
4164 
4165  void clear_constraint();
4167  // @@protoc_insertion_point(class_scope:operations_research.sat.ConstraintProto)
4168  private:
4169  class _Internal;
4170  void set_has_bool_or();
4171  void set_has_bool_and();
4172  void set_has_at_most_one();
4173  void set_has_bool_xor();
4174  void set_has_int_div();
4175  void set_has_int_mod();
4176  void set_has_int_max();
4177  void set_has_lin_max();
4178  void set_has_int_min();
4179  void set_has_lin_min();
4180  void set_has_int_prod();
4181  void set_has_linear();
4182  void set_has_all_diff();
4183  void set_has_element();
4184  void set_has_circuit();
4185  void set_has_routes();
4186  void set_has_circuit_covering();
4187  void set_has_table();
4188  void set_has_automaton();
4189  void set_has_inverse();
4190  void set_has_reservoir();
4191  void set_has_interval();
4192  void set_has_no_overlap();
4193  void set_has_no_overlap_2d();
4194  void set_has_cumulative();
4195 
4196  inline bool has_constraint() const;
4197  inline void clear_has_constraint();
4198 
4199  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4200  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > enforcement_literal_;
4201  mutable std::atomic<int> _enforcement_literal_cached_byte_size_;
4202  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
4203  union ConstraintUnion {
4204  ConstraintUnion() {}
4230  } constraint_;
4231  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4232  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
4233 
4234  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4235 };
4236 // -------------------------------------------------------------------
4237 
4239  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpObjectiveProto) */ {
4240  public:
4241  CpObjectiveProto();
4242  virtual ~CpObjectiveProto();
4243 
4244  CpObjectiveProto(const CpObjectiveProto& from);
4246  : CpObjectiveProto() {
4247  *this = ::std::move(from);
4248  }
4249 
4251  CopyFrom(from);
4252  return *this;
4253  }
4254  inline CpObjectiveProto& operator=(CpObjectiveProto&& from) noexcept {
4255  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4256  if (this != &from) InternalSwap(&from);
4257  } else {
4258  CopyFrom(from);
4259  }
4260  return *this;
4261  }
4262 
4263  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4264  return GetDescriptor();
4265  }
4266  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4267  return GetMetadataStatic().descriptor;
4268  }
4269  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4270  return GetMetadataStatic().reflection;
4271  }
4272  static const CpObjectiveProto& default_instance();
4273 
4274  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4276  return reinterpret_cast<const CpObjectiveProto*>(
4278  }
4279  static constexpr int kIndexInFileMessages =
4280  20;
4281 
4283  a.Swap(&b);
4284  }
4285  inline void Swap(CpObjectiveProto* other) {
4286  if (other == this) return;
4287  InternalSwap(other);
4288  }
4289 
4290  // implements Message ----------------------------------------------
4291 
4292  inline CpObjectiveProto* New() const final {
4293  return CreateMaybeMessage<CpObjectiveProto>(nullptr);
4294  }
4295 
4296  CpObjectiveProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4297  return CreateMaybeMessage<CpObjectiveProto>(arena);
4298  }
4299  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4300  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4301  void CopyFrom(const CpObjectiveProto& from);
4302  void MergeFrom(const CpObjectiveProto& from);
4303  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4304  bool IsInitialized() const final;
4305 
4306  size_t ByteSizeLong() const final;
4307  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4308  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4309  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4310  int GetCachedSize() const final { return _cached_size_.Get(); }
4311 
4312  private:
4313  inline void SharedCtor();
4314  inline void SharedDtor();
4315  void SetCachedSize(int size) const final;
4316  void InternalSwap(CpObjectiveProto* other);
4317  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4318  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4319  return "operations_research.sat.CpObjectiveProto";
4320  }
4321  private:
4322  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4323  return nullptr;
4324  }
4325  inline void* MaybeArenaPtr() const {
4326  return nullptr;
4327  }
4328  public:
4329 
4330  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4331  private:
4332  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4333  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4335  }
4336 
4337  public:
4338 
4339  // nested types ----------------------------------------------------
4340 
4341  // accessors -------------------------------------------------------
4342 
4343  enum : int {
4349  };
4350  // repeated int32 vars = 1;
4351  int vars_size() const;
4352  private:
4353  int _internal_vars_size() const;
4354  public:
4355  void clear_vars();
4356  private:
4357  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
4358  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4359  _internal_vars() const;
4360  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4361  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4362  _internal_mutable_vars();
4363  public:
4364  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
4365  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4366  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4367  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4368  vars() const;
4369  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4370  mutable_vars();
4371 
4372  // repeated int64 coeffs = 4;
4373  int coeffs_size() const;
4374  private:
4375  int _internal_coeffs_size() const;
4376  public:
4377  void clear_coeffs();
4378  private:
4379  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coeffs(int index) const;
4380  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4381  _internal_coeffs() const;
4382  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
4383  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4384  _internal_mutable_coeffs();
4385  public:
4386  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
4387  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4388  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
4389  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4390  coeffs() const;
4391  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4392  mutable_coeffs();
4393 
4394  // repeated int64 domain = 5;
4395  int domain_size() const;
4396  private:
4397  int _internal_domain_size() const;
4398  public:
4399  void clear_domain();
4400  private:
4401  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
4402  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4403  _internal_domain() const;
4404  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
4405  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4406  _internal_mutable_domain();
4407  public:
4408  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
4409  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4410  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
4411  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4412  domain() const;
4413  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4414  mutable_domain();
4415 
4416  // double offset = 2;
4417  void clear_offset();
4418  double offset() const;
4419  void set_offset(double value);
4420  private:
4421  double _internal_offset() const;
4422  void _internal_set_offset(double value);
4423  public:
4424 
4425  // double scaling_factor = 3;
4426  void clear_scaling_factor();
4427  double scaling_factor() const;
4428  void set_scaling_factor(double value);
4429  private:
4430  double _internal_scaling_factor() const;
4431  void _internal_set_scaling_factor(double value);
4432  public:
4433 
4434  // @@protoc_insertion_point(class_scope:operations_research.sat.CpObjectiveProto)
4435  private:
4436  class _Internal;
4437 
4438  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4439  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
4440  mutable std::atomic<int> _vars_cached_byte_size_;
4441  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
4442  mutable std::atomic<int> _coeffs_cached_byte_size_;
4443  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
4444  mutable std::atomic<int> _domain_cached_byte_size_;
4445  double offset_;
4446  double scaling_factor_;
4447  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4448  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4449 };
4450 // -------------------------------------------------------------------
4451 
4453  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto.AffineTransformation) */ {
4454  public:
4457 
4461  *this = ::std::move(from);
4462  }
4463 
4465  CopyFrom(from);
4466  return *this;
4467  }
4469  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4470  if (this != &from) InternalSwap(&from);
4471  } else {
4472  CopyFrom(from);
4473  }
4474  return *this;
4475  }
4476 
4477  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4478  return GetDescriptor();
4479  }
4480  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4481  return GetMetadataStatic().descriptor;
4482  }
4483  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4484  return GetMetadataStatic().reflection;
4485  }
4487 
4488  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4490  return reinterpret_cast<const DecisionStrategyProto_AffineTransformation*>(
4492  }
4493  static constexpr int kIndexInFileMessages =
4494  21;
4495 
4497  a.Swap(&b);
4498  }
4500  if (other == this) return;
4501  InternalSwap(other);
4502  }
4503 
4504  // implements Message ----------------------------------------------
4505 
4507  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(nullptr);
4508  }
4509 
4510  DecisionStrategyProto_AffineTransformation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4511  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(arena);
4512  }
4513  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4514  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4517  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4518  bool IsInitialized() const final;
4519 
4520  size_t ByteSizeLong() const final;
4521  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4522  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4523  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4524  int GetCachedSize() const final { return _cached_size_.Get(); }
4525 
4526  private:
4527  inline void SharedCtor();
4528  inline void SharedDtor();
4529  void SetCachedSize(int size) const final;
4530  void InternalSwap(DecisionStrategyProto_AffineTransformation* other);
4531  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4532  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4533  return "operations_research.sat.DecisionStrategyProto.AffineTransformation";
4534  }
4535  private:
4536  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4537  return nullptr;
4538  }
4539  inline void* MaybeArenaPtr() const {
4540  return nullptr;
4541  }
4542  public:
4543 
4544  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4545  private:
4546  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4547  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4549  }
4550 
4551  public:
4552 
4553  // nested types ----------------------------------------------------
4554 
4555  // accessors -------------------------------------------------------
4556 
4557  enum : int {
4561  };
4562  // int64 offset = 2;
4563  void clear_offset();
4564  ::PROTOBUF_NAMESPACE_ID::int64 offset() const;
4565  void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
4566  private:
4567  ::PROTOBUF_NAMESPACE_ID::int64 _internal_offset() const;
4568  void _internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
4569  public:
4570 
4571  // int64 positive_coeff = 3;
4572  void clear_positive_coeff();
4573  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const;
4574  void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value);
4575  private:
4576  ::PROTOBUF_NAMESPACE_ID::int64 _internal_positive_coeff() const;
4577  void _internal_set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value);
4578  public:
4579 
4580  // int32 var = 1;
4581  void clear_var();
4582  ::PROTOBUF_NAMESPACE_ID::int32 var() const;
4583  void set_var(::PROTOBUF_NAMESPACE_ID::int32 value);
4584  private:
4585  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var() const;
4586  void _internal_set_var(::PROTOBUF_NAMESPACE_ID::int32 value);
4587  public:
4588 
4589  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto.AffineTransformation)
4590  private:
4591  class _Internal;
4592 
4593  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4594  ::PROTOBUF_NAMESPACE_ID::int64 offset_;
4595  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff_;
4596  ::PROTOBUF_NAMESPACE_ID::int32 var_;
4597  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4598  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4599 };
4600 // -------------------------------------------------------------------
4601 
4603  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto) */ {
4604  public:
4606  virtual ~DecisionStrategyProto();
4607 
4610  : DecisionStrategyProto() {
4611  *this = ::std::move(from);
4612  }
4613 
4615  CopyFrom(from);
4616  return *this;
4617  }
4619  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4620  if (this != &from) InternalSwap(&from);
4621  } else {
4622  CopyFrom(from);
4623  }
4624  return *this;
4625  }
4626 
4627  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4628  return GetDescriptor();
4629  }
4630  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4631  return GetMetadataStatic().descriptor;
4632  }
4633  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4634  return GetMetadataStatic().reflection;
4635  }
4636  static const DecisionStrategyProto& default_instance();
4637 
4638  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4640  return reinterpret_cast<const DecisionStrategyProto*>(
4642  }
4643  static constexpr int kIndexInFileMessages =
4644  22;
4645 
4647  a.Swap(&b);
4648  }
4649  inline void Swap(DecisionStrategyProto* other) {
4650  if (other == this) return;
4651  InternalSwap(other);
4652  }
4653 
4654  // implements Message ----------------------------------------------
4655 
4656  inline DecisionStrategyProto* New() const final {
4657  return CreateMaybeMessage<DecisionStrategyProto>(nullptr);
4658  }
4659 
4660  DecisionStrategyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4661  return CreateMaybeMessage<DecisionStrategyProto>(arena);
4662  }
4663  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4664  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4665  void CopyFrom(const DecisionStrategyProto& from);
4666  void MergeFrom(const DecisionStrategyProto& from);
4667  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4668  bool IsInitialized() const final;
4669 
4670  size_t ByteSizeLong() const final;
4671  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4672  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4673  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4674  int GetCachedSize() const final { return _cached_size_.Get(); }
4675 
4676  private:
4677  inline void SharedCtor();
4678  inline void SharedDtor();
4679  void SetCachedSize(int size) const final;
4680  void InternalSwap(DecisionStrategyProto* other);
4681  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4682  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4683  return "operations_research.sat.DecisionStrategyProto";
4684  }
4685  private:
4686  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4687  return nullptr;
4688  }
4689  inline void* MaybeArenaPtr() const {
4690  return nullptr;
4691  }
4692  public:
4693 
4694  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4695  private:
4696  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4697  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4699  }
4700 
4701  public:
4702 
4703  // nested types ----------------------------------------------------
4704 
4706 
4718  static inline bool VariableSelectionStrategy_IsValid(int value) {
4720  }
4727  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
4730  }
4731  template<typename T>
4732  static inline const std::string& VariableSelectionStrategy_Name(T enum_t_value) {
4733  static_assert(::std::is_same<T, VariableSelectionStrategy>::value ||
4734  ::std::is_integral<T>::value,
4735  "Incorrect type passed to function VariableSelectionStrategy_Name.");
4737  }
4738  static inline bool VariableSelectionStrategy_Parse(const std::string& name,
4739  VariableSelectionStrategy* value) {
4741  }
4742 
4754  static inline bool DomainReductionStrategy_IsValid(int value) {
4756  }
4761  static constexpr int DomainReductionStrategy_ARRAYSIZE =
4763  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
4766  }
4767  template<typename T>
4768  static inline const std::string& DomainReductionStrategy_Name(T enum_t_value) {
4769  static_assert(::std::is_same<T, DomainReductionStrategy>::value ||
4770  ::std::is_integral<T>::value,
4771  "Incorrect type passed to function DomainReductionStrategy_Name.");
4773  }
4774  static inline bool DomainReductionStrategy_Parse(const std::string& name,
4775  DomainReductionStrategy* value) {
4777  }
4778 
4779  // accessors -------------------------------------------------------
4780 
4781  enum : int {
4786  };
4787  // repeated int32 variables = 1;
4788  int variables_size() const;
4789  private:
4790  int _internal_variables_size() const;
4791  public:
4792  void clear_variables();
4793  private:
4794  ::PROTOBUF_NAMESPACE_ID::int32 _internal_variables(int index) const;
4795  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4796  _internal_variables() const;
4797  void _internal_add_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
4798  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4799  _internal_mutable_variables();
4800  public:
4801  ::PROTOBUF_NAMESPACE_ID::int32 variables(int index) const;
4802  void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4803  void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
4804  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4805  variables() const;
4806  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4808 
4809  // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
4810  int transformations_size() const;
4811  private:
4812  int _internal_transformations_size() const;
4813  public:
4814  void clear_transformations();
4816  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
4818  private:
4819  const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& _internal_transformations(int index) const;
4821  public:
4822  const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& transformations(int index) const;
4824  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
4825  transformations() const;
4826 
4827  // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
4831  private:
4832  ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy _internal_variable_selection_strategy() const;
4833  void _internal_set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value);
4834  public:
4835 
4836  // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
4840  private:
4841  ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy _internal_domain_reduction_strategy() const;
4842  void _internal_set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value);
4843  public:
4844 
4845  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto)
4846  private:
4847  class _Internal;
4848 
4849  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4850  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > variables_;
4851  mutable std::atomic<int> _variables_cached_byte_size_;
4852  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > transformations_;
4853  int variable_selection_strategy_;
4854  int domain_reduction_strategy_;
4855  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4856  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4857 };
4858 // -------------------------------------------------------------------
4859 
4861  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.PartialVariableAssignment) */ {
4862  public:
4864  virtual ~PartialVariableAssignment();
4865 
4869  *this = ::std::move(from);
4870  }
4871 
4873  CopyFrom(from);
4874  return *this;
4875  }
4877  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4878  if (this != &from) InternalSwap(&from);
4879  } else {
4880  CopyFrom(from);
4881  }
4882  return *this;
4883  }
4884 
4885  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4886  return GetDescriptor();
4887  }
4888  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4889  return GetMetadataStatic().descriptor;
4890  }
4891  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4892  return GetMetadataStatic().reflection;
4893  }
4895 
4896  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4898  return reinterpret_cast<const PartialVariableAssignment*>(
4900  }
4901  static constexpr int kIndexInFileMessages =
4902  23;
4903 
4905  a.Swap(&b);
4906  }
4907  inline void Swap(PartialVariableAssignment* other) {
4908  if (other == this) return;
4909  InternalSwap(other);
4910  }
4911 
4912  // implements Message ----------------------------------------------
4913 
4914  inline PartialVariableAssignment* New() const final {
4915  return CreateMaybeMessage<PartialVariableAssignment>(nullptr);
4916  }
4917 
4918  PartialVariableAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4919  return CreateMaybeMessage<PartialVariableAssignment>(arena);
4920  }
4921  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4922  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4923  void CopyFrom(const PartialVariableAssignment& from);
4924  void MergeFrom(const PartialVariableAssignment& from);
4925  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4926  bool IsInitialized() const final;
4927 
4928  size_t ByteSizeLong() const final;
4929  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4930  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4931  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4932  int GetCachedSize() const final { return _cached_size_.Get(); }
4933 
4934  private:
4935  inline void SharedCtor();
4936  inline void SharedDtor();
4937  void SetCachedSize(int size) const final;
4938  void InternalSwap(PartialVariableAssignment* other);
4939  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4940  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4941  return "operations_research.sat.PartialVariableAssignment";
4942  }
4943  private:
4944  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4945  return nullptr;
4946  }
4947  inline void* MaybeArenaPtr() const {
4948  return nullptr;
4949  }
4950  public:
4951 
4952  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4953  private:
4954  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4955  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4957  }
4958 
4959  public:
4960 
4961  // nested types ----------------------------------------------------
4962 
4963  // accessors -------------------------------------------------------
4964 
4965  enum : int {
4968  };
4969  // repeated int32 vars = 1;
4970  int vars_size() const;
4971  private:
4972  int _internal_vars_size() const;
4973  public:
4974  void clear_vars();
4975  private:
4976  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
4977  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4978  _internal_vars() const;
4979  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4980  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4981  _internal_mutable_vars();
4982  public:
4983  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
4984  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4985  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4986  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4987  vars() const;
4988  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4989  mutable_vars();
4990 
4991  // repeated int64 values = 2;
4992  int values_size() const;
4993  private:
4994  int _internal_values_size() const;
4995  public:
4996  void clear_values();
4997  private:
4998  ::PROTOBUF_NAMESPACE_ID::int64 _internal_values(int index) const;
4999  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5000  _internal_values() const;
5001  void _internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
5002  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5003  _internal_mutable_values();
5004  public:
5005  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
5006  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5007  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
5008  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5009  values() const;
5010  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5011  mutable_values();
5012 
5013  // @@protoc_insertion_point(class_scope:operations_research.sat.PartialVariableAssignment)
5014  private:
5015  class _Internal;
5016 
5017  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5018  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
5019  mutable std::atomic<int> _vars_cached_byte_size_;
5020  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
5021  mutable std::atomic<int> _values_cached_byte_size_;
5022  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5023  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5024 };
5025 // -------------------------------------------------------------------
5026 
5028  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpModelProto) */ {
5029  public:
5030  CpModelProto();
5031  virtual ~CpModelProto();
5032 
5033  CpModelProto(const CpModelProto& from);
5034  CpModelProto(CpModelProto&& from) noexcept
5035  : CpModelProto() {
5036  *this = ::std::move(from);
5037  }
5038 
5039  inline CpModelProto& operator=(const CpModelProto& from) {
5040  CopyFrom(from);
5041  return *this;
5042  }
5043  inline CpModelProto& operator=(CpModelProto&& from) noexcept {
5044  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
5045  if (this != &from) InternalSwap(&from);
5046  } else {
5047  CopyFrom(from);
5048  }
5049  return *this;
5050  }
5051 
5052  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
5053  return GetDescriptor();
5054  }
5055  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
5056  return GetMetadataStatic().descriptor;
5057  }
5058  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
5059  return GetMetadataStatic().reflection;
5060  }
5061  static const CpModelProto& default_instance();
5062 
5063  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
5064  static inline const CpModelProto* internal_default_instance() {
5065  return reinterpret_cast<const CpModelProto*>(
5067  }
5068  static constexpr int kIndexInFileMessages =
5069  24;
5070 
5071  friend void swap(CpModelProto& a, CpModelProto& b) {
5072  a.Swap(&b);
5073  }
5074  inline void Swap(CpModelProto* other) {
5075  if (other == this) return;
5076  InternalSwap(other);
5077  }
5078 
5079  // implements Message ----------------------------------------------
5080 
5081  inline CpModelProto* New() const final {
5082  return CreateMaybeMessage<CpModelProto>(nullptr);
5083  }
5084 
5085  CpModelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
5086  return CreateMaybeMessage<CpModelProto>(arena);
5087  }
5088  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5089  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5090  void CopyFrom(const CpModelProto& from);
5091  void MergeFrom(const CpModelProto& from);
5092  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
5093  bool IsInitialized() const final;
5094 
5095  size_t ByteSizeLong() const final;
5096  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
5097  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
5098  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
5099  int GetCachedSize() const final { return _cached_size_.Get(); }
5100 
5101  private:
5102  inline void SharedCtor();
5103  inline void SharedDtor();
5104  void SetCachedSize(int size) const final;
5105  void InternalSwap(CpModelProto* other);
5106  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
5107  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
5108  return "operations_research.sat.CpModelProto";
5109  }
5110  private:
5111  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
5112  return nullptr;
5113  }
5114  inline void* MaybeArenaPtr() const {
5115  return nullptr;
5116  }
5117  public:
5118 
5119  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
5120  private:
5121  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
5122  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
5124  }
5125 
5126  public:
5127 
5128  // nested types ----------------------------------------------------
5129 
5130  // accessors -------------------------------------------------------
5131 
5132  enum : int {
5139  };
5140  // repeated .operations_research.sat.IntegerVariableProto variables = 2;
5141  int variables_size() const;
5142  private:
5143  int _internal_variables_size() const;
5144  public:
5145  void clear_variables();
5147  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
5149  private:
5150  const ::operations_research::sat::IntegerVariableProto& _internal_variables(int index) const;
5151  ::operations_research::sat::IntegerVariableProto* _internal_add_variables();
5152  public:
5153  const ::operations_research::sat::IntegerVariableProto& variables(int index) const;
5155  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
5156  variables() const;
5157 
5158  // repeated .operations_research.sat.ConstraintProto constraints = 3;
5159  int constraints_size() const;
5160  private:
5161  int _internal_constraints_size() const;
5162  public:
5163  void clear_constraints();
5165  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
5167  private:
5168  const ::operations_research::sat::ConstraintProto& _internal_constraints(int index) const;
5169  ::operations_research::sat::ConstraintProto* _internal_add_constraints();
5170  public:
5171  const ::operations_research::sat::ConstraintProto& constraints(int index) const;
5173  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
5174  constraints() const;
5175 
5176  // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
5177  int search_strategy_size() const;
5178  private:
5179  int _internal_search_strategy_size() const;
5180  public:
5181  void clear_search_strategy();
5183  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
5185  private:
5186  const ::operations_research::sat::DecisionStrategyProto& _internal_search_strategy(int index) const;
5187  ::operations_research::sat::DecisionStrategyProto* _internal_add_search_strategy();
5188  public:
5189  const ::operations_research::sat::DecisionStrategyProto& search_strategy(int index) const;
5191  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
5192  search_strategy() const;
5193 
5194  // string name = 1;
5195  void clear_name();
5196  const std::string& name() const;
5197  void set_name(const std::string& value);
5198  void set_name(std::string&& value);
5199  void set_name(const char* value);
5200  void set_name(const char* value, size_t size);
5201  std::string* mutable_name();
5202  std::string* release_name();
5203  void set_allocated_name(std::string* name);
5204  private:
5205  const std::string& _internal_name() const;
5206  void _internal_set_name(const std::string& value);
5207  std::string* _internal_mutable_name();
5208  public:
5209 
5210  // .operations_research.sat.CpObjectiveProto objective = 4;
5211  bool has_objective() const;
5212  private:
5213  bool _internal_has_objective() const;
5214  public:
5215  void clear_objective();
5216  const ::operations_research::sat::CpObjectiveProto& objective() const;
5220  private:
5221  const ::operations_research::sat::CpObjectiveProto& _internal_objective() const;
5222  ::operations_research::sat::CpObjectiveProto* _internal_mutable_objective();
5223  public:
5224 
5225  // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
5226  bool has_solution_hint() const;
5227  private:
5228  bool _internal_has_solution_hint() const;
5229  public:
5230  void clear_solution_hint();
5231  const ::operations_research::sat::PartialVariableAssignment& solution_hint() const;
5235  private:
5236  const ::operations_research::sat::PartialVariableAssignment& _internal_solution_hint() const;
5237  ::operations_research::sat::PartialVariableAssignment* _internal_mutable_solution_hint();
5238  public:
5239 
5240  // @@protoc_insertion_point(class_scope:operations_research.sat.CpModelProto)
5241  private:
5242  class _Internal;
5243 
5244  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5245  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > variables_;
5246  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > constraints_;
5247  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > search_strategy_;
5248  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
5251  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5252  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5253 };
5254 // -------------------------------------------------------------------
5255 
5257  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpSolverResponse) */ {
5258  public:
5259  CpSolverResponse();
5260  virtual ~CpSolverResponse();
5261 
5262  CpSolverResponse(const CpSolverResponse& from);
5264  : CpSolverResponse() {
5265  *this = ::std::move(from);
5266  }
5267 
5269  CopyFrom(from);
5270  return *this;
5271  }
5272  inline CpSolverResponse& operator=(CpSolverResponse&& from) noexcept {
5273  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
5274  if (this != &from) InternalSwap(&from);
5275  } else {
5276  CopyFrom(from);
5277  }
5278  return *this;
5279  }
5280 
5281  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
5282  return GetDescriptor();
5283  }
5284  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
5285  return GetMetadataStatic().descriptor;
5286  }
5287  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
5288  return GetMetadataStatic().reflection;
5289  }
5290  static const CpSolverResponse& default_instance();
5291 
5292  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
5294  return reinterpret_cast<const CpSolverResponse*>(
5296  }
5297  static constexpr int kIndexInFileMessages =
5298  25;
5299 
5301  a.Swap(&b);
5302  }
5303  inline void Swap(CpSolverResponse* other) {
5304  if (other == this) return;
5305  InternalSwap(other);
5306  }
5307 
5308  // implements Message ----------------------------------------------
5309 
5310  inline CpSolverResponse* New() const final {
5311  return CreateMaybeMessage<CpSolverResponse>(nullptr);
5312  }
5313 
5314  CpSolverResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
5315  return CreateMaybeMessage<CpSolverResponse>(arena);
5316  }
5317  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5318  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5319  void CopyFrom(const CpSolverResponse& from);
5320  void MergeFrom(const CpSolverResponse& from);
5321  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
5322  bool IsInitialized() const final;
5323 
5324  size_t ByteSizeLong() const final;
5325  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
5326  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
5327  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
5328  int GetCachedSize() const final { return _cached_size_.Get(); }
5329 
5330  private:
5331  inline void SharedCtor();
5332  inline void SharedDtor();
5333  void SetCachedSize(int size) const final;
5334  void InternalSwap(CpSolverResponse* other);
5335  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
5336  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
5337  return "operations_research.sat.CpSolverResponse";
5338  }
5339  private:
5340  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
5341  return nullptr;
5342  }
5343  inline void* MaybeArenaPtr() const {
5344  return nullptr;
5345  }
5346  public:
5347 
5348  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
5349  private:
5350  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
5351  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
5353  }
5354 
5355  public:
5356 
5357  // nested types ----------------------------------------------------
5358 
5359  // accessors -------------------------------------------------------
5360 
5361  enum : int {
5380  };
5381  // repeated int64 solution = 2;
5382  int solution_size() const;
5383  private:
5384  int _internal_solution_size() const;
5385  public:
5386  void clear_solution();
5387  private:
5388  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution(int index) const;
5389  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5390  _internal_solution() const;
5391  void _internal_add_solution(::PROTOBUF_NAMESPACE_ID::int64 value);
5392  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5393  _internal_mutable_solution();
5394  public:
5395  ::PROTOBUF_NAMESPACE_ID::int64 solution(int index) const;
5396  void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5397  void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value);
5398  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5399  solution() const;
5400  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5401  mutable_solution();
5402 
5403  // repeated int64 solution_lower_bounds = 18;
5404  int solution_lower_bounds_size() const;
5405  private:
5406  int _internal_solution_lower_bounds_size() const;
5407  public:
5409  private:
5410  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution_lower_bounds(int index) const;
5411  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5412  _internal_solution_lower_bounds() const;
5413  void _internal_add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5414  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5415  _internal_mutable_solution_lower_bounds();
5416  public:
5417  ::PROTOBUF_NAMESPACE_ID::int64 solution_lower_bounds(int index) const;
5418  void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5419  void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5420  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5421  solution_lower_bounds() const;
5422  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5424 
5425  // repeated int64 solution_upper_bounds = 19;
5426  int solution_upper_bounds_size() const;
5427  private:
5428  int _internal_solution_upper_bounds_size() const;
5429  public:
5431  private:
5432  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution_upper_bounds(int index) const;
5433  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5434  _internal_solution_upper_bounds() const;
5435  void _internal_add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5436  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5437  _internal_mutable_solution_upper_bounds();
5438  public:
5439  ::PROTOBUF_NAMESPACE_ID::int64 solution_upper_bounds(int index) const;
5440  void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5441  void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5442  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5443  solution_upper_bounds() const;
5444  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5446 
5447  // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
5448  int tightened_variables_size() const;
5449  private:
5450  int _internal_tightened_variables_size() const;
5451  public:
5454  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
5456  private:
5457  const ::operations_research::sat::IntegerVariableProto& _internal_tightened_variables(int index) const;
5458  ::operations_research::sat::IntegerVariableProto* _internal_add_tightened_variables();
5459  public:
5460  const ::operations_research::sat::IntegerVariableProto& tightened_variables(int index) const;
5462  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
5463  tightened_variables() const;
5464 
5465  // string solution_info = 20;
5466  void clear_solution_info();
5467  const std::string& solution_info() const;
5468  void set_solution_info(const std::string& value);
5469  void set_solution_info(std::string&& value);
5470  void set_solution_info(const char* value);
5471  void set_solution_info(const char* value, size_t size);
5472  std::string* mutable_solution_info();
5473  std::string* release_solution_info();
5474  void set_allocated_solution_info(std::string* solution_info);
5475  private:
5476  const std::string& _internal_solution_info() const;
5477  void _internal_set_solution_info(const std::string& value);
5478  std::string* _internal_mutable_solution_info();
5479  public:
5480 
5481  // double objective_value = 3;
5482  void clear_objective_value();
5483  double objective_value() const;
5484  void set_objective_value(double value);
5485  private:
5486  double _internal_objective_value() const;
5487  void _internal_set_objective_value(double value);
5488  public:
5489 
5490  // .operations_research.sat.CpSolverStatus status = 1;
5491  void clear_status();
5494  private:
5495  ::operations_research::sat::CpSolverStatus _internal_status() const;
5496  void _internal_set_status(::operations_research::sat::CpSolverStatus value);
5497  public:
5498 
5499  // bool all_solutions_were_found = 5;
5501  bool all_solutions_were_found() const;
5502  void set_all_solutions_were_found(bool value);
5503  private:
5504  bool _internal_all_solutions_were_found() const;
5505  void _internal_set_all_solutions_were_found(bool value);
5506  public:
5507 
5508  // double best_objective_bound = 4;
5510  double best_objective_bound() const;
5511  void set_best_objective_bound(double value);
5512  private:
5513  double _internal_best_objective_bound() const;
5514  void _internal_set_best_objective_bound(double value);
5515  public:
5516 
5517  // int64 num_booleans = 10;
5518  void clear_num_booleans();
5519  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const;
5520  void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value);
5521  private:
5522  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_booleans() const;
5523  void _internal_set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value);
5524  public:
5525 
5526  // int64 num_conflicts = 11;
5527  void clear_num_conflicts();
5528  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const;
5529  void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
5530  private:
5531  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_conflicts() const;
5532  void _internal_set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
5533  public:
5534 
5535  // int64 num_branches = 12;
5536  void clear_num_branches();
5537  ::PROTOBUF_NAMESPACE_ID::int64 num_branches() const;
5538  void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value);
5539  private:
5540  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_branches() const;
5541  void _internal_set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value);
5542  public:
5543 
5544  // int64 num_binary_propagations = 13;
5546  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const;
5547  void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5548  private:
5549  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_binary_propagations() const;
5550  void _internal_set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5551  public:
5552 
5553  // int64 num_integer_propagations = 14;
5555  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const;
5556  void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5557  private:
5558  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_integer_propagations() const;
5559  void _internal_set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5560  public:
5561 
5562  // double wall_time = 15;
5563  void clear_wall_time();
5564  double wall_time() const;
5565  void set_wall_time(double value);
5566  private:
5567  double _internal_wall_time() const;
5568  void _internal_set_wall_time(double value);
5569  public:
5570 
5571  // double user_time = 16;
5572  void clear_user_time();
5573  double user_time() const;
5574  void set_user_time(double value);
5575  private:
5576  double _internal_user_time() const;
5577  void _internal_set_user_time(double value);
5578  public:
5579 
5580  // double deterministic_time = 17;
5581  void clear_deterministic_time();
5582  double deterministic_time() const;
5583  void set_deterministic_time(double value);
5584  private:
5585  double _internal_deterministic_time() const;
5586  void _internal_set_deterministic_time(double value);
5587  public:
5588 
5589  // double primal_integral = 22;
5590  void clear_primal_integral();
5591  double primal_integral() const;
5592  void set_primal_integral(double value);
5593  private:
5594  double _internal_primal_integral() const;
5595  void _internal_set_primal_integral(double value);
5596  public:
5597 
5598  // @@protoc_insertion_point(class_scope:operations_research.sat.CpSolverResponse)
5599  private:
5600  class _Internal;
5601 
5602  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5603  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_;
5604  mutable std::atomic<int> _solution_cached_byte_size_;
5605  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_lower_bounds_;
5606  mutable std::atomic<int> _solution_lower_bounds_cached_byte_size_;
5607  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_upper_bounds_;
5608  mutable std::atomic<int> _solution_upper_bounds_cached_byte_size_;
5609  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > tightened_variables_;
5610  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr solution_info_;
5611  double objective_value_;
5612  int status_;
5613  bool all_solutions_were_found_;
5614  double best_objective_bound_;
5615  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans_;
5616  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts_;
5617  ::PROTOBUF_NAMESPACE_ID::int64 num_branches_;
5618  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations_;
5619  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations_;
5620  double wall_time_;
5621  double user_time_;
5622  double deterministic_time_;
5623  double primal_integral_;
5624  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5625  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5626 };
5627 // ===================================================================
5628 
5629 
5630 // ===================================================================
5631 
5632 #ifdef __GNUC__
5633  #pragma GCC diagnostic push
5634  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
5635 #endif // __GNUC__
5636 // IntegerVariableProto
5637 
5638 // string name = 1;
5640  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5641 }
5642 inline const std::string& IntegerVariableProto::name() const {
5643  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.name)
5644  return _internal_name();
5645 }
5646 inline void IntegerVariableProto::set_name(const std::string& value) {
5647  _internal_set_name(value);
5648  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.name)
5649 }
5650 inline std::string* IntegerVariableProto::mutable_name() {
5651  // @@protoc_insertion_point(field_mutable:operations_research.sat.IntegerVariableProto.name)
5652  return _internal_mutable_name();
5653 }
5654 inline const std::string& IntegerVariableProto::_internal_name() const {
5655  return name_.GetNoArena();
5656 }
5657 inline void IntegerVariableProto::_internal_set_name(const std::string& value) {
5658 
5659  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
5660 }
5661 inline void IntegerVariableProto::set_name(std::string&& value) {
5662 
5663  name_.SetNoArena(
5664  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
5665  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.IntegerVariableProto.name)
5666 }
5667 inline void IntegerVariableProto::set_name(const char* value) {
5668  GOOGLE_DCHECK(value != nullptr);
5669 
5670  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5671  // @@protoc_insertion_point(field_set_char:operations_research.sat.IntegerVariableProto.name)
5672 }
5673 inline void IntegerVariableProto::set_name(const char* value, size_t size) {
5674 
5675  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5676  ::std::string(reinterpret_cast<const char*>(value), size));
5677  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.IntegerVariableProto.name)
5678 }
5679 inline std::string* IntegerVariableProto::_internal_mutable_name() {
5680 
5681  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5682 }
5683 inline std::string* IntegerVariableProto::release_name() {
5684  // @@protoc_insertion_point(field_release:operations_research.sat.IntegerVariableProto.name)
5685 
5686  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5687 }
5688 inline void IntegerVariableProto::set_allocated_name(std::string* name) {
5689  if (name != nullptr) {
5690 
5691  } else {
5692 
5693  }
5694  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
5695  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.IntegerVariableProto.name)
5696 }
5697 
5698 // repeated int64 domain = 2;
5699 inline int IntegerVariableProto::_internal_domain_size() const {
5700  return domain_.size();
5701 }
5703  return _internal_domain_size();
5704 }
5706  domain_.Clear();
5707 }
5708 inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerVariableProto::_internal_domain(int index) const {
5709  return domain_.Get(index);
5710 }
5711 inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerVariableProto::domain(int index) const {
5712  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.domain)
5713  return _internal_domain(index);
5714 }
5715 inline void IntegerVariableProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5716  domain_.Set(index, value);
5717  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.domain)
5718 }
5719 inline void IntegerVariableProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
5720  domain_.Add(value);
5721 }
5722 inline void IntegerVariableProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
5723  _internal_add_domain(value);
5724  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerVariableProto.domain)
5725 }
5726 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5727 IntegerVariableProto::_internal_domain() const {
5728  return domain_;
5729 }
5730 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5732  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerVariableProto.domain)
5733  return _internal_domain();
5734 }
5735 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5736 IntegerVariableProto::_internal_mutable_domain() {
5737  return &domain_;
5738 }
5739 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5741  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerVariableProto.domain)
5742  return _internal_mutable_domain();
5743 }
5744 
5745 // -------------------------------------------------------------------
5746 
5747 // BoolArgumentProto
5748 
5749 // repeated int32 literals = 1;
5750 inline int BoolArgumentProto::_internal_literals_size() const {
5751  return literals_.size();
5752 }
5754  return _internal_literals_size();
5755 }
5757  literals_.Clear();
5758 }
5759 inline ::PROTOBUF_NAMESPACE_ID::int32 BoolArgumentProto::_internal_literals(int index) const {
5760  return literals_.Get(index);
5761 }
5762 inline ::PROTOBUF_NAMESPACE_ID::int32 BoolArgumentProto::literals(int index) const {
5763  // @@protoc_insertion_point(field_get:operations_research.sat.BoolArgumentProto.literals)
5764  return _internal_literals(index);
5765 }
5766 inline void BoolArgumentProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5767  literals_.Set(index, value);
5768  // @@protoc_insertion_point(field_set:operations_research.sat.BoolArgumentProto.literals)
5769 }
5770 inline void BoolArgumentProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5771  literals_.Add(value);
5772 }
5773 inline void BoolArgumentProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5774  _internal_add_literals(value);
5775  // @@protoc_insertion_point(field_add:operations_research.sat.BoolArgumentProto.literals)
5776 }
5777 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5778 BoolArgumentProto::_internal_literals() const {
5779  return literals_;
5780 }
5781 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5783  // @@protoc_insertion_point(field_list:operations_research.sat.BoolArgumentProto.literals)
5784  return _internal_literals();
5785 }
5786 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5787 BoolArgumentProto::_internal_mutable_literals() {
5788  return &literals_;
5789 }
5790 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5792  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.BoolArgumentProto.literals)
5793  return _internal_mutable_literals();
5794 }
5795 
5796 // -------------------------------------------------------------------
5797 
5798 // IntegerArgumentProto
5799 
5800 // int32 target = 1;
5802  target_ = 0;
5803 }
5804 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::_internal_target() const {
5805  return target_;
5806 }
5807 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::target() const {
5808  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.target)
5809  return _internal_target();
5810 }
5811 inline void IntegerArgumentProto::_internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
5812 
5813  target_ = value;
5814 }
5815 inline void IntegerArgumentProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
5816  _internal_set_target(value);
5817  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.target)
5818 }
5819 
5820 // repeated int32 vars = 2;
5821 inline int IntegerArgumentProto::_internal_vars_size() const {
5822  return vars_.size();
5823 }
5825  return _internal_vars_size();
5826 }
5828  vars_.Clear();
5829 }
5830 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::_internal_vars(int index) const {
5831  return vars_.Get(index);
5832 }
5833 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::vars(int index) const {
5834  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.vars)
5835  return _internal_vars(index);
5836 }
5837 inline void IntegerArgumentProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5838  vars_.Set(index, value);
5839  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.vars)
5840 }
5841 inline void IntegerArgumentProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5842  vars_.Add(value);
5843 }
5844 inline void IntegerArgumentProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5845  _internal_add_vars(value);
5846  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerArgumentProto.vars)
5847 }
5848 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5849 IntegerArgumentProto::_internal_vars() const {
5850  return vars_;
5851 }
5852 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5854  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerArgumentProto.vars)
5855  return _internal_vars();
5856 }
5857 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5858 IntegerArgumentProto::_internal_mutable_vars() {
5859  return &vars_;
5860 }
5861 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5863  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerArgumentProto.vars)
5864  return _internal_mutable_vars();
5865 }
5866 
5867 // -------------------------------------------------------------------
5868 
5869 // LinearExpressionProto
5870 
5871 // repeated int32 vars = 1;
5872 inline int LinearExpressionProto::_internal_vars_size() const {
5873  return vars_.size();
5874 }
5876  return _internal_vars_size();
5877 }
5879  vars_.Clear();
5880 }
5881 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::_internal_vars(int index) const {
5882  return vars_.Get(index);
5883 }
5884 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::vars(int index) const {
5885  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.vars)
5886  return _internal_vars(index);
5887 }
5888 inline void LinearExpressionProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5889  vars_.Set(index, value);
5890  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.vars)
5891 }
5892 inline void LinearExpressionProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5893  vars_.Add(value);
5894 }
5895 inline void LinearExpressionProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5896  _internal_add_vars(value);
5897  // @@protoc_insertion_point(field_add:operations_research.sat.LinearExpressionProto.vars)
5898 }
5899 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5900 LinearExpressionProto::_internal_vars() const {
5901  return vars_;
5902 }
5903 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5905  // @@protoc_insertion_point(field_list:operations_research.sat.LinearExpressionProto.vars)
5906  return _internal_vars();
5907 }
5908 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5909 LinearExpressionProto::_internal_mutable_vars() {
5910  return &vars_;
5911 }
5912 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5914  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearExpressionProto.vars)
5915  return _internal_mutable_vars();
5916 }
5917 
5918 // repeated int32 coeffs = 2;
5919 inline int LinearExpressionProto::_internal_coeffs_size() const {
5920  return coeffs_.size();
5921 }
5923  return _internal_coeffs_size();
5924 }
5926  coeffs_.Clear();
5927 }
5928 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::_internal_coeffs(int index) const {
5929  return coeffs_.Get(index);
5930 }
5931 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::coeffs(int index) const {
5932  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.coeffs)
5933  return _internal_coeffs(index);
5934 }
5935 inline void LinearExpressionProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5936  coeffs_.Set(index, value);
5937  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.coeffs)
5938 }
5939 inline void LinearExpressionProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
5940  coeffs_.Add(value);
5941 }
5942 inline void LinearExpressionProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
5943  _internal_add_coeffs(value);
5944  // @@protoc_insertion_point(field_add:operations_research.sat.LinearExpressionProto.coeffs)
5945 }
5946 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5947 LinearExpressionProto::_internal_coeffs() const {
5948  return coeffs_;
5949 }
5950 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5952  // @@protoc_insertion_point(field_list:operations_research.sat.LinearExpressionProto.coeffs)
5953  return _internal_coeffs();
5954 }
5955 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5956 LinearExpressionProto::_internal_mutable_coeffs() {
5957  return &coeffs_;
5958 }
5959 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5961  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearExpressionProto.coeffs)
5962  return _internal_mutable_coeffs();
5963 }
5964 
5965 // int64 offset = 3;
5967  offset_ = PROTOBUF_LONGLONG(0);
5968 }
5969 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearExpressionProto::_internal_offset() const {
5970  return offset_;
5971 }
5972 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearExpressionProto::offset() const {
5973  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.offset)
5974  return _internal_offset();
5975 }
5976 inline void LinearExpressionProto::_internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
5977 
5978  offset_ = value;
5979 }
5980 inline void LinearExpressionProto::set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
5981  _internal_set_offset(value);
5982  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.offset)
5983 }
5984 
5985 // -------------------------------------------------------------------
5986 
5987 // LinearArgumentProto
5988 
5989 // .operations_research.sat.LinearExpressionProto target = 1;
5990 inline bool LinearArgumentProto::_internal_has_target() const {
5991  return this != internal_default_instance() && target_ != nullptr;
5992 }
5993 inline bool LinearArgumentProto::has_target() const {
5994  return _internal_has_target();
5995 }
5997  if (GetArenaNoVirtual() == nullptr && target_ != nullptr) {
5998  delete target_;
5999  }
6000  target_ = nullptr;
6001 }
6002 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::_internal_target() const {
6003  const ::operations_research::sat::LinearExpressionProto* p = target_;
6004  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::LinearExpressionProto*>(
6006 }
6007 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::target() const {
6008  // @@protoc_insertion_point(field_get:operations_research.sat.LinearArgumentProto.target)
6009  return _internal_target();
6010 }
6011 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::release_target() {
6012  // @@protoc_insertion_point(field_release:operations_research.sat.LinearArgumentProto.target)
6013 
6015  target_ = nullptr;
6016  return temp;
6017 }
6018 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::_internal_mutable_target() {
6019 
6020  if (target_ == nullptr) {
6021  auto* p = CreateMaybeMessage<::operations_research::sat::LinearExpressionProto>(GetArenaNoVirtual());
6022  target_ = p;
6023  }
6024  return target_;
6025 }
6026 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::mutable_target() {
6027  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearArgumentProto.target)
6028  return _internal_mutable_target();
6029 }
6031  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6032  if (message_arena == nullptr) {
6033  delete target_;
6034  }
6035  if (target) {
6036  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6037  if (message_arena != submessage_arena) {
6038  target = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6039  message_arena, target, submessage_arena);
6040  }
6041 
6042  } else {
6043 
6044  }
6045  target_ = target;
6046  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearArgumentProto.target)
6047 }
6048 
6049 // repeated .operations_research.sat.LinearExpressionProto exprs = 2;
6050 inline int LinearArgumentProto::_internal_exprs_size() const {
6051  return exprs_.size();
6052 }
6054  return _internal_exprs_size();
6055 }
6057  exprs_.Clear();
6058 }
6059 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::mutable_exprs(int index) {
6060  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearArgumentProto.exprs)
6061  return exprs_.Mutable(index);
6062 }
6063 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >*
6065  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearArgumentProto.exprs)
6066  return &exprs_;
6067 }
6068 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::_internal_exprs(int index) const {
6069  return exprs_.Get(index);
6070 }
6071 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::exprs(int index) const {
6072  // @@protoc_insertion_point(field_get:operations_research.sat.LinearArgumentProto.exprs)
6073  return _internal_exprs(index);
6074 }
6075 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::_internal_add_exprs() {
6076  return exprs_.Add();
6077 }
6078 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::add_exprs() {
6079  // @@protoc_insertion_point(field_add:operations_research.sat.LinearArgumentProto.exprs)
6080  return _internal_add_exprs();
6081 }
6082 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >&
6084  // @@protoc_insertion_point(field_list:operations_research.sat.LinearArgumentProto.exprs)
6085  return exprs_;
6086 }
6087 
6088 // -------------------------------------------------------------------
6089 
6090 // AllDifferentConstraintProto
6091 
6092 // repeated int32 vars = 1;
6093 inline int AllDifferentConstraintProto::_internal_vars_size() const {
6094  return vars_.size();
6095 }
6097  return _internal_vars_size();
6098 }
6100  vars_.Clear();
6101 }
6102 inline ::PROTOBUF_NAMESPACE_ID::int32 AllDifferentConstraintProto::_internal_vars(int index) const {
6103  return vars_.Get(index);
6104 }
6105 inline ::PROTOBUF_NAMESPACE_ID::int32 AllDifferentConstraintProto::vars(int index) const {
6106  // @@protoc_insertion_point(field_get:operations_research.sat.AllDifferentConstraintProto.vars)
6107  return _internal_vars(index);
6108 }
6109 inline void AllDifferentConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6110  vars_.Set(index, value);
6111  // @@protoc_insertion_point(field_set:operations_research.sat.AllDifferentConstraintProto.vars)
6112 }
6113 inline void AllDifferentConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6114  vars_.Add(value);
6115 }
6116 inline void AllDifferentConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6117  _internal_add_vars(value);
6118  // @@protoc_insertion_point(field_add:operations_research.sat.AllDifferentConstraintProto.vars)
6119 }
6120 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6121 AllDifferentConstraintProto::_internal_vars() const {
6122  return vars_;
6123 }
6124 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6126  // @@protoc_insertion_point(field_list:operations_research.sat.AllDifferentConstraintProto.vars)
6127  return _internal_vars();
6128 }
6129 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6130 AllDifferentConstraintProto::_internal_mutable_vars() {
6131  return &vars_;
6132 }
6133 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6135  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AllDifferentConstraintProto.vars)
6136  return _internal_mutable_vars();
6137 }
6138 
6139 // -------------------------------------------------------------------
6140 
6141 // LinearConstraintProto
6142 
6143 // repeated int32 vars = 1;
6144 inline int LinearConstraintProto::_internal_vars_size() const {
6145  return vars_.size();
6146 }
6148  return _internal_vars_size();
6149 }
6151  vars_.Clear();
6152 }
6153 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearConstraintProto::_internal_vars(int index) const {
6154  return vars_.Get(index);
6155 }
6156 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearConstraintProto::vars(int index) const {
6157  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.vars)
6158  return _internal_vars(index);
6159 }
6160 inline void LinearConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6161  vars_.Set(index, value);
6162  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.vars)
6163 }
6164 inline void LinearConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6165  vars_.Add(value);
6166 }
6167 inline void LinearConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6168  _internal_add_vars(value);
6169  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.vars)
6170 }
6171 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6172 LinearConstraintProto::_internal_vars() const {
6173  return vars_;
6174 }
6175 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6177  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.vars)
6178  return _internal_vars();
6179 }
6180 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6181 LinearConstraintProto::_internal_mutable_vars() {
6182  return &vars_;
6183 }
6184 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6186  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.vars)
6187  return _internal_mutable_vars();
6188 }
6189 
6190 // repeated int64 coeffs = 2;
6191 inline int LinearConstraintProto::_internal_coeffs_size() const {
6192  return coeffs_.size();
6193 }
6195  return _internal_coeffs_size();
6196 }
6198  coeffs_.Clear();
6199 }
6200 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::_internal_coeffs(int index) const {
6201  return coeffs_.Get(index);
6202 }
6203 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::coeffs(int index) const {
6204  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.coeffs)
6205  return _internal_coeffs(index);
6206 }
6207 inline void LinearConstraintProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6208  coeffs_.Set(index, value);
6209  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.coeffs)
6210 }
6211 inline void LinearConstraintProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
6212  coeffs_.Add(value);
6213 }
6214 inline void LinearConstraintProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
6215  _internal_add_coeffs(value);
6216  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.coeffs)
6217 }
6218 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6219 LinearConstraintProto::_internal_coeffs() const {
6220  return coeffs_;
6221 }
6222 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6224  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.coeffs)
6225  return _internal_coeffs();
6226 }
6227 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6228 LinearConstraintProto::_internal_mutable_coeffs() {
6229  return &coeffs_;
6230 }
6231 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6233  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.coeffs)
6234  return _internal_mutable_coeffs();
6235 }
6236 
6237 // repeated int64 domain = 3;
6238 inline int LinearConstraintProto::_internal_domain_size() const {
6239  return domain_.size();
6240 }
6242  return _internal_domain_size();
6243 }
6245  domain_.Clear();
6246 }
6247 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::_internal_domain(int index) const {
6248  return domain_.Get(index);
6249 }
6250 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::domain(int index) const {
6251  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.domain)
6252  return _internal_domain(index);
6253 }
6254 inline void LinearConstraintProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6255  domain_.Set(index, value);
6256  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.domain)
6257 }
6258 inline void LinearConstraintProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
6259  domain_.Add(value);
6260 }
6261 inline void LinearConstraintProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
6262  _internal_add_domain(value);
6263  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.domain)
6264 }
6265 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6266 LinearConstraintProto::_internal_domain() const {
6267  return domain_;
6268 }
6269 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6271  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.domain)
6272  return _internal_domain();
6273 }
6274 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6275 LinearConstraintProto::_internal_mutable_domain() {
6276  return &domain_;
6277 }
6278 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6280  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.domain)
6281  return _internal_mutable_domain();
6282 }
6283 
6284 // -------------------------------------------------------------------
6285 
6286 // ElementConstraintProto
6287 
6288 // int32 index = 1;
6290  index_ = 0;
6291 }
6292 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_index() const {
6293  return index_;
6294 }
6295 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::index() const {
6296  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.index)
6297  return _internal_index();
6298 }
6299 inline void ElementConstraintProto::_internal_set_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
6300 
6301  index_ = value;
6302 }
6303 inline void ElementConstraintProto::set_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
6304  _internal_set_index(value);
6305  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.index)
6306 }
6307 
6308 // int32 target = 2;
6310  target_ = 0;
6311 }
6312 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_target() const {
6313  return target_;
6314 }
6315 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::target() const {
6316  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.target)
6317  return _internal_target();
6318 }
6319 inline void ElementConstraintProto::_internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6320 
6321  target_ = value;
6322 }
6323 inline void ElementConstraintProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6324  _internal_set_target(value);
6325  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.target)
6326 }
6327 
6328 // repeated int32 vars = 3;
6329 inline int ElementConstraintProto::_internal_vars_size() const {
6330  return vars_.size();
6331 }
6333  return _internal_vars_size();
6334 }
6336  vars_.Clear();
6337 }
6338 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_vars(int index) const {
6339  return vars_.Get(index);
6340 }
6341 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::vars(int index) const {
6342  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.vars)
6343  return _internal_vars(index);
6344 }
6345 inline void ElementConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6346  vars_.Set(index, value);
6347  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.vars)
6348 }
6349 inline void ElementConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6350  vars_.Add(value);
6351 }
6352 inline void ElementConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6353  _internal_add_vars(value);
6354  // @@protoc_insertion_point(field_add:operations_research.sat.ElementConstraintProto.vars)
6355 }
6356 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6357 ElementConstraintProto::_internal_vars() const {
6358  return vars_;
6359 }
6360 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6362  // @@protoc_insertion_point(field_list:operations_research.sat.ElementConstraintProto.vars)
6363  return _internal_vars();
6364 }
6365 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6366 ElementConstraintProto::_internal_mutable_vars() {
6367  return &vars_;
6368 }
6369 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6371  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ElementConstraintProto.vars)
6372  return _internal_mutable_vars();
6373 }
6374 
6375 // -------------------------------------------------------------------
6376 
6377 // IntervalConstraintProto
6378 
6379 // int32 start = 1;
6381  start_ = 0;
6382 }
6383 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_start() const {
6384  return start_;
6385 }
6386 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::start() const {
6387  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.start)
6388  return _internal_start();
6389 }
6390 inline void IntervalConstraintProto::_internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
6391 
6392  start_ = value;
6393 }
6394 inline void IntervalConstraintProto::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
6395  _internal_set_start(value);
6396  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.start)
6397 }
6398 
6399 // int32 end = 2;
6401  end_ = 0;
6402 }
6403 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_end() const {
6404  return end_;
6405 }
6406 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::end() const {
6407  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.end)
6408  return _internal_end();
6409 }
6410 inline void IntervalConstraintProto::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) {
6411 
6412  end_ = value;
6413 }
6414 inline void IntervalConstraintProto::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) {
6415  _internal_set_end(value);
6416  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.end)
6417 }
6418 
6419 // int32 size = 3;
6421  size_ = 0;
6422 }
6423 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_size() const {
6424  return size_;
6425 }
6426 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::size() const {
6427  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.size)
6428  return _internal_size();
6429 }
6430 inline void IntervalConstraintProto::_internal_set_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6431 
6432  size_ = value;
6433 }
6434 inline void IntervalConstraintProto::set_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6435  _internal_set_size(value);
6436  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.size)
6437 }
6438 
6439 // -------------------------------------------------------------------
6440 
6441 // NoOverlapConstraintProto
6442 
6443 // repeated int32 intervals = 1;
6444 inline int NoOverlapConstraintProto::_internal_intervals_size() const {
6445  return intervals_.size();
6446 }
6448  return _internal_intervals_size();
6449 }
6451  intervals_.Clear();
6452 }
6453 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlapConstraintProto::_internal_intervals(int index) const {
6454  return intervals_.Get(index);
6455 }
6456 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlapConstraintProto::intervals(int index) const {
6457  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlapConstraintProto.intervals)
6458  return _internal_intervals(index);
6459 }
6460 inline void NoOverlapConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6461  intervals_.Set(index, value);
6462  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlapConstraintProto.intervals)
6463 }
6464 inline void NoOverlapConstraintProto::_internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6465  intervals_.Add(value);
6466 }
6467 inline void NoOverlapConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6468  _internal_add_intervals(value);
6469  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlapConstraintProto.intervals)
6470 }
6471 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6472 NoOverlapConstraintProto::_internal_intervals() const {
6473  return intervals_;
6474 }
6475 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6477  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlapConstraintProto.intervals)
6478  return _internal_intervals();
6479 }
6480 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6481 NoOverlapConstraintProto::_internal_mutable_intervals() {
6482  return &intervals_;
6483 }
6484 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6486  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlapConstraintProto.intervals)
6487  return _internal_mutable_intervals();
6488 }
6489 
6490 // -------------------------------------------------------------------
6491 
6492 // NoOverlap2DConstraintProto
6493 
6494 // repeated int32 x_intervals = 1;
6495 inline int NoOverlap2DConstraintProto::_internal_x_intervals_size() const {
6496  return x_intervals_.size();
6497 }
6499  return _internal_x_intervals_size();
6500 }
6502  x_intervals_.Clear();
6503 }
6504 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::_internal_x_intervals(int index) const {
6505  return x_intervals_.Get(index);
6506 }
6507 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::x_intervals(int index) const {
6508  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6509  return _internal_x_intervals(index);
6510 }
6511 inline void NoOverlap2DConstraintProto::set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6512  x_intervals_.Set(index, value);
6513  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6514 }
6515 inline void NoOverlap2DConstraintProto::_internal_add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6516  x_intervals_.Add(value);
6517 }
6518 inline void NoOverlap2DConstraintProto::add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6519  _internal_add_x_intervals(value);
6520  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6521 }
6522 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6523 NoOverlap2DConstraintProto::_internal_x_intervals() const {
6524  return x_intervals_;
6525 }
6526 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6528  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6529  return _internal_x_intervals();
6530 }
6531 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6532 NoOverlap2DConstraintProto::_internal_mutable_x_intervals() {
6533  return &x_intervals_;
6534 }
6535 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6537  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6538  return _internal_mutable_x_intervals();
6539 }
6540 
6541 // repeated int32 y_intervals = 2;
6542 inline int NoOverlap2DConstraintProto::_internal_y_intervals_size() const {
6543  return y_intervals_.size();
6544 }
6546  return _internal_y_intervals_size();
6547 }
6549  y_intervals_.Clear();
6550 }
6551 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::_internal_y_intervals(int index) const {
6552  return y_intervals_.Get(index);
6553 }
6554 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::y_intervals(int index) const {
6555  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6556  return _internal_y_intervals(index);
6557 }
6558 inline void NoOverlap2DConstraintProto::set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6559  y_intervals_.Set(index, value);
6560  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6561 }
6562 inline void NoOverlap2DConstraintProto::_internal_add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6563  y_intervals_.Add(value);
6564 }
6565 inline void NoOverlap2DConstraintProto::add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6566  _internal_add_y_intervals(value);
6567  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6568 }
6569 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6570 NoOverlap2DConstraintProto::_internal_y_intervals() const {
6571  return y_intervals_;
6572 }
6573 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6575  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6576  return _internal_y_intervals();
6577 }
6578 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6579 NoOverlap2DConstraintProto::_internal_mutable_y_intervals() {
6580  return &y_intervals_;
6581 }
6582 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6584  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6585  return _internal_mutable_y_intervals();
6586 }
6587 
6588 // bool boxes_with_null_area_can_overlap = 3;
6590  boxes_with_null_area_can_overlap_ = false;
6591 }
6592 inline bool NoOverlap2DConstraintProto::_internal_boxes_with_null_area_can_overlap() const {
6593  return boxes_with_null_area_can_overlap_;
6594 }
6596  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.boxes_with_null_area_can_overlap)
6597  return _internal_boxes_with_null_area_can_overlap();
6598 }
6599 inline void NoOverlap2DConstraintProto::_internal_set_boxes_with_null_area_can_overlap(bool value) {
6600 
6601  boxes_with_null_area_can_overlap_ = value;
6602 }
6604  _internal_set_boxes_with_null_area_can_overlap(value);
6605  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.boxes_with_null_area_can_overlap)
6606 }
6607 
6608 // -------------------------------------------------------------------
6609 
6610 // CumulativeConstraintProto
6611 
6612 // int32 capacity = 1;
6614  capacity_ = 0;
6615 }
6616 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_capacity() const {
6617  return capacity_;
6618 }
6619 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::capacity() const {
6620  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.capacity)
6621  return _internal_capacity();
6622 }
6623 inline void CumulativeConstraintProto::_internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value) {
6624 
6625  capacity_ = value;
6626 }
6627 inline void CumulativeConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value) {
6628  _internal_set_capacity(value);
6629  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.capacity)
6630 }
6631 
6632 // repeated int32 intervals = 2;
6633 inline int CumulativeConstraintProto::_internal_intervals_size() const {
6634  return intervals_.size();
6635 }
6637  return _internal_intervals_size();
6638 }
6640  intervals_.Clear();
6641 }
6642 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_intervals(int index) const {
6643  return intervals_.Get(index);
6644 }
6645 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::intervals(int index) const {
6646  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.intervals)
6647  return _internal_intervals(index);
6648 }
6649 inline void CumulativeConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6650  intervals_.Set(index, value);
6651  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.intervals)
6652 }
6653 inline void CumulativeConstraintProto::_internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6654  intervals_.Add(value);
6655 }
6656 inline void CumulativeConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6657  _internal_add_intervals(value);
6658  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.intervals)
6659 }
6660 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6661 CumulativeConstraintProto::_internal_intervals() const {
6662  return intervals_;
6663 }
6664 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6666  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.intervals)
6667  return _internal_intervals();
6668 }
6669 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6670 CumulativeConstraintProto::_internal_mutable_intervals() {
6671  return &intervals_;
6672 }
6673 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6675  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.intervals)
6676  return _internal_mutable_intervals();
6677 }
6678 
6679 // repeated int32 demands = 3;
6680 inline int CumulativeConstraintProto::_internal_demands_size() const {
6681  return demands_.size();
6682 }
6684  return _internal_demands_size();
6685 }
6687  demands_.Clear();
6688 }
6689 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_demands(int index) const {
6690  return demands_.Get(index);
6691 }
6692 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::demands(int index) const {
6693  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.demands)
6694  return _internal_demands(index);
6695 }
6696 inline void CumulativeConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6697  demands_.Set(index, value);
6698  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.demands)
6699 }
6700 inline void CumulativeConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
6701  demands_.Add(value);
6702 }
6703 inline void CumulativeConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
6704  _internal_add_demands(value);
6705  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.demands)
6706 }
6707 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6708 CumulativeConstraintProto::_internal_demands() const {
6709  return demands_;
6710 }
6711 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6713  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.demands)
6714  return _internal_demands();
6715 }
6716 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6717 CumulativeConstraintProto::_internal_mutable_demands() {
6718  return &demands_;
6719 }
6720 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6722  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.demands)
6723  return _internal_mutable_demands();
6724 }
6725 
6726 // -------------------------------------------------------------------
6727 
6728 // ReservoirConstraintProto
6729 
6730 // int64 min_level = 1;
6732  min_level_ = PROTOBUF_LONGLONG(0);
6733 }
6734 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_min_level() const {
6735  return min_level_;
6736 }
6737 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::min_level() const {
6738  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.min_level)
6739  return _internal_min_level();
6740 }
6741 inline void ReservoirConstraintProto::_internal_set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6742 
6743  min_level_ = value;
6744 }
6745 inline void ReservoirConstraintProto::set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6746  _internal_set_min_level(value);
6747  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.min_level)
6748 }
6749 
6750 // int64 max_level = 2;
6752  max_level_ = PROTOBUF_LONGLONG(0);
6753 }
6754 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_max_level() const {
6755  return max_level_;
6756 }
6757 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::max_level() const {
6758  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.max_level)
6759  return _internal_max_level();
6760 }
6761 inline void ReservoirConstraintProto::_internal_set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6762 
6763  max_level_ = value;
6764 }
6765 inline void ReservoirConstraintProto::set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6766  _internal_set_max_level(value);
6767  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.max_level)
6768 }
6769 
6770 // repeated int32 times = 3;
6771 inline int ReservoirConstraintProto::_internal_times_size() const {
6772  return times_.size();
6773 }
6775  return _internal_times_size();
6776 }
6778  times_.Clear();
6779 }
6780 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::_internal_times(int index) const {
6781  return times_.Get(index);
6782 }
6783 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::times(int index) const {
6784  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.times)
6785  return _internal_times(index);
6786 }
6787 inline void ReservoirConstraintProto::set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6788  times_.Set(index, value);
6789  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.times)
6790 }
6791 inline void ReservoirConstraintProto::_internal_add_times(::PROTOBUF_NAMESPACE_ID::int32 value) {
6792  times_.Add(value);
6793 }
6794 inline void ReservoirConstraintProto::add_times(::PROTOBUF_NAMESPACE_ID::int32 value) {
6795  _internal_add_times(value);
6796  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.times)
6797 }
6798 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6799 ReservoirConstraintProto::_internal_times() const {
6800  return times_;
6801 }
6802 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6804  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.times)
6805  return _internal_times();
6806 }
6807 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6808 ReservoirConstraintProto::_internal_mutable_times() {
6809  return &times_;
6810 }
6811 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6813  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.times)
6814  return _internal_mutable_times();
6815 }
6816 
6817 // repeated int64 demands = 4;
6818 inline int ReservoirConstraintProto::_internal_demands_size() const {
6819  return demands_.size();
6820 }
6822  return _internal_demands_size();
6823 }
6825  demands_.Clear();
6826 }
6827 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_demands(int index) const {
6828  return demands_.Get(index);
6829 }
6830 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::demands(int index) const {
6831  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.demands)
6832  return _internal_demands(index);
6833 }
6834 inline void ReservoirConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6835  demands_.Set(index, value);
6836  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.demands)
6837 }
6838 inline void ReservoirConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int64 value) {
6839  demands_.Add(value);
6840 }
6841 inline void ReservoirConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int64 value) {
6842  _internal_add_demands(value);
6843  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.demands)
6844 }
6845 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6846 ReservoirConstraintProto::_internal_demands() const {
6847  return demands_;
6848 }
6849 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6851  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.demands)
6852  return _internal_demands();
6853 }
6854 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6855 ReservoirConstraintProto::_internal_mutable_demands() {
6856  return &demands_;
6857 }
6858 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6860  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.demands)
6861  return _internal_mutable_demands();
6862 }
6863 
6864 // repeated int32 actives = 5;
6865 inline int ReservoirConstraintProto::_internal_actives_size() const {
6866  return actives_.size();
6867 }
6869  return _internal_actives_size();
6870 }
6872  actives_.Clear();
6873 }
6874 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::_internal_actives(int index) const {
6875  return actives_.Get(index);
6876 }
6877 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::actives(int index) const {
6878  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.actives)
6879  return _internal_actives(index);
6880 }
6881 inline void ReservoirConstraintProto::set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6882  actives_.Set(index, value);
6883  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.actives)
6884 }
6885 inline void ReservoirConstraintProto::_internal_add_actives(::PROTOBUF_NAMESPACE_ID::int32 value) {
6886  actives_.Add(value);
6887 }
6888 inline void ReservoirConstraintProto::add_actives(::PROTOBUF_NAMESPACE_ID::int32 value) {
6889  _internal_add_actives(value);
6890  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.actives)
6891 }
6892 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6893 ReservoirConstraintProto::_internal_actives() const {
6894  return actives_;
6895 }
6896 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6898  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.actives)
6899  return _internal_actives();
6900 }
6901 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6902 ReservoirConstraintProto::_internal_mutable_actives() {
6903  return &actives_;
6904 }
6905 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6907  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.actives)
6908  return _internal_mutable_actives();
6909 }
6910 
6911 // -------------------------------------------------------------------
6912 
6913 // CircuitConstraintProto
6914 
6915 // repeated int32 tails = 3;
6916 inline int CircuitConstraintProto::_internal_tails_size() const {
6917  return tails_.size();
6918 }
6920  return _internal_tails_size();
6921 }
6923  tails_.Clear();
6924 }
6925 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_tails(int index) const {
6926  return tails_.Get(index);
6927 }
6928 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::tails(int index) const {
6929  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.tails)
6930  return _internal_tails(index);
6931 }
6932 inline void CircuitConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6933  tails_.Set(index, value);
6934  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.tails)
6935 }
6936 inline void CircuitConstraintProto::_internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
6937  tails_.Add(value);
6938 }
6939 inline void CircuitConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
6940  _internal_add_tails(value);
6941  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.tails)
6942 }
6943 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6944 CircuitConstraintProto::_internal_tails() const {
6945  return tails_;
6946 }
6947 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6949  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.tails)
6950  return _internal_tails();
6951 }
6952 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6953 CircuitConstraintProto::_internal_mutable_tails() {
6954  return &tails_;
6955 }
6956 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6958  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.tails)
6959  return _internal_mutable_tails();
6960 }
6961 
6962 // repeated int32 heads = 4;
6963 inline int CircuitConstraintProto::_internal_heads_size() const {
6964  return heads_.size();
6965 }
6967  return _internal_heads_size();
6968 }
6970  heads_.Clear();
6971 }
6972 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_heads(int index) const {
6973  return heads_.Get(index);
6974 }
6975 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::heads(int index) const {
6976  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.heads)
6977  return _internal_heads(index);
6978 }
6979 inline void CircuitConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6980  heads_.Set(index, value);
6981  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.heads)
6982 }
6983 inline void CircuitConstraintProto::_internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
6984  heads_.Add(value);
6985 }
6986 inline void CircuitConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
6987  _internal_add_heads(value);
6988  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.heads)
6989 }
6990 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6991 CircuitConstraintProto::_internal_heads() const {
6992  return heads_;
6993 }
6994 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6996  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.heads)
6997  return _internal_heads();
6998 }
6999 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7000 CircuitConstraintProto::_internal_mutable_heads() {
7001  return &heads_;
7002 }
7003 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7005  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.heads)
7006  return _internal_mutable_heads();
7007 }
7008 
7009 // repeated int32 literals = 5;
7010 inline int CircuitConstraintProto::_internal_literals_size() const {
7011  return literals_.size();
7012 }
7014  return _internal_literals_size();
7015 }
7017  literals_.Clear();
7018 }
7019 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_literals(int index) const {
7020  return literals_.Get(index);
7021 }
7022 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::literals(int index) const {
7023  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.literals)
7024  return _internal_literals(index);
7025 }
7026 inline void CircuitConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7027  literals_.Set(index, value);
7028  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.literals)
7029 }
7030 inline void CircuitConstraintProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7031  literals_.Add(value);
7032 }
7033 inline void CircuitConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7034  _internal_add_literals(value);
7035  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.literals)
7036 }
7037 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7038 CircuitConstraintProto::_internal_literals() const {
7039  return literals_;
7040 }
7041 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7043  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.literals)
7044  return _internal_literals();
7045 }
7046 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7047 CircuitConstraintProto::_internal_mutable_literals() {
7048  return &literals_;
7049 }
7050 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7052  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.literals)
7053  return _internal_mutable_literals();
7054 }
7055 
7056 // -------------------------------------------------------------------
7057 
7058 // RoutesConstraintProto
7059 
7060 // repeated int32 tails = 1;
7061 inline int RoutesConstraintProto::_internal_tails_size() const {
7062  return tails_.size();
7063 }
7065  return _internal_tails_size();
7066 }
7068  tails_.Clear();
7069 }
7070 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_tails(int index) const {
7071  return tails_.Get(index);
7072 }
7073 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::tails(int index) const {
7074  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.tails)
7075  return _internal_tails(index);
7076 }
7077 inline void RoutesConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7078  tails_.Set(index, value);
7079  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.tails)
7080 }
7081 inline void RoutesConstraintProto::_internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
7082  tails_.Add(value);
7083 }
7084 inline void RoutesConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
7085  _internal_add_tails(value);
7086  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.tails)
7087 }
7088 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7089 RoutesConstraintProto::_internal_tails() const {
7090  return tails_;
7091 }
7092 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7094  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.tails)
7095  return _internal_tails();
7096 }
7097 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7098 RoutesConstraintProto::_internal_mutable_tails() {
7099  return &tails_;
7100 }
7101 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7103  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.tails)
7104  return _internal_mutable_tails();
7105 }
7106 
7107 // repeated int32 heads = 2;
7108 inline int RoutesConstraintProto::_internal_heads_size() const {
7109  return heads_.size();
7110 }
7112  return _internal_heads_size();
7113 }
7115  heads_.Clear();
7116 }
7117 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_heads(int index) const {
7118  return heads_.Get(index);
7119 }
7120 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::heads(int index) const {
7121  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.heads)
7122  return _internal_heads(index);
7123 }
7124 inline void RoutesConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7125  heads_.Set(index, value);
7126  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.heads)
7127 }
7128 inline void RoutesConstraintProto::_internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7129  heads_.Add(value);
7130 }
7131 inline void RoutesConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7132  _internal_add_heads(value);
7133  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.heads)
7134 }
7135 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7136 RoutesConstraintProto::_internal_heads() const {
7137  return heads_;
7138 }
7139 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7141  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.heads)
7142  return _internal_heads();
7143 }
7144 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7145 RoutesConstraintProto::_internal_mutable_heads() {
7146  return &heads_;
7147 }
7148 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7150  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.heads)
7151  return _internal_mutable_heads();
7152 }
7153 
7154 // repeated int32 literals = 3;
7155 inline int RoutesConstraintProto::_internal_literals_size() const {
7156  return literals_.size();
7157 }
7159  return _internal_literals_size();
7160 }
7162  literals_.Clear();
7163 }
7164 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_literals(int index) const {
7165  return literals_.Get(index);
7166 }
7167 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::literals(int index) const {
7168  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.literals)
7169  return _internal_literals(index);
7170 }
7171 inline void RoutesConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7172  literals_.Set(index, value);
7173  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.literals)
7174 }
7175 inline void RoutesConstraintProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7176  literals_.Add(value);
7177 }
7178 inline void RoutesConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7179  _internal_add_literals(value);
7180  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.literals)
7181 }
7182 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7183 RoutesConstraintProto::_internal_literals() const {
7184  return literals_;
7185 }
7186 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7188  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.literals)
7189  return _internal_literals();
7190 }
7191 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7192 RoutesConstraintProto::_internal_mutable_literals() {
7193  return &literals_;
7194 }
7195 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7197  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.literals)
7198  return _internal_mutable_literals();
7199 }
7200 
7201 // repeated int32 demands = 4;
7202 inline int RoutesConstraintProto::_internal_demands_size() const {
7203  return demands_.size();
7204 }
7206  return _internal_demands_size();
7207 }
7209  demands_.Clear();
7210 }
7211 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_demands(int index) const {
7212  return demands_.Get(index);
7213 }
7214 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::demands(int index) const {
7215  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.demands)
7216  return _internal_demands(index);
7217 }
7218 inline void RoutesConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7219  demands_.Set(index, value);
7220  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.demands)
7221 }
7222 inline void RoutesConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
7223  demands_.Add(value);
7224 }
7225 inline void RoutesConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
7226  _internal_add_demands(value);
7227  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.demands)
7228 }
7229 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7230 RoutesConstraintProto::_internal_demands() const {
7231  return demands_;
7232 }
7233 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7235  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.demands)
7236  return _internal_demands();
7237 }
7238 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7239 RoutesConstraintProto::_internal_mutable_demands() {
7240  return &demands_;
7241 }
7242 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7244  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.demands)
7245  return _internal_mutable_demands();
7246 }
7247 
7248 // int64 capacity = 5;
7250  capacity_ = PROTOBUF_LONGLONG(0);
7251 }
7252 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutesConstraintProto::_internal_capacity() const {
7253  return capacity_;
7254 }
7255 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutesConstraintProto::capacity() const {
7256  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.capacity)
7257  return _internal_capacity();
7258 }
7259 inline void RoutesConstraintProto::_internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
7260 
7261  capacity_ = value;
7262 }
7263 inline void RoutesConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
7264  _internal_set_capacity(value);
7265  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.capacity)
7266 }
7267 
7268 // -------------------------------------------------------------------
7269 
7270 // CircuitCoveringConstraintProto
7271 
7272 // repeated int32 nexts = 1;
7273 inline int CircuitCoveringConstraintProto::_internal_nexts_size() const {
7274  return nexts_.size();
7275 }
7277  return _internal_nexts_size();
7278 }
7280  nexts_.Clear();
7281 }
7282 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitCoveringConstraintProto::_internal_nexts(int index) const {
7283  return nexts_.Get(index);
7284 }
7285 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitCoveringConstraintProto::nexts(int index) const {
7286  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7287  return _internal_nexts(index);
7288 }
7289 inline void CircuitCoveringConstraintProto::set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7290  nexts_.Set(index, value);
7291  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7292 }
7293 inline void CircuitCoveringConstraintProto::_internal_add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7294  nexts_.Add(value);
7295 }
7296 inline void CircuitCoveringConstraintProto::add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7297  _internal_add_nexts(value);
7298  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7299 }
7300 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7301 CircuitCoveringConstraintProto::_internal_nexts() const {
7302  return nexts_;
7303 }
7304 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7306  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7307  return _internal_nexts();
7308 }
7309 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7310 CircuitCoveringConstraintProto::_internal_mutable_nexts() {
7311  return &nexts_;
7312 }
7313 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7315  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7316  return _internal_mutable_nexts();
7317 }
7318 
7319 // repeated int64 distinguished_nodes = 2;
7320 inline int CircuitCoveringConstraintProto::_internal_distinguished_nodes_size() const {
7321  return distinguished_nodes_.size();
7322 }
7324  return _internal_distinguished_nodes_size();
7325 }
7327  distinguished_nodes_.Clear();
7328 }
7329 inline ::PROTOBUF_NAMESPACE_ID::int64 CircuitCoveringConstraintProto::_internal_distinguished_nodes(int index) const {
7330  return distinguished_nodes_.Get(index);
7331 }
7332 inline ::PROTOBUF_NAMESPACE_ID::int64 CircuitCoveringConstraintProto::distinguished_nodes(int index) const {
7333  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7334  return _internal_distinguished_nodes(index);
7335 }
7336 inline void CircuitCoveringConstraintProto::set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7337  distinguished_nodes_.Set(index, value);
7338  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7339 }
7340 inline void CircuitCoveringConstraintProto::_internal_add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
7341  distinguished_nodes_.Add(value);
7342 }
7343 inline void CircuitCoveringConstraintProto::add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
7344  _internal_add_distinguished_nodes(value);
7345  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7346 }
7347 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7348 CircuitCoveringConstraintProto::_internal_distinguished_nodes() const {
7349  return distinguished_nodes_;
7350 }
7351 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7353  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7354  return _internal_distinguished_nodes();
7355 }
7356 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7357 CircuitCoveringConstraintProto::_internal_mutable_distinguished_nodes() {
7358  return &distinguished_nodes_;
7359 }
7360 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7362  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7363  return _internal_mutable_distinguished_nodes();
7364 }
7365 
7366 // -------------------------------------------------------------------
7367 
7368 // TableConstraintProto
7369 
7370 // repeated int32 vars = 1;
7371 inline int TableConstraintProto::_internal_vars_size() const {
7372  return vars_.size();
7373 }
7375  return _internal_vars_size();
7376 }
7378  vars_.Clear();
7379 }
7380 inline ::PROTOBUF_NAMESPACE_ID::int32 TableConstraintProto::_internal_vars(int index) const {
7381  return vars_.Get(index);
7382 }
7383 inline ::PROTOBUF_NAMESPACE_ID::int32 TableConstraintProto::vars(int index) const {
7384  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.vars)
7385  return _internal_vars(index);
7386 }
7387 inline void TableConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7388  vars_.Set(index, value);
7389  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.vars)
7390 }
7391 inline void TableConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7392  vars_.Add(value);
7393 }
7394 inline void TableConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7395  _internal_add_vars(value);
7396  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.vars)
7397 }
7398 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7399 TableConstraintProto::_internal_vars() const {
7400  return vars_;
7401 }
7402 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7404  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.vars)
7405  return _internal_vars();
7406 }
7407 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7408 TableConstraintProto::_internal_mutable_vars() {
7409  return &vars_;
7410 }
7411 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7413  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.vars)
7414  return _internal_mutable_vars();
7415 }
7416 
7417 // repeated int64 values = 2;
7418 inline int TableConstraintProto::_internal_values_size() const {
7419  return values_.size();
7420 }
7422  return _internal_values_size();
7423 }
7425  values_.Clear();
7426 }
7427 inline ::PROTOBUF_NAMESPACE_ID::int64 TableConstraintProto::_internal_values(int index) const {
7428  return values_.Get(index);
7429 }
7430 inline ::PROTOBUF_NAMESPACE_ID::int64 TableConstraintProto::values(int index) const {
7431  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.values)
7432  return _internal_values(index);
7433 }
7434 inline void TableConstraintProto::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7435  values_.Set(index, value);
7436  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.values)
7437 }
7438 inline void TableConstraintProto::_internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
7439  values_.Add(value);
7440 }
7441 inline void TableConstraintProto::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
7442  _internal_add_values(value);
7443  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.values)
7444 }
7445 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7446 TableConstraintProto::_internal_values() const {
7447  return values_;
7448 }
7449 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7451  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.values)
7452  return _internal_values();
7453 }
7454 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7455 TableConstraintProto::_internal_mutable_values() {
7456  return &values_;
7457 }
7458 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7460  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.values)
7461  return _internal_mutable_values();
7462 }
7463 
7464 // bool negated = 3;
7466  negated_ = false;
7467 }
7468 inline bool TableConstraintProto::_internal_negated() const {
7469  return negated_;
7470 }
7471 inline bool TableConstraintProto::negated() const {
7472  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.negated)
7473  return _internal_negated();
7474 }
7475 inline void TableConstraintProto::_internal_set_negated(bool value) {
7476 
7477  negated_ = value;
7478 }
7479 inline void TableConstraintProto::set_negated(bool value) {
7480  _internal_set_negated(value);
7481  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.negated)
7482 }
7483 
7484 // -------------------------------------------------------------------
7485 
7486 // InverseConstraintProto
7487 
7488 // repeated int32 f_direct = 1;
7489 inline int InverseConstraintProto::_internal_f_direct_size() const {
7490  return f_direct_.size();
7491 }
7493  return _internal_f_direct_size();
7494 }
7496  f_direct_.Clear();
7497 }
7498 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::_internal_f_direct(int index) const {
7499  return f_direct_.Get(index);
7500 }
7501 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_direct(int index) const {
7502  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_direct)
7503  return _internal_f_direct(index);
7504 }
7505 inline void InverseConstraintProto::set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7506  f_direct_.Set(index, value);
7507  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_direct)
7508 }
7509 inline void InverseConstraintProto::_internal_add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
7510  f_direct_.Add(value);
7511 }
7512 inline void InverseConstraintProto::add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
7513  _internal_add_f_direct(value);
7514  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_direct)
7515 }
7516 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7517 InverseConstraintProto::_internal_f_direct() const {
7518  return f_direct_;
7519 }
7520 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7522  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_direct)
7523  return _internal_f_direct();
7524 }
7525 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7526 InverseConstraintProto::_internal_mutable_f_direct() {
7527  return &f_direct_;
7528 }
7529 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7531  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_direct)
7532  return _internal_mutable_f_direct();
7533 }
7534 
7535 // repeated int32 f_inverse = 2;
7536 inline int InverseConstraintProto::_internal_f_inverse_size() const {
7537  return f_inverse_.size();
7538 }
7540  return _internal_f_inverse_size();
7541 }
7543  f_inverse_.Clear();
7544 }
7545 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::_internal_f_inverse(int index) const {
7546  return f_inverse_.Get(index);
7547 }
7548 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_inverse(int index) const {
7549  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_inverse)
7550  return _internal_f_inverse(index);
7551 }
7552 inline void InverseConstraintProto::set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7553  f_inverse_.Set(index, value);
7554  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_inverse)
7555 }
7556 inline void InverseConstraintProto::_internal_add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value) {
7557  f_inverse_.Add(value);
7558 }
7559 inline void InverseConstraintProto::add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value) {
7560  _internal_add_f_inverse(value);
7561  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_inverse)
7562 }
7563 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7564 InverseConstraintProto::_internal_f_inverse() const {
7565  return f_inverse_;
7566 }
7567 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7569  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_inverse)
7570  return _internal_f_inverse();
7571 }
7572 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7573 InverseConstraintProto::_internal_mutable_f_inverse() {
7574  return &f_inverse_;
7575 }
7576 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7578  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_inverse)
7579  return _internal_mutable_f_inverse();
7580 }
7581 
7582 // -------------------------------------------------------------------
7583 
7584 // AutomatonConstraintProto
7585 
7586 // int64 starting_state = 2;
7588  starting_state_ = PROTOBUF_LONGLONG(0);
7589 }
7590 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_starting_state() const {
7591  return starting_state_;
7592 }
7593 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::starting_state() const {
7594  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.starting_state)
7595  return _internal_starting_state();
7596 }
7597 inline void AutomatonConstraintProto::_internal_set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value) {
7598 
7599  starting_state_ = value;
7600 }
7601 inline void AutomatonConstraintProto::set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value) {
7602  _internal_set_starting_state(value);
7603  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.starting_state)
7604 }
7605 
7606 // repeated int64 final_states = 3;
7607 inline int AutomatonConstraintProto::_internal_final_states_size() const {
7608  return final_states_.size();
7609 }
7611  return _internal_final_states_size();
7612 }
7614  final_states_.Clear();
7615 }
7616 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_final_states(int index) const {
7617  return final_states_.Get(index);
7618 }
7619 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::final_states(int index) const {
7620  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.final_states)
7621  return _internal_final_states(index);
7622 }
7623 inline void AutomatonConstraintProto::set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7624  final_states_.Set(index, value);
7625  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.final_states)
7626 }
7627 inline void AutomatonConstraintProto::_internal_add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value) {
7628  final_states_.Add(value);
7629 }
7630 inline void AutomatonConstraintProto::add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value) {
7631  _internal_add_final_states(value);
7632  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.final_states)
7633 }
7634 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7635 AutomatonConstraintProto::_internal_final_states() const {
7636  return final_states_;
7637 }
7638 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7640  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.final_states)
7641  return _internal_final_states();
7642 }
7643 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7644 AutomatonConstraintProto::_internal_mutable_final_states() {
7645  return &final_states_;
7646 }
7647 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7649  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.final_states)
7650  return _internal_mutable_final_states();
7651 }
7652 
7653 // repeated int64 transition_tail = 4;
7654 inline int AutomatonConstraintProto::_internal_transition_tail_size() const {
7655  return transition_tail_.size();
7656 }
7658  return _internal_transition_tail_size();
7659 }
7661  transition_tail_.Clear();
7662 }
7663 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_tail(int index) const {
7664  return transition_tail_.Get(index);
7665 }
7666 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_tail(int index) const {
7667  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_tail)
7668  return _internal_transition_tail(index);
7669 }
7670 inline void AutomatonConstraintProto::set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7671  transition_tail_.Set(index, value);
7672  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_tail)
7673 }
7674 inline void AutomatonConstraintProto::_internal_add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value) {
7675  transition_tail_.Add(value);
7676 }
7677 inline void AutomatonConstraintProto::add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value) {
7678  _internal_add_transition_tail(value);
7679  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_tail)
7680 }
7681 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7682 AutomatonConstraintProto::_internal_transition_tail() const {
7683  return transition_tail_;
7684 }
7685 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7687  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
7688  return _internal_transition_tail();
7689 }
7690 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7691 AutomatonConstraintProto::_internal_mutable_transition_tail() {
7692  return &transition_tail_;
7693 }
7694 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7696  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
7697  return _internal_mutable_transition_tail();
7698 }
7699 
7700 // repeated int64 transition_head = 5;
7701 inline int AutomatonConstraintProto::_internal_transition_head_size() const {
7702  return transition_head_.size();
7703 }
7705  return _internal_transition_head_size();
7706 }
7708  transition_head_.Clear();
7709 }
7710 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_head(int index) const {
7711  return transition_head_.Get(index);
7712 }
7713 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_head(int index) const {
7714  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_head)
7715  return _internal_transition_head(index);
7716 }
7717 inline void AutomatonConstraintProto::set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7718  transition_head_.Set(index, value);
7719  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_head)
7720 }
7721 inline void AutomatonConstraintProto::_internal_add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value) {
7722  transition_head_.Add(value);
7723 }
7724 inline void AutomatonConstraintProto::add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value) {
7725  _internal_add_transition_head(value);
7726  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_head)
7727 }
7728 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7729 AutomatonConstraintProto::_internal_transition_head() const {
7730  return transition_head_;
7731 }
7732 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7734  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_head)
7735  return _internal_transition_head();
7736 }
7737 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7738 AutomatonConstraintProto::_internal_mutable_transition_head() {
7739  return &transition_head_;
7740 }
7741 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7743  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_head)
7744  return _internal_mutable_transition_head();
7745 }
7746 
7747 // repeated int64 transition_label = 6;
7748 inline int AutomatonConstraintProto::_internal_transition_label_size() const {
7749  return transition_label_.size();
7750 }
7752  return _internal_transition_label_size();
7753 }
7755  transition_label_.Clear();
7756 }
7757 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_label(int index) const {
7758  return transition_label_.Get(index);
7759 }
7760 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_label(int index) const {
7761  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_label)
7762  return _internal_transition_label(index);
7763 }
7764 inline void AutomatonConstraintProto::set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7765  transition_label_.Set(index, value);
7766  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_label)
7767 }
7768 inline void AutomatonConstraintProto::_internal_add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value) {
7769  transition_label_.Add(value);
7770 }
7771 inline void AutomatonConstraintProto::add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value) {
7772  _internal_add_transition_label(value);
7773  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_label)
7774 }
7775 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7776 AutomatonConstraintProto::_internal_transition_label() const {
7777  return transition_label_;
7778 }
7779 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7781  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_label)
7782  return _internal_transition_label();
7783 }
7784 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7785 AutomatonConstraintProto::_internal_mutable_transition_label() {
7786  return &transition_label_;
7787 }
7788 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7790  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_label)
7791  return _internal_mutable_transition_label();
7792 }
7793 
7794 // repeated int32 vars = 7;
7795 inline int AutomatonConstraintProto::_internal_vars_size() const {
7796  return vars_.size();
7797 }
7799  return _internal_vars_size();
7800 }
7802  vars_.Clear();
7803 }
7804 inline ::PROTOBUF_NAMESPACE_ID::int32 AutomatonConstraintProto::_internal_vars(int index) const {
7805  return vars_.Get(index);
7806 }
7807 inline ::PROTOBUF_NAMESPACE_ID::int32 AutomatonConstraintProto::vars(int index) const {
7808  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.vars)
7809  return _internal_vars(index);
7810 }
7811 inline void AutomatonConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7812  vars_.Set(index, value);
7813  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.vars)
7814 }
7815 inline void AutomatonConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7816  vars_.Add(value);
7817 }
7818 inline void AutomatonConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7819  _internal_add_vars(value);
7820  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.vars)
7821 }
7822 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7823 AutomatonConstraintProto::_internal_vars() const {
7824  return vars_;
7825 }
7826 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7828  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.vars)
7829  return _internal_vars();
7830 }
7831 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7832 AutomatonConstraintProto::_internal_mutable_vars() {
7833  return &vars_;
7834 }
7835 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7837  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.vars)
7838  return _internal_mutable_vars();
7839 }
7840 
7841 // -------------------------------------------------------------------
7842 
7843 // ConstraintProto
7844 
7845 // string name = 1;
7847  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7848 }
7849 inline const std::string& ConstraintProto::name() const {
7850  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.name)
7851  return _internal_name();
7852 }
7853 inline void ConstraintProto::set_name(const std::string& value) {
7854  _internal_set_name(value);
7855  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.name)
7856 }
7857 inline std::string* ConstraintProto::mutable_name() {
7858  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.name)
7859  return _internal_mutable_name();
7860 }
7861 inline const std::string& ConstraintProto::_internal_name() const {
7862  return name_.GetNoArena();
7863 }
7864 inline void ConstraintProto::_internal_set_name(const std::string& value) {
7865 
7866  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7867 }
7868 inline void ConstraintProto::set_name(std::string&& value) {
7869 
7870  name_.SetNoArena(
7871  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7872  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.ConstraintProto.name)
7873 }
7874 inline void ConstraintProto::set_name(const char* value) {
7875  GOOGLE_DCHECK(value != nullptr);
7876 
7877  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7878  // @@protoc_insertion_point(field_set_char:operations_research.sat.ConstraintProto.name)
7879 }
7880 inline void ConstraintProto::set_name(const char* value, size_t size) {
7881 
7882  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7883  ::std::string(reinterpret_cast<const char*>(value), size));
7884  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.ConstraintProto.name)
7885 }
7886 inline std::string* ConstraintProto::_internal_mutable_name() {
7887 
7888  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7889 }
7890 inline std::string* ConstraintProto::release_name() {
7891  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.name)
7892 
7893  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7894 }
7895 inline void ConstraintProto::set_allocated_name(std::string* name) {
7896  if (name != nullptr) {
7897 
7898  } else {
7899 
7900  }
7901  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
7902  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.ConstraintProto.name)
7903 }
7904 
7905 // repeated int32 enforcement_literal = 2;
7906 inline int ConstraintProto::_internal_enforcement_literal_size() const {
7907  return enforcement_literal_.size();
7908 }
7910  return _internal_enforcement_literal_size();
7911 }
7913  enforcement_literal_.Clear();
7914 }
7915 inline ::PROTOBUF_NAMESPACE_ID::int32 ConstraintProto::_internal_enforcement_literal(int index) const {
7916  return enforcement_literal_.Get(index);
7917 }
7918 inline ::PROTOBUF_NAMESPACE_ID::int32 ConstraintProto::enforcement_literal(int index) const {
7919  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.enforcement_literal)
7920  return _internal_enforcement_literal(index);
7921 }
7922 inline void ConstraintProto::set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7923  enforcement_literal_.Set(index, value);
7924  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.enforcement_literal)
7925 }
7926 inline void ConstraintProto::_internal_add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value) {
7927  enforcement_literal_.Add(value);
7928 }
7929 inline void ConstraintProto::add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value) {
7930  _internal_add_enforcement_literal(value);
7931  // @@protoc_insertion_point(field_add:operations_research.sat.ConstraintProto.enforcement_literal)
7932 }
7933 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7934 ConstraintProto::_internal_enforcement_literal() const {
7935  return enforcement_literal_;
7936 }
7937 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7939  // @@protoc_insertion_point(field_list:operations_research.sat.ConstraintProto.enforcement_literal)
7940  return _internal_enforcement_literal();
7941 }
7942 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7943 ConstraintProto::_internal_mutable_enforcement_literal() {
7944  return &enforcement_literal_;
7945 }
7946 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7948  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ConstraintProto.enforcement_literal)
7949  return _internal_mutable_enforcement_literal();
7950 }
7951 
7952 // .operations_research.sat.BoolArgumentProto bool_or = 3;
7953 inline bool ConstraintProto::_internal_has_bool_or() const {
7954  return constraint_case() == kBoolOr;
7955 }
7956 inline bool ConstraintProto::has_bool_or() const {
7957  return _internal_has_bool_or();
7958 }
7959 inline void ConstraintProto::set_has_bool_or() {
7960  _oneof_case_[0] = kBoolOr;
7961 }
7963  if (_internal_has_bool_or()) {
7964  delete constraint_.bool_or_;
7965  clear_has_constraint();
7966  }
7967 }
7968 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_or() {
7969  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_or)
7970  if (_internal_has_bool_or()) {
7971  clear_has_constraint();
7972  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_or_;
7973  constraint_.bool_or_ = nullptr;
7974  return temp;
7975  } else {
7976  return nullptr;
7977  }
7978 }
7979 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_or() const {
7980  return _internal_has_bool_or()
7981  ? *constraint_.bool_or_
7983 }
7984 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_or() const {
7985  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_or)
7986  return _internal_bool_or();
7987 }
7988 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_or() {
7989  if (!_internal_has_bool_or()) {
7990  clear_constraint();
7991  set_has_bool_or();
7992  constraint_.bool_or_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
7993  GetArenaNoVirtual());
7994  }
7995  return constraint_.bool_or_;
7996 }
7997 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_or() {
7998  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_or)
7999  return _internal_mutable_bool_or();
8000 }
8001 
8002 // .operations_research.sat.BoolArgumentProto bool_and = 4;
8003 inline bool ConstraintProto::_internal_has_bool_and() const {
8004  return constraint_case() == kBoolAnd;
8005 }
8006 inline bool ConstraintProto::has_bool_and() const {
8007  return _internal_has_bool_and();
8008 }
8009 inline void ConstraintProto::set_has_bool_and() {
8010  _oneof_case_[0] = kBoolAnd;
8011 }
8013  if (_internal_has_bool_and()) {
8014  delete constraint_.bool_and_;
8015  clear_has_constraint();
8016  }
8017 }
8018 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_and() {
8019  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_and)
8020  if (_internal_has_bool_and()) {
8021  clear_has_constraint();
8022  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_and_;
8023  constraint_.bool_and_ = nullptr;
8024  return temp;
8025  } else {
8026  return nullptr;
8027  }
8028 }
8029 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_and() const {
8030  return _internal_has_bool_and()
8031  ? *constraint_.bool_and_
8033 }
8034 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_and() const {
8035  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_and)
8036  return _internal_bool_and();
8037 }
8038 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_and() {
8039  if (!_internal_has_bool_and()) {
8040  clear_constraint();
8041  set_has_bool_and();
8042  constraint_.bool_and_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8043  GetArenaNoVirtual());
8044  }
8045  return constraint_.bool_and_;
8046 }
8047 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_and() {
8048  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_and)
8049  return _internal_mutable_bool_and();
8050 }
8051 
8052 // .operations_research.sat.BoolArgumentProto at_most_one = 26;
8053 inline bool ConstraintProto::_internal_has_at_most_one() const {
8054  return constraint_case() == kAtMostOne;
8055 }
8057  return _internal_has_at_most_one();
8058 }
8059 inline void ConstraintProto::set_has_at_most_one() {
8060  _oneof_case_[0] = kAtMostOne;
8061 }
8063  if (_internal_has_at_most_one()) {
8064  delete constraint_.at_most_one_;
8065  clear_has_constraint();
8066  }
8067 }
8068 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_at_most_one() {
8069  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.at_most_one)
8070  if (_internal_has_at_most_one()) {
8071  clear_has_constraint();
8072  ::operations_research::sat::BoolArgumentProto* temp = constraint_.at_most_one_;
8073  constraint_.at_most_one_ = nullptr;
8074  return temp;
8075  } else {
8076  return nullptr;
8077  }
8078 }
8079 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_at_most_one() const {
8080  return _internal_has_at_most_one()
8081  ? *constraint_.at_most_one_
8083 }
8084 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::at_most_one() const {
8085  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.at_most_one)
8086  return _internal_at_most_one();
8087 }
8088 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_at_most_one() {
8089  if (!_internal_has_at_most_one()) {
8090  clear_constraint();
8091  set_has_at_most_one();
8092  constraint_.at_most_one_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8093  GetArenaNoVirtual());
8094  }
8095  return constraint_.at_most_one_;
8096 }
8097 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_at_most_one() {
8098  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.at_most_one)
8099  return _internal_mutable_at_most_one();
8100 }
8101 
8102 // .operations_research.sat.BoolArgumentProto bool_xor = 5;
8103 inline bool ConstraintProto::_internal_has_bool_xor() const {
8104  return constraint_case() == kBoolXor;
8105 }
8106 inline bool ConstraintProto::has_bool_xor() const {
8107  return _internal_has_bool_xor();
8108 }
8109 inline void ConstraintProto::set_has_bool_xor() {
8110  _oneof_case_[0] = kBoolXor;
8111 }
8113  if (_internal_has_bool_xor()) {
8114  delete constraint_.bool_xor_;
8115  clear_has_constraint();
8116  }
8117 }
8118 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_xor() {
8119  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_xor)
8120  if (_internal_has_bool_xor()) {
8121  clear_has_constraint();
8122  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_xor_;
8123  constraint_.bool_xor_ = nullptr;
8124  return temp;
8125  } else {
8126  return nullptr;
8127  }
8128 }
8129 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_xor() const {
8130  return _internal_has_bool_xor()
8131  ? *constraint_.bool_xor_
8133 }
8134 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_xor() const {
8135  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_xor)
8136  return _internal_bool_xor();
8137 }
8138 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_xor() {
8139  if (!_internal_has_bool_xor()) {
8140  clear_constraint();
8141  set_has_bool_xor();
8142  constraint_.bool_xor_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8143  GetArenaNoVirtual());
8144  }
8145  return constraint_.bool_xor_;
8146 }
8147 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_xor() {
8148  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_xor)
8149  return _internal_mutable_bool_xor();
8150 }
8151 
8152 // .operations_research.sat.IntegerArgumentProto int_div = 7;
8153 inline bool ConstraintProto::_internal_has_int_div() const {
8154  return constraint_case() == kIntDiv;
8155 }
8156 inline bool ConstraintProto::has_int_div() const {
8157  return _internal_has_int_div();
8158 }
8159 inline void ConstraintProto::set_has_int_div() {
8160  _oneof_case_[0] = kIntDiv;
8161 }
8163  if (_internal_has_int_div()) {
8164  delete constraint_.int_div_;
8165  clear_has_constraint();
8166  }
8167 }
8168 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_div() {
8169  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_div)
8170  if (_internal_has_int_div()) {
8171  clear_has_constraint();
8172  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_div_;
8173  constraint_.int_div_ = nullptr;
8174  return temp;
8175  } else {
8176  return nullptr;
8177  }
8178 }
8179 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_div() const {
8180  return _internal_has_int_div()
8181  ? *constraint_.int_div_
8183 }
8184 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_div() const {
8185  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_div)
8186  return _internal_int_div();
8187 }
8188 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_div() {
8189  if (!_internal_has_int_div()) {
8190  clear_constraint();
8191  set_has_int_div();
8192  constraint_.int_div_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8193  GetArenaNoVirtual());
8194  }
8195  return constraint_.int_div_;
8196 }
8197 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_div() {
8198  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_div)
8199  return _internal_mutable_int_div();
8200 }
8201 
8202 // .operations_research.sat.IntegerArgumentProto int_mod = 8;
8203 inline bool ConstraintProto::_internal_has_int_mod() const {
8204  return constraint_case() == kIntMod;
8205 }
8206 inline bool ConstraintProto::has_int_mod() const {
8207  return _internal_has_int_mod();
8208 }
8209 inline void ConstraintProto::set_has_int_mod() {
8210  _oneof_case_[0] = kIntMod;
8211 }
8213  if (_internal_has_int_mod()) {
8214  delete constraint_.int_mod_;
8215  clear_has_constraint();
8216  }
8217 }
8218 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_mod() {
8219  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_mod)
8220  if (_internal_has_int_mod()) {
8221  clear_has_constraint();
8222  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_mod_;
8223  constraint_.int_mod_ = nullptr;
8224  return temp;
8225  } else {
8226  return nullptr;
8227  }
8228 }
8229 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_mod() const {
8230  return _internal_has_int_mod()
8231  ? *constraint_.int_mod_
8233 }
8234 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_mod() const {
8235  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_mod)
8236  return _internal_int_mod();
8237 }
8238 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_mod() {
8239  if (!_internal_has_int_mod()) {
8240  clear_constraint();
8241  set_has_int_mod();
8242  constraint_.int_mod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8243  GetArenaNoVirtual());
8244  }
8245  return constraint_.int_mod_;
8246 }
8247 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_mod() {
8248  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_mod)
8249  return _internal_mutable_int_mod();
8250 }
8251 
8252 // .operations_research.sat.IntegerArgumentProto int_max = 9;
8253 inline bool ConstraintProto::_internal_has_int_max() const {
8254  return constraint_case() == kIntMax;
8255 }
8256 inline bool ConstraintProto::has_int_max() const {
8257  return _internal_has_int_max();
8258 }
8259 inline void ConstraintProto::set_has_int_max() {
8260  _oneof_case_[0] = kIntMax;
8261 }
8263  if (_internal_has_int_max()) {
8264  delete constraint_.int_max_;
8265  clear_has_constraint();
8266  }
8267 }
8268 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_max() {
8269  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_max)
8270  if (_internal_has_int_max()) {
8271  clear_has_constraint();
8272  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_max_;
8273  constraint_.int_max_ = nullptr;
8274  return temp;
8275  } else {
8276  return nullptr;
8277  }
8278 }
8279 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_max() const {
8280  return _internal_has_int_max()
8281  ? *constraint_.int_max_
8283 }
8284 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_max() const {
8285  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_max)
8286  return _internal_int_max();
8287 }
8288 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_max() {
8289  if (!_internal_has_int_max()) {
8290  clear_constraint();
8291  set_has_int_max();
8292  constraint_.int_max_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8293  GetArenaNoVirtual());
8294  }
8295  return constraint_.int_max_;
8296 }
8297 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_max() {
8298  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_max)
8299  return _internal_mutable_int_max();
8300 }
8301 
8302 // .operations_research.sat.LinearArgumentProto lin_max = 27;
8303 inline bool ConstraintProto::_internal_has_lin_max() const {
8304  return constraint_case() == kLinMax;
8305 }
8306 inline bool ConstraintProto::has_lin_max() const {
8307  return _internal_has_lin_max();
8308 }
8309 inline void ConstraintProto::set_has_lin_max() {
8310  _oneof_case_[0] = kLinMax;
8311 }
8313  if (_internal_has_lin_max()) {
8314  delete constraint_.lin_max_;
8315  clear_has_constraint();
8316  }
8317 }
8318 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::release_lin_max() {
8319  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.lin_max)
8320  if (_internal_has_lin_max()) {
8321  clear_has_constraint();
8322  ::operations_research::sat::LinearArgumentProto* temp = constraint_.lin_max_;
8323  constraint_.lin_max_ = nullptr;
8324  return temp;
8325  } else {
8326  return nullptr;
8327  }
8328 }
8329 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::_internal_lin_max() const {
8330  return _internal_has_lin_max()
8331  ? *constraint_.lin_max_
8333 }
8334 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::lin_max() const {
8335  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.lin_max)
8336  return _internal_lin_max();
8337 }
8338 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::_internal_mutable_lin_max() {
8339  if (!_internal_has_lin_max()) {
8340  clear_constraint();
8341  set_has_lin_max();
8342  constraint_.lin_max_ = CreateMaybeMessage< ::operations_research::sat::LinearArgumentProto >(
8343  GetArenaNoVirtual());
8344  }
8345  return constraint_.lin_max_;
8346 }
8347 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::mutable_lin_max() {
8348  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.lin_max)
8349  return _internal_mutable_lin_max();
8350 }
8351 
8352 // .operations_research.sat.IntegerArgumentProto int_min = 10;
8353 inline bool ConstraintProto::_internal_has_int_min() const {
8354  return constraint_case() == kIntMin;
8355 }
8356 inline bool ConstraintProto::has_int_min() const {
8357  return _internal_has_int_min();
8358 }
8359 inline void ConstraintProto::set_has_int_min() {
8360  _oneof_case_[0] = kIntMin;
8361 }
8363  if (_internal_has_int_min()) {
8364  delete constraint_.int_min_;
8365  clear_has_constraint();
8366  }
8367 }
8368 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_min() {
8369  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_min)
8370  if (_internal_has_int_min()) {
8371  clear_has_constraint();
8372  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_min_;
8373  constraint_.int_min_ = nullptr;
8374  return temp;
8375  } else {
8376  return nullptr;
8377  }
8378 }
8379 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_min() const {
8380  return _internal_has_int_min()
8381  ? *constraint_.int_min_
8383 }
8384 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_min() const {
8385  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_min)
8386  return _internal_int_min();
8387 }
8388 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_min() {
8389  if (!_internal_has_int_min()) {
8390  clear_constraint();
8391  set_has_int_min();
8392  constraint_.int_min_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8393  GetArenaNoVirtual());
8394  }
8395  return constraint_.int_min_;
8396 }
8397 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_min() {
8398  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_min)
8399  return _internal_mutable_int_min();
8400 }
8401 
8402 // .operations_research.sat.LinearArgumentProto lin_min = 28;
8403 inline bool ConstraintProto::_internal_has_lin_min() const {
8404  return constraint_case() == kLinMin;
8405 }
8406 inline bool ConstraintProto::has_lin_min() const {
8407  return _internal_has_lin_min();
8408 }
8409 inline void ConstraintProto::set_has_lin_min() {
8410  _oneof_case_[0] = kLinMin;
8411 }
8413  if (_internal_has_lin_min()) {
8414  delete constraint_.lin_min_;
8415  clear_has_constraint();
8416  }
8417 }
8418 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::release_lin_min() {
8419  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.lin_min)
8420  if (_internal_has_lin_min()) {
8421  clear_has_constraint();
8422  ::operations_research::sat::LinearArgumentProto* temp = constraint_.lin_min_;
8423  constraint_.lin_min_ = nullptr;
8424  return temp;
8425  } else {
8426  return nullptr;
8427  }
8428 }
8429 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::_internal_lin_min() const {
8430  return _internal_has_lin_min()
8431  ? *constraint_.lin_min_
8433 }
8434 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::lin_min() const {
8435  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.lin_min)
8436  return _internal_lin_min();
8437 }
8438 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::_internal_mutable_lin_min() {
8439  if (!_internal_has_lin_min()) {
8440  clear_constraint();
8441  set_has_lin_min();
8442  constraint_.lin_min_ = CreateMaybeMessage< ::operations_research::sat::LinearArgumentProto >(
8443  GetArenaNoVirtual());
8444  }
8445  return constraint_.lin_min_;
8446 }
8447 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::mutable_lin_min() {
8448  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.lin_min)
8449  return _internal_mutable_lin_min();
8450 }
8451 
8452 // .operations_research.sat.IntegerArgumentProto int_prod = 11;
8453 inline bool ConstraintProto::_internal_has_int_prod() const {
8454  return constraint_case() == kIntProd;
8455 }
8456 inline bool ConstraintProto::has_int_prod() const {
8457  return _internal_has_int_prod();
8458 }
8459 inline void ConstraintProto::set_has_int_prod() {
8460  _oneof_case_[0] = kIntProd;
8461 }
8463  if (_internal_has_int_prod()) {
8464  delete constraint_.int_prod_;
8465  clear_has_constraint();
8466  }
8467 }
8468 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_prod() {
8469  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_prod)
8470  if (_internal_has_int_prod()) {
8471  clear_has_constraint();
8472  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_prod_;
8473  constraint_.int_prod_ = nullptr;
8474  return temp;
8475  } else {
8476  return nullptr;
8477  }
8478 }
8479 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_prod() const {
8480  return _internal_has_int_prod()
8481  ? *constraint_.int_prod_
8483 }
8484 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_prod() const {
8485  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_prod)
8486  return _internal_int_prod();
8487 }
8488 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_prod() {
8489  if (!_internal_has_int_prod()) {
8490  clear_constraint();
8491  set_has_int_prod();
8492  constraint_.int_prod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8493  GetArenaNoVirtual());
8494  }
8495  return constraint_.int_prod_;
8496 }
8497 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_prod() {
8498  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_prod)
8499  return _internal_mutable_int_prod();
8500 }
8501 
8502 // .operations_research.sat.LinearConstraintProto linear = 12;
8503 inline bool ConstraintProto::_internal_has_linear() const {
8504  return constraint_case() == kLinear;
8505 }
8506 inline bool ConstraintProto::has_linear() const {
8507  return _internal_has_linear();
8508 }
8509 inline void ConstraintProto::set_has_linear() {
8510  _oneof_case_[0] = kLinear;
8511 }
8513  if (_internal_has_linear()) {
8514  delete constraint_.linear_;
8515  clear_has_constraint();
8516  }
8517 }
8518 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::release_linear() {
8519  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.linear)
8520  if (_internal_has_linear()) {
8521  clear_has_constraint();
8522  ::operations_research::sat::LinearConstraintProto* temp = constraint_.linear_;
8523  constraint_.linear_ = nullptr;
8524  return temp;
8525  } else {
8526  return nullptr;
8527  }
8528 }
8529 inline const ::operations_research::sat::LinearConstraintProto& ConstraintProto::_internal_linear() const {
8530  return _internal_has_linear()
8531  ? *constraint_.linear_
8533 }
8534 inline const ::operations_research::sat::LinearConstraintProto& ConstraintProto::linear() const {
8535  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.linear)
8536  return _internal_linear();
8537 }
8538 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::_internal_mutable_linear() {
8539  if (!_internal_has_linear()) {
8540  clear_constraint();
8541  set_has_linear();
8542  constraint_.linear_ = CreateMaybeMessage< ::operations_research::sat::LinearConstraintProto >(
8543  GetArenaNoVirtual());
8544  }
8545  return constraint_.linear_;
8546 }
8547 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::mutable_linear() {
8548  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.linear)
8549  return _internal_mutable_linear();
8550 }
8551 
8552 // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
8553 inline bool ConstraintProto::_internal_has_all_diff() const {
8554  return constraint_case() == kAllDiff;
8555 }
8556 inline bool ConstraintProto::has_all_diff() const {
8557  return _internal_has_all_diff();
8558 }
8559 inline void ConstraintProto::set_has_all_diff() {
8560  _oneof_case_[0] = kAllDiff;
8561 }
8563  if (_internal_has_all_diff()) {
8564  delete constraint_.all_diff_;
8565  clear_has_constraint();
8566  }
8567 }
8568 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::release_all_diff() {
8569  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.all_diff)
8570  if (_internal_has_all_diff()) {
8571  clear_has_constraint();
8572  ::operations_research::sat::AllDifferentConstraintProto* temp = constraint_.all_diff_;
8573  constraint_.all_diff_ = nullptr;
8574  return temp;
8575  } else {
8576  return nullptr;
8577  }
8578 }
8579 inline const ::operations_research::sat::AllDifferentConstraintProto& ConstraintProto::_internal_all_diff() const {
8580  return _internal_has_all_diff()
8581  ? *constraint_.all_diff_
8583 }
8584 inline const ::operations_research::sat::AllDifferentConstraintProto& ConstraintProto::all_diff() const {
8585  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.all_diff)
8586  return _internal_all_diff();
8587 }
8588 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::_internal_mutable_all_diff() {
8589  if (!_internal_has_all_diff()) {
8590  clear_constraint();
8591  set_has_all_diff();
8592  constraint_.all_diff_ = CreateMaybeMessage< ::operations_research::sat::AllDifferentConstraintProto >(
8593  GetArenaNoVirtual());
8594  }
8595  return constraint_.all_diff_;
8596 }
8597 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::mutable_all_diff() {
8598  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.all_diff)
8599  return _internal_mutable_all_diff();
8600 }
8601 
8602 // .operations_research.sat.ElementConstraintProto element = 14;
8603 inline bool ConstraintProto::_internal_has_element() const {
8604  return constraint_case() == kElement;
8605 }
8606 inline bool ConstraintProto::has_element() const {
8607  return _internal_has_element();
8608 }
8609 inline void ConstraintProto::set_has_element() {
8610  _oneof_case_[0] = kElement;
8611 }
8613  if (_internal_has_element()) {
8614  delete constraint_.element_;
8615  clear_has_constraint();
8616  }
8617 }
8618 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::release_element() {
8619  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.element)
8620  if (_internal_has_element()) {
8621  clear_has_constraint();
8622  ::operations_research::sat::ElementConstraintProto* temp = constraint_.element_;
8623  constraint_.element_ = nullptr;
8624  return temp;
8625  } else {
8626  return nullptr;
8627  }
8628 }
8629 inline const ::operations_research::sat::ElementConstraintProto& ConstraintProto::_internal_element() const {
8630  return _internal_has_element()
8631  ? *constraint_.element_
8633 }
8634 inline const ::operations_research::sat::ElementConstraintProto& ConstraintProto::element() const {
8635  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.element)
8636  return _internal_element();
8637 }
8638 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::_internal_mutable_element() {
8639  if (!_internal_has_element()) {
8640  clear_constraint();
8641  set_has_element();
8642  constraint_.element_ = CreateMaybeMessage< ::operations_research::sat::ElementConstraintProto >(
8643  GetArenaNoVirtual());
8644  }
8645  return constraint_.element_;
8646 }
8647 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::mutable_element() {
8648  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.element)
8649  return _internal_mutable_element();
8650 }
8651 
8652 // .operations_research.sat.CircuitConstraintProto circuit = 15;
8653 inline bool ConstraintProto::_internal_has_circuit() const {
8654  return constraint_case() == kCircuit;
8655 }
8656 inline bool ConstraintProto::has_circuit() const {
8657  return _internal_has_circuit();
8658 }
8659 inline void ConstraintProto::set_has_circuit() {
8660  _oneof_case_[0] = kCircuit;
8661 }
8663  if (_internal_has_circuit()) {
8664  delete constraint_.circuit_;
8665  clear_has_constraint();
8666  }
8667 }
8668 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::release_circuit() {
8669  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit)
8670  if (_internal_has_circuit()) {
8671  clear_has_constraint();
8672  ::operations_research::sat::CircuitConstraintProto* temp = constraint_.circuit_;
8673  constraint_.circuit_ = nullptr;
8674  return temp;
8675  } else {
8676  return nullptr;
8677  }
8678 }
8679 inline const ::operations_research::sat::CircuitConstraintProto& ConstraintProto::_internal_circuit() const {
8680  return _internal_has_circuit()
8681  ? *constraint_.circuit_
8683 }
8684 inline const ::operations_research::sat::CircuitConstraintProto& ConstraintProto::circuit() const {
8685  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit)
8686  return _internal_circuit();
8687 }
8688 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::_internal_mutable_circuit() {
8689  if (!_internal_has_circuit()) {
8690  clear_constraint();
8691  set_has_circuit();
8692  constraint_.circuit_ = CreateMaybeMessage< ::operations_research::sat::CircuitConstraintProto >(
8693  GetArenaNoVirtual());
8694  }
8695  return constraint_.circuit_;
8696 }
8697 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::mutable_circuit() {
8698  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit)
8699  return _internal_mutable_circuit();
8700 }
8701 
8702 // .operations_research.sat.RoutesConstraintProto routes = 23;
8703 inline bool ConstraintProto::_internal_has_routes() const {
8704  return constraint_case() == kRoutes;
8705 }
8706 inline bool ConstraintProto::has_routes() const {
8707  return _internal_has_routes();
8708 }
8709 inline void ConstraintProto::set_has_routes() {
8710  _oneof_case_[0] = kRoutes;
8711 }
8713  if (_internal_has_routes()) {
8714  delete constraint_.routes_;
8715  clear_has_constraint();
8716  }
8717 }
8718 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::release_routes() {
8719  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.routes)
8720  if (_internal_has_routes()) {
8721  clear_has_constraint();
8722  ::operations_research::sat::RoutesConstraintProto* temp = constraint_.routes_;
8723  constraint_.routes_ = nullptr;
8724  return temp;
8725  } else {
8726  return nullptr;
8727  }
8728 }
8729 inline const ::operations_research::sat::RoutesConstraintProto& ConstraintProto::_internal_routes() const {
8730  return _internal_has_routes()
8731  ? *constraint_.routes_
8733 }
8734 inline const ::operations_research::sat::RoutesConstraintProto& ConstraintProto::routes() const {
8735  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.routes)
8736  return _internal_routes();
8737 }
8738 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::_internal_mutable_routes() {
8739  if (!_internal_has_routes()) {
8740  clear_constraint();
8741  set_has_routes();
8742  constraint_.routes_ = CreateMaybeMessage< ::operations_research::sat::RoutesConstraintProto >(
8743  GetArenaNoVirtual());
8744  }
8745  return constraint_.routes_;
8746 }
8747 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::mutable_routes() {
8748  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.routes)
8749  return _internal_mutable_routes();
8750 }
8751 
8752 // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
8753 inline bool ConstraintProto::_internal_has_circuit_covering() const {
8754  return constraint_case() == kCircuitCovering;
8755 }
8757  return _internal_has_circuit_covering();
8758 }
8759 inline void ConstraintProto::set_has_circuit_covering() {
8760  _oneof_case_[0] = kCircuitCovering;
8761 }
8763  if (_internal_has_circuit_covering()) {
8764  delete constraint_.circuit_covering_;
8765  clear_has_constraint();
8766  }
8767 }
8768 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::release_circuit_covering() {
8769  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit_covering)
8770  if (_internal_has_circuit_covering()) {
8771  clear_has_constraint();
8772  ::operations_research::sat::CircuitCoveringConstraintProto* temp = constraint_.circuit_covering_;
8773  constraint_.circuit_covering_ = nullptr;
8774  return temp;
8775  } else {
8776  return nullptr;
8777  }
8778 }
8779 inline const ::operations_research::sat::CircuitCoveringConstraintProto& ConstraintProto::_internal_circuit_covering() const {
8780  return _internal_has_circuit_covering()
8781  ? *constraint_.circuit_covering_
8783 }
8784 inline const ::operations_research::sat::CircuitCoveringConstraintProto& ConstraintProto::circuit_covering() const {
8785  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit_covering)
8786  return _internal_circuit_covering();
8787 }
8788 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::_internal_mutable_circuit_covering() {
8789  if (!_internal_has_circuit_covering()) {
8790  clear_constraint();
8791  set_has_circuit_covering();
8792  constraint_.circuit_covering_ = CreateMaybeMessage< ::operations_research::sat::CircuitCoveringConstraintProto >(
8793  GetArenaNoVirtual());
8794  }
8795  return constraint_.circuit_covering_;
8796 }
8797 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::mutable_circuit_covering() {
8798  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit_covering)
8799  return _internal_mutable_circuit_covering();
8800 }
8801 
8802 // .operations_research.sat.TableConstraintProto table = 16;
8803 inline bool ConstraintProto::_internal_has_table() const {
8804  return constraint_case() == kTable;
8805 }
8806 inline bool ConstraintProto::has_table() const {
8807  return _internal_has_table();
8808 }
8809 inline void ConstraintProto::set_has_table() {
8810  _oneof_case_[0] = kTable;
8811 }
8813  if (_internal_has_table()) {
8814  delete constraint_.table_;
8815  clear_has_constraint();
8816  }
8817 }
8818 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::release_table() {
8819  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.table)
8820  if (_internal_has_table()) {
8821  clear_has_constraint();
8822  ::operations_research::sat::TableConstraintProto* temp = constraint_.table_;
8823  constraint_.table_ = nullptr;
8824  return temp;
8825  } else {
8826  return nullptr;
8827  }
8828 }
8829 inline const ::operations_research::sat::TableConstraintProto& ConstraintProto::_internal_table() const {
8830  return _internal_has_table()
8831  ? *constraint_.table_
8833 }
8834 inline const ::operations_research::sat::TableConstraintProto& ConstraintProto::table() const {
8835  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.table)
8836  return _internal_table();
8837 }
8838 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::_internal_mutable_table() {
8839  if (!_internal_has_table()) {
8840  clear_constraint();
8841  set_has_table();
8842  constraint_.table_ = CreateMaybeMessage< ::operations_research::sat::TableConstraintProto >(
8843  GetArenaNoVirtual());
8844  }
8845  return constraint_.table_;
8846 }
8847 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::mutable_table() {
8848  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.table)
8849  return _internal_mutable_table();
8850 }
8851 
8852 // .operations_research.sat.AutomatonConstraintProto automaton = 17;
8853 inline bool ConstraintProto::_internal_has_automaton() const {
8854  return constraint_case() == kAutomaton;
8855 }
8856 inline bool ConstraintProto::has_automaton() const {
8857  return _internal_has_automaton();
8858 }
8859 inline void ConstraintProto::set_has_automaton() {
8860  _oneof_case_[0] = kAutomaton;
8861 }
8863  if (_internal_has_automaton()) {
8864  delete constraint_.automaton_;
8865  clear_has_constraint();
8866  }
8867 }
8868 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::release_automaton() {
8869  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.automaton)
8870  if (_internal_has_automaton()) {
8871  clear_has_constraint();
8872  ::operations_research::sat::AutomatonConstraintProto* temp = constraint_.automaton_;
8873  constraint_.automaton_ = nullptr;
8874  return temp;
8875  } else {
8876  return nullptr;
8877  }
8878 }
8879 inline const ::operations_research::sat::AutomatonConstraintProto& ConstraintProto::_internal_automaton() const {
8880  return _internal_has_automaton()
8881  ? *constraint_.automaton_
8883 }
8884 inline const ::operations_research::sat::AutomatonConstraintProto& ConstraintProto::automaton() const {
8885  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.automaton)
8886  return _internal_automaton();
8887 }
8888 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::_internal_mutable_automaton() {
8889  if (!_internal_has_automaton()) {
8890  clear_constraint();
8891  set_has_automaton();
8892  constraint_.automaton_ = CreateMaybeMessage< ::operations_research::sat::AutomatonConstraintProto >(
8893  GetArenaNoVirtual());
8894  }
8895  return constraint_.automaton_;
8896 }
8897 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::mutable_automaton() {
8898  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.automaton)
8899  return _internal_mutable_automaton();
8900 }
8901 
8902 // .operations_research.sat.InverseConstraintProto inverse = 18;
8903 inline bool ConstraintProto::_internal_has_inverse() const {
8904  return constraint_case() == kInverse;
8905 }
8906 inline bool ConstraintProto::has_inverse() const {
8907  return _internal_has_inverse();
8908 }
8909 inline void ConstraintProto::set_has_inverse() {
8910  _oneof_case_[0] = kInverse;
8911 }
8913  if (_internal_has_inverse()) {
8914  delete constraint_.inverse_;
8915  clear_has_constraint();
8916  }
8917 }
8918 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::release_inverse() {
8919  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.inverse)
8920  if (_internal_has_inverse()) {
8921  clear_has_constraint();
8922  ::operations_research::sat::InverseConstraintProto* temp = constraint_.inverse_;
8923  constraint_.inverse_ = nullptr;
8924  return temp;
8925  } else {
8926  return nullptr;
8927  }
8928 }
8929 inline const ::operations_research::sat::InverseConstraintProto& ConstraintProto::_internal_inverse() const {
8930  return _internal_has_inverse()
8931  ? *constraint_.inverse_
8933 }
8934 inline const ::operations_research::sat::InverseConstraintProto& ConstraintProto::inverse() const {
8935  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.inverse)
8936  return _internal_inverse();
8937 }
8938 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::_internal_mutable_inverse() {
8939  if (!_internal_has_inverse()) {
8940  clear_constraint();
8941  set_has_inverse();
8942  constraint_.inverse_ = CreateMaybeMessage< ::operations_research::sat::InverseConstraintProto >(
8943  GetArenaNoVirtual());
8944  }
8945  return constraint_.inverse_;
8946 }
8947 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::mutable_inverse() {
8948  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.inverse)
8949  return _internal_mutable_inverse();
8950 }
8951 
8952 // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
8953 inline bool ConstraintProto::_internal_has_reservoir() const {
8954  return constraint_case() == kReservoir;
8955 }
8956 inline bool ConstraintProto::has_reservoir() const {
8957  return _internal_has_reservoir();
8958 }
8959 inline void ConstraintProto::set_has_reservoir() {
8960  _oneof_case_[0] = kReservoir;
8961 }
8963  if (_internal_has_reservoir()) {
8964  delete constraint_.reservoir_;
8965  clear_has_constraint();
8966  }
8967 }
8968 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::release_reservoir() {
8969  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.reservoir)
8970  if (_internal_has_reservoir()) {
8971  clear_has_constraint();
8972  ::operations_research::sat::ReservoirConstraintProto* temp = constraint_.reservoir_;
8973  constraint_.reservoir_ = nullptr;
8974  return temp;
8975  } else {
8976  return nullptr;
8977  }
8978 }
8979 inline const ::operations_research::sat::ReservoirConstraintProto& ConstraintProto::_internal_reservoir() const {
8980  return _internal_has_reservoir()
8981  ? *constraint_.reservoir_
8983 }
8984 inline const ::operations_research::sat::ReservoirConstraintProto& ConstraintProto::reservoir() const {
8985  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.reservoir)
8986  return _internal_reservoir();
8987 }
8988 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::_internal_mutable_reservoir() {
8989  if (!_internal_has_reservoir()) {
8990  clear_constraint();
8991  set_has_reservoir();
8992  constraint_.reservoir_ = CreateMaybeMessage< ::operations_research::sat::ReservoirConstraintProto >(
8993  GetArenaNoVirtual());
8994  }
8995  return constraint_.reservoir_;
8996 }
8997 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::mutable_reservoir() {
8998  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.reservoir)
8999  return _internal_mutable_reservoir();
9000 }
9001 
9002 // .operations_research.sat.IntervalConstraintProto interval = 19;
9003 inline bool ConstraintProto::_internal_has_interval() const {
9004  return constraint_case() == kInterval;
9005 }
9006 inline bool ConstraintProto::has_interval() const {
9007  return _internal_has_interval();
9008 }
9009 inline void ConstraintProto::set_has_interval() {
9010  _oneof_case_[0] = kInterval;
9011 }
9013  if (_internal_has_interval()) {
9014  delete constraint_.interval_;
9015  clear_has_constraint();
9016  }
9017 }
9018 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::release_interval() {
9019  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.interval)
9020  if (_internal_has_interval()) {
9021  clear_has_constraint();
9022  ::operations_research::sat::IntervalConstraintProto* temp = constraint_.interval_;
9023  constraint_.interval_ = nullptr;
9024  return temp;
9025  } else {
9026  return nullptr;
9027  }
9028 }
9029 inline const ::operations_research::sat::IntervalConstraintProto& ConstraintProto::_internal_interval() const {
9030  return _internal_has_interval()
9031  ? *constraint_.interval_
9033 }
9034 inline const ::operations_research::sat::IntervalConstraintProto& ConstraintProto::interval() const {
9035  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.interval)
9036  return _internal_interval();
9037 }
9038 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::_internal_mutable_interval() {
9039  if (!_internal_has_interval()) {
9040  clear_constraint();
9041  set_has_interval();
9042  constraint_.interval_ = CreateMaybeMessage< ::operations_research::sat::IntervalConstraintProto >(
9043  GetArenaNoVirtual());
9044  }
9045  return constraint_.interval_;
9046 }
9047 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::mutable_interval() {
9048  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.interval)
9049  return _internal_mutable_interval();
9050 }
9051 
9052 // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
9053 inline bool ConstraintProto::_internal_has_no_overlap() const {
9054  return constraint_case() == kNoOverlap;
9055 }
9056 inline bool ConstraintProto::has_no_overlap() const {
9057  return _internal_has_no_overlap();
9058 }
9059 inline void ConstraintProto::set_has_no_overlap() {
9060  _oneof_case_[0] = kNoOverlap;
9061 }
9063  if (_internal_has_no_overlap()) {
9064  delete constraint_.no_overlap_;
9065  clear_has_constraint();
9066  }
9067 }
9068 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::release_no_overlap() {
9069  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap)
9070  if (_internal_has_no_overlap()) {
9071  clear_has_constraint();
9072  ::operations_research::sat::NoOverlapConstraintProto* temp = constraint_.no_overlap_;
9073  constraint_.no_overlap_ = nullptr;
9074  return temp;
9075  } else {
9076  return nullptr;
9077  }
9078 }
9079 inline const ::operations_research::sat::NoOverlapConstraintProto& ConstraintProto::_internal_no_overlap() const {
9080  return _internal_has_no_overlap()
9081  ? *constraint_.no_overlap_
9083 }
9084 inline const ::operations_research::sat::NoOverlapConstraintProto& ConstraintProto::no_overlap() const {
9085  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap)
9086  return _internal_no_overlap();
9087 }
9088 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::_internal_mutable_no_overlap() {
9089  if (!_internal_has_no_overlap()) {
9090  clear_constraint();
9091  set_has_no_overlap();
9092  constraint_.no_overlap_ = CreateMaybeMessage< ::operations_research::sat::NoOverlapConstraintProto >(
9093  GetArenaNoVirtual());
9094  }
9095  return constraint_.no_overlap_;
9096 }
9097 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::mutable_no_overlap() {
9098  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap)
9099  return _internal_mutable_no_overlap();
9100 }
9101 
9102 // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
9103 inline bool ConstraintProto::_internal_has_no_overlap_2d() const {
9104  return constraint_case() == kNoOverlap2D;
9105 }
9107  return _internal_has_no_overlap_2d();
9108 }
9109 inline void ConstraintProto::set_has_no_overlap_2d() {
9110  _oneof_case_[0] = kNoOverlap2D;
9111 }
9113  if (_internal_has_no_overlap_2d()) {
9114  delete constraint_.no_overlap_2d_;
9115  clear_has_constraint();
9116  }
9117 }
9118 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::release_no_overlap_2d() {
9119  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap_2d)
9120  if (_internal_has_no_overlap_2d()) {
9121  clear_has_constraint();
9122  ::operations_research::sat::NoOverlap2DConstraintProto* temp = constraint_.no_overlap_2d_;
9123  constraint_.no_overlap_2d_ = nullptr;
9124  return temp;
9125  } else {
9126  return nullptr;
9127  }
9128 }
9129 inline const ::operations_research::sat::NoOverlap2DConstraintProto& ConstraintProto::_internal_no_overlap_2d() const {
9130  return _internal_has_no_overlap_2d()
9131  ? *constraint_.no_overlap_2d_
9133 }
9134 inline const ::operations_research::sat::NoOverlap2DConstraintProto& ConstraintProto::no_overlap_2d() const {
9135  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap_2d)
9136  return _internal_no_overlap_2d();
9137 }
9138 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::_internal_mutable_no_overlap_2d() {
9139  if (!_internal_has_no_overlap_2d()) {
9140  clear_constraint();
9141  set_has_no_overlap_2d();
9142  constraint_.no_overlap_2d_ = CreateMaybeMessage< ::operations_research::sat::NoOverlap2DConstraintProto >(
9143  GetArenaNoVirtual());
9144  }
9145  return constraint_.no_overlap_2d_;
9146 }
9147 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::mutable_no_overlap_2d() {
9148  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap_2d)
9149  return _internal_mutable_no_overlap_2d();
9150 }
9151 
9152 // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
9153 inline bool ConstraintProto::_internal_has_cumulative() const {
9154  return constraint_case() == kCumulative;
9155 }
9156 inline bool ConstraintProto::has_cumulative() const {
9157  return _internal_has_cumulative();
9158 }
9159 inline void ConstraintProto::set_has_cumulative() {
9160  _oneof_case_[0] = kCumulative;
9161 }
9163  if (_internal_has_cumulative()) {
9164  delete constraint_.cumulative_;
9165  clear_has_constraint();
9166  }
9167 }
9168 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::release_cumulative() {
9169  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.cumulative)
9170  if (_internal_has_cumulative()) {
9171  clear_has_constraint();
9172  ::operations_research::sat::CumulativeConstraintProto* temp = constraint_.cumulative_;
9173  constraint_.cumulative_ = nullptr;
9174  return temp;
9175  } else {
9176  return nullptr;
9177  }
9178 }
9179 inline const ::operations_research::sat::CumulativeConstraintProto& ConstraintProto::_internal_cumulative() const {
9180  return _internal_has_cumulative()
9181  ? *constraint_.cumulative_
9183 }
9184 inline const ::operations_research::sat::CumulativeConstraintProto& ConstraintProto::cumulative() const {
9185  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.cumulative)
9186  return _internal_cumulative();
9187 }
9188 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::_internal_mutable_cumulative() {
9189  if (!_internal_has_cumulative()) {
9190  clear_constraint();
9191  set_has_cumulative();
9192  constraint_.cumulative_ = CreateMaybeMessage< ::operations_research::sat::CumulativeConstraintProto >(
9193  GetArenaNoVirtual());
9194  }
9195  return constraint_.cumulative_;
9196 }
9197 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::mutable_cumulative() {
9198  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.cumulative)
9199  return _internal_mutable_cumulative();
9200 }
9201 
9202 inline bool ConstraintProto::has_constraint() const {
9203  return constraint_case() != CONSTRAINT_NOT_SET;
9204 }
9205 inline void ConstraintProto::clear_has_constraint() {
9206  _oneof_case_[0] = CONSTRAINT_NOT_SET;
9207 }
9209  return ConstraintProto::ConstraintCase(_oneof_case_[0]);
9210 }
9211 // -------------------------------------------------------------------
9212 
9213 // CpObjectiveProto
9214 
9215 // repeated int32 vars = 1;
9216 inline int CpObjectiveProto::_internal_vars_size() const {
9217  return vars_.size();
9218 }
9219 inline int CpObjectiveProto::vars_size() const {
9220  return _internal_vars_size();
9221 }
9223  vars_.Clear();
9224 }
9225 inline ::PROTOBUF_NAMESPACE_ID::int32 CpObjectiveProto::_internal_vars(int index) const {
9226  return vars_.Get(index);
9227 }
9228 inline ::PROTOBUF_NAMESPACE_ID::int32 CpObjectiveProto::vars(int index) const {
9229  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.vars)
9230  return _internal_vars(index);
9231 }
9232 inline void CpObjectiveProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9233  vars_.Set(index, value);
9234  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.vars)
9235 }
9236 inline void CpObjectiveProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9237  vars_.Add(value);
9238 }
9239 inline void CpObjectiveProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9240  _internal_add_vars(value);
9241  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.vars)
9242 }
9243 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9244 CpObjectiveProto::_internal_vars() const {
9245  return vars_;
9246 }
9247 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9249  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.vars)
9250  return _internal_vars();
9251 }
9252 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9253 CpObjectiveProto::_internal_mutable_vars() {
9254  return &vars_;
9255 }
9256 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9258  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.vars)
9259  return _internal_mutable_vars();
9260 }
9261 
9262 // repeated int64 coeffs = 4;
9263 inline int CpObjectiveProto::_internal_coeffs_size() const {
9264  return coeffs_.size();
9265 }
9266 inline int CpObjectiveProto::coeffs_size() const {
9267  return _internal_coeffs_size();
9268 }
9270  coeffs_.Clear();
9271 }
9272 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::_internal_coeffs(int index) const {
9273  return coeffs_.Get(index);
9274 }
9275 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::coeffs(int index) const {
9276  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.coeffs)
9277  return _internal_coeffs(index);
9278 }
9279 inline void CpObjectiveProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9280  coeffs_.Set(index, value);
9281  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.coeffs)
9282 }
9283 inline void CpObjectiveProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
9284  coeffs_.Add(value);
9285 }
9286 inline void CpObjectiveProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
9287  _internal_add_coeffs(value);
9288  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.coeffs)
9289 }
9290 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9291 CpObjectiveProto::_internal_coeffs() const {
9292  return coeffs_;
9293 }
9294 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9296  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.coeffs)
9297  return _internal_coeffs();
9298 }
9299 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9300 CpObjectiveProto::_internal_mutable_coeffs() {
9301  return &coeffs_;
9302 }
9303 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9305  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.coeffs)
9306  return _internal_mutable_coeffs();
9307 }
9308 
9309 // double offset = 2;
9311  offset_ = 0;
9312 }
9313 inline double CpObjectiveProto::_internal_offset() const {
9314  return offset_;
9315 }
9316 inline double CpObjectiveProto::offset() const {
9317  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.offset)
9318  return _internal_offset();
9319 }
9320 inline void CpObjectiveProto::_internal_set_offset(double value) {
9321 
9322  offset_ = value;
9323 }
9324 inline void CpObjectiveProto::set_offset(double value) {
9325  _internal_set_offset(value);
9326  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.offset)
9327 }
9328 
9329 // double scaling_factor = 3;
9331  scaling_factor_ = 0;
9332 }
9333 inline double CpObjectiveProto::_internal_scaling_factor() const {
9334  return scaling_factor_;
9335 }
9336 inline double CpObjectiveProto::scaling_factor() const {
9337  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.scaling_factor)
9338  return _internal_scaling_factor();
9339 }
9340 inline void CpObjectiveProto::_internal_set_scaling_factor(double value) {
9341 
9342  scaling_factor_ = value;
9343 }
9344 inline void CpObjectiveProto::set_scaling_factor(double value) {
9345  _internal_set_scaling_factor(value);
9346  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.scaling_factor)
9347 }
9348 
9349 // repeated int64 domain = 5;
9350 inline int CpObjectiveProto::_internal_domain_size() const {
9351  return domain_.size();
9352 }
9353 inline int CpObjectiveProto::domain_size() const {
9354  return _internal_domain_size();
9355 }
9357  domain_.Clear();
9358 }
9359 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::_internal_domain(int index) const {
9360  return domain_.Get(index);
9361 }
9362 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::domain(int index) const {
9363  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.domain)
9364  return _internal_domain(index);
9365 }
9366 inline void CpObjectiveProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9367  domain_.Set(index, value);
9368  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.domain)
9369 }
9370 inline void CpObjectiveProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
9371  domain_.Add(value);
9372 }
9373 inline void CpObjectiveProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
9374  _internal_add_domain(value);
9375  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.domain)
9376 }
9377 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9378 CpObjectiveProto::_internal_domain() const {
9379  return domain_;
9380 }
9381 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9383  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.domain)
9384  return _internal_domain();
9385 }
9386 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9387 CpObjectiveProto::_internal_mutable_domain() {
9388  return &domain_;
9389 }
9390 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9392  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.domain)
9393  return _internal_mutable_domain();
9394 }
9395 
9396 // -------------------------------------------------------------------
9397 
9398 // DecisionStrategyProto_AffineTransformation
9399 
9400 // int32 var = 1;
9402  var_ = 0;
9403 }
9404 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto_AffineTransformation::_internal_var() const {
9405  return var_;
9406 }
9407 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto_AffineTransformation::var() const {
9408  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
9409  return _internal_var();
9410 }
9411 inline void DecisionStrategyProto_AffineTransformation::_internal_set_var(::PROTOBUF_NAMESPACE_ID::int32 value) {
9412 
9413  var_ = value;
9414 }
9415 inline void DecisionStrategyProto_AffineTransformation::set_var(::PROTOBUF_NAMESPACE_ID::int32 value) {
9416  _internal_set_var(value);
9417  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
9418 }
9419 
9420 // int64 offset = 2;
9422  offset_ = PROTOBUF_LONGLONG(0);
9423 }
9424 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::_internal_offset() const {
9425  return offset_;
9426 }
9427 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::offset() const {
9428  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
9429  return _internal_offset();
9430 }
9431 inline void DecisionStrategyProto_AffineTransformation::_internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
9432 
9433  offset_ = value;
9434 }
9435 inline void DecisionStrategyProto_AffineTransformation::set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
9436  _internal_set_offset(value);
9437  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
9438 }
9439 
9440 // int64 positive_coeff = 3;
9442  positive_coeff_ = PROTOBUF_LONGLONG(0);
9443 }
9444 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::_internal_positive_coeff() const {
9445  return positive_coeff_;
9446 }
9447 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::positive_coeff() const {
9448  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
9449  return _internal_positive_coeff();
9450 }
9451 inline void DecisionStrategyProto_AffineTransformation::_internal_set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value) {
9452 
9453  positive_coeff_ = value;
9454 }
9455 inline void DecisionStrategyProto_AffineTransformation::set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value) {
9456  _internal_set_positive_coeff(value);
9457  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
9458 }
9459 
9460 // -------------------------------------------------------------------
9461 
9462 // DecisionStrategyProto
9463 
9464 // repeated int32 variables = 1;
9465 inline int DecisionStrategyProto::_internal_variables_size() const {
9466  return variables_.size();
9467 }
9469  return _internal_variables_size();
9470 }
9472  variables_.Clear();
9473 }
9474 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto::_internal_variables(int index) const {
9475  return variables_.Get(index);
9476 }
9477 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto::variables(int index) const {
9478  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variables)
9479  return _internal_variables(index);
9480 }
9481 inline void DecisionStrategyProto::set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9482  variables_.Set(index, value);
9483  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variables)
9484 }
9485 inline void DecisionStrategyProto::_internal_add_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
9486  variables_.Add(value);
9487 }
9488 inline void DecisionStrategyProto::add_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
9489  _internal_add_variables(value);
9490  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.variables)
9491 }
9492 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9493 DecisionStrategyProto::_internal_variables() const {
9494  return variables_;
9495 }
9496 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9498  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.variables)
9499  return _internal_variables();
9500 }
9501 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9502 DecisionStrategyProto::_internal_mutable_variables() {
9503  return &variables_;
9504 }
9505 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9507  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.variables)
9508  return _internal_mutable_variables();
9509 }
9510 
9511 // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
9513  variable_selection_strategy_ = 0;
9514 }
9515 inline ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto::_internal_variable_selection_strategy() const {
9516  return static_cast< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy >(variable_selection_strategy_);
9517 }
9519  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
9520  return _internal_variable_selection_strategy();
9521 }
9522 inline void DecisionStrategyProto::_internal_set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value) {
9523 
9524  variable_selection_strategy_ = value;
9525 }
9527  _internal_set_variable_selection_strategy(value);
9528  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
9529 }
9530 
9531 // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
9533  domain_reduction_strategy_ = 0;
9534 }
9535 inline ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto::_internal_domain_reduction_strategy() const {
9536  return static_cast< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy >(domain_reduction_strategy_);
9537 }
9539  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
9540  return _internal_domain_reduction_strategy();
9541 }
9542 inline void DecisionStrategyProto::_internal_set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value) {
9543 
9544  domain_reduction_strategy_ = value;
9545 }
9547  _internal_set_domain_reduction_strategy(value);
9548  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
9549 }
9550 
9551 // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
9552 inline int DecisionStrategyProto::_internal_transformations_size() const {
9553  return transformations_.size();
9554 }
9556  return _internal_transformations_size();
9557 }
9559  transformations_.Clear();
9560 }
9561 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::mutable_transformations(int index) {
9562  // @@protoc_insertion_point(field_mutable:operations_research.sat.DecisionStrategyProto.transformations)
9563  return transformations_.Mutable(index);
9564 }
9565 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
9567  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.transformations)
9568  return &transformations_;
9569 }
9570 inline const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& DecisionStrategyProto::_internal_transformations(int index) const {
9571  return transformations_.Get(index);
9572 }
9573 inline const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& DecisionStrategyProto::transformations(int index) const {
9574  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.transformations)
9575  return _internal_transformations(index);
9576 }
9577 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::_internal_add_transformations() {
9578  return transformations_.Add();
9579 }
9580 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::add_transformations() {
9581  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.transformations)
9582  return _internal_add_transformations();
9583 }
9584 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
9586  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.transformations)
9587  return transformations_;
9588 }
9589 
9590 // -------------------------------------------------------------------
9591 
9592 // PartialVariableAssignment
9593 
9594 // repeated int32 vars = 1;
9595 inline int PartialVariableAssignment::_internal_vars_size() const {
9596  return vars_.size();
9597 }
9599  return _internal_vars_size();
9600 }
9602  vars_.Clear();
9603 }
9604 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::_internal_vars(int index) const {
9605  return vars_.Get(index);
9606 }
9607 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::vars(int index) const {
9608  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.vars)
9609  return _internal_vars(index);
9610 }
9611 inline void PartialVariableAssignment::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9612  vars_.Set(index, value);
9613  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.vars)
9614 }
9615 inline void PartialVariableAssignment::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9616  vars_.Add(value);
9617 }
9618 inline void PartialVariableAssignment::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9619  _internal_add_vars(value);
9620  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.vars)
9621 }
9622 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9623 PartialVariableAssignment::_internal_vars() const {
9624  return vars_;
9625 }
9626 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9628  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.vars)
9629  return _internal_vars();
9630 }
9631 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9632 PartialVariableAssignment::_internal_mutable_vars() {
9633  return &vars_;
9634 }
9635 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9637  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.vars)
9638  return _internal_mutable_vars();
9639 }
9640 
9641 // repeated int64 values = 2;
9642 inline int PartialVariableAssignment::_internal_values_size() const {
9643  return values_.size();
9644 }
9646  return _internal_values_size();
9647 }
9649  values_.Clear();
9650 }
9651 inline ::PROTOBUF_NAMESPACE_ID::int64 PartialVariableAssignment::_internal_values(int index) const {
9652  return values_.Get(index);
9653 }
9654 inline ::PROTOBUF_NAMESPACE_ID::int64 PartialVariableAssignment::values(int index) const {
9655  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.values)
9656  return _internal_values(index);
9657 }
9658 inline void PartialVariableAssignment::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9659  values_.Set(index, value);
9660  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.values)
9661 }
9662 inline void PartialVariableAssignment::_internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
9663  values_.Add(value);
9664 }
9665 inline void PartialVariableAssignment::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
9666  _internal_add_values(value);
9667  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.values)
9668 }
9669 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9670 PartialVariableAssignment::_internal_values() const {
9671  return values_;
9672 }
9673 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9675  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.values)
9676  return _internal_values();
9677 }
9678 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9679 PartialVariableAssignment::_internal_mutable_values() {
9680  return &values_;
9681 }
9682 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9684  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.values)
9685  return _internal_mutable_values();
9686 }
9687 
9688 // -------------------------------------------------------------------
9689 
9690 // CpModelProto
9691 
9692 // string name = 1;
9694  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9695 }
9696 inline const std::string& CpModelProto::name() const {
9697  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.name)
9698  return _internal_name();
9699 }
9700 inline void CpModelProto::set_name(const std::string& value) {
9701  _internal_set_name(value);
9702  // @@protoc_insertion_point(field_set:operations_research.sat.CpModelProto.name)
9703 }
9704 inline std::string* CpModelProto::mutable_name() {
9705  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.name)
9706  return _internal_mutable_name();
9707 }
9708 inline const std::string& CpModelProto::_internal_name() const {
9709  return name_.GetNoArena();
9710 }
9711 inline void CpModelProto::_internal_set_name(const std::string& value) {
9712 
9713  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
9714 }
9715 inline void CpModelProto::set_name(std::string&& value) {
9716 
9717  name_.SetNoArena(
9718  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
9719  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpModelProto.name)
9720 }
9721 inline void CpModelProto::set_name(const char* value) {
9722  GOOGLE_DCHECK(value != nullptr);
9723 
9724  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
9725  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpModelProto.name)
9726 }
9727 inline void CpModelProto::set_name(const char* value, size_t size) {
9728 
9729  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
9730  ::std::string(reinterpret_cast<const char*>(value), size));
9731  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpModelProto.name)
9732 }
9733 inline std::string* CpModelProto::_internal_mutable_name() {
9734 
9735  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9736 }
9737 inline std::string* CpModelProto::release_name() {
9738  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.name)
9739 
9740  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9741 }
9742 inline void CpModelProto::set_allocated_name(std::string* name) {
9743  if (name != nullptr) {
9744 
9745  } else {
9746 
9747  }
9748  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
9749  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.name)
9750 }
9751 
9752 // repeated .operations_research.sat.IntegerVariableProto variables = 2;
9753 inline int CpModelProto::_internal_variables_size() const {
9754  return variables_.size();
9755 }
9756 inline int CpModelProto::variables_size() const {
9757  return _internal_variables_size();
9758 }
9760  variables_.Clear();
9761 }
9762 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::mutable_variables(int index) {
9763  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.variables)
9764  return variables_.Mutable(index);
9765 }
9766 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
9768  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.variables)
9769  return &variables_;
9770 }
9771 inline const ::operations_research::sat::IntegerVariableProto& CpModelProto::_internal_variables(int index) const {
9772  return variables_.Get(index);
9773 }
9774 inline const ::operations_research::sat::IntegerVariableProto& CpModelProto::variables(int index) const {
9775  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.variables)
9776  return _internal_variables(index);
9777 }
9778 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::_internal_add_variables() {
9779  return variables_.Add();
9780 }
9781 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::add_variables() {
9782  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.variables)
9783  return _internal_add_variables();
9784 }
9785 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
9787  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.variables)
9788  return variables_;
9789 }
9790 
9791 // repeated .operations_research.sat.ConstraintProto constraints = 3;
9792 inline int CpModelProto::_internal_constraints_size() const {
9793  return constraints_.size();
9794 }
9796  return _internal_constraints_size();
9797 }
9799  constraints_.Clear();
9800 }
9801 inline ::operations_research::sat::ConstraintProto* CpModelProto::mutable_constraints(int index) {
9802  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.constraints)
9803  return constraints_.Mutable(index);
9804 }
9805 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
9807  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.constraints)
9808  return &constraints_;
9809 }
9810 inline const ::operations_research::sat::ConstraintProto& CpModelProto::_internal_constraints(int index) const {
9811  return constraints_.Get(index);
9812 }
9813 inline const ::operations_research::sat::ConstraintProto& CpModelProto::constraints(int index) const {
9814  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.constraints)
9815  return _internal_constraints(index);
9816 }
9817 inline ::operations_research::sat::ConstraintProto* CpModelProto::_internal_add_constraints() {
9818  return constraints_.Add();
9819 }
9820 inline ::operations_research::sat::ConstraintProto* CpModelProto::add_constraints() {
9821  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.constraints)
9822  return _internal_add_constraints();
9823 }
9824 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
9826  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.constraints)
9827  return constraints_;
9828 }
9829 
9830 // .operations_research.sat.CpObjectiveProto objective = 4;
9831 inline bool CpModelProto::_internal_has_objective() const {
9832  return this != internal_default_instance() && objective_ != nullptr;
9833 }
9834 inline bool CpModelProto::has_objective() const {
9835  return _internal_has_objective();
9836 }
9838  if (GetArenaNoVirtual() == nullptr && objective_ != nullptr) {
9839  delete objective_;
9840  }
9841  objective_ = nullptr;
9842 }
9843 inline const ::operations_research::sat::CpObjectiveProto& CpModelProto::_internal_objective() const {
9844  const ::operations_research::sat::CpObjectiveProto* p = objective_;
9845  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::CpObjectiveProto*>(
9847 }
9848 inline const ::operations_research::sat::CpObjectiveProto& CpModelProto::objective() const {
9849  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.objective)
9850  return _internal_objective();
9851 }
9852 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::release_objective() {
9853  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.objective)
9854 
9856  objective_ = nullptr;
9857  return temp;
9858 }
9859 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::_internal_mutable_objective() {
9860 
9861  if (objective_ == nullptr) {
9862  auto* p = CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(GetArenaNoVirtual());
9863  objective_ = p;
9864  }
9865  return objective_;
9866 }
9867 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::mutable_objective() {
9868  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.objective)
9869  return _internal_mutable_objective();
9870 }
9872  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
9873  if (message_arena == nullptr) {
9874  delete objective_;
9875  }
9876  if (objective) {
9877  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
9878  if (message_arena != submessage_arena) {
9879  objective = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
9880  message_arena, objective, submessage_arena);
9881  }
9882 
9883  } else {
9884 
9885  }
9886  objective_ = objective;
9887  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.objective)
9888 }
9889 
9890 // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
9891 inline int CpModelProto::_internal_search_strategy_size() const {
9892  return search_strategy_.size();
9893 }
9895  return _internal_search_strategy_size();
9896 }
9898  search_strategy_.Clear();
9899 }
9900 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::mutable_search_strategy(int index) {
9901  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.search_strategy)
9902  return search_strategy_.Mutable(index);
9903 }
9904 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
9906  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.search_strategy)
9907  return &search_strategy_;
9908 }
9909 inline const ::operations_research::sat::DecisionStrategyProto& CpModelProto::_internal_search_strategy(int index) const {
9910  return search_strategy_.Get(index);
9911 }
9912 inline const ::operations_research::sat::DecisionStrategyProto& CpModelProto::search_strategy(int index) const {
9913  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.search_strategy)
9914  return _internal_search_strategy(index);
9915 }
9916 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::_internal_add_search_strategy() {
9917  return search_strategy_.Add();
9918 }
9919 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::add_search_strategy() {
9920  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.search_strategy)
9921  return _internal_add_search_strategy();
9922 }
9923 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
9925  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.search_strategy)
9926  return search_strategy_;
9927 }
9928 
9929 // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
9930 inline bool CpModelProto::_internal_has_solution_hint() const {
9931  return this != internal_default_instance() && solution_hint_ != nullptr;
9932 }
9933 inline bool CpModelProto::has_solution_hint() const {
9934  return _internal_has_solution_hint();
9935 }
9937  if (GetArenaNoVirtual() == nullptr && solution_hint_ != nullptr) {
9938  delete solution_hint_;
9939  }
9940  solution_hint_ = nullptr;
9941 }
9942 inline const ::operations_research::sat::PartialVariableAssignment& CpModelProto::_internal_solution_hint() const {
9943  const ::operations_research::sat::PartialVariableAssignment* p = solution_hint_;
9944  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::PartialVariableAssignment*>(
9946 }
9947 inline const ::operations_research::sat::PartialVariableAssignment& CpModelProto::solution_hint() const {
9948  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.solution_hint)
9949  return _internal_solution_hint();
9950 }
9951 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::release_solution_hint() {
9952  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.solution_hint)
9953 
9955  solution_hint_ = nullptr;
9956  return temp;
9957 }
9958 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::_internal_mutable_solution_hint() {
9959 
9960  if (solution_hint_ == nullptr) {
9961  auto* p = CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(GetArenaNoVirtual());
9962  solution_hint_ = p;
9963  }
9964  return solution_hint_;
9965 }
9966 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::mutable_solution_hint() {
9967  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.solution_hint)
9968  return _internal_mutable_solution_hint();
9969 }
9971  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
9972  if (message_arena == nullptr) {
9973  delete solution_hint_;
9974  }
9975  if (solution_hint) {
9976  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
9977  if (message_arena != submessage_arena) {
9978  solution_hint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
9979  message_arena, solution_hint, submessage_arena);
9980  }
9981 
9982  } else {
9983 
9984  }
9985  solution_hint_ = solution_hint;
9986  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.solution_hint)
9987 }
9988 
9989 // -------------------------------------------------------------------
9990 
9991 // CpSolverResponse
9992 
9993 // .operations_research.sat.CpSolverStatus status = 1;
9995  status_ = 0;
9996 }
9997 inline ::operations_research::sat::CpSolverStatus CpSolverResponse::_internal_status() const {
9998  return static_cast< ::operations_research::sat::CpSolverStatus >(status_);
9999 }
10001  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.status)
10002  return _internal_status();
10003 }
10004 inline void CpSolverResponse::_internal_set_status(::operations_research::sat::CpSolverStatus value) {
10005 
10006  status_ = value;
10007 }
10009  _internal_set_status(value);
10010  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.status)
10011 }
10012 
10013 // repeated int64 solution = 2;
10014 inline int CpSolverResponse::_internal_solution_size() const {
10015  return solution_.size();
10016 }
10018  return _internal_solution_size();
10019 }
10021  solution_.Clear();
10022 }
10023 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution(int index) const {
10024  return solution_.Get(index);
10025 }
10026 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution(int index) const {
10027  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution)
10028  return _internal_solution(index);
10029 }
10030 inline void CpSolverResponse::set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10031  solution_.Set(index, value);
10032  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution)
10033 }
10034 inline void CpSolverResponse::_internal_add_solution(::PROTOBUF_NAMESPACE_ID::int64 value) {
10035  solution_.Add(value);
10036 }
10037 inline void CpSolverResponse::add_solution(::PROTOBUF_NAMESPACE_ID::int64 value) {
10038  _internal_add_solution(value);
10039  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution)
10040 }
10041 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10042 CpSolverResponse::_internal_solution() const {
10043  return solution_;
10044 }
10045 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10047  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution)
10048  return _internal_solution();
10049 }
10050 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10051 CpSolverResponse::_internal_mutable_solution() {
10052  return &solution_;
10053 }
10054 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10056  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution)
10057  return _internal_mutable_solution();
10058 }
10059 
10060 // double objective_value = 3;
10062  objective_value_ = 0;
10063 }
10064 inline double CpSolverResponse::_internal_objective_value() const {
10065  return objective_value_;
10066 }
10067 inline double CpSolverResponse::objective_value() const {
10068  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.objective_value)
10069  return _internal_objective_value();
10070 }
10071 inline void CpSolverResponse::_internal_set_objective_value(double value) {
10072 
10073  objective_value_ = value;
10074 }
10075 inline void CpSolverResponse::set_objective_value(double value) {
10076  _internal_set_objective_value(value);
10077  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.objective_value)
10078 }
10079 
10080 // double best_objective_bound = 4;
10082  best_objective_bound_ = 0;
10083 }
10084 inline double CpSolverResponse::_internal_best_objective_bound() const {
10085  return best_objective_bound_;
10086 }
10088  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.best_objective_bound)
10089  return _internal_best_objective_bound();
10090 }
10091 inline void CpSolverResponse::_internal_set_best_objective_bound(double value) {
10092 
10093  best_objective_bound_ = value;
10094 }
10096  _internal_set_best_objective_bound(value);
10097  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.best_objective_bound)
10098 }
10099 
10100 // repeated int64 solution_lower_bounds = 18;
10101 inline int CpSolverResponse::_internal_solution_lower_bounds_size() const {
10102  return solution_lower_bounds_.size();
10103 }
10105  return _internal_solution_lower_bounds_size();
10106 }
10108  solution_lower_bounds_.Clear();
10109 }
10110 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution_lower_bounds(int index) const {
10111  return solution_lower_bounds_.Get(index);
10112 }
10113 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_lower_bounds(int index) const {
10114  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10115  return _internal_solution_lower_bounds(index);
10116 }
10117 inline void CpSolverResponse::set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10118  solution_lower_bounds_.Set(index, value);
10119  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10120 }
10121 inline void CpSolverResponse::_internal_add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10122  solution_lower_bounds_.Add(value);
10123 }
10124 inline void CpSolverResponse::add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10125  _internal_add_solution_lower_bounds(value);
10126  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10127 }
10128 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10129 CpSolverResponse::_internal_solution_lower_bounds() const {
10130  return solution_lower_bounds_;
10131 }
10132 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10134  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10135  return _internal_solution_lower_bounds();
10136 }
10137 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10138 CpSolverResponse::_internal_mutable_solution_lower_bounds() {
10139  return &solution_lower_bounds_;
10140 }
10141 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10143  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10144  return _internal_mutable_solution_lower_bounds();
10145 }
10146 
10147 // repeated int64 solution_upper_bounds = 19;
10148 inline int CpSolverResponse::_internal_solution_upper_bounds_size() const {
10149  return solution_upper_bounds_.size();
10150 }
10152  return _internal_solution_upper_bounds_size();
10153 }
10155  solution_upper_bounds_.Clear();
10156 }
10157 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution_upper_bounds(int index) const {
10158  return solution_upper_bounds_.Get(index);
10159 }
10160 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_upper_bounds(int index) const {
10161  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10162  return _internal_solution_upper_bounds(index);
10163 }
10164 inline void CpSolverResponse::set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10165  solution_upper_bounds_.Set(index, value);
10166  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10167 }
10168 inline void CpSolverResponse::_internal_add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10169  solution_upper_bounds_.Add(value);
10170 }
10171 inline void CpSolverResponse::add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10172  _internal_add_solution_upper_bounds(value);
10173  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10174 }
10175 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10176 CpSolverResponse::_internal_solution_upper_bounds() const {
10177  return solution_upper_bounds_;
10178 }
10179 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10181  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10182  return _internal_solution_upper_bounds();
10183 }
10184 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10185 CpSolverResponse::_internal_mutable_solution_upper_bounds() {
10186  return &solution_upper_bounds_;
10187 }
10188 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10190  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10191  return _internal_mutable_solution_upper_bounds();
10192 }
10193 
10194 // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
10195 inline int CpSolverResponse::_internal_tightened_variables_size() const {
10196  return tightened_variables_.size();
10197 }
10199  return _internal_tightened_variables_size();
10200 }
10202  tightened_variables_.Clear();
10203 }
10204 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::mutable_tightened_variables(int index) {
10205  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.tightened_variables)
10206  return tightened_variables_.Mutable(index);
10207 }
10208 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
10210  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.tightened_variables)
10211  return &tightened_variables_;
10212 }
10213 inline const ::operations_research::sat::IntegerVariableProto& CpSolverResponse::_internal_tightened_variables(int index) const {
10214  return tightened_variables_.Get(index);
10215 }
10216 inline const ::operations_research::sat::IntegerVariableProto& CpSolverResponse::tightened_variables(int index) const {
10217  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.tightened_variables)
10218  return _internal_tightened_variables(index);
10219 }
10220 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::_internal_add_tightened_variables() {
10221  return tightened_variables_.Add();
10222 }
10223 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::add_tightened_variables() {
10224  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.tightened_variables)
10225  return _internal_add_tightened_variables();
10226 }
10227 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
10229  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.tightened_variables)
10230  return tightened_variables_;
10231 }
10232 
10233 // bool all_solutions_were_found = 5;
10235  all_solutions_were_found_ = false;
10236 }
10237 inline bool CpSolverResponse::_internal_all_solutions_were_found() const {
10238  return all_solutions_were_found_;
10239 }
10241  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.all_solutions_were_found)
10242  return _internal_all_solutions_were_found();
10243 }
10244 inline void CpSolverResponse::_internal_set_all_solutions_were_found(bool value) {
10245 
10246  all_solutions_were_found_ = value;
10247 }
10249  _internal_set_all_solutions_were_found(value);
10250  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.all_solutions_were_found)
10251 }
10252 
10253 // int64 num_booleans = 10;
10255  num_booleans_ = PROTOBUF_LONGLONG(0);
10256 }
10257 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_booleans() const {
10258  return num_booleans_;
10259 }
10260 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_booleans() const {
10261  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_booleans)
10262  return _internal_num_booleans();
10263 }
10264 inline void CpSolverResponse::_internal_set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value) {
10265 
10266  num_booleans_ = value;
10267 }
10268 inline void CpSolverResponse::set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value) {
10269  _internal_set_num_booleans(value);
10270  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_booleans)
10271 }
10272 
10273 // int64 num_conflicts = 11;
10275  num_conflicts_ = PROTOBUF_LONGLONG(0);
10276 }
10277 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_conflicts() const {
10278  return num_conflicts_;
10279 }
10280 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_conflicts() const {
10281  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_conflicts)
10282  return _internal_num_conflicts();
10283 }
10284 inline void CpSolverResponse::_internal_set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
10285 
10286  num_conflicts_ = value;
10287 }
10288 inline void CpSolverResponse::set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
10289  _internal_set_num_conflicts(value);
10290  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_conflicts)
10291 }
10292 
10293 // int64 num_branches = 12;
10295  num_branches_ = PROTOBUF_LONGLONG(0);
10296 }
10297 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_branches() const {
10298  return num_branches_;
10299 }
10300 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_branches() const {
10301  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_branches)
10302  return _internal_num_branches();
10303 }
10304 inline void CpSolverResponse::_internal_set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value) {
10305 
10306  num_branches_ = value;
10307 }
10308 inline void CpSolverResponse::set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value) {
10309  _internal_set_num_branches(value);
10310  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_branches)
10311 }
10312 
10313 // int64 num_binary_propagations = 13;
10315  num_binary_propagations_ = PROTOBUF_LONGLONG(0);
10316 }
10317 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_binary_propagations() const {
10318  return num_binary_propagations_;
10319 }
10320 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_binary_propagations() const {
10321  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_binary_propagations)
10322  return _internal_num_binary_propagations();
10323 }
10324 inline void CpSolverResponse::_internal_set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10325 
10326  num_binary_propagations_ = value;
10327 }
10328 inline void CpSolverResponse::set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10329  _internal_set_num_binary_propagations(value);
10330  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_binary_propagations)
10331 }
10332 
10333 // int64 num_integer_propagations = 14;
10335  num_integer_propagations_ = PROTOBUF_LONGLONG(0);
10336 }
10337 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_integer_propagations() const {
10338  return num_integer_propagations_;
10339 }
10340 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_integer_propagations() const {
10341  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_integer_propagations)
10342  return _internal_num_integer_propagations();
10343 }
10344 inline void CpSolverResponse::_internal_set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10345 
10346  num_integer_propagations_ = value;
10347 }
10348 inline void CpSolverResponse::set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10349  _internal_set_num_integer_propagations(value);
10350  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_integer_propagations)
10351 }
10352 
10353 // double wall_time = 15;
10355  wall_time_ = 0;
10356 }
10357 inline double CpSolverResponse::_internal_wall_time() const {
10358  return wall_time_;
10359 }
10360 inline double CpSolverResponse::wall_time() const {
10361  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.wall_time)
10362  return _internal_wall_time();
10363 }
10364 inline void CpSolverResponse::_internal_set_wall_time(double value) {
10365 
10366  wall_time_ = value;
10367 }
10368 inline void CpSolverResponse::set_wall_time(double value) {
10369  _internal_set_wall_time(value);
10370  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.wall_time)
10371 }
10372 
10373 // double user_time = 16;
10375  user_time_ = 0;
10376 }
10377 inline double CpSolverResponse::_internal_user_time() const {
10378  return user_time_;
10379 }
10380 inline double CpSolverResponse::user_time() const {
10381  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.user_time)
10382  return _internal_user_time();
10383 }
10384 inline void CpSolverResponse::_internal_set_user_time(double value) {
10385 
10386  user_time_ = value;
10387 }
10388 inline void CpSolverResponse::set_user_time(double value) {
10389  _internal_set_user_time(value);
10390  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.user_time)
10391 }
10392 
10393 // double deterministic_time = 17;
10395  deterministic_time_ = 0;
10396 }
10397 inline double CpSolverResponse::_internal_deterministic_time() const {
10398  return deterministic_time_;
10399 }
10401  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.deterministic_time)
10402  return _internal_deterministic_time();
10403 }
10404 inline void CpSolverResponse::_internal_set_deterministic_time(double value) {
10405 
10406  deterministic_time_ = value;
10407 }
10408 inline void CpSolverResponse::set_deterministic_time(double value) {
10409  _internal_set_deterministic_time(value);
10410  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.deterministic_time)
10411 }
10412 
10413 // double primal_integral = 22;
10415  primal_integral_ = 0;
10416 }
10417 inline double CpSolverResponse::_internal_primal_integral() const {
10418  return primal_integral_;
10419 }
10420 inline double CpSolverResponse::primal_integral() const {
10421  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.primal_integral)
10422  return _internal_primal_integral();
10423 }
10424 inline void CpSolverResponse::_internal_set_primal_integral(double value) {
10425 
10426  primal_integral_ = value;
10427 }
10428 inline void CpSolverResponse::set_primal_integral(double value) {
10429  _internal_set_primal_integral(value);
10430  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.primal_integral)
10431 }
10432 
10433 // string solution_info = 20;
10435  solution_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10436 }
10437 inline const std::string& CpSolverResponse::solution_info() const {
10438  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_info)
10439  return _internal_solution_info();
10440 }
10441 inline void CpSolverResponse::set_solution_info(const std::string& value) {
10442  _internal_set_solution_info(value);
10443  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_info)
10444 }
10446  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.solution_info)
10447  return _internal_mutable_solution_info();
10448 }
10449 inline const std::string& CpSolverResponse::_internal_solution_info() const {
10450  return solution_info_.GetNoArena();
10451 }
10452 inline void CpSolverResponse::_internal_set_solution_info(const std::string& value) {
10453 
10454  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
10455 }
10456 inline void CpSolverResponse::set_solution_info(std::string&& value) {
10457 
10458  solution_info_.SetNoArena(
10459  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
10460  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpSolverResponse.solution_info)
10461 }
10462 inline void CpSolverResponse::set_solution_info(const char* value) {
10463  GOOGLE_DCHECK(value != nullptr);
10464 
10465  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
10466  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpSolverResponse.solution_info)
10467 }
10468 inline void CpSolverResponse::set_solution_info(const char* value, size_t size) {
10469 
10470  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
10471  ::std::string(reinterpret_cast<const char*>(value), size));
10472  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpSolverResponse.solution_info)
10473 }
10474 inline std::string* CpSolverResponse::_internal_mutable_solution_info() {
10475 
10476  return solution_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10477 }
10479  // @@protoc_insertion_point(field_release:operations_research.sat.CpSolverResponse.solution_info)
10480 
10481  return solution_info_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10482 }
10483 inline void CpSolverResponse::set_allocated_solution_info(std::string* solution_info) {
10484  if (solution_info != nullptr) {
10485 
10486  } else {
10487 
10488  }
10489  solution_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), solution_info);
10490  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpSolverResponse.solution_info)
10491 }
10492 
10493 #ifdef __GNUC__
10494  #pragma GCC diagnostic pop
10495 #endif // __GNUC__
10496 // -------------------------------------------------------------------
10497 
10498 // -------------------------------------------------------------------
10499 
10500 // -------------------------------------------------------------------
10501 
10502 // -------------------------------------------------------------------
10503 
10504 // -------------------------------------------------------------------
10505 
10506 // -------------------------------------------------------------------
10507 
10508 // -------------------------------------------------------------------
10509 
10510 // -------------------------------------------------------------------
10511 
10512 // -------------------------------------------------------------------
10513 
10514 // -------------------------------------------------------------------
10515 
10516 // -------------------------------------------------------------------
10517 
10518 // -------------------------------------------------------------------
10519 
10520 // -------------------------------------------------------------------
10521 
10522 // -------------------------------------------------------------------
10523 
10524 // -------------------------------------------------------------------
10525 
10526 // -------------------------------------------------------------------
10527 
10528 // -------------------------------------------------------------------
10529 
10530 // -------------------------------------------------------------------
10531 
10532 // -------------------------------------------------------------------
10533 
10534 // -------------------------------------------------------------------
10535 
10536 // -------------------------------------------------------------------
10537 
10538 // -------------------------------------------------------------------
10539 
10540 // -------------------------------------------------------------------
10541 
10542 // -------------------------------------------------------------------
10543 
10544 // -------------------------------------------------------------------
10545 
10546 
10547 // @@protoc_insertion_point(namespace_scope)
10548 
10549 } // namespace sat
10550 } // namespace operations_research
10551 
10552 PROTOBUF_NAMESPACE_OPEN
10553 
10554 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy> : ::std::true_type {};
10555 template <>
10556 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy>() {
10558 }
10559 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy> : ::std::true_type {};
10560 template <>
10561 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy>() {
10563 }
10564 template <> struct is_proto_enum< ::operations_research::sat::CpSolverStatus> : ::std::true_type {};
10565 template <>
10566 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::CpSolverStatus>() {
10568 }
10569 
10570 PROTOBUF_NAMESPACE_CLOSE
10571 
10572 // @@protoc_insertion_point(global_scope)
10573 
10574 #include <google/protobuf/port_undef.inc>
10575 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CumulativeConstraintProto & operator=(const CumulativeConstraintProto &from)
Definition: cp_model.pb.h:2024
const std::string & CpSolverStatus_Name(T enum_t_value)
Definition: cp_model.pb.h:243
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7601
void set_allocated_no_overlap_2d(::operations_research::sat::NoOverlap2DConstraintProto *no_overlap_2d)
void set_allocated_element(::operations_research::sat::ElementConstraintProto *element)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1211
void clear_transformations()
Definition: cp_model.pb.h:9558
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:7836
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::IntegerArgumentProto * release_int_prod()
Definition: cp_model.pb.h:8468
::operations_research::sat::CpObjectiveProto * mutable_objective()
Definition: cp_model.pb.h:9867
@ DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:178
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:6674
@ kTimesFieldNumber
Definition: cp_model.pb.h:2296
std::string * release_name()
Definition: cp_model.pb.h:9737
static bool DomainReductionStrategy_IsValid(int value)
Definition: cp_model.pb.h:4754
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ kLiteralsFieldNumber
Definition: cp_model.pb.h:2704
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3016
void set_allocated_int_max(::operations_research::sat::IntegerArgumentProto *int_max)
static const ReservoirConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > & variables() const
Definition: cp_model.pb.h:9786
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:7895
void clear_status()
Definition: cp_model.pb.h:9994
void clear_all_diff()
Definition: cp_model.pb.h:8562
ReservoirConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2248
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & final_states() const
Definition: cp_model.pb.h:7639
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3019
LinearExpressionProto * New() const final
Definition: cp_model.pb.h:766
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:5807
void set_all_solutions_were_found(bool value)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
@ kNumConflictsFieldNumber
Definition: cp_model.pb.h:5372
virtual ~IntervalConstraintProto()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_enforcement_literal()
Definition: cp_model.pb.h:7947
int GetCachedSize() const final
Definition: cp_model.pb.h:1258
@ kNoOverlap2DFieldNumber
Definition: cp_model.pb.h:3749
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static void InitAsDefaultInstance()
LinearExpressionProto & operator=(const LinearExpressionProto &from)
Definition: cp_model.pb.h:724
@ kPositiveCoeffFieldNumber
Definition: cp_model.pb.h:4559
std::string * release_name()
Definition: cp_model.pb.h:5683
static void InitAsDefaultInstance()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kScalingFactorFieldNumber
Definition: cp_model.pb.h:4348
@ kOffsetFieldNumber
Definition: cp_model.pb.h:4347
virtual ~LinearConstraintProto()
const ::operations_research::sat::IntegerArgumentProto & int_mod() const
Definition: cp_model.pb.h:8234
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6254
Definition: cp_model.pb.h:1542
void clear_num_integer_propagations()
static bool DomainReductionStrategy_Parse(const std::string &name, DomainReductionStrategy *value)
Definition: cp_model.pb.h:4774
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3197
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_lower_bounds() const
const ::operations_research::sat::BoolArgumentProto & bool_or() const
Definition: cp_model.pb.h:7984
void clear_linear()
Definition: cp_model.pb.h:8512
void clear_name()
Definition: cp_model.pb.h:9693
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1072
int actives_size() const
Definition: cp_model.pb.h:6868
static void InitAsDefaultInstance()
void clear_final_states()
Definition: cp_model.pb.h:7613
bool DecisionStrategyProto_VariableSelectionStrategy_Parse(const std::string &name, DecisionStrategyProto_VariableSelectionStrategy *value)
Definition: cp_model.pb.h:194
static constexpr DomainReductionStrategy SELECT_MAX_VALUE
Definition: cp_model.pb.h:4746
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > * mutable_constraints()
Definition: cp_model.pb.h:9806
@ kActivesFieldNumber
Definition: cp_model.pb.h:2298
ElementConstraintProto & operator=(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1394
LinearConstraintProto * New() const final
Definition: cp_model.pb.h:1240
BoolArgumentProto()
DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_
::PROTOBUF_NAMESPACE_ID::int32 size() const
Definition: cp_model.pb.h:6426
int enforcement_literal_size() const
Definition: cp_model.pb.h:7909
void Swap(InverseConstraintProto *other)
Definition: cp_model.pb.h:3216
static void InitAsDefaultInstance()
int vars_size() const
Definition: cp_model.pb.h:9598
LinearExpressionProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:770
friend void swap(LinearArgumentProto &a, LinearArgumentProto &b)
Definition: cp_model.pb.h:934
@ FEASIBLE
Definition: cp_model.pb.h:230
void clear_solution_upper_bounds()
IntegerVariableProto * New() const final
Definition: cp_model.pb.h:311
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:7004
void clear_y_intervals()
Definition: cp_model.pb.h:6548
void set_end(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6414
virtual ~CpObjectiveProto()
@ kTailsFieldNumber
Definition: cp_model.pb.h:2702
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static void InitAsDefaultInstance()
int coeffs_size() const
Definition: cp_model.pb.h:5922
int solution_lower_bounds_size() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool has_lin_max() const
Definition: cp_model.pb.h:8306
void clear_literals()
Definition: cp_model.pb.h:7161
void set_allocated_interval(::operations_research::sat::IntervalConstraintProto *interval)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2849
InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_
CircuitConstraintProto()
void Swap(AllDifferentConstraintProto *other)
Definition: cp_model.pb.h:1091
::operations_research::sat::PartialVariableAssignment * release_solution_hint()
Definition: cp_model.pb.h:9951
static const CpObjectiveProto * internal_default_instance()
Definition: cp_model.pb.h:4275
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:9257
CpObjectiveProto(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:4245
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_VariableSelectionStrategy_descriptor()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3364
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_lower_bounds()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_size()
Definition: cp_model.pb.h:6420
friend void swap(CumulativeConstraintProto &a, CumulativeConstraintProto &b)
Definition: cp_model.pb.h:2056
NoOverlapConstraintProto * New() const final
Definition: cp_model.pb.h:1746
Definition: cp_model.pb.h:712
void clear_target()
Definition: cp_model.pb.h:5801
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_x_intervals()
Definition: cp_model.pb.h:6536
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: cp_model.pb.h:2012
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6979
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7077
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6696
LinearExpressionProto(LinearExpressionProto &&from) noexcept
Definition: cp_model.pb.h:719
bool has_int_prod() const
Definition: cp_model.pb.h:8456
const ::operations_research::sat::CircuitCoveringConstraintProto & circuit_covering() const
Definition: cp_model.pb.h:8784
Definition: cp_model.pb.h:3336
void clear_transition_label()
Definition: cp_model.pb.h:7754
int GetCachedSize() const final
Definition: cp_model.pb.h:1764
BoolArgumentProto & operator=(const BoolArgumentProto &from)
Definition: cp_model.pb.h:429
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:9636
@ kNameFieldNumber
Definition: cp_model.pb.h:3725
NoOverlapConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1750
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & x_intervals() const
Definition: cp_model.pb.h:6527
::operations_research::sat::RoutesConstraintProto * mutable_routes()
Definition: cp_model.pb.h:8747
@ kNoOverlapFieldNumber
Definition: cp_model.pb.h:3748
bool has_all_diff() const
Definition: cp_model.pb.h:8556
void clear_int_min()
Definition: cp_model.pb.h:8362
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_FIRST
Definition: cp_model.pb.h:172
bool IsInitialized() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1573
bool IsInitialized() const final
void set_allocated_reservoir(::operations_research::sat::ReservoirConstraintProto *reservoir)
CpSolverResponse & operator=(const CpSolverResponse &from)
Definition: cp_model.pb.h:5268
bool IsInitialized() const final
void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6565
@ kNumBooleansFieldNumber
Definition: cp_model.pb.h:5371
size_t ByteSizeLong() const final
@ kFinalStatesFieldNumber
Definition: cp_model.pb.h:3442
const ::operations_research::sat::NoOverlap2DConstraintProto & no_overlap_2d() const
Definition: cp_model.pb.h:9134
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static void InitAsDefaultInstance()
void clear_heads()
Definition: cp_model.pb.h:7114
int domain_size() const
Definition: cp_model.pb.h:6241
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
int values_size() const
Definition: cp_model.pb.h:7421
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:5791
@ kLinMaxFieldNumber
Definition: cp_model.pb.h:3733
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > & exprs() const
Definition: cp_model.pb.h:6083
void clear_offset()
Definition: cp_model.pb.h:5966
static const ElementConstraintProto & default_instance()
int heads_size() const
Definition: cp_model.pb.h:6966
@ kFInverseFieldNumber
Definition: cp_model.pb.h:3276
PartialVariableAssignment()
::operations_research::sat::CircuitCoveringConstraintProto * mutable_circuit_covering()
Definition: cp_model.pb.h:8797
CircuitConstraintProto(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2411
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::ElementConstraintProto * release_element()
Definition: cp_model.pb.h:8618
void clear_index()
Definition: cp_model.pb.h:6289
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto * New() const final
Definition: cp_model.pb.h:1596
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:5688
AllDifferentConstraintProto * New() const final
Definition: cp_model.pb.h:1098
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:9248
AutomatonConstraintProto & operator=(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3352
bool has_cumulative() const
Definition: cp_model.pb.h:9156
void clear_positive_coeff()
Definition: cp_model.pb.h:9441
@ kIntMod
Definition: cp_model.pb.h:3631
int solution_size() const
RoutesConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2654
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6460
static constexpr DomainReductionStrategy DomainReductionStrategy_MIN
Definition: cp_model.pb.h:4757
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
double deterministic_time() const
static const CpSolverResponse & default_instance()
bool has_circuit_covering() const
Definition: cp_model.pb.h:8756
static bool VariableSelectionStrategy_IsValid(int value)
Definition: cp_model.pb.h:4718
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3377
ElementConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1436
size_t ByteSizeLong() const final
void Swap(IntegerArgumentProto *other)
Definition: cp_model.pb.h:606
int tails_size() const
Definition: cp_model.pb.h:7064
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:7102
@ kCumulative
Definition: cp_model.pb.h:3650
void set_allocated_at_most_one(::operations_research::sat::BoolArgumentProto *at_most_one)
void set_target(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5815
AutomatonConstraintProto * New() const final
Definition: cp_model.pb.h:3390
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4266
@ kVarsFieldNumber
Definition: cp_model.pb.h:818
PartialVariableAssignment & operator=(const PartialVariableAssignment &from)
Definition: cp_model.pb.h:4872
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4483
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9239
@ kAutomaton
Definition: cp_model.pb.h:3644
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6841
PartialVariableAssignment & operator=(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:4876
int final_states_size() const
Definition: cp_model.pb.h:7610
LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_
PartialVariableAssignment * New() const final
Definition: cp_model.pb.h:4914
void clear_tails()
Definition: cp_model.pb.h:7067
@ kXIntervalsFieldNumber
Definition: cp_model.pb.h:1940
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool has_bool_and() const
Definition: cp_model.pb.h:8006
void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7724
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6361
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:6712
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
size_t ByteSizeLong() const final
@ kIntModFieldNumber
Definition: cp_model.pb.h:3731
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2053
DecisionStrategyProto * New() const final
Definition: cp_model.pb.h:4656
Definition: cp_model.pb.h:890
int vars_size() const
Definition: cp_model.pb.h:6332
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy variable_selection_strategy() const
Definition: cp_model.pb.h:9518
static const LinearConstraintProto & default_instance()
TableConstraintProto & operator=(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3007
DecisionStrategyProto_DomainReductionStrategy
Definition: cp_model.pb.h:199
void clear_heads()
Definition: cp_model.pb.h:6969
NoOverlap2DConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1892
static constexpr int VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:4725
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void Swap(CpModelProto *other)
Definition: cp_model.pb.h:5074
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6932
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > & search_strategy() const
Definition: cp_model.pb.h:9924
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::IntegerArgumentProto * mutable_int_mod()
Definition: cp_model.pb.h:8247
CircuitCoveringConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2882
void clear_f_inverse()
Definition: cp_model.pb.h:7542
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7343
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void Swap(CircuitCoveringConstraintProto *other)
Definition: cp_model.pb.h:2871
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_values()
Definition: cp_model.pb.h:9648
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3210
double primal_integral() const
@ kDemandsFieldNumber
Definition: cp_model.pb.h:2119
ReservoirConstraintProto()
int coeffs_size() const
Definition: cp_model.pb.h:9266
int GetCachedSize() const final
Definition: cp_model.pb.h:489
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_label() const
Definition: cp_model.pb.h:7780
static constexpr VariableSelectionStrategy CHOOSE_MAX_DOMAIN_SIZE
Definition: cp_model.pb.h:4716
void clear_bool_and()
Definition: cp_model.pb.h:8012
@ MODEL_INVALID
Definition: cp_model.pb.h:229
::operations_research::sat::ReservoirConstraintProto * mutable_reservoir()
Definition: cp_model.pb.h:8997
static const LinearExpressionProto * internal_default_instance()
Definition: cp_model.pb.h:749
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > & tightened_variables() const
@ kCircuit
Definition: cp_model.pb.h:3640
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int intervals_size() const
Definition: cp_model.pb.h:6447
void set_allocated_no_overlap(::operations_research::sat::NoOverlapConstraintProto *no_overlap)
virtual ~RoutesConstraintProto()
static void InitAsDefaultInstance()
bool has_int_min() const
Definition: cp_model.pb.h:8356
@ kIndexFieldNumber
Definition: cp_model.pb.h:1485
::operations_research::sat::BoolArgumentProto * release_bool_xor()
Definition: cp_model.pb.h:8118
void clear_automaton()
Definition: cp_model.pb.h:8862
::operations_research::sat::LinearArgumentProto * release_lin_min()
Definition: cp_model.pb.h:8418
LinearArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:948
::operations_research::sat::IntervalConstraintProto * release_interval()
Definition: cp_model.pb.h:9018
int exprs_size() const
Definition: cp_model.pb.h:6053
RoutesConstraintProto & operator=(const RoutesConstraintProto &from)
Definition: cp_model.pb.h:2608
std::string * mutable_name()
Definition: cp_model.pb.h:5650
bool boxes_with_null_area_can_overlap() const
Definition: cp_model.pb.h:6595
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int32 index() const
Definition: cp_model.pb.h:6295
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1723
NoOverlap2DConstraintProto & operator=(const NoOverlap2DConstraintProto &from)
Definition: cp_model.pb.h:1846
int GetCachedSize() const final
Definition: cp_model.pb.h:3408
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1865
int solution_upper_bounds_size() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
@ kLinMax
Definition: cp_model.pb.h:3633
void set_allocated_linear(::operations_research::sat::LinearConstraintProto *linear)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static constexpr VariableSelectionStrategy CHOOSE_HIGHEST_MAX
Definition: cp_model.pb.h:4712
static void InitAsDefaultInstance()
void set_allocated_int_prod(::operations_research::sat::IntegerArgumentProto *int_prod)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:442
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6214
Definition: cp_model.pb.h:1378
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7131
@ kDemandsFieldNumber
Definition: cp_model.pb.h:2297
BoolArgumentProto & operator=(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:433
friend void swap(AllDifferentConstraintProto &a, AllDifferentConstraintProto &b)
Definition: cp_model.pb.h:1088
@ kIntMax
Definition: cp_model.pb.h:3632
::PROTOBUF_NAMESPACE_ID::int32 var() const
Definition: cp_model.pb.h:9407
AutomatonConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3022
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6939
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CpSolverStatus_descriptor()
static const CpModelProto & default_instance()
@ kCumulativeFieldNumber
Definition: cp_model.pb.h:3750
@ kBestObjectiveBoundFieldNumber
Definition: cp_model.pb.h:5370
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2445
::operations_research::sat::CumulativeConstraintProto * mutable_cumulative()
Definition: cp_model.pb.h:9197
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
RoutesConstraintProto & operator=(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2612
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4279
Definition: cp_model.pb.h:2404
@ kInverseFieldNumber
Definition: cp_model.pb.h:3745
DecisionStrategyProto_AffineTransformation & operator=(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:4468
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:9683
::PROTOBUF_NAMESPACE_ID::int32 capacity() const
Definition: cp_model.pb.h:6619
bool has_int_mod() const
Definition: cp_model.pb.h:8206
const ::operations_research::sat::LinearArgumentProto & lin_min() const
Definition: cp_model.pb.h:8434
void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value)
CircuitCoveringConstraintProto(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2831
void set_boxes_with_null_area_can_overlap(bool value)
Definition: cp_model.pb.h:6603
static const CircuitConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2441
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:1692
void set_solution_info(const std::string &value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:753
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > * mutable_exprs()
Definition: cp_model.pb.h:6064
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5888
void Swap(LinearConstraintProto *other)
Definition: cp_model.pb.h:1233
CircuitCoveringConstraintProto & operator=(const CircuitCoveringConstraintProto &from)
Definition: cp_model.pb.h:2836
void clear_num_booleans()
void set_allocated_all_diff(::operations_research::sat::AllDifferentConstraintProto *all_diff)
virtual ~NoOverlap2DConstraintProto()
CpObjectiveProto()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:298
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:7196
LinearConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1244
const ::operations_research::sat::TableConstraintProto & table() const
Definition: cp_model.pb.h:8834
::operations_research::sat::LinearArgumentProto * mutable_lin_max()
Definition: cp_model.pb.h:8347
static void InitAsDefaultInstance()
bool has_objective() const
Definition: cp_model.pb.h:9834
void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7512
bool CpSolverStatus_IsValid(int value)
friend void swap(NoOverlap2DConstraintProto &a, NoOverlap2DConstraintProto &b)
Definition: cp_model.pb.h:1878
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
int GetCachedSize() const final
Definition: cp_model.pb.h:4524
const ::operations_research::sat::AllDifferentConstraintProto & all_diff() const
Definition: cp_model.pb.h:8584
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:5068
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const
Definition: cp_model.pb.h:9447
CpModelProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:5085
ConstraintCase
Definition: cp_model.pb.h:3625
virtual ~CpSolverResponse()
CpSolverResponse & operator=(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:5272
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void clear_best_objective_bound()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_label()
Definition: cp_model.pb.h:7789
void clear_target()
Definition: cp_model.pb.h:5996
void clear_all_solutions_were_found()
@ kBoolXorFieldNumber
Definition: cp_model.pb.h:3729
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:740
AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_
void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7670
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:5853
int GetCachedSize() const final
Definition: cp_model.pb.h:4310
@ kBoolOr
Definition: cp_model.pb.h:3626
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1217
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::operations_research::sat::IntegerArgumentProto & int_div() const
Definition: cp_model.pb.h:8184
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
BoolArgumentProto(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:424
int GetCachedSize() const final
Definition: cp_model.pb.h:1116
@ kVarsFieldNumber
Definition: cp_model.pb.h:3097
::operations_research::sat::BoolArgumentProto * mutable_bool_and()
Definition: cp_model.pb.h:8047
bool IsInitialized() const final
AllDifferentConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1102
@ kTightenedVariablesFieldNumber
Definition: cp_model.pb.h:5365
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1583
void set_allocated_target(::operations_research::sat::LinearExpressionProto *target)
Definition: cp_model.pb.h:6030
size_t ByteSizeLong() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & y_intervals() const
Definition: cp_model.pb.h:6574
@ kNoOverlap
Definition: cp_model.pb.h:3648
CpSolverResponse(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:5263
const ::operations_research::sat::PartialVariableAssignment & solution_hint() const
Definition: cp_model.pb.h:9947
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:743
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5837
size_t ByteSizeLong() const final
int demands_size() const
Definition: cp_model.pb.h:6683
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4263
@ kBoolOrFieldNumber
Definition: cp_model.pb.h:3726
friend void swap(NoOverlapConstraintProto &a, NoOverlapConstraintProto &b)
Definition: cp_model.pb.h:1736
static const IntervalConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1579
int tightened_variables_size() const
int GetCachedSize() const final
Definition: cp_model.pb.h:1906
NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_
bool has_lin_min() const
Definition: cp_model.pb.h:8406
@ kUserTimeFieldNumber
Definition: cp_model.pb.h:5377
void clear_circuit_covering()
Definition: cp_model.pb.h:8762
const ::operations_research::sat::LinearArgumentProto & lin_max() const
Definition: cp_model.pb.h:8334
void clear_domain_reduction_strategy()
Definition: cp_model.pb.h:9532
void clear_intervals()
Definition: cp_model.pb.h:6639
static const IntegerVariableProto * internal_default_instance()
Definition: cp_model.pb.h:294
void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6627
void clear_num_binary_propagations()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2637
bool has_bool_xor() const
Definition: cp_model.pb.h:8106
Definition: cp_model.h:52
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9618
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & demands() const
Definition: cp_model.pb.h:6850
CpModelProto * New() const final
Definition: cp_model.pb.h:5081
bool IsInitialized() const final
static const InverseConstraintProto & default_instance()
friend void swap(DecisionStrategyProto_AffineTransformation &a, DecisionStrategyProto_AffineTransformation &b)
Definition: cp_model.pb.h:4496
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_allocated_inverse(::operations_research::sat::InverseConstraintProto *inverse)
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9366
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:6665
void Swap(CumulativeConstraintProto *other)
Definition: cp_model.pb.h:2059
bool IsInitialized() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:5904
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_distinguished_nodes()
Definition: cp_model.pb.h:7361
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
IntegerArgumentProto & operator=(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:575
CpModelProto & operator=(const CpModelProto &from)
Definition: cp_model.pb.h:5039
NoOverlap2DConstraintProto * New() const final
Definition: cp_model.pb.h:1888
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:7412
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6261
bool IsInitialized() const final
void clear_variables()
Definition: cp_model.pb.h:9759
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:590
static const IntegerArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:596
virtual ~BoolArgumentProto()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:5281
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:7093
int GetCachedSize() const final
Definition: cp_model.pb.h:962
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kOffsetFieldNumber
Definition: cp_model.pb.h:4558
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1085
virtual ~DecisionStrategyProto_AffineTransformation()
static void InitAsDefaultInstance()
void clear_name()
Definition: cp_model.pb.h:5639
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ReservoirConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2227
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
ReservoirConstraintProto & operator=(const ReservoirConstraintProto &from)
Definition: cp_model.pb.h:2202
NoOverlap2DConstraintProto()
int GetCachedSize() const final
Definition: cp_model.pb.h:1614
static const CumulativeConstraintProto & default_instance()
@ kTargetFieldNumber
Definition: cp_model.pb.h:666
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:6957
IntegerVariableProto(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:264
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution()
LinearExpressionProtoDefaultTypeInternal _LinearExpressionProto_default_instance_
void clear_solution_lower_bounds()
int tails_size() const
Definition: cp_model.pb.h:6919
int variables_size() const
Definition: cp_model.pb.h:9756
ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_
static const AllDifferentConstraintProto & default_instance()
::operations_research::sat::NoOverlapConstraintProto * release_no_overlap()
Definition: cp_model.pb.h:9068
@ DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:205
@ kIntProdFieldNumber
Definition: cp_model.pb.h:3736
void set_allocated_cumulative(::operations_research::sat::CumulativeConstraintProto *cumulative)
void set_allocated_circuit(::operations_research::sat::CircuitConstraintProto *circuit)
::PROTOBUF_NAMESPACE_ID::int64 offset() const
Definition: cp_model.pb.h:9427
@ CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:233
@ UNKNOWN
Definition: cp_model.pb.h:228
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const PartialVariableAssignment * internal_default_instance()
Definition: cp_model.pb.h:4897
@ kCircuitCovering
Definition: cp_model.pb.h:3642
void set_start(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6394
ElementConstraintProto(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1385
@ kTransformationsFieldNumber
Definition: cp_model.pb.h:4783
void clear_offset()
Definition: cp_model.pb.h:9310
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_min_level()
Definition: cp_model.pb.h:6731
::operations_research::sat::BoolArgumentProto * release_bool_or()
Definition: cp_model.pb.h:7968
bool CpSolverStatus_Parse(const std::string &name, CpSolverStatus *value)
Definition: cp_model.pb.h:250
bool IsInitialized() const final
void clear_vars()
Definition: cp_model.pb.h:6099
static void InitAsDefaultInstance()
ElementConstraintProto & operator=(const ElementConstraintProto &from)
Definition: cp_model.pb.h:1390
ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_
@ kAutomatonFieldNumber
Definition: cp_model.pb.h:3744
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(CpModelProto &a, CpModelProto &b)
Definition: cp_model.pb.h:5071
void set_objective_value(double value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4901
@ kHeadsFieldNumber
Definition: cp_model.pb.h:2511
void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7289
void clear_vars()
Definition: cp_model.pb.h:7377
void clear_vars()
Definition: cp_model.pb.h:9222
::operations_research::sat::LinearConstraintProto * release_linear()
Definition: cp_model.pb.h:8518
static const RoutesConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2633
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::CircuitCoveringConstraintProto * release_circuit_covering()
Definition: cp_model.pb.h:8768
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_tail()
Definition: cp_model.pb.h:7695
static constexpr DomainReductionStrategy SELECT_MEDIAN_VALUE
Definition: cp_model.pb.h:4752
static const PartialVariableAssignment & default_instance()
static const std::string & DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:4768
int values_size() const
Definition: cp_model.pb.h:9645
int GetCachedSize() const final
Definition: cp_model.pb.h:2896
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7434
CumulativeConstraintProto()
@ kCapacityFieldNumber
Definition: cp_model.pb.h:2120
const std::string & DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:215
bool has_solution_hint() const
Definition: cp_model.pb.h:9933
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
CircuitConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2462
static constexpr DomainReductionStrategy DomainReductionStrategy_MAX
Definition: cp_model.pb.h:4759
void set_target(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6323
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6370
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_head()
Definition: cp_model.pb.h:7742
@ kTailsFieldNumber
Definition: cp_model.pb.h:2510
int GetCachedSize() const final
Definition: cp_model.pb.h:3063
void set_name(const std::string &value)
Definition: cp_model.pb.h:7853
@ kTransitionLabelFieldNumber
Definition: cp_model.pb.h:3445
IntegerArgumentProto & operator=(const IntegerArgumentProto &from)
Definition: cp_model.pb.h:571
@ kCoeffsFieldNumber
Definition: cp_model.pb.h:1293
CircuitCoveringConstraintProto & operator=(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2840
@ kSearchStrategyFieldNumber
Definition: cp_model.pb.h:5135
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1403
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ kElement
Definition: cp_model.pb.h:3639
int coeffs_size() const
Definition: cp_model.pb.h:6194
CpSolverResponse * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:5314
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7084
::operations_research::sat::RoutesConstraintProto * release_routes()
Definition: cp_model.pb.h:8718
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9488
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:6476
void clear_vars()
Definition: cp_model.pb.h:5827
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3620
void Swap(IntegerVariableProto *other)
Definition: cp_model.pb.h:304
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1717
int x_intervals_size() const
Definition: cp_model.pb.h:6498
bool has_no_overlap_2d() const
Definition: cp_model.pb.h:9106
size_t ByteSizeLong() const final
static const NoOverlap2DConstraintProto & default_instance()
@ kLinear
Definition: cp_model.pb.h:3637
DecisionStrategyProto()
int y_intervals_size() const
Definition: cp_model.pb.h:6545
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:445
size_t ByteSizeLong() const final
size_t ByteSizeLong() const final
void clear_vars()
Definition: cp_model.pb.h:9601
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_int_mod()
Definition: cp_model.pb.h:8212
void clear_variable_selection_strategy()
Definition: cp_model.pb.h:9512
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
TableConstraintProto * New() const final
Definition: cp_model.pb.h:3045
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9658
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & variables() const
Definition: cp_model.pb.h:9497
::operations_research::sat::LinearConstraintProto * mutable_linear()
Definition: cp_model.pb.h:8547
int vars_size() const
Definition: cp_model.pb.h:6147
void set_allocated_circuit_covering(::operations_research::sat::CircuitCoveringConstraintProto *circuit_covering)
virtual ~LinearExpressionProto()
ReservoirConstraintProto * New() const final
Definition: cp_model.pb.h:2244
void clear_solution_info()
TableConstraintProto(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2998
void clear_name()
Definition: cp_model.pb.h:7846
InverseConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3227
ElementConstraintProto()
int transformations_size() const
Definition: cp_model.pb.h:9555
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > * mutable_search_strategy()
Definition: cp_model.pb.h:9905
bool IsInitialized() const final
static const InverseConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3206
friend void swap(BoolArgumentProto &a, BoolArgumentProto &b)
Definition: cp_model.pb.h:461
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN
Definition: cp_model.pb.h:209
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:6721
void clear_lin_max()
Definition: cp_model.pb.h:8312
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:7450
void set_allocated_solution_hint(::operations_research::sat::PartialVariableAssignment *solution_hint)
Definition: cp_model.pb.h:9970
void clear_boxes_with_null_area_can_overlap()
Definition: cp_model.pb.h:6589
size_t ByteSizeLong() const final
::operations_research::sat::TableConstraintProto * mutable_table()
Definition: cp_model.pb.h:8847
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_actives()
Definition: cp_model.pb.h:6906
void clear_coeffs()
Definition: cp_model.pb.h:6197
::operations_research::sat::NoOverlapConstraintProto * mutable_no_overlap()
Definition: cp_model.pb.h:9097
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:7403
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:6279
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
friend void swap(ConstraintProto &a, ConstraintProto &b)
Definition: cp_model.pb.h:3662
size_t ByteSizeLong() const final
CpModelProto(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:5034
@ kAtMostOne
Definition: cp_model.pb.h:3628
static void InitAsDefaultInstance()
ConstraintProto * New() const final
Definition: cp_model.pb.h:3672
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9665
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6345
@ DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MAX_DOMAIN_SIZE
Definition: cp_model.pb.h:176
void clear_num_conflicts()
LinearArgumentProto()
IntegerArgumentProto()
const ::operations_research::sat::InverseConstraintProto & inverse() const
Definition: cp_model.pb.h:8934
@ DecisionStrategyProto_DomainReductionStrategy_SELECT_MAX_VALUE
Definition: cp_model.pb.h:201
CircuitConstraintProto & operator=(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2420
static void InitAsDefaultInstance()
static const AutomatonConstraintProto & default_instance()
ConstraintCase constraint_case() const
Definition: cp_model.pb.h:9208
bool has_element() const
Definition: cp_model.pb.h:8606
RoutesConstraintProto(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2603
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:2596
int demands_size() const
Definition: cp_model.pb.h:6821
std::string * mutable_solution_info()
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6834
InverseConstraintProto(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3176
CpSolverResponse * New() const final
Definition: cp_model.pb.h:5310
static constexpr DomainReductionStrategy SELECT_LOWER_HALF
Definition: cp_model.pb.h:4748
IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_
bool IsInitialized() const final
bool IsInitialized() const final
void clear_table()
Definition: cp_model.pb.h:8812
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1567
void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7771
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_tightened_variables()
DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4891
void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7677
friend void swap(ElementConstraintProto &a, ElementConstraintProto &b)
Definition: cp_model.pb.h:1422
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:631
Definition: cp_model.pb.h:3589
virtual ~ElementConstraintProto()
RoutesConstraintProto()
friend void swap(LinearConstraintProto &a, LinearConstraintProto &b)
Definition: cp_model.pb.h:1230
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
double best_objective_bound() const
bool has_automaton() const
Definition: cp_model.pb.h:8856
int f_direct_size() const
Definition: cp_model.pb.h:7492
void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5980
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
ConstraintProto()
void set_deterministic_time(double value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2231
@ kIntMinFieldNumber
Definition: cp_model.pb.h:3734
void Swap(RoutesConstraintProto *other)
Definition: cp_model.pb.h:2643
CircuitConstraintProto & operator=(const CircuitConstraintProto &from)
Definition: cp_model.pb.h:2416
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:4721
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:584
int vars_size() const
Definition: cp_model.pb.h:7798
int GetCachedSize() const final
Definition: cp_model.pb.h:784
@ INFEASIBLE
Definition: cp_model.pb.h:231
void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7630
static void InitAsDefaultInstance()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_demands()
Definition: cp_model.pb.h:7208
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kSolutionFieldNumber
Definition: cp_model.pb.h:5362
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & times() const
Definition: cp_model.pb.h:6803
void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value)
static const NoOverlapConstraintProto & default_instance()
RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4885
static const TableConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & enforcement_literal() const
Definition: cp_model.pb.h:7938
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX
Definition: cp_model.pb.h:210
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_f_direct()
Definition: cp_model.pb.h:7495
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7033
@ kNameFieldNumber
Definition: cp_model.pb.h:364
void clear_solution_hint()
Definition: cp_model.pb.h:9936
static constexpr int DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:4761
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:288
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1875
::operations_research::sat::IntegerArgumentProto * mutable_int_prod()
Definition: cp_model.pb.h:8497
@ kNameFieldNumber
Definition: cp_model.pb.h:5136
DecisionStrategyProto_AffineTransformation(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:4459
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & nexts() const
Definition: cp_model.pb.h:7305
constexpr int DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:211
void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
size_t ByteSizeLong() const final
void add_times(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6794
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
AllDifferentConstraintProto()
::operations_research::sat::PartialVariableAssignment * mutable_solution_hint()
Definition: cp_model.pb.h:9966
int variables_size() const
Definition: cp_model.pb.h:9468
::operations_research::sat::IntegerVariableProto * add_variables()
Definition: cp_model.pb.h:9781
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:3241
const std::string & solution_info() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_upper_bounds() const
static const LinearExpressionProto & default_instance()
bool has_routes() const
Definition: cp_model.pb.h:8706
void clear_scaling_factor()
Definition: cp_model.pb.h:9330
::operations_research::sat::ElementConstraintProto * mutable_element()
Definition: cp_model.pb.h:8647
static const DecisionStrategyProto * internal_default_instance()
Definition: cp_model.pb.h:4639
void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7764
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
InverseConstraintProto & operator=(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3185
bool has_reservoir() const
Definition: cp_model.pb.h:8956
::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const
DecisionStrategyProto_VariableSelectionStrategy
Definition: cp_model.pb.h:171
void clear_nexts()
Definition: cp_model.pb.h:7279
static void InitAsDefaultInstance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1720
CumulativeConstraintProto & operator=(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2028
bool all_solutions_were_found() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1075
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:7827
LinearConstraintProto & operator=(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1202
ConstraintProto(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3596
std::string * mutable_name()
Definition: cp_model.pb.h:7857
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_status(::operations_research::sat::CpSolverStatus value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::LinearExpressionProto * release_target()
Definition: cp_model.pb.h:6011
Definition: cp_model.pb.h:5027
NoOverlapConstraintProto & operator=(const NoOverlapConstraintProto &from)
Definition: cp_model.pb.h:1704
bool has_bool_or() const
Definition: cp_model.pb.h:7956
void clear_target()
Definition: cp_model.pb.h:6309
int GetCachedSize() const final
Definition: cp_model.pb.h:3690
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4888
size_t ByteSizeLong() const final
void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6511
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3617
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void clear_element()
Definition: cp_model.pb.h:8612
::operations_research::sat::AutomatonConstraintProto * mutable_automaton()
Definition: cp_model.pb.h:8897
@ kCoeffsFieldNumber
Definition: cp_model.pb.h:819
bool has_circuit() const
Definition: cp_model.pb.h:8656
Definition: cp_model.pb.h:4860
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
@ kVarsFieldNumber
Definition: cp_model.pb.h:1150
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7178
virtual ~AllDifferentConstraintProto()
@ kDemandsFieldNumber
Definition: cp_model.pb.h:2705
void clear_variables()
Definition: cp_model.pb.h:9471
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_variables()
Definition: cp_model.pb.h:9506
::operations_research::sat::DecisionStrategyProto_AffineTransformation * add_transformations()
Definition: cp_model.pb.h:9580
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:915
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
BoolArgumentProto * New() const final
Definition: cp_model.pb.h:471
void set_allocated_routes(::operations_research::sat::RoutesConstraintProto *routes)
LinearArgumentProto & operator=(const LinearArgumentProto &from)
Definition: cp_model.pb.h:902
double user_time() const
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6207
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value)
Definition: cp_model.pb.h:9546
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_allocated_int_mod(::operations_research::sat::IntegerArgumentProto *int_mod)
static constexpr VariableSelectionStrategy CHOOSE_FIRST
Definition: cp_model.pb.h:4708
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:9304
::operations_research::sat::InverseConstraintProto * release_inverse()
Definition: cp_model.pb.h:8918
static const CumulativeConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2049
static const CpObjectiveProto & default_instance()
const ::operations_research::sat::IntervalConstraintProto & interval() const
Definition: cp_model.pb.h:9034
void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7552
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_domain()
Definition: cp_model.pb.h:9356
::operations_research::sat::BoolArgumentProto * release_bool_and()
Definition: cp_model.pb.h:8018
::operations_research::sat::IntegerArgumentProto * release_int_div()
Definition: cp_model.pb.h:8168
static constexpr VariableSelectionStrategy CHOOSE_MIN_DOMAIN_SIZE
Definition: cp_model.pb.h:4714
int nexts_size() const
Definition: cp_model.pb.h:7276
ElementConstraintProto * New() const final
Definition: cp_model.pb.h:1432
void clear_exprs()
Definition: cp_model.pb.h:6056
Definition: cp_model.pb.h:4602
::operations_research::sat::IntegerArgumentProto * mutable_int_min()
Definition: cp_model.pb.h:8397
LinearExpressionProto()
@ kBoxesWithNullAreaCanOverlapFieldNumber
Definition: cp_model.pb.h:1942
std::string * release_solution_info()
DecisionStrategyProto_AffineTransformation * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4510
TableConstraintProto & operator=(const TableConstraintProto &from)
Definition: cp_model.pb.h:3003
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5942
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:285
static const LinearConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1223
void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7929
@ kIntervalFieldNumber
Definition: cp_model.pb.h:3747
int GetCachedSize() const final
Definition: cp_model.pb.h:329
@ DecisionStrategyProto_DomainReductionStrategy_DecisionStrategyProto_DomainReductionStrategy_INT_MAX_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:206
void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9435
void clear_vars()
Definition: cp_model.pb.h:6150
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1406
::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const
PartialVariableAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4918
::PROTOBUF_NAMESPACE_ID::int64 capacity() const
Definition: cp_model.pb.h:7255
DecisionStrategyProto & operator=(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:4618
::operations_research::sat::LinearExpressionProto * add_exprs()
Definition: cp_model.pb.h:6078
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3200
::operations_research::sat::CircuitConstraintProto * mutable_circuit()
Definition: cp_model.pb.h:8697
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_inverse()
Definition: cp_model.pb.h:7577
virtual ~NoOverlapConstraintProto()
@ kAllSolutionsWereFoundFieldNumber
Definition: cp_model.pb.h:5369
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
void clear_tightened_variables()
void Swap(TableConstraintProto *other)
Definition: cp_model.pb.h:3038
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1409
@ kDomainReductionStrategyFieldNumber
Definition: cp_model.pb.h:4785
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: cp_model.pb.h:55
@ kLinearFieldNumber
Definition: cp_model.pb.h:3737
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::operations_research::sat::DecisionStrategyProto * add_search_strategy()
Definition: cp_model.pb.h:9919
@ kIntDivFieldNumber
Definition: cp_model.pb.h:3730
bool IsInitialized() const final
size_t ByteSizeLong() const final
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5773
@ kValuesFieldNumber
Definition: cp_model.pb.h:3098
int search_strategy_size() const
Definition: cp_model.pb.h:9894
CircuitCoveringConstraintProto()
@ kCircuitCoveringFieldNumber
Definition: cp_model.pb.h:3742
static const CpSolverResponse * internal_default_instance()
Definition: cp_model.pb.h:5293
@ DecisionStrategyProto_VariableSelectionStrategy_DecisionStrategyProto_VariableSelectionStrategy_INT_MIN_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:177
static const CircuitCoveringConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2861
void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const std::string & name() const
Definition: cp_model.pb.h:7849
bool has_int_max() const
Definition: cp_model.pb.h:8256
void clear_end()
Definition: cp_model.pb.h:6400
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_direct()
Definition: cp_model.pb.h:7530
void Swap(AutomatonConstraintProto *other)
Definition: cp_model.pb.h:3383
void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6765
Definition: cp_model.pb.h:417
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5715
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > & constraints() const
Definition: cp_model.pb.h:9825
static const CpModelProto * internal_default_instance()
Definition: cp_model.pb.h:5064
int constraints_size() const
Definition: cp_model.pb.h:9795
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5935
@ kIntDiv
Definition: cp_model.pb.h:3630
static const RoutesConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:6995
int literals_size() const
Definition: cp_model.pb.h:7158
bool IsInitialized() const final
bool IsInitialized() const final
void clear_max_level()
Definition: cp_model.pb.h:6751
void Swap(LinearArgumentProto *other)
Definition: cp_model.pb.h:937
void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6745
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:7140
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~IntegerArgumentProto()
void clear_constraints()
Definition: cp_model.pb.h:9798
DecisionStrategyProto_AffineTransformation * New() const final
Definition: cp_model.pb.h:4506
static const DecisionStrategyProto & default_instance()
static void InitAsDefaultInstance()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9611
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
@ kStartingStateFieldNumber
Definition: cp_model.pb.h:3447
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto()
Definition: cp_model.pb.h:1044
void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7623
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:921
void clear_capacity()
Definition: cp_model.pb.h:7249
CpObjectiveProto * New() const final
Definition: cp_model.pb.h:4292
Definition: cp_model.pb.h:257
@ kBoolXor
Definition: cp_model.pb.h:3629
friend void swap(LinearExpressionProto &a, LinearExpressionProto &b)
Definition: cp_model.pb.h:756
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void Swap(DecisionStrategyProto_AffineTransformation *other)
Definition: cp_model.pb.h:4499
bool IsInitialized() const final
friend void swap(CircuitCoveringConstraintProto &a, CircuitCoveringConstraintProto &b)
Definition: cp_model.pb.h:2868
::operations_research::sat::AllDifferentConstraintProto * release_all_diff()
Definition: cp_model.pb.h:8568
ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5844
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4633
void clear_transition_head()
Definition: cp_model.pb.h:7707
const ::operations_research::sat::BoolArgumentProto & bool_and() const
Definition: cp_model.pb.h:8034
void set_allocated_table(::operations_research::sat::TableConstraintProto *table)
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7218
static constexpr DomainReductionStrategy SELECT_MIN_VALUE
Definition: cp_model.pb.h:4744
@ OPTIMAL
Definition: cp_model.pb.h:232
void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
int vars_size() const
Definition: cp_model.pb.h:7374
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2432
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1733
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1419
void clear_starting_state()
Definition: cp_model.pb.h:7587
virtual ~TableConstraintProto()
@ kVariablesFieldNumber
Definition: cp_model.pb.h:4782
@ kIntMaxFieldNumber
Definition: cp_model.pb.h:3732
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: cp_model.pb.h:53
friend void swap(AutomatonConstraintProto &a, AutomatonConstraintProto &b)
Definition: cp_model.pb.h:3380
Definition: cp_model.pb.h:4238
int GetCachedSize() const final
Definition: cp_model.pb.h:5099
@ DecisionStrategyProto_DomainReductionStrategy_SELECT_LOWER_HALF
Definition: cp_model.pb.h:202
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:6223
@ DecisionStrategyProto_DomainReductionStrategy_SELECT_MIN_VALUE
Definition: cp_model.pb.h:200
::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const
static const ConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3655
void Swap(ElementConstraintProto *other)
Definition: cp_model.pb.h:1425
const ::operations_research::sat::CpObjectiveProto & objective() const
Definition: cp_model.pb.h:9848
DecisionStrategyProto_VariableSelectionStrategy VariableSelectionStrategy
Definition: cp_model.pb.h:4707
void clear_vars()
Definition: cp_model.pb.h:5878
Definition: cp_model.pb.h:5256
@ kSolutionLowerBoundsFieldNumber
Definition: cp_model.pb.h:5363
void set_size(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6434
void clear_distinguished_nodes()
Definition: cp_model.pb.h:7326
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kBoolAndFieldNumber
Definition: cp_model.pb.h:3727
void Swap(CpObjectiveProto *other)
Definition: cp_model.pb.h:4285
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:6315
@ kBoolAnd
Definition: cp_model.pb.h:3627
bool IsInitialized() const final
void set_negated(bool value)
Definition: cp_model.pb.h:7479
void clear_bool_or()
Definition: cp_model.pb.h:7962
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7818
ConstraintProto & operator=(const ConstraintProto &from)
Definition: cp_model.pb.h:3601
InverseConstraintProto * New() const final
Definition: cp_model.pb.h:3223
int intervals_size() const
Definition: cp_model.pb.h:6636
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > & transformations() const
Definition: cp_model.pb.h:9585
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9232
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_lin_max(::operations_research::sat::LinearArgumentProto *lin_max)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4480
::operations_research::sat::IntegerArgumentProto * mutable_int_max()
Definition: cp_model.pb.h:8297
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2218
NoOverlap2DConstraintProto(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1841
::PROTOBUF_NAMESPACE_ID::int64 max_level() const
Definition: cp_model.pb.h:6757
Definition: cp_model.pb.h:46
const std::string & name() const
Definition: cp_model.pb.h:5642
CpSolverStatus
Definition: cp_model.pb.h:227
PartialVariableAssignment(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:4867
DecisionStrategyProto & operator=(const DecisionStrategyProto &from)
Definition: cp_model.pb.h:4614
@ kFDirectFieldNumber
Definition: cp_model.pb.h:3275
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3194
void Swap(NoOverlapConstraintProto *other)
Definition: cp_model.pb.h:1739
@ kIntervalsFieldNumber
Definition: cp_model.pb.h:1798
IntegerVariableProto & operator=(const IntegerVariableProto &from)
Definition: cp_model.pb.h:269
void set_name(const std::string &value)
Definition: cp_model.pb.h:9700
bool IsInitialized() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:7149
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:1450
IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_
size_t ByteSizeLong() const final
@ kVarsFieldNumber
Definition: cp_model.pb.h:665
BoolArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:475
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_inverse() const
Definition: cp_model.pb.h:7568
virtual ~CpModelProto()
::operations_research::sat::LinearArgumentProto * mutable_lin_min()
Definition: cp_model.pb.h:8447
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution() const
static const TableConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3028
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2855
const ::operations_research::sat::IntegerArgumentProto & int_max() const
Definition: cp_model.pb.h:8284
virtual ~InverseConstraintProto()
void clear_solution()
@ kLiteralsFieldNumber
Definition: cp_model.pb.h:2512
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const std::string & DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:187
void Swap(BoolArgumentProto *other)
Definition: cp_model.pb.h:464
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:7234
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
@ DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_HIGHEST_MAX
Definition: cp_model.pb.h:174
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6185
void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7296
void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6888
void set_allocated_bool_and(::operations_research::sat::BoolArgumentProto *bool_and)
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_demands()
Definition: cp_model.pb.h:6859
static void InitAsDefaultInstance()
void set_scaling_factor(double value)
Definition: cp_model.pb.h:9344
@ kCircuitFieldNumber
Definition: cp_model.pb.h:3740
@ kNumBinaryPropagationsFieldNumber
Definition: cp_model.pb.h:5374
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2865
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:6232
static void InitAsDefaultInstance()
void clear_user_time()
::operations_research::sat::AutomatonConstraintProto * release_automaton()
Definition: cp_model.pb.h:8868
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto
LinearConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3367
const ::operations_research::sat::LinearExpressionProto & target() const
Definition: cp_model.pb.h:6007
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & distinguished_nodes() const
Definition: cp_model.pb.h:7352
@ kDistinguishedNodesFieldNumber
Definition: cp_model.pb.h:2931
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4643
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kTable
Definition: cp_model.pb.h:3643
void clear_offset()
Definition: cp_model.pb.h:9421
::operations_research::sat::CumulativeConstraintProto * release_cumulative()
Definition: cp_model.pb.h:9168
size_t ByteSizeLong() const final
static const ElementConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1415
@ kDomainFieldNumber
Definition: cp_model.pb.h:363
CpSolverResponse()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~ReservoirConstraintProto()
@ kDomainFieldNumber
Definition: cp_model.pb.h:1294
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_automaton(::operations_research::sat::AutomatonConstraintProto *automaton)
::operations_research::sat::BoolArgumentProto * mutable_at_most_one()
Definition: cp_model.pb.h:8097
@ kElementFieldNumber
Definition: cp_model.pb.h:3739
void clear_actives()
Definition: cp_model.pb.h:6871
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_tail() const
Definition: cp_model.pb.h:7686
LinearConstraintProto(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1193
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:918
int vars_size() const
Definition: cp_model.pb.h:5824
int transition_head_size() const
Definition: cp_model.pb.h:7704
::operations_research::sat::IntegerArgumentProto * release_int_min()
Definition: cp_model.pb.h:8368
ConstraintProto & operator=(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3605
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7441
@ kNumBranchesFieldNumber
Definition: cp_model.pb.h:5373
@ kStartFieldNumber
Definition: cp_model.pb.h:1648
friend void swap(RoutesConstraintProto &a, RoutesConstraintProto &b)
Definition: cp_model.pb.h:2640
@ kOffsetFieldNumber
Definition: cp_model.pb.h:820
void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7717
@ kDomainFieldNumber
Definition: cp_model.pb.h:4346
NoOverlapConstraintProto & operator=(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1708
LinearArgumentProto * New() const final
Definition: cp_model.pb.h:944
int distinguished_nodes_size() const
Definition: cp_model.pb.h:7323
@ kInverse
Definition: cp_model.pb.h:3645
@ kAtMostOneFieldNumber
Definition: cp_model.pb.h:3728
@ kEndFieldNumber
Definition: cp_model.pb.h:1649
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9279
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
size_t ByteSizeLong() const final
::operations_research::sat::IntegerArgumentProto * release_int_mod()
Definition: cp_model.pb.h:8218
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:282
CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_
virtual ~PartialVariableAssignment()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const BoolArgumentProto & default_instance()
@ kExprsFieldNumber
Definition: cp_model.pb.h:996
LinearExpressionProto & operator=(LinearExpressionProto &&from) noexcept
Definition: cp_model.pb.h:728
int domain_size() const
Definition: cp_model.pb.h:5702
void clear_objective_value()
void clear_circuit()
Definition: cp_model.pb.h:8662
void set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value)
Definition: cp_model.pb.h:9526
bool IsInitialized() const final
void clear_no_overlap()
Definition: cp_model.pb.h:9062
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:5055
int GetCachedSize() const final
Definition: cp_model.pb.h:2476
void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6558
void set_name(const std::string &value)
Definition: cp_model.pb.h:5646
@ CONSTRAINT_NOT_SET
Definition: cp_model.pb.h:3651
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & coeffs() const
Definition: cp_model.pb.h:5951
int GetCachedSize() const final
Definition: cp_model.pb.h:4932
@ DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_LOWEST_MIN
Definition: cp_model.pb.h:173
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const LinearArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:927
void Swap(NoOverlap2DConstraintProto *other)
Definition: cp_model.pb.h:1881
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(ReservoirConstraintProto &a, ReservoirConstraintProto &b)
Definition: cp_model.pb.h:2234
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5895
constexpr CpSolverStatus CpSolverStatus_MAX
Definition: cp_model.pb.h:238
int GetCachedSize() const final
Definition: cp_model.pb.h:4674
@ kEnforcementLiteralFieldNumber
Definition: cp_model.pb.h:3724
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:9674
@ DecisionStrategyProto_VariableSelectionStrategy_CHOOSE_MIN_DOMAIN_SIZE
Definition: cp_model.pb.h:175
ConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3676
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
double objective_value() const
static const DecisionStrategyProto_AffineTransformation & default_instance()
void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_
@ kCapacityFieldNumber
Definition: cp_model.pb.h:2706
int literals_size() const
Definition: cp_model.pb.h:5753
::operations_research::sat::CircuitConstraintProto * release_circuit()
Definition: cp_model.pb.h:8668
@ kTargetFieldNumber
Definition: cp_model.pb.h:997
::PROTOBUF_NAMESPACE_ID::int64 starting_state() const
Definition: cp_model.pb.h:7593
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const
virtual ~CircuitConstraintProto()
void clear_reservoir()
Definition: cp_model.pb.h:8962
bool has_target() const
Definition: cp_model.pb.h:5993
@ kVarFieldNumber
Definition: cp_model.pb.h:4560
double scaling_factor() const
Definition: cp_model.pb.h:9336
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static bool VariableSelectionStrategy_Parse(const std::string &name, VariableSelectionStrategy *value)
Definition: cp_model.pb.h:4738
virtual ~CircuitCoveringConstraintProto()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6109
NoOverlap2DConstraintProto & operator=(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1850
IntegerVariableProto()
int vars_size() const
Definition: cp_model.pb.h:6096
void set_best_objective_bound(double value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntegerArgumentProto * New() const final
Definition: cp_model.pb.h:613
int f_inverse_size() const
Definition: cp_model.pb.h:7539
friend void swap(CpSolverResponse &a, CpSolverResponse &b)
Definition: cp_model.pb.h:5300
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
constexpr CpSolverStatus CpSolverStatus_MIN
Definition: cp_model.pb.h:237
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:448
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:7459
const std::string & name() const
Definition: cp_model.pb.h:9696
Definition: cp_model.pb.h:3169
void set_var(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9415
static const AutomatonConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3373
@ kNextsFieldNumber
Definition: cp_model.pb.h:2930
void clear_search_strategy()
Definition: cp_model.pb.h:9897
void clear_inverse()
Definition: cp_model.pb.h:8912
void clear_int_max()
Definition: cp_model.pb.h:8262
size_t ByteSizeLong() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2037
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4493
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DomainReductionStrategy_descriptor()
Definition: cp_model.pb.h:4764
void clear_objective()
Definition: cp_model.pb.h:9837
void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7505
@ kVarsFieldNumber
Definition: cp_model.pb.h:3446
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & actives() const
Definition: cp_model.pb.h:6897
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: cp_model.pb.h:54
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1214
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6703
@ kSolutionHintFieldNumber
Definition: cp_model.pb.h:5138
CpModelProto()
::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)
Definition: cp_model.pb.h:5766
@ kNoOverlap2D
Definition: cp_model.pb.h:3649
static void InitAsDefaultInstance()
AllDifferentConstraintProto & operator=(const AllDifferentConstraintProto &from)
Definition: cp_model.pb.h:1056
InverseConstraintProto & operator=(const InverseConstraintProto &from)
Definition: cp_model.pb.h:3181
static const DecisionStrategyProto_AffineTransformation * internal_default_instance()
Definition: cp_model.pb.h:4489
const ::operations_research::sat::AutomatonConstraintProto & automaton() const
Definition: cp_model.pb.h:8884
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_upper_bounds()
::operations_research::sat::LinearExpressionProto * mutable_target()
Definition: cp_model.pb.h:6026
@ kVarsFieldNumber
Definition: cp_model.pb.h:1484
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2627
size_t ByteSizeLong() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_
void Swap(DecisionStrategyProto *other)
Definition: cp_model.pb.h:4649
void clear_enforcement_literal()
Definition: cp_model.pb.h:7912
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1862
void clear_domain()
Definition: cp_model.pb.h:5705
static void InitAsDefaultInstance()
DecisionStrategyProto_DomainReductionStrategy DomainReductionStrategy
Definition: cp_model.pb.h:4743
@ kAllDiffFieldNumber
Definition: cp_model.pb.h:3738
int domain_size() const
Definition: cp_model.pb.h:9353
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_wall_time()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6176
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const BoolArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:454
@ kHeadsFieldNumber
Definition: cp_model.pb.h:2703
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3032
::operations_research::sat::BoolArgumentProto * release_at_most_one()
Definition: cp_model.pb.h:8068
bool IsInitialized() const final
IntervalConstraintProto(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1549
static constexpr VariableSelectionStrategy CHOOSE_LOWEST_MIN
Definition: cp_model.pb.h:4710
friend void swap(CircuitConstraintProto &a, CircuitConstraintProto &b)
Definition: cp_model.pb.h:2448
static const AllDifferentConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1081
@ kIntProd
Definition: cp_model.pb.h:3636
static const NoOverlapConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1729
Definition: cp_model.pb.h:2190
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:5297
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3614
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:931
int GetCachedSize() const final
Definition: cp_model.pb.h:2084
void set_allocated_solution_info(std::string *solution_info)
Definition: cp_model.pb.h:4452
bool IsInitialized() const final
::operations_research::sat::BoolArgumentProto * mutable_bool_or()
Definition: cp_model.pb.h:7997
int heads_size() const
Definition: cp_model.pb.h:7111
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4627
@ CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_
Definition: cp_model.pb.h:234
bool has_no_overlap() const
Definition: cp_model.pb.h:9056
bool IsInitialized() const final
@ kVariableSelectionStrategyFieldNumber
Definition: cp_model.pb.h:4784
::operations_research::sat::TableConstraintProto * release_table()
Definition: cp_model.pb.h:8818
@ kReservoirFieldNumber
Definition: cp_model.pb.h:3746
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6656
@ kTargetFieldNumber
Definition: cp_model.pb.h:1486
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:181
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:5740
size_t ByteSizeLong() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
TableConstraintProtoDefaultTypeInternal _TableConstraintProto_default_instance_
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > * mutable_transformations()
Definition: cp_model.pb.h:9566
const ::operations_research::sat::CumulativeConstraintProto & cumulative() const
Definition: cp_model.pb.h:9184
void clear_cumulative()
Definition: cp_model.pb.h:9162
RoutesConstraintProto * New() const final
Definition: cp_model.pb.h:2650
double wall_time() const
::operations_research::sat::LinearArgumentProto * release_lin_max()
Definition: cp_model.pb.h:8318
void set_index(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6303
@ kAllDiff
Definition: cp_model.pb.h:3638
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:6270
void clear_x_intervals()
Definition: cp_model.pb.h:6501
CpObjectiveProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4296
void clear_num_branches()
::operations_research::sat::IntegerVariableProto * add_tightened_variables()
int vars_size() const
Definition: cp_model.pb.h:5875
void clear_literals()
Definition: cp_model.pb.h:7016
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:4723
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:182
::PROTOBUF_NAMESPACE_ID::int32 start() const
Definition: cp_model.pb.h:6386
@ kMaxLevelFieldNumber
Definition: cp_model.pb.h:2300
CircuitCoveringConstraintProto * New() const final
Definition: cp_model.pb.h:2878
::operations_research::sat::IntervalConstraintProto * mutable_interval()
Definition: cp_model.pb.h:9047
virtual ~IntegerVariableProto()
BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_
@ kObjectiveFieldNumber
Definition: cp_model.pb.h:5137
@ kReservoir
Definition: cp_model.pb.h:3646
::operations_research::sat::ReservoirConstraintProto * release_reservoir()
Definition: cp_model.pb.h:8968
void set_allocated_bool_xor(::operations_research::sat::BoolArgumentProto *bool_xor)
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_final_states()
Definition: cp_model.pb.h:7648
const ::operations_research::sat::IntegerArgumentProto & int_prod() const
Definition: cp_model.pb.h:8484
DecisionStrategyProto_AffineTransformation AffineTransformation
Definition: cp_model.pb.h:4705
void clear_constraint()
void set_allocated_objective(::operations_research::sat::CpObjectiveProto *objective)
Definition: cp_model.pb.h:9871
DecisionStrategyProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4660
NoOverlapConstraintProto(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1699
const ::operations_research::sat::NoOverlapConstraintProto & no_overlap() const
Definition: cp_model.pb.h:9084
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_head() const
Definition: cp_model.pb.h:7733
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:5731
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9373
IntegerVariableProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:315
void clear_coeffs()
Definition: cp_model.pb.h:9269
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1859
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6352
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5862
static const IntegerVariableProto & default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1069
DecisionStrategyProto_AffineTransformation & operator=(const DecisionStrategyProto_AffineTransformation &from)
Definition: cp_model.pb.h:4464
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:9627
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7387
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:600
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2435
static const ConstraintProto & default_instance()
::PROTOBUF_NAMESPACE_ID::int64 offset() const
Definition: cp_model.pb.h:5972
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:7243
const ::operations_research::sat::IntegerArgumentProto & int_min() const
Definition: cp_model.pb.h:8384
@ kWallTimeFieldNumber
Definition: cp_model.pb.h:5376
constexpr int DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:183
void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6787
int vars_size() const
Definition: cp_model.pb.h:9219
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6125
@ kSolutionInfoFieldNumber
Definition: cp_model.pb.h:5366
void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7922
IntervalConstraintProto & operator=(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1558
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:587
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4269
bool has_int_div() const
Definition: cp_model.pb.h:8156
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5722
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5913
bool has_linear() const
Definition: cp_model.pb.h:8506
IntegerVariableProto & operator=(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:273
static const std::string & VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:4732
void clear_int_prod()
Definition: cp_model.pb.h:8462
@ kVarsFieldNumber
Definition: cp_model.pb.h:1292
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
bool negated() const
Definition: cp_model.pb.h:7471
bool DecisionStrategyProto_VariableSelectionStrategy_IsValid(int value)
::PROTOBUF_NAMESPACE_ID::int64 num_branches() const
@ kRoutesFieldNumber
Definition: cp_model.pb.h:3741
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7225
void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6881
friend void swap(IntegerVariableProto &a, IntegerVariableProto &b)
Definition: cp_model.pb.h:301
@ kInterval
Definition: cp_model.pb.h:3647
void clear_transition_tail()
Definition: cp_model.pb.h:7660
int demands_size() const
Definition: cp_model.pb.h:7205
void clear_start()
Definition: cp_model.pb.h:6380
void clear_demands()
Definition: cp_model.pb.h:6686
int literals_size() const
Definition: cp_model.pb.h:7013
@ kYIntervalsFieldNumber
Definition: cp_model.pb.h:1941
DecisionStrategyProto(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:4609
@ kValuesFieldNumber
Definition: cp_model.pb.h:4967
@ kSolutionUpperBoundsFieldNumber
Definition: cp_model.pb.h:5364
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const CircuitCoveringConstraintProto & default_instance()
IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_
size_t ByteSizeLong() const final
static void InitAsDefaultInstance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
CpObjectiveProto & operator=(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:4254
bool IsInitialized() const final
size_t ByteSizeLong() const final
static const IntegerArgumentProto & default_instance()
void clear_bool_xor()
Definition: cp_model.pb.h:8112
TableConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3049
void clear_negated()
Definition: cp_model.pb.h:7465
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2852
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7026
void Swap(ReservoirConstraintProto *other)
Definition: cp_model.pb.h:2237
CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_
static const LinearArgumentProto & default_instance()
PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
bool IsInitialized() const final
@ kTransitionTailFieldNumber
Definition: cp_model.pb.h:3443
static void InitAsDefaultInstance()
IntervalConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1600
void Swap(IntervalConstraintProto *other)
Definition: cp_model.pb.h:1589
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
LinearArgumentProtoDefaultTypeInternal _LinearArgumentProto_default_instance_
AutomatonConstraintProto & operator=(const AutomatonConstraintProto &from)
Definition: cp_model.pb.h:3348
void set_wall_time(double value)
NoOverlapConstraintProto()
int transition_label_size() const
Definition: cp_model.pb.h:7751
void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
void clear_routes()
Definition: cp_model.pb.h:8712
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value)
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_variables()
Definition: cp_model.pb.h:9767
@ kVarsFieldNumber
Definition: cp_model.pb.h:4344
friend void swap(IntegerArgumentProto &a, IntegerArgumentProto &b)
Definition: cp_model.pb.h:603
void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9481
void Swap(LinearExpressionProto *other)
Definition: cp_model.pb.h:759
Definition: cp_model.pb.h:1834
const ::operations_research::sat::RoutesConstraintProto & routes() const
Definition: cp_model.pb.h:8734
::operations_research::sat::NoOverlap2DConstraintProto * mutable_no_overlap_2d()
Definition: cp_model.pb.h:9147
::PROTOBUF_NAMESPACE_ID::int32 end() const
Definition: cp_model.pb.h:6406
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2621
@ kVariablesFieldNumber
Definition: cp_model.pb.h:5133
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:6948
void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7336
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6160
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_nexts()
Definition: cp_model.pb.h:7314
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2429
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_y_intervals()
Definition: cp_model.pb.h:6583
CircuitConstraintProto * New() const final
Definition: cp_model.pb.h:2458
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2040
IntegerArgumentProto(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:566
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3361
@ kStatusFieldNumber
Definition: cp_model.pb.h:5368
CpObjectiveProto & operator=(const CpObjectiveProto &from)
Definition: cp_model.pb.h:4250
@ kNumIntegerPropagationsFieldNumber
Definition: cp_model.pb.h:5375
static constexpr DomainReductionStrategy SELECT_UPPER_HALF
Definition: cp_model.pb.h:4750
ReservoirConstraintProto(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2197
void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7263
virtual ~AutomatonConstraintProto()
@ kIntervalsFieldNumber
Definition: cp_model.pb.h:2118
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:9391
CumulativeConstraintProto * New() const final
Definition: cp_model.pb.h:2066
void clear_literals()
Definition: cp_model.pb.h:5756
int GetCachedSize() const final
Definition: cp_model.pb.h:2668
void clear_no_overlap_2d()
Definition: cp_model.pb.h:9112
ReservoirConstraintProto & operator=(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2206
bool DecisionStrategyProto_DomainReductionStrategy_Parse(const std::string &name, DecisionStrategyProto_DomainReductionStrategy *value)
Definition: cp_model.pb.h:222
DecisionStrategyProto_AffineTransformation()
static const NoOverlap2DConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1871
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9286
CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:5782
@ kPrimalIntegralFieldNumber
Definition: cp_model.pb.h:5379
Definition: cp_model.pb.h:2991
void Swap(CircuitConstraintProto *other)
Definition: cp_model.pb.h:2451
void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
@ kConstraintsFieldNumber
Definition: cp_model.pb.h:5134
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_DomainReductionStrategy_descriptor()
const ::operations_research::sat::BoolArgumentProto & bool_xor() const
Definition: cp_model.pb.h:8134
bool has_at_most_one() const
Definition: cp_model.pb.h:8056
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1570
void set_user_time(double value)
Definition: cp_model.pb.h:2824
void clear_interval()
Definition: cp_model.pb.h:9012
Definition: cp_model.pb.h:559
const ::operations_research::sat::LinearConstraintProto & linear() const
Definition: cp_model.pb.h:8534
void clear_lin_min()
Definition: cp_model.pb.h:8412
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2043
@ DecisionStrategyProto_DomainReductionStrategy_SELECT_MEDIAN_VALUE
Definition: cp_model.pb.h:204
TableConstraintProto()
::operations_research::sat::NoOverlap2DConstraintProto * release_no_overlap_2d()
Definition: cp_model.pb.h:9118
::operations_research::sat::IntegerArgumentProto * release_int_max()
Definition: cp_model.pb.h:8268
::operations_research::sat::IntegerArgumentProto * mutable_int_div()
Definition: cp_model.pb.h:8197
::operations_research::sat::CpObjectiveProto * release_objective()
Definition: cp_model.pb.h:9852
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:7051
void clear_deterministic_time()
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6167
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:9295
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_allocated_bool_or(::operations_research::sat::BoolArgumentProto *bool_or)
@ kNegatedFieldNumber
Definition: cp_model.pb.h:3099
friend void swap(DecisionStrategyProto &a, DecisionStrategyProto &b)
Definition: cp_model.pb.h:4646
void clear_intervals()
Definition: cp_model.pb.h:6450
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:5058
const ::operations_research::sat::BoolArgumentProto & at_most_one() const
Definition: cp_model.pb.h:8084
virtual ~LinearArgumentProto()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7811
int GetCachedSize() const final
Definition: cp_model.pb.h:2262
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7559
void clear_int_div()
Definition: cp_model.pb.h:8162
void Swap(PartialVariableAssignment *other)
Definition: cp_model.pb.h:4907
void clear_times()
Definition: cp_model.pb.h:6777
bool has_inverse() const
Definition: cp_model.pb.h:8906
const ::operations_research::sat::ElementConstraintProto & element() const
Definition: cp_model.pb.h:8634
@ DecisionStrategyProto_DomainReductionStrategy_SELECT_UPPER_HALF
Definition: cp_model.pb.h:203
@ kVarsFieldNumber
Definition: cp_model.pb.h:4966
void clear_at_most_one()
Definition: cp_model.pb.h:8062
void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:1186
bool IsInitialized() const final
static const IntervalConstraintProto & default_instance()
void set_allocated_lin_min(::operations_research::sat::LinearArgumentProto *lin_min)
void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9455
virtual ~CumulativeConstraintProto()
friend void swap(IntervalConstraintProto &a, IntervalConstraintProto &b)
Definition: cp_model.pb.h:1586
void clear_values()
Definition: cp_model.pb.h:7424
void set_allocated_int_div(::operations_research::sat::IntegerArgumentProto *int_div)
void set_allocated_int_min(::operations_research::sat::IntegerArgumentProto *int_min)
static const CircuitConstraintProto & default_instance()
LinearArgumentProto & operator=(LinearArgumentProto &&from) noexcept
Definition: cp_model.pb.h:906
void clear_vars()
Definition: cp_model.pb.h:7801
@ kLinMinFieldNumber
Definition: cp_model.pb.h:3735
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4477
void clear_var()
Definition: cp_model.pb.h:9401
bool has_table() const
Definition: cp_model.pb.h:8806
@ kSizeFieldNumber
Definition: cp_model.pb.h:1650
CpModelProto & operator=(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:5043
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_
void clear_vars()
Definition: cp_model.pb.h:6335
IntegerArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:617
friend void swap(PartialVariableAssignment &a, PartialVariableAssignment &b)
Definition: cp_model.pb.h:4904
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6986
bool IsInitialized() const final
friend void swap(CpObjectiveProto &a, CpObjectiveProto &b)
Definition: cp_model.pb.h:4282
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6116
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:7042
AutomatonConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3394
void set_offset(double value)
Definition: cp_model.pb.h:9324
@ kRoutes
Definition: cp_model.pb.h:3641
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:7187
void clear_tails()
Definition: cp_model.pb.h:6922
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2221
std::string * release_name()
Definition: cp_model.pb.h:7890
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7124
size_t ByteSizeLong() const final
@ kCoeffsFieldNumber
Definition: cp_model.pb.h:4345
void Swap(ConstraintProto *other)
Definition: cp_model.pb.h:3665
AutomatonConstraintProto(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3343
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6467
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:458
@ kMinLevelFieldNumber
Definition: cp_model.pb.h:2299
LinearConstraintProto & operator=(const LinearConstraintProto &from)
Definition: cp_model.pb.h:1198
void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6518
void clear_coeffs()
Definition: cp_model.pb.h:5925
std::string * mutable_name()
Definition: cp_model.pb.h:9704
CumulativeConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2070
::operations_research::sat::CpSolverStatus status() const
size_t ByteSizeLong() const final
int times_size() const
Definition: cp_model.pb.h:6774
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:5284
::PROTOBUF_NAMESPACE_ID::int64 min_level() const
Definition: cp_model.pb.h:6737
InverseConstraintProto()
@ kLinMin
Definition: cp_model.pb.h:3635
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:6485
@ kTableFieldNumber
Definition: cp_model.pb.h:3743
int GetCachedSize() const final
Definition: cp_model.pb.h:5328
int transition_tail_size() const
Definition: cp_model.pb.h:7657
const ::operations_research::sat::CircuitConstraintProto & circuit() const
Definition: cp_model.pb.h:8684
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1227
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:9742
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
double offset() const
Definition: cp_model.pb.h:9316
const ::operations_research::sat::ReservoirConstraintProto & reservoir() const
Definition: cp_model.pb.h:8984
bool DecisionStrategyProto_DomainReductionStrategy_IsValid(int value)
IntervalConstraintProto & operator=(const IntervalConstraintProto &from)
Definition: cp_model.pb.h:1554
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3659
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::BoolArgumentProto * mutable_bool_xor()
Definition: cp_model.pb.h:8147
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:9382
void clear_capacity()
Definition: cp_model.pb.h:6613
::operations_research::sat::AllDifferentConstraintProto * mutable_all_diff()
Definition: cp_model.pb.h:8597
@ kObjectiveValueFieldNumber
Definition: cp_model.pb.h:5367
void set_primal_integral(double value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2215
void Swap(CpSolverResponse *other)
Definition: cp_model.pb.h:5303
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:5287
static void InitAsDefaultInstance()
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7394
@ kIntMin
Definition: cp_model.pb.h:3634
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_direct() const
Definition: cp_model.pb.h:7521
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_times()
Definition: cp_model.pb.h:6812
static void InitAsDefaultInstance()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(InverseConstraintProto &a, InverseConstraintProto &b)
Definition: cp_model.pb.h:3213
::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy domain_reduction_strategy() const
Definition: cp_model.pb.h:9538
::operations_research::sat::InverseConstraintProto * mutable_inverse()
Definition: cp_model.pb.h:8947
AllDifferentConstraintProto(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1051
@ kDeterministicTimeFieldNumber
Definition: cp_model.pb.h:5378
@ kTransitionHeadFieldNumber
Definition: cp_model.pb.h:3444
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2624
virtual ~DecisionStrategyProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6134
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:737
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6649
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
CumulativeConstraintProto(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2019
CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_
constexpr int CpSolverStatus_ARRAYSIZE
Definition: cp_model.pb.h:239
AllDifferentConstraintProto & operator=(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1060
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * VariableSelectionStrategy_descriptor()
Definition: cp_model.pb.h:4728
void clear_domain()
Definition: cp_model.pb.h:6244
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_interval() const
Definition: cp_model.pb.h:9006
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4630
virtual ~ConstraintProto()
void clear_demands()
Definition: cp_model.pb.h:6824
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_coeffs()
Definition: cp_model.pb.h:5960
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7171
LinearArgumentProto(LinearArgumentProto &&from) noexcept
Definition: cp_model.pb.h:897
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static void InitAsDefaultInstance()
::operations_research::sat::ConstraintProto * add_constraints()
Definition: cp_model.pb.h:9820
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:5052
void clear_primal_integral()
NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_
bool IsInitialized() const final
friend void swap(TableConstraintProto &a, TableConstraintProto &b)
Definition: cp_model.pb.h:3035
@ kLiteralsFieldNumber
Definition: cp_model.pb.h:523