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 < 3009000
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 3009001 < 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[24]
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 LinearConstraintProto;
112 class LinearConstraintProtoDefaultTypeInternal;
113 extern LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_;
114 class NoOverlap2DConstraintProto;
115 class NoOverlap2DConstraintProtoDefaultTypeInternal;
116 extern NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_;
117 class NoOverlapConstraintProto;
118 class NoOverlapConstraintProtoDefaultTypeInternal;
119 extern NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_;
120 class PartialVariableAssignment;
121 class PartialVariableAssignmentDefaultTypeInternal;
122 extern PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_;
123 class ReservoirConstraintProto;
124 class ReservoirConstraintProtoDefaultTypeInternal;
125 extern ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_;
126 class RoutesConstraintProto;
127 class RoutesConstraintProtoDefaultTypeInternal;
128 extern RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_;
129 class TableConstraintProto;
130 class TableConstraintProtoDefaultTypeInternal;
131 extern TableConstraintProtoDefaultTypeInternal _TableConstraintProto_default_instance_;
132 } // namespace sat
133 } // namespace operations_research
134 PROTOBUF_NAMESPACE_OPEN
135 template<> ::operations_research::sat::AllDifferentConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AllDifferentConstraintProto>(Arena*);
136 template<> ::operations_research::sat::AutomatonConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AutomatonConstraintProto>(Arena*);
137 template<> ::operations_research::sat::BoolArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::BoolArgumentProto>(Arena*);
138 template<> ::operations_research::sat::CircuitConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitConstraintProto>(Arena*);
139 template<> ::operations_research::sat::CircuitCoveringConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitCoveringConstraintProto>(Arena*);
140 template<> ::operations_research::sat::ConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ConstraintProto>(Arena*);
141 template<> ::operations_research::sat::CpModelProto* Arena::CreateMaybeMessage<::operations_research::sat::CpModelProto>(Arena*);
142 template<> ::operations_research::sat::CpObjectiveProto* Arena::CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(Arena*);
143 template<> ::operations_research::sat::CpSolverResponse* Arena::CreateMaybeMessage<::operations_research::sat::CpSolverResponse>(Arena*);
144 template<> ::operations_research::sat::CumulativeConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CumulativeConstraintProto>(Arena*);
145 template<> ::operations_research::sat::DecisionStrategyProto* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto>(Arena*);
146 template<> ::operations_research::sat::DecisionStrategyProto_AffineTransformation* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto_AffineTransformation>(Arena*);
147 template<> ::operations_research::sat::ElementConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ElementConstraintProto>(Arena*);
148 template<> ::operations_research::sat::IntegerArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerArgumentProto>(Arena*);
149 template<> ::operations_research::sat::IntegerVariableProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerVariableProto>(Arena*);
150 template<> ::operations_research::sat::IntervalConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::IntervalConstraintProto>(Arena*);
151 template<> ::operations_research::sat::InverseConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::InverseConstraintProto>(Arena*);
152 template<> ::operations_research::sat::LinearConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearConstraintProto>(Arena*);
153 template<> ::operations_research::sat::NoOverlap2DConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlap2DConstraintProto>(Arena*);
154 template<> ::operations_research::sat::NoOverlapConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlapConstraintProto>(Arena*);
155 template<> ::operations_research::sat::PartialVariableAssignment* Arena::CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(Arena*);
156 template<> ::operations_research::sat::ReservoirConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ReservoirConstraintProto>(Arena*);
157 template<> ::operations_research::sat::RoutesConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::RoutesConstraintProto>(Arena*);
158 template<> ::operations_research::sat::TableConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::TableConstraintProto>(Arena*);
159 PROTOBUF_NAMESPACE_CLOSE
160 namespace operations_research {
161 namespace sat {
162 
171 };
176 
177 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_VariableSelectionStrategy_descriptor();
178 template<typename T>
179 inline const std::string& DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value) {
180  static_assert(::std::is_same<T, DecisionStrategyProto_VariableSelectionStrategy>::value ||
181  ::std::is_integral<T>::value,
182  "Incorrect type passed to function DecisionStrategyProto_VariableSelectionStrategy_Name.");
183  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
185 }
187  const std::string& name, DecisionStrategyProto_VariableSelectionStrategy* value) {
188  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_VariableSelectionStrategy>(
190 }
198 };
203 
204 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_DomainReductionStrategy_descriptor();
205 template<typename T>
206 inline const std::string& DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value) {
207  static_assert(::std::is_same<T, DecisionStrategyProto_DomainReductionStrategy>::value ||
208  ::std::is_integral<T>::value,
209  "Incorrect type passed to function DecisionStrategyProto_DomainReductionStrategy_Name.");
210  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
212 }
214  const std::string& name, DecisionStrategyProto_DomainReductionStrategy* value) {
215  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_DomainReductionStrategy>(
217 }
218 enum CpSolverStatus : int {
219  UNKNOWN = 0,
221  FEASIBLE = 2,
223  OPTIMAL = 4,
224  CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
225  CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
226 };
227 bool CpSolverStatus_IsValid(int value);
231 
232 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CpSolverStatus_descriptor();
233 template<typename T>
234 inline const std::string& CpSolverStatus_Name(T enum_t_value) {
235  static_assert(::std::is_same<T, CpSolverStatus>::value ||
236  ::std::is_integral<T>::value,
237  "Incorrect type passed to function CpSolverStatus_Name.");
238  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
239  CpSolverStatus_descriptor(), enum_t_value);
240 }
242  const std::string& name, CpSolverStatus* value) {
243  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CpSolverStatus>(
244  CpSolverStatus_descriptor(), name, value);
245 }
246 // ===================================================================
247 
249  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerVariableProto) */ {
250  public:
252  virtual ~IntegerVariableProto();
253 
257  *this = ::std::move(from);
258  }
259 
261  CopyFrom(from);
262  return *this;
263  }
265  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
266  if (this != &from) InternalSwap(&from);
267  } else {
268  CopyFrom(from);
269  }
270  return *this;
271  }
272 
273  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
274  return GetDescriptor();
275  }
276  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
277  return GetMetadataStatic().descriptor;
278  }
279  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
280  return GetMetadataStatic().reflection;
281  }
282  static const IntegerVariableProto& default_instance();
283 
284  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
286  return reinterpret_cast<const IntegerVariableProto*>(
288  }
289  static constexpr int kIndexInFileMessages =
290  0;
291 
293  a.Swap(&b);
294  }
295  inline void Swap(IntegerVariableProto* other) {
296  if (other == this) return;
297  InternalSwap(other);
298  }
299 
300  // implements Message ----------------------------------------------
301 
302  inline IntegerVariableProto* New() const final {
303  return CreateMaybeMessage<IntegerVariableProto>(nullptr);
304  }
305 
306  IntegerVariableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
307  return CreateMaybeMessage<IntegerVariableProto>(arena);
308  }
309  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
310  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
311  void CopyFrom(const IntegerVariableProto& from);
312  void MergeFrom(const IntegerVariableProto& from);
313  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
314  bool IsInitialized() const final;
315 
316  size_t ByteSizeLong() const final;
317  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
318  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
319  #else
321  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
322  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
324  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
325  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
326  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
327  int GetCachedSize() const final { return _cached_size_.Get(); }
328 
329  private:
330  inline void SharedCtor();
331  inline void SharedDtor();
332  void SetCachedSize(int size) const final;
333  void InternalSwap(IntegerVariableProto* other);
334  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
335  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
336  return "operations_research.sat.IntegerVariableProto";
337  }
338  private:
339  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
340  return nullptr;
341  }
342  inline void* MaybeArenaPtr() const {
343  return nullptr;
344  }
345  public:
346 
347  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
348  private:
349  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
350  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
352  }
353 
354  public:
355 
356  // nested types ----------------------------------------------------
357 
358  // accessors -------------------------------------------------------
359 
360  enum : int {
363  };
364  // repeated int64 domain = 2;
365  int domain_size() const;
366  void clear_domain();
367  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
368  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
369  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
370  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
371  domain() const;
372  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
373  mutable_domain();
374 
375  // string name = 1;
376  void clear_name();
377  const std::string& name() const;
378  void set_name(const std::string& value);
379  void set_name(std::string&& value);
380  void set_name(const char* value);
381  void set_name(const char* value, size_t size);
382  std::string* mutable_name();
383  std::string* release_name();
384  void set_allocated_name(std::string* name);
385 
386  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerVariableProto)
387  private:
388  class _Internal;
389 
390  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
391  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
392  mutable std::atomic<int> _domain_cached_byte_size_;
393  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
394  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
395  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
396 };
397 // -------------------------------------------------------------------
398 
400  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.BoolArgumentProto) */ {
401  public:
403  virtual ~BoolArgumentProto();
404 
407  : BoolArgumentProto() {
408  *this = ::std::move(from);
409  }
410 
412  CopyFrom(from);
413  return *this;
414  }
415  inline BoolArgumentProto& operator=(BoolArgumentProto&& from) noexcept {
416  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
417  if (this != &from) InternalSwap(&from);
418  } else {
419  CopyFrom(from);
420  }
421  return *this;
422  }
423 
424  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
425  return GetDescriptor();
426  }
427  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
428  return GetMetadataStatic().descriptor;
429  }
430  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
431  return GetMetadataStatic().reflection;
432  }
433  static const BoolArgumentProto& default_instance();
434 
435  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
437  return reinterpret_cast<const BoolArgumentProto*>(
439  }
440  static constexpr int kIndexInFileMessages =
441  1;
442 
444  a.Swap(&b);
445  }
446  inline void Swap(BoolArgumentProto* other) {
447  if (other == this) return;
448  InternalSwap(other);
449  }
450 
451  // implements Message ----------------------------------------------
452 
453  inline BoolArgumentProto* New() const final {
454  return CreateMaybeMessage<BoolArgumentProto>(nullptr);
455  }
456 
457  BoolArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
458  return CreateMaybeMessage<BoolArgumentProto>(arena);
459  }
460  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
461  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
462  void CopyFrom(const BoolArgumentProto& from);
463  void MergeFrom(const BoolArgumentProto& from);
464  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
465  bool IsInitialized() const final;
466 
467  size_t ByteSizeLong() const final;
468  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
469  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
470  #else
472  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
473  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
475  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
476  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
477  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
478  int GetCachedSize() const final { return _cached_size_.Get(); }
479 
480  private:
481  inline void SharedCtor();
482  inline void SharedDtor();
483  void SetCachedSize(int size) const final;
484  void InternalSwap(BoolArgumentProto* other);
485  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
486  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
487  return "operations_research.sat.BoolArgumentProto";
488  }
489  private:
490  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
491  return nullptr;
492  }
493  inline void* MaybeArenaPtr() const {
494  return nullptr;
495  }
496  public:
497 
498  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
499  private:
500  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
501  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
503  }
504 
505  public:
506 
507  // nested types ----------------------------------------------------
508 
509  // accessors -------------------------------------------------------
510 
511  enum : int {
513  };
514  // repeated int32 literals = 1;
515  int literals_size() const;
516  void clear_literals();
517  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
518  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
519  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
520  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
521  literals() const;
522  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
524 
525  // @@protoc_insertion_point(class_scope:operations_research.sat.BoolArgumentProto)
526  private:
527  class _Internal;
528 
529  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
530  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
531  mutable std::atomic<int> _literals_cached_byte_size_;
532  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
533  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
534 };
535 // -------------------------------------------------------------------
536 
538  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerArgumentProto) */ {
539  public:
541  virtual ~IntegerArgumentProto();
542 
546  *this = ::std::move(from);
547  }
548 
550  CopyFrom(from);
551  return *this;
552  }
554  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
555  if (this != &from) InternalSwap(&from);
556  } else {
557  CopyFrom(from);
558  }
559  return *this;
560  }
561 
562  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
563  return GetDescriptor();
564  }
565  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
566  return GetMetadataStatic().descriptor;
567  }
568  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
569  return GetMetadataStatic().reflection;
570  }
571  static const IntegerArgumentProto& default_instance();
572 
573  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
575  return reinterpret_cast<const IntegerArgumentProto*>(
577  }
578  static constexpr int kIndexInFileMessages =
579  2;
580 
582  a.Swap(&b);
583  }
584  inline void Swap(IntegerArgumentProto* other) {
585  if (other == this) return;
586  InternalSwap(other);
587  }
588 
589  // implements Message ----------------------------------------------
590 
591  inline IntegerArgumentProto* New() const final {
592  return CreateMaybeMessage<IntegerArgumentProto>(nullptr);
593  }
594 
595  IntegerArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
596  return CreateMaybeMessage<IntegerArgumentProto>(arena);
597  }
598  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
599  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
600  void CopyFrom(const IntegerArgumentProto& from);
601  void MergeFrom(const IntegerArgumentProto& from);
602  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
603  bool IsInitialized() const final;
604 
605  size_t ByteSizeLong() const final;
606  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
607  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
608  #else
610  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
611  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
613  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
614  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
615  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
616  int GetCachedSize() const final { return _cached_size_.Get(); }
617 
618  private:
619  inline void SharedCtor();
620  inline void SharedDtor();
621  void SetCachedSize(int size) const final;
622  void InternalSwap(IntegerArgumentProto* other);
623  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
624  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
625  return "operations_research.sat.IntegerArgumentProto";
626  }
627  private:
628  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
629  return nullptr;
630  }
631  inline void* MaybeArenaPtr() const {
632  return nullptr;
633  }
634  public:
635 
636  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
637  private:
638  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
639  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
641  }
642 
643  public:
644 
645  // nested types ----------------------------------------------------
646 
647  // accessors -------------------------------------------------------
648 
649  enum : int {
652  };
653  // repeated int32 vars = 2;
654  int vars_size() const;
655  void clear_vars();
656  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
657  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
658  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
659  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
660  vars() const;
661  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
662  mutable_vars();
663 
664  // int32 target = 1;
665  void clear_target();
666  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
667  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
668 
669  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerArgumentProto)
670  private:
671  class _Internal;
672 
673  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
674  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
675  mutable std::atomic<int> _vars_cached_byte_size_;
676  ::PROTOBUF_NAMESPACE_ID::int32 target_;
677  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
678  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
679 };
680 // -------------------------------------------------------------------
681 
683  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AllDifferentConstraintProto) */ {
684  public:
687 
691  *this = ::std::move(from);
692  }
693 
695  CopyFrom(from);
696  return *this;
697  }
699  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
700  if (this != &from) InternalSwap(&from);
701  } else {
702  CopyFrom(from);
703  }
704  return *this;
705  }
706 
707  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
708  return GetDescriptor();
709  }
710  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
711  return GetMetadataStatic().descriptor;
712  }
713  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
714  return GetMetadataStatic().reflection;
715  }
717 
718  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
720  return reinterpret_cast<const AllDifferentConstraintProto*>(
722  }
723  static constexpr int kIndexInFileMessages =
724  3;
725 
727  a.Swap(&b);
728  }
729  inline void Swap(AllDifferentConstraintProto* other) {
730  if (other == this) return;
731  InternalSwap(other);
732  }
733 
734  // implements Message ----------------------------------------------
735 
736  inline AllDifferentConstraintProto* New() const final {
737  return CreateMaybeMessage<AllDifferentConstraintProto>(nullptr);
738  }
739 
740  AllDifferentConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
741  return CreateMaybeMessage<AllDifferentConstraintProto>(arena);
742  }
743  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
744  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
745  void CopyFrom(const AllDifferentConstraintProto& from);
746  void MergeFrom(const AllDifferentConstraintProto& from);
747  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
748  bool IsInitialized() const final;
749 
750  size_t ByteSizeLong() const final;
751  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
752  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
753  #else
755  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
756  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
758  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
759  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
760  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
761  int GetCachedSize() const final { return _cached_size_.Get(); }
762 
763  private:
764  inline void SharedCtor();
765  inline void SharedDtor();
766  void SetCachedSize(int size) const final;
767  void InternalSwap(AllDifferentConstraintProto* other);
768  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
769  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
770  return "operations_research.sat.AllDifferentConstraintProto";
771  }
772  private:
773  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
774  return nullptr;
775  }
776  inline void* MaybeArenaPtr() const {
777  return nullptr;
778  }
779  public:
780 
781  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
782  private:
783  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
784  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
786  }
787 
788  public:
789 
790  // nested types ----------------------------------------------------
791 
792  // accessors -------------------------------------------------------
793 
794  enum : int {
796  };
797  // repeated int32 vars = 1;
798  int vars_size() const;
799  void clear_vars();
800  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
801  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
802  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
803  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
804  vars() const;
805  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
806  mutable_vars();
807 
808  // @@protoc_insertion_point(class_scope:operations_research.sat.AllDifferentConstraintProto)
809  private:
810  class _Internal;
811 
812  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
813  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
814  mutable std::atomic<int> _vars_cached_byte_size_;
815  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
816  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
817 };
818 // -------------------------------------------------------------------
819 
821  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearConstraintProto) */ {
822  public:
824  virtual ~LinearConstraintProto();
825 
829  *this = ::std::move(from);
830  }
831 
833  CopyFrom(from);
834  return *this;
835  }
837  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
838  if (this != &from) InternalSwap(&from);
839  } else {
840  CopyFrom(from);
841  }
842  return *this;
843  }
844 
845  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
846  return GetDescriptor();
847  }
848  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
849  return GetMetadataStatic().descriptor;
850  }
851  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
852  return GetMetadataStatic().reflection;
853  }
854  static const LinearConstraintProto& default_instance();
855 
856  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
858  return reinterpret_cast<const LinearConstraintProto*>(
860  }
861  static constexpr int kIndexInFileMessages =
862  4;
863 
865  a.Swap(&b);
866  }
867  inline void Swap(LinearConstraintProto* other) {
868  if (other == this) return;
869  InternalSwap(other);
870  }
871 
872  // implements Message ----------------------------------------------
873 
874  inline LinearConstraintProto* New() const final {
875  return CreateMaybeMessage<LinearConstraintProto>(nullptr);
876  }
877 
878  LinearConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
879  return CreateMaybeMessage<LinearConstraintProto>(arena);
880  }
881  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
882  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
883  void CopyFrom(const LinearConstraintProto& from);
884  void MergeFrom(const LinearConstraintProto& from);
885  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
886  bool IsInitialized() const final;
887 
888  size_t ByteSizeLong() const final;
889  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
890  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
891  #else
893  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
894  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
896  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
897  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
898  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
899  int GetCachedSize() const final { return _cached_size_.Get(); }
900 
901  private:
902  inline void SharedCtor();
903  inline void SharedDtor();
904  void SetCachedSize(int size) const final;
905  void InternalSwap(LinearConstraintProto* other);
906  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
907  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
908  return "operations_research.sat.LinearConstraintProto";
909  }
910  private:
911  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
912  return nullptr;
913  }
914  inline void* MaybeArenaPtr() const {
915  return nullptr;
916  }
917  public:
918 
919  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
920  private:
921  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
922  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
924  }
925 
926  public:
927 
928  // nested types ----------------------------------------------------
929 
930  // accessors -------------------------------------------------------
931 
932  enum : int {
936  };
937  // repeated int32 vars = 1;
938  int vars_size() const;
939  void clear_vars();
940  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
941  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
942  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
943  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
944  vars() const;
945  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
946  mutable_vars();
947 
948  // repeated int64 coeffs = 2;
949  int coeffs_size() const;
950  void clear_coeffs();
951  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
952  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
953  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
954  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
955  coeffs() const;
956  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
957  mutable_coeffs();
958 
959  // repeated int64 domain = 3;
960  int domain_size() const;
961  void clear_domain();
962  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
963  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
964  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
965  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
966  domain() const;
967  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
968  mutable_domain();
969 
970  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearConstraintProto)
971  private:
972  class _Internal;
973 
974  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
975  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
976  mutable std::atomic<int> _vars_cached_byte_size_;
977  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
978  mutable std::atomic<int> _coeffs_cached_byte_size_;
979  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
980  mutable std::atomic<int> _domain_cached_byte_size_;
981  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
982  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
983 };
984 // -------------------------------------------------------------------
985 
987  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ElementConstraintProto) */ {
988  public:
990  virtual ~ElementConstraintProto();
991 
995  *this = ::std::move(from);
996  }
997 
999  CopyFrom(from);
1000  return *this;
1001  }
1003  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1004  if (this != &from) InternalSwap(&from);
1005  } else {
1006  CopyFrom(from);
1007  }
1008  return *this;
1009  }
1010 
1011  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1012  return GetDescriptor();
1013  }
1014  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1015  return GetMetadataStatic().descriptor;
1016  }
1017  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1018  return GetMetadataStatic().reflection;
1019  }
1020  static const ElementConstraintProto& default_instance();
1021 
1022  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1024  return reinterpret_cast<const ElementConstraintProto*>(
1026  }
1027  static constexpr int kIndexInFileMessages =
1028  5;
1029 
1031  a.Swap(&b);
1032  }
1033  inline void Swap(ElementConstraintProto* other) {
1034  if (other == this) return;
1035  InternalSwap(other);
1036  }
1037 
1038  // implements Message ----------------------------------------------
1039 
1040  inline ElementConstraintProto* New() const final {
1041  return CreateMaybeMessage<ElementConstraintProto>(nullptr);
1042  }
1043 
1044  ElementConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1045  return CreateMaybeMessage<ElementConstraintProto>(arena);
1046  }
1047  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1048  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1049  void CopyFrom(const ElementConstraintProto& from);
1050  void MergeFrom(const ElementConstraintProto& from);
1051  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1052  bool IsInitialized() const final;
1053 
1054  size_t ByteSizeLong() const final;
1055  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1056  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1057  #else
1059  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1060  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1062  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1063  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1064  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1065  int GetCachedSize() const final { return _cached_size_.Get(); }
1066 
1067  private:
1068  inline void SharedCtor();
1069  inline void SharedDtor();
1070  void SetCachedSize(int size) const final;
1071  void InternalSwap(ElementConstraintProto* other);
1072  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1073  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1074  return "operations_research.sat.ElementConstraintProto";
1075  }
1076  private:
1077  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1078  return nullptr;
1079  }
1080  inline void* MaybeArenaPtr() const {
1081  return nullptr;
1082  }
1083  public:
1084 
1085  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1086  private:
1087  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1088  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1090  }
1091 
1092  public:
1093 
1094  // nested types ----------------------------------------------------
1095 
1096  // accessors -------------------------------------------------------
1097 
1098  enum : int {
1102  };
1103  // repeated int32 vars = 3;
1104  int vars_size() const;
1105  void clear_vars();
1106  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1107  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1108  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1109  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1110  vars() const;
1111  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1112  mutable_vars();
1113 
1114  // int32 index = 1;
1115  void clear_index();
1116  ::PROTOBUF_NAMESPACE_ID::int32 index() const;
1117  void set_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1118 
1119  // int32 target = 2;
1120  void clear_target();
1121  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
1122  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1123 
1124  // @@protoc_insertion_point(class_scope:operations_research.sat.ElementConstraintProto)
1125  private:
1126  class _Internal;
1127 
1128  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1129  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1130  mutable std::atomic<int> _vars_cached_byte_size_;
1131  ::PROTOBUF_NAMESPACE_ID::int32 index_;
1132  ::PROTOBUF_NAMESPACE_ID::int32 target_;
1133  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1134  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1135 };
1136 // -------------------------------------------------------------------
1137 
1139  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntervalConstraintProto) */ {
1140  public:
1142  virtual ~IntervalConstraintProto();
1143 
1147  *this = ::std::move(from);
1148  }
1149 
1151  CopyFrom(from);
1152  return *this;
1153  }
1155  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1156  if (this != &from) InternalSwap(&from);
1157  } else {
1158  CopyFrom(from);
1159  }
1160  return *this;
1161  }
1162 
1163  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1164  return GetDescriptor();
1165  }
1166  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1167  return GetMetadataStatic().descriptor;
1168  }
1169  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1170  return GetMetadataStatic().reflection;
1171  }
1172  static const IntervalConstraintProto& default_instance();
1173 
1174  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1176  return reinterpret_cast<const IntervalConstraintProto*>(
1178  }
1179  static constexpr int kIndexInFileMessages =
1180  6;
1181 
1183  a.Swap(&b);
1184  }
1185  inline void Swap(IntervalConstraintProto* other) {
1186  if (other == this) return;
1187  InternalSwap(other);
1188  }
1189 
1190  // implements Message ----------------------------------------------
1191 
1192  inline IntervalConstraintProto* New() const final {
1193  return CreateMaybeMessage<IntervalConstraintProto>(nullptr);
1194  }
1195 
1196  IntervalConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1197  return CreateMaybeMessage<IntervalConstraintProto>(arena);
1198  }
1199  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1200  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1201  void CopyFrom(const IntervalConstraintProto& from);
1202  void MergeFrom(const IntervalConstraintProto& from);
1203  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1204  bool IsInitialized() const final;
1205 
1206  size_t ByteSizeLong() const final;
1207  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1208  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1209  #else
1211  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1212  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1214  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1215  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1216  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1217  int GetCachedSize() const final { return _cached_size_.Get(); }
1218 
1219  private:
1220  inline void SharedCtor();
1221  inline void SharedDtor();
1222  void SetCachedSize(int size) const final;
1223  void InternalSwap(IntervalConstraintProto* other);
1224  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1225  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1226  return "operations_research.sat.IntervalConstraintProto";
1227  }
1228  private:
1229  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1230  return nullptr;
1231  }
1232  inline void* MaybeArenaPtr() const {
1233  return nullptr;
1234  }
1235  public:
1236 
1237  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1238  private:
1239  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1240  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1242  }
1243 
1244  public:
1245 
1246  // nested types ----------------------------------------------------
1247 
1248  // accessors -------------------------------------------------------
1249 
1250  enum : int {
1254  };
1255  // int32 start = 1;
1256  void clear_start();
1257  ::PROTOBUF_NAMESPACE_ID::int32 start() const;
1258  void set_start(::PROTOBUF_NAMESPACE_ID::int32 value);
1259 
1260  // int32 end = 2;
1261  void clear_end();
1262  ::PROTOBUF_NAMESPACE_ID::int32 end() const;
1263  void set_end(::PROTOBUF_NAMESPACE_ID::int32 value);
1264 
1265  // int32 size = 3;
1266  void clear_size();
1267  ::PROTOBUF_NAMESPACE_ID::int32 size() const;
1268  void set_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1269 
1270  // @@protoc_insertion_point(class_scope:operations_research.sat.IntervalConstraintProto)
1271  private:
1272  class _Internal;
1273 
1274  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1275  ::PROTOBUF_NAMESPACE_ID::int32 start_;
1276  ::PROTOBUF_NAMESPACE_ID::int32 end_;
1277  ::PROTOBUF_NAMESPACE_ID::int32 size_;
1278  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1279  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1280 };
1281 // -------------------------------------------------------------------
1282 
1284  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlapConstraintProto) */ {
1285  public:
1287  virtual ~NoOverlapConstraintProto();
1288 
1292  *this = ::std::move(from);
1293  }
1294 
1296  CopyFrom(from);
1297  return *this;
1298  }
1300  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1301  if (this != &from) InternalSwap(&from);
1302  } else {
1303  CopyFrom(from);
1304  }
1305  return *this;
1306  }
1307 
1308  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1309  return GetDescriptor();
1310  }
1311  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1312  return GetMetadataStatic().descriptor;
1313  }
1314  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1315  return GetMetadataStatic().reflection;
1316  }
1318 
1319  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1321  return reinterpret_cast<const NoOverlapConstraintProto*>(
1323  }
1324  static constexpr int kIndexInFileMessages =
1325  7;
1326 
1328  a.Swap(&b);
1329  }
1330  inline void Swap(NoOverlapConstraintProto* other) {
1331  if (other == this) return;
1332  InternalSwap(other);
1333  }
1334 
1335  // implements Message ----------------------------------------------
1336 
1337  inline NoOverlapConstraintProto* New() const final {
1338  return CreateMaybeMessage<NoOverlapConstraintProto>(nullptr);
1339  }
1340 
1341  NoOverlapConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1342  return CreateMaybeMessage<NoOverlapConstraintProto>(arena);
1343  }
1344  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1345  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1346  void CopyFrom(const NoOverlapConstraintProto& from);
1347  void MergeFrom(const NoOverlapConstraintProto& from);
1348  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1349  bool IsInitialized() const final;
1350 
1351  size_t ByteSizeLong() const final;
1352  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1353  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1354  #else
1356  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1357  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1359  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1360  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1361  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1362  int GetCachedSize() const final { return _cached_size_.Get(); }
1363 
1364  private:
1365  inline void SharedCtor();
1366  inline void SharedDtor();
1367  void SetCachedSize(int size) const final;
1368  void InternalSwap(NoOverlapConstraintProto* other);
1369  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1370  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1371  return "operations_research.sat.NoOverlapConstraintProto";
1372  }
1373  private:
1374  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1375  return nullptr;
1376  }
1377  inline void* MaybeArenaPtr() const {
1378  return nullptr;
1379  }
1380  public:
1381 
1382  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1383  private:
1384  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1385  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1387  }
1388 
1389  public:
1390 
1391  // nested types ----------------------------------------------------
1392 
1393  // accessors -------------------------------------------------------
1394 
1395  enum : int {
1397  };
1398  // repeated int32 intervals = 1;
1399  int intervals_size() const;
1400  void clear_intervals();
1401  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
1402  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1403  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1404  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1405  intervals() const;
1406  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1408 
1409  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlapConstraintProto)
1410  private:
1411  class _Internal;
1412 
1413  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1414  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
1415  mutable std::atomic<int> _intervals_cached_byte_size_;
1416  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1417  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1418 };
1419 // -------------------------------------------------------------------
1420 
1422  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlap2DConstraintProto) */ {
1423  public:
1425  virtual ~NoOverlap2DConstraintProto();
1426 
1430  *this = ::std::move(from);
1431  }
1432 
1434  CopyFrom(from);
1435  return *this;
1436  }
1438  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1439  if (this != &from) InternalSwap(&from);
1440  } else {
1441  CopyFrom(from);
1442  }
1443  return *this;
1444  }
1445 
1446  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1447  return GetDescriptor();
1448  }
1449  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1450  return GetMetadataStatic().descriptor;
1451  }
1452  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1453  return GetMetadataStatic().reflection;
1454  }
1456 
1457  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1459  return reinterpret_cast<const NoOverlap2DConstraintProto*>(
1461  }
1462  static constexpr int kIndexInFileMessages =
1463  8;
1464 
1466  a.Swap(&b);
1467  }
1468  inline void Swap(NoOverlap2DConstraintProto* other) {
1469  if (other == this) return;
1470  InternalSwap(other);
1471  }
1472 
1473  // implements Message ----------------------------------------------
1474 
1475  inline NoOverlap2DConstraintProto* New() const final {
1476  return CreateMaybeMessage<NoOverlap2DConstraintProto>(nullptr);
1477  }
1478 
1479  NoOverlap2DConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1480  return CreateMaybeMessage<NoOverlap2DConstraintProto>(arena);
1481  }
1482  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1483  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1484  void CopyFrom(const NoOverlap2DConstraintProto& from);
1485  void MergeFrom(const NoOverlap2DConstraintProto& from);
1486  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1487  bool IsInitialized() const final;
1488 
1489  size_t ByteSizeLong() const final;
1490  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1491  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1492  #else
1494  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1495  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1497  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1498  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1499  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1500  int GetCachedSize() const final { return _cached_size_.Get(); }
1501 
1502  private:
1503  inline void SharedCtor();
1504  inline void SharedDtor();
1505  void SetCachedSize(int size) const final;
1506  void InternalSwap(NoOverlap2DConstraintProto* other);
1507  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1508  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1509  return "operations_research.sat.NoOverlap2DConstraintProto";
1510  }
1511  private:
1512  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1513  return nullptr;
1514  }
1515  inline void* MaybeArenaPtr() const {
1516  return nullptr;
1517  }
1518  public:
1519 
1520  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1521  private:
1522  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1523  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1525  }
1526 
1527  public:
1528 
1529  // nested types ----------------------------------------------------
1530 
1531  // accessors -------------------------------------------------------
1532 
1533  enum : int {
1536  };
1537  // repeated int32 x_intervals = 1;
1538  int x_intervals_size() const;
1539  void clear_x_intervals();
1540  ::PROTOBUF_NAMESPACE_ID::int32 x_intervals(int index) const;
1541  void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1542  void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1543  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1544  x_intervals() const;
1545  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1547 
1548  // repeated int32 y_intervals = 2;
1549  int y_intervals_size() const;
1550  void clear_y_intervals();
1551  ::PROTOBUF_NAMESPACE_ID::int32 y_intervals(int index) const;
1552  void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1553  void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1554  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1555  y_intervals() const;
1556  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1558 
1559  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlap2DConstraintProto)
1560  private:
1561  class _Internal;
1562 
1563  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1564  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > x_intervals_;
1565  mutable std::atomic<int> _x_intervals_cached_byte_size_;
1566  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > y_intervals_;
1567  mutable std::atomic<int> _y_intervals_cached_byte_size_;
1568  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1569  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1570 };
1571 // -------------------------------------------------------------------
1572 
1574  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CumulativeConstraintProto) */ {
1575  public:
1577  virtual ~CumulativeConstraintProto();
1578 
1582  *this = ::std::move(from);
1583  }
1584 
1586  CopyFrom(from);
1587  return *this;
1588  }
1590  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1591  if (this != &from) InternalSwap(&from);
1592  } else {
1593  CopyFrom(from);
1594  }
1595  return *this;
1596  }
1597 
1598  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1599  return GetDescriptor();
1600  }
1601  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1602  return GetMetadataStatic().descriptor;
1603  }
1604  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1605  return GetMetadataStatic().reflection;
1606  }
1608 
1609  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1611  return reinterpret_cast<const CumulativeConstraintProto*>(
1613  }
1614  static constexpr int kIndexInFileMessages =
1615  9;
1616 
1618  a.Swap(&b);
1619  }
1620  inline void Swap(CumulativeConstraintProto* other) {
1621  if (other == this) return;
1622  InternalSwap(other);
1623  }
1624 
1625  // implements Message ----------------------------------------------
1626 
1627  inline CumulativeConstraintProto* New() const final {
1628  return CreateMaybeMessage<CumulativeConstraintProto>(nullptr);
1629  }
1630 
1631  CumulativeConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1632  return CreateMaybeMessage<CumulativeConstraintProto>(arena);
1633  }
1634  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1635  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1636  void CopyFrom(const CumulativeConstraintProto& from);
1637  void MergeFrom(const CumulativeConstraintProto& from);
1638  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1639  bool IsInitialized() const final;
1640 
1641  size_t ByteSizeLong() const final;
1642  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1643  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1644  #else
1646  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1647  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1649  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1650  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1651  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1652  int GetCachedSize() const final { return _cached_size_.Get(); }
1653 
1654  private:
1655  inline void SharedCtor();
1656  inline void SharedDtor();
1657  void SetCachedSize(int size) const final;
1658  void InternalSwap(CumulativeConstraintProto* other);
1659  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1660  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1661  return "operations_research.sat.CumulativeConstraintProto";
1662  }
1663  private:
1664  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1665  return nullptr;
1666  }
1667  inline void* MaybeArenaPtr() const {
1668  return nullptr;
1669  }
1670  public:
1671 
1672  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1673  private:
1674  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1675  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1677  }
1678 
1679  public:
1680 
1681  // nested types ----------------------------------------------------
1682 
1683  // accessors -------------------------------------------------------
1684 
1685  enum : int {
1689  };
1690  // repeated int32 intervals = 2;
1691  int intervals_size() const;
1692  void clear_intervals();
1693  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
1694  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1695  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1696  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1697  intervals() const;
1698  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1700 
1701  // repeated int32 demands = 3;
1702  int demands_size() const;
1703  void clear_demands();
1704  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
1705  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1706  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
1707  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1708  demands() const;
1709  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1710  mutable_demands();
1711 
1712  // int32 capacity = 1;
1713  void clear_capacity();
1714  ::PROTOBUF_NAMESPACE_ID::int32 capacity() const;
1715  void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value);
1716 
1717  // @@protoc_insertion_point(class_scope:operations_research.sat.CumulativeConstraintProto)
1718  private:
1719  class _Internal;
1720 
1721  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1722  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
1723  mutable std::atomic<int> _intervals_cached_byte_size_;
1724  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
1725  mutable std::atomic<int> _demands_cached_byte_size_;
1726  ::PROTOBUF_NAMESPACE_ID::int32 capacity_;
1727  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1728  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1729 };
1730 // -------------------------------------------------------------------
1731 
1733  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ReservoirConstraintProto) */ {
1734  public:
1736  virtual ~ReservoirConstraintProto();
1737 
1741  *this = ::std::move(from);
1742  }
1743 
1745  CopyFrom(from);
1746  return *this;
1747  }
1749  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1750  if (this != &from) InternalSwap(&from);
1751  } else {
1752  CopyFrom(from);
1753  }
1754  return *this;
1755  }
1756 
1757  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1758  return GetDescriptor();
1759  }
1760  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1761  return GetMetadataStatic().descriptor;
1762  }
1763  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1764  return GetMetadataStatic().reflection;
1765  }
1767 
1768  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1770  return reinterpret_cast<const ReservoirConstraintProto*>(
1772  }
1773  static constexpr int kIndexInFileMessages =
1774  10;
1775 
1777  a.Swap(&b);
1778  }
1779  inline void Swap(ReservoirConstraintProto* other) {
1780  if (other == this) return;
1781  InternalSwap(other);
1782  }
1783 
1784  // implements Message ----------------------------------------------
1785 
1786  inline ReservoirConstraintProto* New() const final {
1787  return CreateMaybeMessage<ReservoirConstraintProto>(nullptr);
1788  }
1789 
1790  ReservoirConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1791  return CreateMaybeMessage<ReservoirConstraintProto>(arena);
1792  }
1793  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1794  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1795  void CopyFrom(const ReservoirConstraintProto& from);
1796  void MergeFrom(const ReservoirConstraintProto& from);
1797  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1798  bool IsInitialized() const final;
1799 
1800  size_t ByteSizeLong() const final;
1801  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1802  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1803  #else
1805  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1806  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1808  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1809  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1810  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1811  int GetCachedSize() const final { return _cached_size_.Get(); }
1812 
1813  private:
1814  inline void SharedCtor();
1815  inline void SharedDtor();
1816  void SetCachedSize(int size) const final;
1817  void InternalSwap(ReservoirConstraintProto* other);
1818  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1819  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1820  return "operations_research.sat.ReservoirConstraintProto";
1821  }
1822  private:
1823  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1824  return nullptr;
1825  }
1826  inline void* MaybeArenaPtr() const {
1827  return nullptr;
1828  }
1829  public:
1830 
1831  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1832  private:
1833  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1834  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1836  }
1837 
1838  public:
1839 
1840  // nested types ----------------------------------------------------
1841 
1842  // accessors -------------------------------------------------------
1843 
1844  enum : int {
1850  };
1851  // repeated int32 times = 3;
1852  int times_size() const;
1853  void clear_times();
1854  ::PROTOBUF_NAMESPACE_ID::int32 times(int index) const;
1855  void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1856  void add_times(::PROTOBUF_NAMESPACE_ID::int32 value);
1857  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1858  times() const;
1859  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1860  mutable_times();
1861 
1862  // repeated int64 demands = 4;
1863  int demands_size() const;
1864  void clear_demands();
1865  ::PROTOBUF_NAMESPACE_ID::int64 demands(int index) const;
1866  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
1867  void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value);
1868  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1869  demands() const;
1870  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1871  mutable_demands();
1872 
1873  // repeated int32 actives = 5;
1874  int actives_size() const;
1875  void clear_actives();
1876  ::PROTOBUF_NAMESPACE_ID::int32 actives(int index) const;
1877  void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1878  void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value);
1879  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1880  actives() const;
1881  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1882  mutable_actives();
1883 
1884  // int64 min_level = 1;
1885  void clear_min_level();
1886  ::PROTOBUF_NAMESPACE_ID::int64 min_level() const;
1887  void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value);
1888 
1889  // int64 max_level = 2;
1890  void clear_max_level();
1891  ::PROTOBUF_NAMESPACE_ID::int64 max_level() const;
1892  void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value);
1893 
1894  // @@protoc_insertion_point(class_scope:operations_research.sat.ReservoirConstraintProto)
1895  private:
1896  class _Internal;
1897 
1898  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1899  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > times_;
1900  mutable std::atomic<int> _times_cached_byte_size_;
1901  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > demands_;
1902  mutable std::atomic<int> _demands_cached_byte_size_;
1903  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > actives_;
1904  mutable std::atomic<int> _actives_cached_byte_size_;
1905  ::PROTOBUF_NAMESPACE_ID::int64 min_level_;
1906  ::PROTOBUF_NAMESPACE_ID::int64 max_level_;
1907  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1908  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1909 };
1910 // -------------------------------------------------------------------
1911 
1913  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitConstraintProto) */ {
1914  public:
1916  virtual ~CircuitConstraintProto();
1917 
1921  *this = ::std::move(from);
1922  }
1923 
1925  CopyFrom(from);
1926  return *this;
1927  }
1929  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1930  if (this != &from) InternalSwap(&from);
1931  } else {
1932  CopyFrom(from);
1933  }
1934  return *this;
1935  }
1936 
1937  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1938  return GetDescriptor();
1939  }
1940  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1941  return GetMetadataStatic().descriptor;
1942  }
1943  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1944  return GetMetadataStatic().reflection;
1945  }
1946  static const CircuitConstraintProto& default_instance();
1947 
1948  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1950  return reinterpret_cast<const CircuitConstraintProto*>(
1952  }
1953  static constexpr int kIndexInFileMessages =
1954  11;
1955 
1957  a.Swap(&b);
1958  }
1959  inline void Swap(CircuitConstraintProto* other) {
1960  if (other == this) return;
1961  InternalSwap(other);
1962  }
1963 
1964  // implements Message ----------------------------------------------
1965 
1966  inline CircuitConstraintProto* New() const final {
1967  return CreateMaybeMessage<CircuitConstraintProto>(nullptr);
1968  }
1969 
1970  CircuitConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1971  return CreateMaybeMessage<CircuitConstraintProto>(arena);
1972  }
1973  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1974  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1975  void CopyFrom(const CircuitConstraintProto& from);
1976  void MergeFrom(const CircuitConstraintProto& from);
1977  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1978  bool IsInitialized() const final;
1979 
1980  size_t ByteSizeLong() const final;
1981  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1982  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1983  #else
1985  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
1986  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
1988  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
1989  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
1990  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
1991  int GetCachedSize() const final { return _cached_size_.Get(); }
1992 
1993  private:
1994  inline void SharedCtor();
1995  inline void SharedDtor();
1996  void SetCachedSize(int size) const final;
1997  void InternalSwap(CircuitConstraintProto* other);
1998  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1999  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2000  return "operations_research.sat.CircuitConstraintProto";
2001  }
2002  private:
2003  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2004  return nullptr;
2005  }
2006  inline void* MaybeArenaPtr() const {
2007  return nullptr;
2008  }
2009  public:
2010 
2011  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2012  private:
2013  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2014  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2016  }
2017 
2018  public:
2019 
2020  // nested types ----------------------------------------------------
2021 
2022  // accessors -------------------------------------------------------
2023 
2024  enum : int {
2028  };
2029  // repeated int32 tails = 3;
2030  int tails_size() const;
2031  void clear_tails();
2032  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2033  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2034  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2035  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2036  tails() const;
2037  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2038  mutable_tails();
2039 
2040  // repeated int32 heads = 4;
2041  int heads_size() const;
2042  void clear_heads();
2043  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2044  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2045  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2046  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2047  heads() const;
2048  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2049  mutable_heads();
2050 
2051  // repeated int32 literals = 5;
2052  int literals_size() const;
2053  void clear_literals();
2054  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2055  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2056  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2057  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2058  literals() const;
2059  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2060  mutable_literals();
2061 
2062  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitConstraintProto)
2063  private:
2064  class _Internal;
2065 
2066  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2067  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2068  mutable std::atomic<int> _tails_cached_byte_size_;
2069  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2070  mutable std::atomic<int> _heads_cached_byte_size_;
2071  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2072  mutable std::atomic<int> _literals_cached_byte_size_;
2073  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2074  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2075 };
2076 // -------------------------------------------------------------------
2077 
2079  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.RoutesConstraintProto) */ {
2080  public:
2082  virtual ~RoutesConstraintProto();
2083 
2086  : RoutesConstraintProto() {
2087  *this = ::std::move(from);
2088  }
2089 
2091  CopyFrom(from);
2092  return *this;
2093  }
2095  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2096  if (this != &from) InternalSwap(&from);
2097  } else {
2098  CopyFrom(from);
2099  }
2100  return *this;
2101  }
2102 
2103  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2104  return GetDescriptor();
2105  }
2106  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2107  return GetMetadataStatic().descriptor;
2108  }
2109  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2110  return GetMetadataStatic().reflection;
2111  }
2112  static const RoutesConstraintProto& default_instance();
2113 
2114  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2116  return reinterpret_cast<const RoutesConstraintProto*>(
2118  }
2119  static constexpr int kIndexInFileMessages =
2120  12;
2121 
2123  a.Swap(&b);
2124  }
2125  inline void Swap(RoutesConstraintProto* other) {
2126  if (other == this) return;
2127  InternalSwap(other);
2128  }
2129 
2130  // implements Message ----------------------------------------------
2131 
2132  inline RoutesConstraintProto* New() const final {
2133  return CreateMaybeMessage<RoutesConstraintProto>(nullptr);
2134  }
2135 
2136  RoutesConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2137  return CreateMaybeMessage<RoutesConstraintProto>(arena);
2138  }
2139  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2140  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2141  void CopyFrom(const RoutesConstraintProto& from);
2142  void MergeFrom(const RoutesConstraintProto& from);
2143  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2144  bool IsInitialized() const final;
2145 
2146  size_t ByteSizeLong() const final;
2147  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2148  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2149  #else
2151  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2152  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2154  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2155  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2156  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2157  int GetCachedSize() const final { return _cached_size_.Get(); }
2158 
2159  private:
2160  inline void SharedCtor();
2161  inline void SharedDtor();
2162  void SetCachedSize(int size) const final;
2163  void InternalSwap(RoutesConstraintProto* other);
2164  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2165  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2166  return "operations_research.sat.RoutesConstraintProto";
2167  }
2168  private:
2169  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2170  return nullptr;
2171  }
2172  inline void* MaybeArenaPtr() const {
2173  return nullptr;
2174  }
2175  public:
2176 
2177  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2178  private:
2179  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2180  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2182  }
2183 
2184  public:
2185 
2186  // nested types ----------------------------------------------------
2187 
2188  // accessors -------------------------------------------------------
2189 
2190  enum : int {
2196  };
2197  // repeated int32 tails = 1;
2198  int tails_size() const;
2199  void clear_tails();
2200  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2201  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2202  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2203  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2204  tails() const;
2205  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2206  mutable_tails();
2207 
2208  // repeated int32 heads = 2;
2209  int heads_size() const;
2210  void clear_heads();
2211  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2212  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2213  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2214  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2215  heads() const;
2216  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2217  mutable_heads();
2218 
2219  // repeated int32 literals = 3;
2220  int literals_size() const;
2221  void clear_literals();
2222  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2223  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2224  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2225  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2226  literals() const;
2227  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2228  mutable_literals();
2229 
2230  // repeated int32 demands = 4;
2231  int demands_size() const;
2232  void clear_demands();
2233  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
2234  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2235  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2236  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2237  demands() const;
2238  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2239  mutable_demands();
2240 
2241  // int64 capacity = 5;
2242  void clear_capacity();
2243  ::PROTOBUF_NAMESPACE_ID::int64 capacity() const;
2244  void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
2245 
2246  // @@protoc_insertion_point(class_scope:operations_research.sat.RoutesConstraintProto)
2247  private:
2248  class _Internal;
2249 
2250  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2251  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2252  mutable std::atomic<int> _tails_cached_byte_size_;
2253  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2254  mutable std::atomic<int> _heads_cached_byte_size_;
2255  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2256  mutable std::atomic<int> _literals_cached_byte_size_;
2257  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
2258  mutable std::atomic<int> _demands_cached_byte_size_;
2259  ::PROTOBUF_NAMESPACE_ID::int64 capacity_;
2260  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2261  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2262 };
2263 // -------------------------------------------------------------------
2264 
2266  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitCoveringConstraintProto) */ {
2267  public:
2270 
2274  *this = ::std::move(from);
2275  }
2276 
2278  CopyFrom(from);
2279  return *this;
2280  }
2282  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2283  if (this != &from) InternalSwap(&from);
2284  } else {
2285  CopyFrom(from);
2286  }
2287  return *this;
2288  }
2289 
2290  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2291  return GetDescriptor();
2292  }
2293  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2294  return GetMetadataStatic().descriptor;
2295  }
2296  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2297  return GetMetadataStatic().reflection;
2298  }
2300 
2301  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2303  return reinterpret_cast<const CircuitCoveringConstraintProto*>(
2305  }
2306  static constexpr int kIndexInFileMessages =
2307  13;
2308 
2310  a.Swap(&b);
2311  }
2312  inline void Swap(CircuitCoveringConstraintProto* other) {
2313  if (other == this) return;
2314  InternalSwap(other);
2315  }
2316 
2317  // implements Message ----------------------------------------------
2318 
2319  inline CircuitCoveringConstraintProto* New() const final {
2320  return CreateMaybeMessage<CircuitCoveringConstraintProto>(nullptr);
2321  }
2322 
2323  CircuitCoveringConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2324  return CreateMaybeMessage<CircuitCoveringConstraintProto>(arena);
2325  }
2326  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2327  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2328  void CopyFrom(const CircuitCoveringConstraintProto& from);
2329  void MergeFrom(const CircuitCoveringConstraintProto& from);
2330  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2331  bool IsInitialized() const final;
2332 
2333  size_t ByteSizeLong() const final;
2334  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2335  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2336  #else
2338  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2339  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2341  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2342  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2343  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2344  int GetCachedSize() const final { return _cached_size_.Get(); }
2345 
2346  private:
2347  inline void SharedCtor();
2348  inline void SharedDtor();
2349  void SetCachedSize(int size) const final;
2350  void InternalSwap(CircuitCoveringConstraintProto* other);
2351  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2352  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2353  return "operations_research.sat.CircuitCoveringConstraintProto";
2354  }
2355  private:
2356  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2357  return nullptr;
2358  }
2359  inline void* MaybeArenaPtr() const {
2360  return nullptr;
2361  }
2362  public:
2363 
2364  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2365  private:
2366  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2367  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2369  }
2370 
2371  public:
2372 
2373  // nested types ----------------------------------------------------
2374 
2375  // accessors -------------------------------------------------------
2376 
2377  enum : int {
2380  };
2381  // repeated int32 nexts = 1;
2382  int nexts_size() const;
2383  void clear_nexts();
2384  ::PROTOBUF_NAMESPACE_ID::int32 nexts(int index) const;
2385  void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2386  void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value);
2387  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2388  nexts() const;
2389  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2390  mutable_nexts();
2391 
2392  // repeated int64 distinguished_nodes = 2;
2393  int distinguished_nodes_size() const;
2395  ::PROTOBUF_NAMESPACE_ID::int64 distinguished_nodes(int index) const;
2396  void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2397  void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);
2398  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2399  distinguished_nodes() const;
2400  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2402 
2403  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitCoveringConstraintProto)
2404  private:
2405  class _Internal;
2406 
2407  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2408  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > nexts_;
2409  mutable std::atomic<int> _nexts_cached_byte_size_;
2410  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > distinguished_nodes_;
2411  mutable std::atomic<int> _distinguished_nodes_cached_byte_size_;
2412  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2413  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2414 };
2415 // -------------------------------------------------------------------
2416 
2418  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.TableConstraintProto) */ {
2419  public:
2421  virtual ~TableConstraintProto();
2422 
2425  : TableConstraintProto() {
2426  *this = ::std::move(from);
2427  }
2428 
2430  CopyFrom(from);
2431  return *this;
2432  }
2434  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2435  if (this != &from) InternalSwap(&from);
2436  } else {
2437  CopyFrom(from);
2438  }
2439  return *this;
2440  }
2441 
2442  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2443  return GetDescriptor();
2444  }
2445  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2446  return GetMetadataStatic().descriptor;
2447  }
2448  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2449  return GetMetadataStatic().reflection;
2450  }
2451  static const TableConstraintProto& default_instance();
2452 
2453  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2455  return reinterpret_cast<const TableConstraintProto*>(
2457  }
2458  static constexpr int kIndexInFileMessages =
2459  14;
2460 
2462  a.Swap(&b);
2463  }
2464  inline void Swap(TableConstraintProto* other) {
2465  if (other == this) return;
2466  InternalSwap(other);
2467  }
2468 
2469  // implements Message ----------------------------------------------
2470 
2471  inline TableConstraintProto* New() const final {
2472  return CreateMaybeMessage<TableConstraintProto>(nullptr);
2473  }
2474 
2475  TableConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2476  return CreateMaybeMessage<TableConstraintProto>(arena);
2477  }
2478  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2479  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2480  void CopyFrom(const TableConstraintProto& from);
2481  void MergeFrom(const TableConstraintProto& from);
2482  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2483  bool IsInitialized() const final;
2484 
2485  size_t ByteSizeLong() const final;
2486  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2487  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2488  #else
2490  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2491  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2493  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2494  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2495  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2496  int GetCachedSize() const final { return _cached_size_.Get(); }
2497 
2498  private:
2499  inline void SharedCtor();
2500  inline void SharedDtor();
2501  void SetCachedSize(int size) const final;
2502  void InternalSwap(TableConstraintProto* other);
2503  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2504  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2505  return "operations_research.sat.TableConstraintProto";
2506  }
2507  private:
2508  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2509  return nullptr;
2510  }
2511  inline void* MaybeArenaPtr() const {
2512  return nullptr;
2513  }
2514  public:
2515 
2516  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2517  private:
2518  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2519  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2521  }
2522 
2523  public:
2524 
2525  // nested types ----------------------------------------------------
2526 
2527  // accessors -------------------------------------------------------
2528 
2529  enum : int {
2533  };
2534  // repeated int32 vars = 1;
2535  int vars_size() const;
2536  void clear_vars();
2537  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
2538  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2539  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
2540  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2541  vars() const;
2542  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2543  mutable_vars();
2544 
2545  // repeated int64 values = 2;
2546  int values_size() const;
2547  void clear_values();
2548  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
2549  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2550  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
2551  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2552  values() const;
2553  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2554  mutable_values();
2555 
2556  // bool negated = 3;
2557  void clear_negated();
2558  bool negated() const;
2559  void set_negated(bool value);
2560 
2561  // @@protoc_insertion_point(class_scope:operations_research.sat.TableConstraintProto)
2562  private:
2563  class _Internal;
2564 
2565  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2566  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
2567  mutable std::atomic<int> _vars_cached_byte_size_;
2568  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
2569  mutable std::atomic<int> _values_cached_byte_size_;
2570  bool negated_;
2571  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2572  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2573 };
2574 // -------------------------------------------------------------------
2575 
2577  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.InverseConstraintProto) */ {
2578  public:
2580  virtual ~InverseConstraintProto();
2581 
2585  *this = ::std::move(from);
2586  }
2587 
2589  CopyFrom(from);
2590  return *this;
2591  }
2593  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2594  if (this != &from) InternalSwap(&from);
2595  } else {
2596  CopyFrom(from);
2597  }
2598  return *this;
2599  }
2600 
2601  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2602  return GetDescriptor();
2603  }
2604  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2605  return GetMetadataStatic().descriptor;
2606  }
2607  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2608  return GetMetadataStatic().reflection;
2609  }
2610  static const InverseConstraintProto& default_instance();
2611 
2612  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2614  return reinterpret_cast<const InverseConstraintProto*>(
2616  }
2617  static constexpr int kIndexInFileMessages =
2618  15;
2619 
2621  a.Swap(&b);
2622  }
2623  inline void Swap(InverseConstraintProto* other) {
2624  if (other == this) return;
2625  InternalSwap(other);
2626  }
2627 
2628  // implements Message ----------------------------------------------
2629 
2630  inline InverseConstraintProto* New() const final {
2631  return CreateMaybeMessage<InverseConstraintProto>(nullptr);
2632  }
2633 
2634  InverseConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2635  return CreateMaybeMessage<InverseConstraintProto>(arena);
2636  }
2637  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2638  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2639  void CopyFrom(const InverseConstraintProto& from);
2640  void MergeFrom(const InverseConstraintProto& from);
2641  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2642  bool IsInitialized() const final;
2643 
2644  size_t ByteSizeLong() const final;
2645  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2646  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2647  #else
2649  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2650  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2652  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2653  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2654  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2655  int GetCachedSize() const final { return _cached_size_.Get(); }
2656 
2657  private:
2658  inline void SharedCtor();
2659  inline void SharedDtor();
2660  void SetCachedSize(int size) const final;
2661  void InternalSwap(InverseConstraintProto* other);
2662  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2663  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2664  return "operations_research.sat.InverseConstraintProto";
2665  }
2666  private:
2667  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2668  return nullptr;
2669  }
2670  inline void* MaybeArenaPtr() const {
2671  return nullptr;
2672  }
2673  public:
2674 
2675  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2676  private:
2677  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2678  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2680  }
2681 
2682  public:
2683 
2684  // nested types ----------------------------------------------------
2685 
2686  // accessors -------------------------------------------------------
2687 
2688  enum : int {
2691  };
2692  // repeated int32 f_direct = 1;
2693  int f_direct_size() const;
2694  void clear_f_direct();
2695  ::PROTOBUF_NAMESPACE_ID::int32 f_direct(int index) const;
2696  void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2697  void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
2698  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2699  f_direct() const;
2700  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2701  mutable_f_direct();
2702 
2703  // repeated int32 f_inverse = 2;
2704  int f_inverse_size() const;
2705  void clear_f_inverse();
2706  ::PROTOBUF_NAMESPACE_ID::int32 f_inverse(int index) const;
2707  void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2708  void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value);
2709  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2710  f_inverse() const;
2711  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2713 
2714  // @@protoc_insertion_point(class_scope:operations_research.sat.InverseConstraintProto)
2715  private:
2716  class _Internal;
2717 
2718  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2719  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_direct_;
2720  mutable std::atomic<int> _f_direct_cached_byte_size_;
2721  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_inverse_;
2722  mutable std::atomic<int> _f_inverse_cached_byte_size_;
2723  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2724  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2725 };
2726 // -------------------------------------------------------------------
2727 
2729  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AutomatonConstraintProto) */ {
2730  public:
2732  virtual ~AutomatonConstraintProto();
2733 
2737  *this = ::std::move(from);
2738  }
2739 
2741  CopyFrom(from);
2742  return *this;
2743  }
2745  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2746  if (this != &from) InternalSwap(&from);
2747  } else {
2748  CopyFrom(from);
2749  }
2750  return *this;
2751  }
2752 
2753  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2754  return GetDescriptor();
2755  }
2756  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2757  return GetMetadataStatic().descriptor;
2758  }
2759  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2760  return GetMetadataStatic().reflection;
2761  }
2763 
2764  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2766  return reinterpret_cast<const AutomatonConstraintProto*>(
2768  }
2769  static constexpr int kIndexInFileMessages =
2770  16;
2771 
2773  a.Swap(&b);
2774  }
2775  inline void Swap(AutomatonConstraintProto* other) {
2776  if (other == this) return;
2777  InternalSwap(other);
2778  }
2779 
2780  // implements Message ----------------------------------------------
2781 
2782  inline AutomatonConstraintProto* New() const final {
2783  return CreateMaybeMessage<AutomatonConstraintProto>(nullptr);
2784  }
2785 
2786  AutomatonConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2787  return CreateMaybeMessage<AutomatonConstraintProto>(arena);
2788  }
2789  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2790  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2791  void CopyFrom(const AutomatonConstraintProto& from);
2792  void MergeFrom(const AutomatonConstraintProto& from);
2793  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2794  bool IsInitialized() const final;
2795 
2796  size_t ByteSizeLong() const final;
2797  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2798  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2799  #else
2801  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
2802  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
2804  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
2805  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
2806  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
2807  int GetCachedSize() const final { return _cached_size_.Get(); }
2808 
2809  private:
2810  inline void SharedCtor();
2811  inline void SharedDtor();
2812  void SetCachedSize(int size) const final;
2813  void InternalSwap(AutomatonConstraintProto* other);
2814  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2815  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2816  return "operations_research.sat.AutomatonConstraintProto";
2817  }
2818  private:
2819  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2820  return nullptr;
2821  }
2822  inline void* MaybeArenaPtr() const {
2823  return nullptr;
2824  }
2825  public:
2826 
2827  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2828  private:
2829  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2830  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2832  }
2833 
2834  public:
2835 
2836  // nested types ----------------------------------------------------
2837 
2838  // accessors -------------------------------------------------------
2839 
2840  enum : int {
2847  };
2848  // repeated int64 final_states = 3;
2849  int final_states_size() const;
2850  void clear_final_states();
2851  ::PROTOBUF_NAMESPACE_ID::int64 final_states(int index) const;
2852  void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2853  void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value);
2854  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2855  final_states() const;
2856  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2858 
2859  // repeated int64 transition_tail = 4;
2860  int transition_tail_size() const;
2861  void clear_transition_tail();
2862  ::PROTOBUF_NAMESPACE_ID::int64 transition_tail(int index) const;
2863  void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2864  void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value);
2865  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2866  transition_tail() const;
2867  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2869 
2870  // repeated int64 transition_head = 5;
2871  int transition_head_size() const;
2872  void clear_transition_head();
2873  ::PROTOBUF_NAMESPACE_ID::int64 transition_head(int index) const;
2874  void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2875  void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value);
2876  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2877  transition_head() const;
2878  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2880 
2881  // repeated int64 transition_label = 6;
2882  int transition_label_size() const;
2883  void clear_transition_label();
2884  ::PROTOBUF_NAMESPACE_ID::int64 transition_label(int index) const;
2885  void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2886  void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value);
2887  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2888  transition_label() const;
2889  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2891 
2892  // repeated int32 vars = 7;
2893  int vars_size() const;
2894  void clear_vars();
2895  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
2896  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2897  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
2898  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2899  vars() const;
2900  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2901  mutable_vars();
2902 
2903  // int64 starting_state = 2;
2904  void clear_starting_state();
2905  ::PROTOBUF_NAMESPACE_ID::int64 starting_state() const;
2906  void set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value);
2907 
2908  // @@protoc_insertion_point(class_scope:operations_research.sat.AutomatonConstraintProto)
2909  private:
2910  class _Internal;
2911 
2912  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2913  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > final_states_;
2914  mutable std::atomic<int> _final_states_cached_byte_size_;
2915  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_tail_;
2916  mutable std::atomic<int> _transition_tail_cached_byte_size_;
2917  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_head_;
2918  mutable std::atomic<int> _transition_head_cached_byte_size_;
2919  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_label_;
2920  mutable std::atomic<int> _transition_label_cached_byte_size_;
2921  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
2922  mutable std::atomic<int> _vars_cached_byte_size_;
2923  ::PROTOBUF_NAMESPACE_ID::int64 starting_state_;
2924  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2925  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2926 };
2927 // -------------------------------------------------------------------
2928 
2930  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ConstraintProto) */ {
2931  public:
2932  ConstraintProto();
2933  virtual ~ConstraintProto();
2934 
2935  ConstraintProto(const ConstraintProto& from);
2937  : ConstraintProto() {
2938  *this = ::std::move(from);
2939  }
2940 
2942  CopyFrom(from);
2943  return *this;
2944  }
2945  inline ConstraintProto& operator=(ConstraintProto&& from) noexcept {
2946  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2947  if (this != &from) InternalSwap(&from);
2948  } else {
2949  CopyFrom(from);
2950  }
2951  return *this;
2952  }
2953 
2954  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2955  return GetDescriptor();
2956  }
2957  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2958  return GetMetadataStatic().descriptor;
2959  }
2960  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2961  return GetMetadataStatic().reflection;
2962  }
2963  static const ConstraintProto& default_instance();
2964 
2966  kBoolOr = 3,
2970  kIntDiv = 7,
2971  kIntMod = 8,
2972  kIntMax = 9,
2973  kIntMin = 10,
2974  kIntProd = 11,
2975  kLinear = 12,
2976  kAllDiff = 13,
2977  kElement = 14,
2978  kCircuit = 15,
2979  kRoutes = 23,
2981  kTable = 16,
2983  kInverse = 18,
2990  };
2991 
2992  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2994  return reinterpret_cast<const ConstraintProto*>(
2996  }
2997  static constexpr int kIndexInFileMessages =
2998  17;
2999 
3000  friend void swap(ConstraintProto& a, ConstraintProto& b) {
3001  a.Swap(&b);
3002  }
3003  inline void Swap(ConstraintProto* other) {
3004  if (other == this) return;
3005  InternalSwap(other);
3006  }
3007 
3008  // implements Message ----------------------------------------------
3009 
3010  inline ConstraintProto* New() const final {
3011  return CreateMaybeMessage<ConstraintProto>(nullptr);
3012  }
3013 
3014  ConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3015  return CreateMaybeMessage<ConstraintProto>(arena);
3016  }
3017  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3018  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3019  void CopyFrom(const ConstraintProto& from);
3020  void MergeFrom(const ConstraintProto& from);
3021  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3022  bool IsInitialized() const final;
3023 
3024  size_t ByteSizeLong() const final;
3025  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3026  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3027  #else
3029  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
3030  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3032  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
3033  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
3034  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
3035  int GetCachedSize() const final { return _cached_size_.Get(); }
3036 
3037  private:
3038  inline void SharedCtor();
3039  inline void SharedDtor();
3040  void SetCachedSize(int size) const final;
3041  void InternalSwap(ConstraintProto* other);
3042  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3043  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3044  return "operations_research.sat.ConstraintProto";
3045  }
3046  private:
3047  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3048  return nullptr;
3049  }
3050  inline void* MaybeArenaPtr() const {
3051  return nullptr;
3052  }
3053  public:
3054 
3055  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3056  private:
3057  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3058  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3060  }
3061 
3062  public:
3063 
3064  // nested types ----------------------------------------------------
3065 
3066  // accessors -------------------------------------------------------
3067 
3068  enum : int {
3094  };
3095  // repeated int32 enforcement_literal = 2;
3096  int enforcement_literal_size() const;
3098  ::PROTOBUF_NAMESPACE_ID::int32 enforcement_literal(int index) const;
3099  void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3100  void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value);
3101  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3102  enforcement_literal() const;
3103  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3105 
3106  // string name = 1;
3107  void clear_name();
3108  const std::string& name() const;
3109  void set_name(const std::string& value);
3110  void set_name(std::string&& value);
3111  void set_name(const char* value);
3112  void set_name(const char* value, size_t size);
3113  std::string* mutable_name();
3114  std::string* release_name();
3115  void set_allocated_name(std::string* name);
3116 
3117  // .operations_research.sat.BoolArgumentProto bool_or = 3;
3118  bool has_bool_or() const;
3119  void clear_bool_or();
3120  const ::operations_research::sat::BoolArgumentProto& bool_or() const;
3124 
3125  // .operations_research.sat.BoolArgumentProto bool_and = 4;
3126  bool has_bool_and() const;
3127  void clear_bool_and();
3128  const ::operations_research::sat::BoolArgumentProto& bool_and() const;
3132 
3133  // .operations_research.sat.BoolArgumentProto at_most_one = 26;
3134  bool has_at_most_one() const;
3135  void clear_at_most_one();
3136  const ::operations_research::sat::BoolArgumentProto& at_most_one() const;
3140 
3141  // .operations_research.sat.BoolArgumentProto bool_xor = 5;
3142  bool has_bool_xor() const;
3143  void clear_bool_xor();
3144  const ::operations_research::sat::BoolArgumentProto& bool_xor() const;
3148 
3149  // .operations_research.sat.IntegerArgumentProto int_div = 7;
3150  bool has_int_div() const;
3151  void clear_int_div();
3152  const ::operations_research::sat::IntegerArgumentProto& int_div() const;
3156 
3157  // .operations_research.sat.IntegerArgumentProto int_mod = 8;
3158  bool has_int_mod() const;
3159  void clear_int_mod();
3160  const ::operations_research::sat::IntegerArgumentProto& int_mod() const;
3164 
3165  // .operations_research.sat.IntegerArgumentProto int_max = 9;
3166  bool has_int_max() const;
3167  void clear_int_max();
3168  const ::operations_research::sat::IntegerArgumentProto& int_max() const;
3172 
3173  // .operations_research.sat.IntegerArgumentProto int_min = 10;
3174  bool has_int_min() const;
3175  void clear_int_min();
3176  const ::operations_research::sat::IntegerArgumentProto& int_min() const;
3180 
3181  // .operations_research.sat.IntegerArgumentProto int_prod = 11;
3182  bool has_int_prod() const;
3183  void clear_int_prod();
3184  const ::operations_research::sat::IntegerArgumentProto& int_prod() const;
3188 
3189  // .operations_research.sat.LinearConstraintProto linear = 12;
3190  bool has_linear() const;
3191  void clear_linear();
3192  const ::operations_research::sat::LinearConstraintProto& linear() const;
3196 
3197  // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
3198  bool has_all_diff() const;
3199  void clear_all_diff();
3200  const ::operations_research::sat::AllDifferentConstraintProto& all_diff() const;
3204 
3205  // .operations_research.sat.ElementConstraintProto element = 14;
3206  bool has_element() const;
3207  void clear_element();
3208  const ::operations_research::sat::ElementConstraintProto& element() const;
3212 
3213  // .operations_research.sat.CircuitConstraintProto circuit = 15;
3214  bool has_circuit() const;
3215  void clear_circuit();
3216  const ::operations_research::sat::CircuitConstraintProto& circuit() const;
3220 
3221  // .operations_research.sat.RoutesConstraintProto routes = 23;
3222  bool has_routes() const;
3223  void clear_routes();
3224  const ::operations_research::sat::RoutesConstraintProto& routes() const;
3228 
3229  // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
3230  bool has_circuit_covering() const;
3231  void clear_circuit_covering();
3232  const ::operations_research::sat::CircuitCoveringConstraintProto& circuit_covering() const;
3236 
3237  // .operations_research.sat.TableConstraintProto table = 16;
3238  bool has_table() const;
3239  void clear_table();
3240  const ::operations_research::sat::TableConstraintProto& table() const;
3244 
3245  // .operations_research.sat.AutomatonConstraintProto automaton = 17;
3246  bool has_automaton() const;
3247  void clear_automaton();
3248  const ::operations_research::sat::AutomatonConstraintProto& automaton() const;
3252 
3253  // .operations_research.sat.InverseConstraintProto inverse = 18;
3254  bool has_inverse() const;
3255  void clear_inverse();
3256  const ::operations_research::sat::InverseConstraintProto& inverse() const;
3260 
3261  // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
3262  bool has_reservoir() const;
3263  void clear_reservoir();
3264  const ::operations_research::sat::ReservoirConstraintProto& reservoir() const;
3268 
3269  // .operations_research.sat.IntervalConstraintProto interval = 19;
3270  bool has_interval() const;
3271  void clear_interval();
3272  const ::operations_research::sat::IntervalConstraintProto& interval() const;
3276 
3277  // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
3278  bool has_no_overlap() const;
3279  void clear_no_overlap();
3280  const ::operations_research::sat::NoOverlapConstraintProto& no_overlap() const;
3284 
3285  // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
3286  bool has_no_overlap_2d() const;
3287  void clear_no_overlap_2d();
3288  const ::operations_research::sat::NoOverlap2DConstraintProto& no_overlap_2d() const;
3292 
3293  // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
3294  bool has_cumulative() const;
3295  void clear_cumulative();
3296  const ::operations_research::sat::CumulativeConstraintProto& cumulative() const;
3300 
3301  void clear_constraint();
3303  // @@protoc_insertion_point(class_scope:operations_research.sat.ConstraintProto)
3304  private:
3305  class _Internal;
3306  void set_has_bool_or();
3307  void set_has_bool_and();
3308  void set_has_at_most_one();
3309  void set_has_bool_xor();
3310  void set_has_int_div();
3311  void set_has_int_mod();
3312  void set_has_int_max();
3313  void set_has_int_min();
3314  void set_has_int_prod();
3315  void set_has_linear();
3316  void set_has_all_diff();
3317  void set_has_element();
3318  void set_has_circuit();
3319  void set_has_routes();
3320  void set_has_circuit_covering();
3321  void set_has_table();
3322  void set_has_automaton();
3323  void set_has_inverse();
3324  void set_has_reservoir();
3325  void set_has_interval();
3326  void set_has_no_overlap();
3327  void set_has_no_overlap_2d();
3328  void set_has_cumulative();
3329 
3330  inline bool has_constraint() const;
3331  inline void clear_has_constraint();
3332 
3333  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3334  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > enforcement_literal_;
3335  mutable std::atomic<int> _enforcement_literal_cached_byte_size_;
3336  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
3337  union ConstraintUnion {
3338  ConstraintUnion() {}
3362  } constraint_;
3363  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3364  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
3365 
3366  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3367 };
3368 // -------------------------------------------------------------------
3369 
3371  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpObjectiveProto) */ {
3372  public:
3373  CpObjectiveProto();
3374  virtual ~CpObjectiveProto();
3375 
3376  CpObjectiveProto(const CpObjectiveProto& from);
3378  : CpObjectiveProto() {
3379  *this = ::std::move(from);
3380  }
3381 
3383  CopyFrom(from);
3384  return *this;
3385  }
3386  inline CpObjectiveProto& operator=(CpObjectiveProto&& from) noexcept {
3387  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3388  if (this != &from) InternalSwap(&from);
3389  } else {
3390  CopyFrom(from);
3391  }
3392  return *this;
3393  }
3394 
3395  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3396  return GetDescriptor();
3397  }
3398  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3399  return GetMetadataStatic().descriptor;
3400  }
3401  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3402  return GetMetadataStatic().reflection;
3403  }
3404  static const CpObjectiveProto& default_instance();
3405 
3406  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3408  return reinterpret_cast<const CpObjectiveProto*>(
3410  }
3411  static constexpr int kIndexInFileMessages =
3412  18;
3413 
3415  a.Swap(&b);
3416  }
3417  inline void Swap(CpObjectiveProto* other) {
3418  if (other == this) return;
3419  InternalSwap(other);
3420  }
3421 
3422  // implements Message ----------------------------------------------
3423 
3424  inline CpObjectiveProto* New() const final {
3425  return CreateMaybeMessage<CpObjectiveProto>(nullptr);
3426  }
3427 
3428  CpObjectiveProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3429  return CreateMaybeMessage<CpObjectiveProto>(arena);
3430  }
3431  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3432  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3433  void CopyFrom(const CpObjectiveProto& from);
3434  void MergeFrom(const CpObjectiveProto& from);
3435  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3436  bool IsInitialized() const final;
3437 
3438  size_t ByteSizeLong() const final;
3439  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3440  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3441  #else
3443  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
3444  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3446  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
3447  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
3448  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
3449  int GetCachedSize() const final { return _cached_size_.Get(); }
3450 
3451  private:
3452  inline void SharedCtor();
3453  inline void SharedDtor();
3454  void SetCachedSize(int size) const final;
3455  void InternalSwap(CpObjectiveProto* other);
3456  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3457  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3458  return "operations_research.sat.CpObjectiveProto";
3459  }
3460  private:
3461  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3462  return nullptr;
3463  }
3464  inline void* MaybeArenaPtr() const {
3465  return nullptr;
3466  }
3467  public:
3468 
3469  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3470  private:
3471  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3472  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3474  }
3475 
3476  public:
3477 
3478  // nested types ----------------------------------------------------
3479 
3480  // accessors -------------------------------------------------------
3481 
3482  enum : int {
3488  };
3489  // repeated int32 vars = 1;
3490  int vars_size() const;
3491  void clear_vars();
3492  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
3493  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3494  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3495  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3496  vars() const;
3497  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3498  mutable_vars();
3499 
3500  // repeated int64 coeffs = 4;
3501  int coeffs_size() const;
3502  void clear_coeffs();
3503  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
3504  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3505  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
3506  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3507  coeffs() const;
3508  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3509  mutable_coeffs();
3510 
3511  // repeated int64 domain = 5;
3512  int domain_size() const;
3513  void clear_domain();
3514  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
3515  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3516  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
3517  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3518  domain() const;
3519  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3520  mutable_domain();
3521 
3522  // double offset = 2;
3523  void clear_offset();
3524  double offset() const;
3525  void set_offset(double value);
3526 
3527  // double scaling_factor = 3;
3528  void clear_scaling_factor();
3529  double scaling_factor() const;
3530  void set_scaling_factor(double value);
3531 
3532  // @@protoc_insertion_point(class_scope:operations_research.sat.CpObjectiveProto)
3533  private:
3534  class _Internal;
3535 
3536  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3537  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
3538  mutable std::atomic<int> _vars_cached_byte_size_;
3539  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
3540  mutable std::atomic<int> _coeffs_cached_byte_size_;
3541  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
3542  mutable std::atomic<int> _domain_cached_byte_size_;
3543  double offset_;
3544  double scaling_factor_;
3545  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3546  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3547 };
3548 // -------------------------------------------------------------------
3549 
3551  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto.AffineTransformation) */ {
3552  public:
3555 
3559  *this = ::std::move(from);
3560  }
3561 
3563  CopyFrom(from);
3564  return *this;
3565  }
3567  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3568  if (this != &from) InternalSwap(&from);
3569  } else {
3570  CopyFrom(from);
3571  }
3572  return *this;
3573  }
3574 
3575  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3576  return GetDescriptor();
3577  }
3578  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3579  return GetMetadataStatic().descriptor;
3580  }
3581  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3582  return GetMetadataStatic().reflection;
3583  }
3585 
3586  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3588  return reinterpret_cast<const DecisionStrategyProto_AffineTransformation*>(
3590  }
3591  static constexpr int kIndexInFileMessages =
3592  19;
3593 
3595  a.Swap(&b);
3596  }
3598  if (other == this) return;
3599  InternalSwap(other);
3600  }
3601 
3602  // implements Message ----------------------------------------------
3603 
3605  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(nullptr);
3606  }
3607 
3608  DecisionStrategyProto_AffineTransformation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3609  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(arena);
3610  }
3611  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3612  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3615  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3616  bool IsInitialized() const final;
3617 
3618  size_t ByteSizeLong() const final;
3619  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3620  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3621  #else
3623  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
3624  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3626  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
3627  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
3628  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
3629  int GetCachedSize() const final { return _cached_size_.Get(); }
3630 
3631  private:
3632  inline void SharedCtor();
3633  inline void SharedDtor();
3634  void SetCachedSize(int size) const final;
3635  void InternalSwap(DecisionStrategyProto_AffineTransformation* other);
3636  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3637  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3638  return "operations_research.sat.DecisionStrategyProto.AffineTransformation";
3639  }
3640  private:
3641  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3642  return nullptr;
3643  }
3644  inline void* MaybeArenaPtr() const {
3645  return nullptr;
3646  }
3647  public:
3648 
3649  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3650  private:
3651  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3652  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3654  }
3655 
3656  public:
3657 
3658  // nested types ----------------------------------------------------
3659 
3660  // accessors -------------------------------------------------------
3661 
3662  enum : int {
3666  };
3667  // int64 offset = 2;
3668  void clear_offset();
3669  ::PROTOBUF_NAMESPACE_ID::int64 offset() const;
3670  void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
3671 
3672  // int64 positive_coeff = 3;
3673  void clear_positive_coeff();
3674  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const;
3675  void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value);
3676 
3677  // int32 var = 1;
3678  void clear_var();
3679  ::PROTOBUF_NAMESPACE_ID::int32 var() const;
3680  void set_var(::PROTOBUF_NAMESPACE_ID::int32 value);
3681 
3682  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto.AffineTransformation)
3683  private:
3684  class _Internal;
3685 
3686  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3687  ::PROTOBUF_NAMESPACE_ID::int64 offset_;
3688  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff_;
3689  ::PROTOBUF_NAMESPACE_ID::int32 var_;
3690  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3691  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3692 };
3693 // -------------------------------------------------------------------
3694 
3696  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto) */ {
3697  public:
3699  virtual ~DecisionStrategyProto();
3700 
3703  : DecisionStrategyProto() {
3704  *this = ::std::move(from);
3705  }
3706 
3708  CopyFrom(from);
3709  return *this;
3710  }
3712  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3713  if (this != &from) InternalSwap(&from);
3714  } else {
3715  CopyFrom(from);
3716  }
3717  return *this;
3718  }
3719 
3720  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3721  return GetDescriptor();
3722  }
3723  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3724  return GetMetadataStatic().descriptor;
3725  }
3726  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3727  return GetMetadataStatic().reflection;
3728  }
3729  static const DecisionStrategyProto& default_instance();
3730 
3731  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3733  return reinterpret_cast<const DecisionStrategyProto*>(
3735  }
3736  static constexpr int kIndexInFileMessages =
3737  20;
3738 
3740  a.Swap(&b);
3741  }
3742  inline void Swap(DecisionStrategyProto* other) {
3743  if (other == this) return;
3744  InternalSwap(other);
3745  }
3746 
3747  // implements Message ----------------------------------------------
3748 
3749  inline DecisionStrategyProto* New() const final {
3750  return CreateMaybeMessage<DecisionStrategyProto>(nullptr);
3751  }
3752 
3753  DecisionStrategyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3754  return CreateMaybeMessage<DecisionStrategyProto>(arena);
3755  }
3756  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3757  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3758  void CopyFrom(const DecisionStrategyProto& from);
3759  void MergeFrom(const DecisionStrategyProto& from);
3760  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3761  bool IsInitialized() const final;
3762 
3763  size_t ByteSizeLong() const final;
3764  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3765  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3766  #else
3768  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
3769  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
3771  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
3772  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
3773  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
3774  int GetCachedSize() const final { return _cached_size_.Get(); }
3775 
3776  private:
3777  inline void SharedCtor();
3778  inline void SharedDtor();
3779  void SetCachedSize(int size) const final;
3780  void InternalSwap(DecisionStrategyProto* other);
3781  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3782  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3783  return "operations_research.sat.DecisionStrategyProto";
3784  }
3785  private:
3786  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3787  return nullptr;
3788  }
3789  inline void* MaybeArenaPtr() const {
3790  return nullptr;
3791  }
3792  public:
3793 
3794  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3795  private:
3796  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3797  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3799  }
3800 
3801  public:
3802 
3803  // nested types ----------------------------------------------------
3804 
3806 
3818  static inline bool VariableSelectionStrategy_IsValid(int value) {
3820  }
3827  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
3830  }
3831  template<typename T>
3832  static inline const std::string& VariableSelectionStrategy_Name(T enum_t_value) {
3833  static_assert(::std::is_same<T, VariableSelectionStrategy>::value ||
3834  ::std::is_integral<T>::value,
3835  "Incorrect type passed to function VariableSelectionStrategy_Name.");
3837  }
3838  static inline bool VariableSelectionStrategy_Parse(const std::string& name,
3839  VariableSelectionStrategy* value) {
3841  }
3842 
3852  static inline bool DomainReductionStrategy_IsValid(int value) {
3854  }
3859  static constexpr int DomainReductionStrategy_ARRAYSIZE =
3861  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
3864  }
3865  template<typename T>
3866  static inline const std::string& DomainReductionStrategy_Name(T enum_t_value) {
3867  static_assert(::std::is_same<T, DomainReductionStrategy>::value ||
3868  ::std::is_integral<T>::value,
3869  "Incorrect type passed to function DomainReductionStrategy_Name.");
3871  }
3872  static inline bool DomainReductionStrategy_Parse(const std::string& name,
3873  DomainReductionStrategy* value) {
3875  }
3876 
3877  // accessors -------------------------------------------------------
3878 
3879  enum : int {
3884  };
3885  // repeated int32 variables = 1;
3886  int variables_size() const;
3887  void clear_variables();
3888  ::PROTOBUF_NAMESPACE_ID::int32 variables(int index) const;
3889  void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3890  void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
3891  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3892  variables() const;
3893  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3895 
3896  // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
3897  int transformations_size() const;
3898  void clear_transformations();
3900  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
3902  const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& transformations(int index) const;
3904  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
3905  transformations() const;
3906 
3907  // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
3911 
3912  // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
3916 
3917  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto)
3918  private:
3919  class _Internal;
3920 
3921  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3922  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > variables_;
3923  mutable std::atomic<int> _variables_cached_byte_size_;
3924  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > transformations_;
3925  int variable_selection_strategy_;
3926  int domain_reduction_strategy_;
3927  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3928  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3929 };
3930 // -------------------------------------------------------------------
3931 
3933  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.PartialVariableAssignment) */ {
3934  public:
3936  virtual ~PartialVariableAssignment();
3937 
3941  *this = ::std::move(from);
3942  }
3943 
3945  CopyFrom(from);
3946  return *this;
3947  }
3949  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3950  if (this != &from) InternalSwap(&from);
3951  } else {
3952  CopyFrom(from);
3953  }
3954  return *this;
3955  }
3956 
3957  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3958  return GetDescriptor();
3959  }
3960  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3961  return GetMetadataStatic().descriptor;
3962  }
3963  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3964  return GetMetadataStatic().reflection;
3965  }
3967 
3968  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3970  return reinterpret_cast<const PartialVariableAssignment*>(
3972  }
3973  static constexpr int kIndexInFileMessages =
3974  21;
3975 
3977  a.Swap(&b);
3978  }
3979  inline void Swap(PartialVariableAssignment* other) {
3980  if (other == this) return;
3981  InternalSwap(other);
3982  }
3983 
3984  // implements Message ----------------------------------------------
3985 
3986  inline PartialVariableAssignment* New() const final {
3987  return CreateMaybeMessage<PartialVariableAssignment>(nullptr);
3988  }
3989 
3990  PartialVariableAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3991  return CreateMaybeMessage<PartialVariableAssignment>(arena);
3992  }
3993  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3994  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3995  void CopyFrom(const PartialVariableAssignment& from);
3996  void MergeFrom(const PartialVariableAssignment& from);
3997  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3998  bool IsInitialized() const final;
3999 
4000  size_t ByteSizeLong() const final;
4001  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4002  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4003  #else
4005  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
4006  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4008  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
4009  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
4010  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
4011  int GetCachedSize() const final { return _cached_size_.Get(); }
4012 
4013  private:
4014  inline void SharedCtor();
4015  inline void SharedDtor();
4016  void SetCachedSize(int size) const final;
4017  void InternalSwap(PartialVariableAssignment* other);
4018  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4019  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4020  return "operations_research.sat.PartialVariableAssignment";
4021  }
4022  private:
4023  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4024  return nullptr;
4025  }
4026  inline void* MaybeArenaPtr() const {
4027  return nullptr;
4028  }
4029  public:
4030 
4031  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4032  private:
4033  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4034  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4036  }
4037 
4038  public:
4039 
4040  // nested types ----------------------------------------------------
4041 
4042  // accessors -------------------------------------------------------
4043 
4044  enum : int {
4047  };
4048  // repeated int32 vars = 1;
4049  int vars_size() const;
4050  void clear_vars();
4051  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
4052  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4053  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4054  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4055  vars() const;
4056  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4057  mutable_vars();
4058 
4059  // repeated int64 values = 2;
4060  int values_size() const;
4061  void clear_values();
4062  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
4063  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4064  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
4065  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4066  values() const;
4067  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4068  mutable_values();
4069 
4070  // @@protoc_insertion_point(class_scope:operations_research.sat.PartialVariableAssignment)
4071  private:
4072  class _Internal;
4073 
4074  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4075  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
4076  mutable std::atomic<int> _vars_cached_byte_size_;
4077  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
4078  mutable std::atomic<int> _values_cached_byte_size_;
4079  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4080  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4081 };
4082 // -------------------------------------------------------------------
4083 
4085  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpModelProto) */ {
4086  public:
4087  CpModelProto();
4088  virtual ~CpModelProto();
4089 
4090  CpModelProto(const CpModelProto& from);
4091  CpModelProto(CpModelProto&& from) noexcept
4092  : CpModelProto() {
4093  *this = ::std::move(from);
4094  }
4095 
4096  inline CpModelProto& operator=(const CpModelProto& from) {
4097  CopyFrom(from);
4098  return *this;
4099  }
4100  inline CpModelProto& operator=(CpModelProto&& from) noexcept {
4101  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4102  if (this != &from) InternalSwap(&from);
4103  } else {
4104  CopyFrom(from);
4105  }
4106  return *this;
4107  }
4108 
4109  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4110  return GetDescriptor();
4111  }
4112  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4113  return GetMetadataStatic().descriptor;
4114  }
4115  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4116  return GetMetadataStatic().reflection;
4117  }
4118  static const CpModelProto& default_instance();
4119 
4120  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4121  static inline const CpModelProto* internal_default_instance() {
4122  return reinterpret_cast<const CpModelProto*>(
4124  }
4125  static constexpr int kIndexInFileMessages =
4126  22;
4127 
4128  friend void swap(CpModelProto& a, CpModelProto& b) {
4129  a.Swap(&b);
4130  }
4131  inline void Swap(CpModelProto* other) {
4132  if (other == this) return;
4133  InternalSwap(other);
4134  }
4135 
4136  // implements Message ----------------------------------------------
4137 
4138  inline CpModelProto* New() const final {
4139  return CreateMaybeMessage<CpModelProto>(nullptr);
4140  }
4141 
4142  CpModelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4143  return CreateMaybeMessage<CpModelProto>(arena);
4144  }
4145  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4146  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4147  void CopyFrom(const CpModelProto& from);
4148  void MergeFrom(const CpModelProto& from);
4149  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4150  bool IsInitialized() const final;
4151 
4152  size_t ByteSizeLong() const final;
4153  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4154  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4155  #else
4157  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
4158  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4160  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
4161  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
4162  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
4163  int GetCachedSize() const final { return _cached_size_.Get(); }
4164 
4165  private:
4166  inline void SharedCtor();
4167  inline void SharedDtor();
4168  void SetCachedSize(int size) const final;
4169  void InternalSwap(CpModelProto* other);
4170  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4171  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4172  return "operations_research.sat.CpModelProto";
4173  }
4174  private:
4175  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4176  return nullptr;
4177  }
4178  inline void* MaybeArenaPtr() const {
4179  return nullptr;
4180  }
4181  public:
4182 
4183  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4184  private:
4185  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4186  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4188  }
4189 
4190  public:
4191 
4192  // nested types ----------------------------------------------------
4193 
4194  // accessors -------------------------------------------------------
4195 
4196  enum : int {
4203  };
4204  // repeated .operations_research.sat.IntegerVariableProto variables = 2;
4205  int variables_size() const;
4206  void clear_variables();
4208  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
4210  const ::operations_research::sat::IntegerVariableProto& variables(int index) const;
4212  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
4213  variables() const;
4214 
4215  // repeated .operations_research.sat.ConstraintProto constraints = 3;
4216  int constraints_size() const;
4217  void clear_constraints();
4219  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
4221  const ::operations_research::sat::ConstraintProto& constraints(int index) const;
4223  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
4224  constraints() const;
4225 
4226  // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
4227  int search_strategy_size() const;
4228  void clear_search_strategy();
4230  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
4232  const ::operations_research::sat::DecisionStrategyProto& search_strategy(int index) const;
4234  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
4235  search_strategy() const;
4236 
4237  // string name = 1;
4238  void clear_name();
4239  const std::string& name() const;
4240  void set_name(const std::string& value);
4241  void set_name(std::string&& value);
4242  void set_name(const char* value);
4243  void set_name(const char* value, size_t size);
4244  std::string* mutable_name();
4245  std::string* release_name();
4246  void set_allocated_name(std::string* name);
4247 
4248  // .operations_research.sat.CpObjectiveProto objective = 4;
4249  bool has_objective() const;
4250  void clear_objective();
4251  const ::operations_research::sat::CpObjectiveProto& objective() const;
4255 
4256  // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
4257  bool has_solution_hint() const;
4258  void clear_solution_hint();
4259  const ::operations_research::sat::PartialVariableAssignment& solution_hint() const;
4263 
4264  // @@protoc_insertion_point(class_scope:operations_research.sat.CpModelProto)
4265  private:
4266  class _Internal;
4267 
4268  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4269  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > variables_;
4270  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > constraints_;
4271  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > search_strategy_;
4272  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
4275  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4276  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4277 };
4278 // -------------------------------------------------------------------
4279 
4281  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpSolverResponse) */ {
4282  public:
4283  CpSolverResponse();
4284  virtual ~CpSolverResponse();
4285 
4286  CpSolverResponse(const CpSolverResponse& from);
4288  : CpSolverResponse() {
4289  *this = ::std::move(from);
4290  }
4291 
4293  CopyFrom(from);
4294  return *this;
4295  }
4296  inline CpSolverResponse& operator=(CpSolverResponse&& from) noexcept {
4297  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4298  if (this != &from) InternalSwap(&from);
4299  } else {
4300  CopyFrom(from);
4301  }
4302  return *this;
4303  }
4304 
4305  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4306  return GetDescriptor();
4307  }
4308  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4309  return GetMetadataStatic().descriptor;
4310  }
4311  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4312  return GetMetadataStatic().reflection;
4313  }
4314  static const CpSolverResponse& default_instance();
4315 
4316  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4318  return reinterpret_cast<const CpSolverResponse*>(
4320  }
4321  static constexpr int kIndexInFileMessages =
4322  23;
4323 
4325  a.Swap(&b);
4326  }
4327  inline void Swap(CpSolverResponse* other) {
4328  if (other == this) return;
4329  InternalSwap(other);
4330  }
4331 
4332  // implements Message ----------------------------------------------
4333 
4334  inline CpSolverResponse* New() const final {
4335  return CreateMaybeMessage<CpSolverResponse>(nullptr);
4336  }
4337 
4338  CpSolverResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4339  return CreateMaybeMessage<CpSolverResponse>(arena);
4340  }
4341  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4342  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4343  void CopyFrom(const CpSolverResponse& from);
4344  void MergeFrom(const CpSolverResponse& from);
4345  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4346  bool IsInitialized() const final;
4347 
4348  size_t ByteSizeLong() const final;
4349  #if GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4350  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4351  #else
4353  ::PROTOBUF_NAMESPACE_ID::io::CodedInputStream* input) final;
4354  #endif // GOOGLE_PROTOBUF_ENABLE_EXPERIMENTAL_PARSER
4356  ::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream* output) const final;
4357  ::PROTOBUF_NAMESPACE_ID::uint8* InternalSerializeWithCachedSizesToArray(
4358  ::PROTOBUF_NAMESPACE_ID::uint8* target) const final;
4359  int GetCachedSize() const final { return _cached_size_.Get(); }
4360 
4361  private:
4362  inline void SharedCtor();
4363  inline void SharedDtor();
4364  void SetCachedSize(int size) const final;
4365  void InternalSwap(CpSolverResponse* other);
4366  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4367  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4368  return "operations_research.sat.CpSolverResponse";
4369  }
4370  private:
4371  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4372  return nullptr;
4373  }
4374  inline void* MaybeArenaPtr() const {
4375  return nullptr;
4376  }
4377  public:
4378 
4379  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4380  private:
4381  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4382  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4384  }
4385 
4386  public:
4387 
4388  // nested types ----------------------------------------------------
4389 
4390  // accessors -------------------------------------------------------
4391 
4392  enum : int {
4411  };
4412  // repeated int64 solution = 2;
4413  int solution_size() const;
4414  void clear_solution();
4415  ::PROTOBUF_NAMESPACE_ID::int64 solution(int index) const;
4416  void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4417  void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value);
4418  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4419  solution() const;
4420  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4421  mutable_solution();
4422 
4423  // repeated int64 solution_lower_bounds = 18;
4424  int solution_lower_bounds_size() const;
4426  ::PROTOBUF_NAMESPACE_ID::int64 solution_lower_bounds(int index) const;
4427  void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4428  void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
4429  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4430  solution_lower_bounds() const;
4431  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4433 
4434  // repeated int64 solution_upper_bounds = 19;
4435  int solution_upper_bounds_size() const;
4437  ::PROTOBUF_NAMESPACE_ID::int64 solution_upper_bounds(int index) const;
4438  void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4439  void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
4440  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4441  solution_upper_bounds() const;
4442  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4444 
4445  // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
4446  int tightened_variables_size() const;
4449  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
4451  const ::operations_research::sat::IntegerVariableProto& tightened_variables(int index) const;
4453  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
4454  tightened_variables() const;
4455 
4456  // string solution_info = 20;
4457  void clear_solution_info();
4458  const std::string& solution_info() const;
4459  void set_solution_info(const std::string& value);
4460  void set_solution_info(std::string&& value);
4461  void set_solution_info(const char* value);
4462  void set_solution_info(const char* value, size_t size);
4463  std::string* mutable_solution_info();
4464  std::string* release_solution_info();
4465  void set_allocated_solution_info(std::string* solution_info);
4466 
4467  // double objective_value = 3;
4468  void clear_objective_value();
4469  double objective_value() const;
4470  void set_objective_value(double value);
4471 
4472  // .operations_research.sat.CpSolverStatus status = 1;
4473  void clear_status();
4476 
4477  // bool all_solutions_were_found = 5;
4479  bool all_solutions_were_found() const;
4480  void set_all_solutions_were_found(bool value);
4481 
4482  // double best_objective_bound = 4;
4484  double best_objective_bound() const;
4485  void set_best_objective_bound(double value);
4486 
4487  // int64 num_booleans = 10;
4488  void clear_num_booleans();
4489  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const;
4490  void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value);
4491 
4492  // int64 num_conflicts = 11;
4493  void clear_num_conflicts();
4494  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const;
4495  void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
4496 
4497  // int64 num_branches = 12;
4498  void clear_num_branches();
4499  ::PROTOBUF_NAMESPACE_ID::int64 num_branches() const;
4500  void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value);
4501 
4502  // int64 num_binary_propagations = 13;
4504  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const;
4505  void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
4506 
4507  // int64 num_integer_propagations = 14;
4509  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const;
4510  void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
4511 
4512  // double wall_time = 15;
4513  void clear_wall_time();
4514  double wall_time() const;
4515  void set_wall_time(double value);
4516 
4517  // double user_time = 16;
4518  void clear_user_time();
4519  double user_time() const;
4520  void set_user_time(double value);
4521 
4522  // double deterministic_time = 17;
4523  void clear_deterministic_time();
4524  double deterministic_time() const;
4525  void set_deterministic_time(double value);
4526 
4527  // double primal_integral = 22;
4528  void clear_primal_integral();
4529  double primal_integral() const;
4530  void set_primal_integral(double value);
4531 
4532  // @@protoc_insertion_point(class_scope:operations_research.sat.CpSolverResponse)
4533  private:
4534  class _Internal;
4535 
4536  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4537  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_;
4538  mutable std::atomic<int> _solution_cached_byte_size_;
4539  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_lower_bounds_;
4540  mutable std::atomic<int> _solution_lower_bounds_cached_byte_size_;
4541  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_upper_bounds_;
4542  mutable std::atomic<int> _solution_upper_bounds_cached_byte_size_;
4543  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > tightened_variables_;
4544  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr solution_info_;
4545  double objective_value_;
4546  int status_;
4547  bool all_solutions_were_found_;
4548  double best_objective_bound_;
4549  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans_;
4550  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts_;
4551  ::PROTOBUF_NAMESPACE_ID::int64 num_branches_;
4552  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations_;
4553  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations_;
4554  double wall_time_;
4555  double user_time_;
4556  double deterministic_time_;
4557  double primal_integral_;
4558  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4559  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4560 };
4561 // ===================================================================
4562 
4563 
4564 // ===================================================================
4565 
4566 #ifdef __GNUC__
4567  #pragma GCC diagnostic push
4568  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
4569 #endif // __GNUC__
4570 // IntegerVariableProto
4571 
4572 // string name = 1;
4574  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4575 }
4576 inline const std::string& IntegerVariableProto::name() const {
4577  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.name)
4578  return name_.GetNoArena();
4579 }
4580 inline void IntegerVariableProto::set_name(const std::string& value) {
4581 
4582  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
4583  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.name)
4584 }
4585 inline void IntegerVariableProto::set_name(std::string&& value) {
4586 
4587  name_.SetNoArena(
4588  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
4589  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.IntegerVariableProto.name)
4590 }
4591 inline void IntegerVariableProto::set_name(const char* value) {
4592  GOOGLE_DCHECK(value != nullptr);
4593 
4594  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
4595  // @@protoc_insertion_point(field_set_char:operations_research.sat.IntegerVariableProto.name)
4596 }
4597 inline void IntegerVariableProto::set_name(const char* value, size_t size) {
4598 
4599  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
4600  ::std::string(reinterpret_cast<const char*>(value), size));
4601  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.IntegerVariableProto.name)
4602 }
4603 inline std::string* IntegerVariableProto::mutable_name() {
4604 
4605  // @@protoc_insertion_point(field_mutable:operations_research.sat.IntegerVariableProto.name)
4606  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4607 }
4608 inline std::string* IntegerVariableProto::release_name() {
4609  // @@protoc_insertion_point(field_release:operations_research.sat.IntegerVariableProto.name)
4610 
4611  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4612 }
4613 inline void IntegerVariableProto::set_allocated_name(std::string* name) {
4614  if (name != nullptr) {
4615 
4616  } else {
4617 
4618  }
4619  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
4620  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.IntegerVariableProto.name)
4621 }
4622 
4623 // repeated int64 domain = 2;
4625  return domain_.size();
4626 }
4628  domain_.Clear();
4629 }
4630 inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerVariableProto::domain(int index) const {
4631  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.domain)
4632  return domain_.Get(index);
4633 }
4634 inline void IntegerVariableProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
4635  domain_.Set(index, value);
4636  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.domain)
4637 }
4638 inline void IntegerVariableProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
4639  domain_.Add(value);
4640  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerVariableProto.domain)
4641 }
4642 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4644  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerVariableProto.domain)
4645  return domain_;
4646 }
4647 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4649  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerVariableProto.domain)
4650  return &domain_;
4651 }
4652 
4653 // -------------------------------------------------------------------
4654 
4655 // BoolArgumentProto
4656 
4657 // repeated int32 literals = 1;
4659  return literals_.size();
4660 }
4662  literals_.Clear();
4663 }
4664 inline ::PROTOBUF_NAMESPACE_ID::int32 BoolArgumentProto::literals(int index) const {
4665  // @@protoc_insertion_point(field_get:operations_research.sat.BoolArgumentProto.literals)
4666  return literals_.Get(index);
4667 }
4668 inline void BoolArgumentProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4669  literals_.Set(index, value);
4670  // @@protoc_insertion_point(field_set:operations_research.sat.BoolArgumentProto.literals)
4671 }
4672 inline void BoolArgumentProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
4673  literals_.Add(value);
4674  // @@protoc_insertion_point(field_add:operations_research.sat.BoolArgumentProto.literals)
4675 }
4676 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4678  // @@protoc_insertion_point(field_list:operations_research.sat.BoolArgumentProto.literals)
4679  return literals_;
4680 }
4681 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4683  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.BoolArgumentProto.literals)
4684  return &literals_;
4685 }
4686 
4687 // -------------------------------------------------------------------
4688 
4689 // IntegerArgumentProto
4690 
4691 // int32 target = 1;
4693  target_ = 0;
4694 }
4695 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::target() const {
4696  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.target)
4697  return target_;
4698 }
4699 inline void IntegerArgumentProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
4700 
4701  target_ = value;
4702  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.target)
4703 }
4704 
4705 // repeated int32 vars = 2;
4707  return vars_.size();
4708 }
4710  vars_.Clear();
4711 }
4712 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::vars(int index) const {
4713  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.vars)
4714  return vars_.Get(index);
4715 }
4716 inline void IntegerArgumentProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4717  vars_.Set(index, value);
4718  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.vars)
4719 }
4720 inline void IntegerArgumentProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
4721  vars_.Add(value);
4722  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerArgumentProto.vars)
4723 }
4724 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4726  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerArgumentProto.vars)
4727  return vars_;
4728 }
4729 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4731  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerArgumentProto.vars)
4732  return &vars_;
4733 }
4734 
4735 // -------------------------------------------------------------------
4736 
4737 // AllDifferentConstraintProto
4738 
4739 // repeated int32 vars = 1;
4741  return vars_.size();
4742 }
4744  vars_.Clear();
4745 }
4746 inline ::PROTOBUF_NAMESPACE_ID::int32 AllDifferentConstraintProto::vars(int index) const {
4747  // @@protoc_insertion_point(field_get:operations_research.sat.AllDifferentConstraintProto.vars)
4748  return vars_.Get(index);
4749 }
4750 inline void AllDifferentConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4751  vars_.Set(index, value);
4752  // @@protoc_insertion_point(field_set:operations_research.sat.AllDifferentConstraintProto.vars)
4753 }
4754 inline void AllDifferentConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
4755  vars_.Add(value);
4756  // @@protoc_insertion_point(field_add:operations_research.sat.AllDifferentConstraintProto.vars)
4757 }
4758 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4760  // @@protoc_insertion_point(field_list:operations_research.sat.AllDifferentConstraintProto.vars)
4761  return vars_;
4762 }
4763 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4765  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AllDifferentConstraintProto.vars)
4766  return &vars_;
4767 }
4768 
4769 // -------------------------------------------------------------------
4770 
4771 // LinearConstraintProto
4772 
4773 // repeated int32 vars = 1;
4775  return vars_.size();
4776 }
4778  vars_.Clear();
4779 }
4780 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearConstraintProto::vars(int index) const {
4781  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.vars)
4782  return vars_.Get(index);
4783 }
4784 inline void LinearConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4785  vars_.Set(index, value);
4786  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.vars)
4787 }
4788 inline void LinearConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
4789  vars_.Add(value);
4790  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.vars)
4791 }
4792 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4794  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.vars)
4795  return vars_;
4796 }
4797 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4799  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.vars)
4800  return &vars_;
4801 }
4802 
4803 // repeated int64 coeffs = 2;
4805  return coeffs_.size();
4806 }
4808  coeffs_.Clear();
4809 }
4810 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::coeffs(int index) const {
4811  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.coeffs)
4812  return coeffs_.Get(index);
4813 }
4814 inline void LinearConstraintProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
4815  coeffs_.Set(index, value);
4816  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.coeffs)
4817 }
4818 inline void LinearConstraintProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
4819  coeffs_.Add(value);
4820  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.coeffs)
4821 }
4822 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4824  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.coeffs)
4825  return coeffs_;
4826 }
4827 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4829  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.coeffs)
4830  return &coeffs_;
4831 }
4832 
4833 // repeated int64 domain = 3;
4835  return domain_.size();
4836 }
4838  domain_.Clear();
4839 }
4840 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::domain(int index) const {
4841  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.domain)
4842  return domain_.Get(index);
4843 }
4844 inline void LinearConstraintProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
4845  domain_.Set(index, value);
4846  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.domain)
4847 }
4848 inline void LinearConstraintProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
4849  domain_.Add(value);
4850  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.domain)
4851 }
4852 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4854  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.domain)
4855  return domain_;
4856 }
4857 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4859  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.domain)
4860  return &domain_;
4861 }
4862 
4863 // -------------------------------------------------------------------
4864 
4865 // ElementConstraintProto
4866 
4867 // int32 index = 1;
4869  index_ = 0;
4870 }
4871 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::index() const {
4872  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.index)
4873  return index_;
4874 }
4875 inline void ElementConstraintProto::set_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
4876 
4877  index_ = value;
4878  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.index)
4879 }
4880 
4881 // int32 target = 2;
4883  target_ = 0;
4884 }
4885 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::target() const {
4886  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.target)
4887  return target_;
4888 }
4889 inline void ElementConstraintProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
4890 
4891  target_ = value;
4892  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.target)
4893 }
4894 
4895 // repeated int32 vars = 3;
4897  return vars_.size();
4898 }
4900  vars_.Clear();
4901 }
4902 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::vars(int index) const {
4903  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.vars)
4904  return vars_.Get(index);
4905 }
4906 inline void ElementConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4907  vars_.Set(index, value);
4908  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.vars)
4909 }
4910 inline void ElementConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
4911  vars_.Add(value);
4912  // @@protoc_insertion_point(field_add:operations_research.sat.ElementConstraintProto.vars)
4913 }
4914 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4916  // @@protoc_insertion_point(field_list:operations_research.sat.ElementConstraintProto.vars)
4917  return vars_;
4918 }
4919 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4921  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ElementConstraintProto.vars)
4922  return &vars_;
4923 }
4924 
4925 // -------------------------------------------------------------------
4926 
4927 // IntervalConstraintProto
4928 
4929 // int32 start = 1;
4931  start_ = 0;
4932 }
4933 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::start() const {
4934  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.start)
4935  return start_;
4936 }
4937 inline void IntervalConstraintProto::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
4938 
4939  start_ = value;
4940  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.start)
4941 }
4942 
4943 // int32 end = 2;
4945  end_ = 0;
4946 }
4947 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::end() const {
4948  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.end)
4949  return end_;
4950 }
4951 inline void IntervalConstraintProto::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) {
4952 
4953  end_ = value;
4954  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.end)
4955 }
4956 
4957 // int32 size = 3;
4959  size_ = 0;
4960 }
4961 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::size() const {
4962  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.size)
4963  return size_;
4964 }
4965 inline void IntervalConstraintProto::set_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
4966 
4967  size_ = value;
4968  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.size)
4969 }
4970 
4971 // -------------------------------------------------------------------
4972 
4973 // NoOverlapConstraintProto
4974 
4975 // repeated int32 intervals = 1;
4977  return intervals_.size();
4978 }
4980  intervals_.Clear();
4981 }
4982 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlapConstraintProto::intervals(int index) const {
4983  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlapConstraintProto.intervals)
4984  return intervals_.Get(index);
4985 }
4986 inline void NoOverlapConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
4987  intervals_.Set(index, value);
4988  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlapConstraintProto.intervals)
4989 }
4990 inline void NoOverlapConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
4991  intervals_.Add(value);
4992  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlapConstraintProto.intervals)
4993 }
4994 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4996  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlapConstraintProto.intervals)
4997  return intervals_;
4998 }
4999 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5001  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlapConstraintProto.intervals)
5002  return &intervals_;
5003 }
5004 
5005 // -------------------------------------------------------------------
5006 
5007 // NoOverlap2DConstraintProto
5008 
5009 // repeated int32 x_intervals = 1;
5011  return x_intervals_.size();
5012 }
5014  x_intervals_.Clear();
5015 }
5016 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::x_intervals(int index) const {
5017  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
5018  return x_intervals_.Get(index);
5019 }
5020 inline void NoOverlap2DConstraintProto::set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5021  x_intervals_.Set(index, value);
5022  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
5023 }
5024 inline void NoOverlap2DConstraintProto::add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5025  x_intervals_.Add(value);
5026  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
5027 }
5028 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5030  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
5031  return x_intervals_;
5032 }
5033 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5035  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
5036  return &x_intervals_;
5037 }
5038 
5039 // repeated int32 y_intervals = 2;
5041  return y_intervals_.size();
5042 }
5044  y_intervals_.Clear();
5045 }
5046 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::y_intervals(int index) const {
5047  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
5048  return y_intervals_.Get(index);
5049 }
5050 inline void NoOverlap2DConstraintProto::set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5051  y_intervals_.Set(index, value);
5052  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
5053 }
5054 inline void NoOverlap2DConstraintProto::add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5055  y_intervals_.Add(value);
5056  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
5057 }
5058 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5060  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
5061  return y_intervals_;
5062 }
5063 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5065  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
5066  return &y_intervals_;
5067 }
5068 
5069 // -------------------------------------------------------------------
5070 
5071 // CumulativeConstraintProto
5072 
5073 // int32 capacity = 1;
5075  capacity_ = 0;
5076 }
5077 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::capacity() const {
5078  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.capacity)
5079  return capacity_;
5080 }
5081 inline void CumulativeConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value) {
5082 
5083  capacity_ = value;
5084  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.capacity)
5085 }
5086 
5087 // repeated int32 intervals = 2;
5089  return intervals_.size();
5090 }
5092  intervals_.Clear();
5093 }
5094 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::intervals(int index) const {
5095  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.intervals)
5096  return intervals_.Get(index);
5097 }
5098 inline void CumulativeConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5099  intervals_.Set(index, value);
5100  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.intervals)
5101 }
5102 inline void CumulativeConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5103  intervals_.Add(value);
5104  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.intervals)
5105 }
5106 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5108  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.intervals)
5109  return intervals_;
5110 }
5111 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5113  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.intervals)
5114  return &intervals_;
5115 }
5116 
5117 // repeated int32 demands = 3;
5119  return demands_.size();
5120 }
5122  demands_.Clear();
5123 }
5124 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::demands(int index) const {
5125  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.demands)
5126  return demands_.Get(index);
5127 }
5128 inline void CumulativeConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5129  demands_.Set(index, value);
5130  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.demands)
5131 }
5132 inline void CumulativeConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
5133  demands_.Add(value);
5134  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.demands)
5135 }
5136 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5138  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.demands)
5139  return demands_;
5140 }
5141 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5143  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.demands)
5144  return &demands_;
5145 }
5146 
5147 // -------------------------------------------------------------------
5148 
5149 // ReservoirConstraintProto
5150 
5151 // int64 min_level = 1;
5153  min_level_ = PROTOBUF_LONGLONG(0);
5154 }
5155 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::min_level() const {
5156  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.min_level)
5157  return min_level_;
5158 }
5159 inline void ReservoirConstraintProto::set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
5160 
5161  min_level_ = value;
5162  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.min_level)
5163 }
5164 
5165 // int64 max_level = 2;
5167  max_level_ = PROTOBUF_LONGLONG(0);
5168 }
5169 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::max_level() const {
5170  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.max_level)
5171  return max_level_;
5172 }
5173 inline void ReservoirConstraintProto::set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
5174 
5175  max_level_ = value;
5176  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.max_level)
5177 }
5178 
5179 // repeated int32 times = 3;
5181  return times_.size();
5182 }
5184  times_.Clear();
5185 }
5186 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::times(int index) const {
5187  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.times)
5188  return times_.Get(index);
5189 }
5190 inline void ReservoirConstraintProto::set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5191  times_.Set(index, value);
5192  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.times)
5193 }
5194 inline void ReservoirConstraintProto::add_times(::PROTOBUF_NAMESPACE_ID::int32 value) {
5195  times_.Add(value);
5196  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.times)
5197 }
5198 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5200  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.times)
5201  return times_;
5202 }
5203 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5205  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.times)
5206  return &times_;
5207 }
5208 
5209 // repeated int64 demands = 4;
5211  return demands_.size();
5212 }
5214  demands_.Clear();
5215 }
5216 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::demands(int index) const {
5217  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.demands)
5218  return demands_.Get(index);
5219 }
5220 inline void ReservoirConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5221  demands_.Set(index, value);
5222  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.demands)
5223 }
5224 inline void ReservoirConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int64 value) {
5225  demands_.Add(value);
5226  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.demands)
5227 }
5228 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5230  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.demands)
5231  return demands_;
5232 }
5233 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5235  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.demands)
5236  return &demands_;
5237 }
5238 
5239 // repeated int32 actives = 5;
5241  return actives_.size();
5242 }
5244  actives_.Clear();
5245 }
5246 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::actives(int index) const {
5247  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.actives)
5248  return actives_.Get(index);
5249 }
5250 inline void ReservoirConstraintProto::set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5251  actives_.Set(index, value);
5252  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.actives)
5253 }
5254 inline void ReservoirConstraintProto::add_actives(::PROTOBUF_NAMESPACE_ID::int32 value) {
5255  actives_.Add(value);
5256  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.actives)
5257 }
5258 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5260  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.actives)
5261  return actives_;
5262 }
5263 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5265  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.actives)
5266  return &actives_;
5267 }
5268 
5269 // -------------------------------------------------------------------
5270 
5271 // CircuitConstraintProto
5272 
5273 // repeated int32 tails = 3;
5275  return tails_.size();
5276 }
5278  tails_.Clear();
5279 }
5280 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::tails(int index) const {
5281  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.tails)
5282  return tails_.Get(index);
5283 }
5284 inline void CircuitConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5285  tails_.Set(index, value);
5286  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.tails)
5287 }
5288 inline void CircuitConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
5289  tails_.Add(value);
5290  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.tails)
5291 }
5292 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5294  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.tails)
5295  return tails_;
5296 }
5297 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5299  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.tails)
5300  return &tails_;
5301 }
5302 
5303 // repeated int32 heads = 4;
5305  return heads_.size();
5306 }
5308  heads_.Clear();
5309 }
5310 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::heads(int index) const {
5311  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.heads)
5312  return heads_.Get(index);
5313 }
5314 inline void CircuitConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5315  heads_.Set(index, value);
5316  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.heads)
5317 }
5318 inline void CircuitConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
5319  heads_.Add(value);
5320  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.heads)
5321 }
5322 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5324  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.heads)
5325  return heads_;
5326 }
5327 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5329  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.heads)
5330  return &heads_;
5331 }
5332 
5333 // repeated int32 literals = 5;
5335  return literals_.size();
5336 }
5338  literals_.Clear();
5339 }
5340 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::literals(int index) const {
5341  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.literals)
5342  return literals_.Get(index);
5343 }
5344 inline void CircuitConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5345  literals_.Set(index, value);
5346  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.literals)
5347 }
5348 inline void CircuitConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5349  literals_.Add(value);
5350  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.literals)
5351 }
5352 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5354  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.literals)
5355  return literals_;
5356 }
5357 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5359  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.literals)
5360  return &literals_;
5361 }
5362 
5363 // -------------------------------------------------------------------
5364 
5365 // RoutesConstraintProto
5366 
5367 // repeated int32 tails = 1;
5369  return tails_.size();
5370 }
5372  tails_.Clear();
5373 }
5374 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::tails(int index) const {
5375  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.tails)
5376  return tails_.Get(index);
5377 }
5378 inline void RoutesConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5379  tails_.Set(index, value);
5380  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.tails)
5381 }
5382 inline void RoutesConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
5383  tails_.Add(value);
5384  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.tails)
5385 }
5386 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5388  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.tails)
5389  return tails_;
5390 }
5391 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5393  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.tails)
5394  return &tails_;
5395 }
5396 
5397 // repeated int32 heads = 2;
5399  return heads_.size();
5400 }
5402  heads_.Clear();
5403 }
5404 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::heads(int index) const {
5405  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.heads)
5406  return heads_.Get(index);
5407 }
5408 inline void RoutesConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5409  heads_.Set(index, value);
5410  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.heads)
5411 }
5412 inline void RoutesConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
5413  heads_.Add(value);
5414  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.heads)
5415 }
5416 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5418  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.heads)
5419  return heads_;
5420 }
5421 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5423  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.heads)
5424  return &heads_;
5425 }
5426 
5427 // repeated int32 literals = 3;
5429  return literals_.size();
5430 }
5432  literals_.Clear();
5433 }
5434 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::literals(int index) const {
5435  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.literals)
5436  return literals_.Get(index);
5437 }
5438 inline void RoutesConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5439  literals_.Set(index, value);
5440  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.literals)
5441 }
5442 inline void RoutesConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5443  literals_.Add(value);
5444  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.literals)
5445 }
5446 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5448  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.literals)
5449  return literals_;
5450 }
5451 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5453  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.literals)
5454  return &literals_;
5455 }
5456 
5457 // repeated int32 demands = 4;
5459  return demands_.size();
5460 }
5462  demands_.Clear();
5463 }
5464 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::demands(int index) const {
5465  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.demands)
5466  return demands_.Get(index);
5467 }
5468 inline void RoutesConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5469  demands_.Set(index, value);
5470  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.demands)
5471 }
5472 inline void RoutesConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
5473  demands_.Add(value);
5474  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.demands)
5475 }
5476 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5478  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.demands)
5479  return demands_;
5480 }
5481 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5483  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.demands)
5484  return &demands_;
5485 }
5486 
5487 // int64 capacity = 5;
5489  capacity_ = PROTOBUF_LONGLONG(0);
5490 }
5491 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutesConstraintProto::capacity() const {
5492  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.capacity)
5493  return capacity_;
5494 }
5495 inline void RoutesConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
5496 
5497  capacity_ = value;
5498  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.capacity)
5499 }
5500 
5501 // -------------------------------------------------------------------
5502 
5503 // CircuitCoveringConstraintProto
5504 
5505 // repeated int32 nexts = 1;
5507  return nexts_.size();
5508 }
5510  nexts_.Clear();
5511 }
5512 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitCoveringConstraintProto::nexts(int index) const {
5513  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.nexts)
5514  return nexts_.Get(index);
5515 }
5516 inline void CircuitCoveringConstraintProto::set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5517  nexts_.Set(index, value);
5518  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.nexts)
5519 }
5520 inline void CircuitCoveringConstraintProto::add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value) {
5521  nexts_.Add(value);
5522  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.nexts)
5523 }
5524 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5526  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
5527  return nexts_;
5528 }
5529 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5531  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
5532  return &nexts_;
5533 }
5534 
5535 // repeated int64 distinguished_nodes = 2;
5537  return distinguished_nodes_.size();
5538 }
5540  distinguished_nodes_.Clear();
5541 }
5542 inline ::PROTOBUF_NAMESPACE_ID::int64 CircuitCoveringConstraintProto::distinguished_nodes(int index) const {
5543  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
5544  return distinguished_nodes_.Get(index);
5545 }
5546 inline void CircuitCoveringConstraintProto::set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5547  distinguished_nodes_.Set(index, value);
5548  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
5549 }
5550 inline void CircuitCoveringConstraintProto::add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
5551  distinguished_nodes_.Add(value);
5552  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
5553 }
5554 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5556  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
5557  return distinguished_nodes_;
5558 }
5559 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5561  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
5562  return &distinguished_nodes_;
5563 }
5564 
5565 // -------------------------------------------------------------------
5566 
5567 // TableConstraintProto
5568 
5569 // repeated int32 vars = 1;
5571  return vars_.size();
5572 }
5574  vars_.Clear();
5575 }
5576 inline ::PROTOBUF_NAMESPACE_ID::int32 TableConstraintProto::vars(int index) const {
5577  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.vars)
5578  return vars_.Get(index);
5579 }
5580 inline void TableConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5581  vars_.Set(index, value);
5582  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.vars)
5583 }
5584 inline void TableConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5585  vars_.Add(value);
5586  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.vars)
5587 }
5588 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5590  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.vars)
5591  return vars_;
5592 }
5593 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5595  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.vars)
5596  return &vars_;
5597 }
5598 
5599 // repeated int64 values = 2;
5601  return values_.size();
5602 }
5604  values_.Clear();
5605 }
5606 inline ::PROTOBUF_NAMESPACE_ID::int64 TableConstraintProto::values(int index) const {
5607  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.values)
5608  return values_.Get(index);
5609 }
5610 inline void TableConstraintProto::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5611  values_.Set(index, value);
5612  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.values)
5613 }
5614 inline void TableConstraintProto::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
5615  values_.Add(value);
5616  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.values)
5617 }
5618 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5620  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.values)
5621  return values_;
5622 }
5623 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5625  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.values)
5626  return &values_;
5627 }
5628 
5629 // bool negated = 3;
5631  negated_ = false;
5632 }
5633 inline bool TableConstraintProto::negated() const {
5634  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.negated)
5635  return negated_;
5636 }
5637 inline void TableConstraintProto::set_negated(bool value) {
5638 
5639  negated_ = value;
5640  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.negated)
5641 }
5642 
5643 // -------------------------------------------------------------------
5644 
5645 // InverseConstraintProto
5646 
5647 // repeated int32 f_direct = 1;
5649  return f_direct_.size();
5650 }
5652  f_direct_.Clear();
5653 }
5654 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_direct(int index) const {
5655  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_direct)
5656  return f_direct_.Get(index);
5657 }
5658 inline void InverseConstraintProto::set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5659  f_direct_.Set(index, value);
5660  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_direct)
5661 }
5662 inline void InverseConstraintProto::add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
5663  f_direct_.Add(value);
5664  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_direct)
5665 }
5666 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5668  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_direct)
5669  return f_direct_;
5670 }
5671 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5673  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_direct)
5674  return &f_direct_;
5675 }
5676 
5677 // repeated int32 f_inverse = 2;
5679  return f_inverse_.size();
5680 }
5682  f_inverse_.Clear();
5683 }
5684 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_inverse(int index) const {
5685  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_inverse)
5686  return f_inverse_.Get(index);
5687 }
5688 inline void InverseConstraintProto::set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5689  f_inverse_.Set(index, value);
5690  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_inverse)
5691 }
5692 inline void InverseConstraintProto::add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value) {
5693  f_inverse_.Add(value);
5694  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_inverse)
5695 }
5696 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5698  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_inverse)
5699  return f_inverse_;
5700 }
5701 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5703  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_inverse)
5704  return &f_inverse_;
5705 }
5706 
5707 // -------------------------------------------------------------------
5708 
5709 // AutomatonConstraintProto
5710 
5711 // int64 starting_state = 2;
5713  starting_state_ = PROTOBUF_LONGLONG(0);
5714 }
5715 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::starting_state() const {
5716  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.starting_state)
5717  return starting_state_;
5718 }
5719 inline void AutomatonConstraintProto::set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value) {
5720 
5721  starting_state_ = value;
5722  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.starting_state)
5723 }
5724 
5725 // repeated int64 final_states = 3;
5727  return final_states_.size();
5728 }
5730  final_states_.Clear();
5731 }
5732 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::final_states(int index) const {
5733  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.final_states)
5734  return final_states_.Get(index);
5735 }
5736 inline void AutomatonConstraintProto::set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5737  final_states_.Set(index, value);
5738  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.final_states)
5739 }
5740 inline void AutomatonConstraintProto::add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value) {
5741  final_states_.Add(value);
5742  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.final_states)
5743 }
5744 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5746  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.final_states)
5747  return final_states_;
5748 }
5749 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5751  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.final_states)
5752  return &final_states_;
5753 }
5754 
5755 // repeated int64 transition_tail = 4;
5757  return transition_tail_.size();
5758 }
5760  transition_tail_.Clear();
5761 }
5762 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_tail(int index) const {
5763  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_tail)
5764  return transition_tail_.Get(index);
5765 }
5766 inline void AutomatonConstraintProto::set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5767  transition_tail_.Set(index, value);
5768  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_tail)
5769 }
5770 inline void AutomatonConstraintProto::add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value) {
5771  transition_tail_.Add(value);
5772  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_tail)
5773 }
5774 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5776  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
5777  return transition_tail_;
5778 }
5779 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5781  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
5782  return &transition_tail_;
5783 }
5784 
5785 // repeated int64 transition_head = 5;
5787  return transition_head_.size();
5788 }
5790  transition_head_.Clear();
5791 }
5792 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_head(int index) const {
5793  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_head)
5794  return transition_head_.Get(index);
5795 }
5796 inline void AutomatonConstraintProto::set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5797  transition_head_.Set(index, value);
5798  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_head)
5799 }
5800 inline void AutomatonConstraintProto::add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value) {
5801  transition_head_.Add(value);
5802  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_head)
5803 }
5804 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5806  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_head)
5807  return transition_head_;
5808 }
5809 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5811  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_head)
5812  return &transition_head_;
5813 }
5814 
5815 // repeated int64 transition_label = 6;
5817  return transition_label_.size();
5818 }
5820  transition_label_.Clear();
5821 }
5822 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_label(int index) const {
5823  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_label)
5824  return transition_label_.Get(index);
5825 }
5826 inline void AutomatonConstraintProto::set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5827  transition_label_.Set(index, value);
5828  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_label)
5829 }
5830 inline void AutomatonConstraintProto::add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value) {
5831  transition_label_.Add(value);
5832  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_label)
5833 }
5834 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5836  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_label)
5837  return transition_label_;
5838 }
5839 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5841  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_label)
5842  return &transition_label_;
5843 }
5844 
5845 // repeated int32 vars = 7;
5847  return vars_.size();
5848 }
5850  vars_.Clear();
5851 }
5852 inline ::PROTOBUF_NAMESPACE_ID::int32 AutomatonConstraintProto::vars(int index) const {
5853  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.vars)
5854  return vars_.Get(index);
5855 }
5856 inline void AutomatonConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5857  vars_.Set(index, value);
5858  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.vars)
5859 }
5860 inline void AutomatonConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5861  vars_.Add(value);
5862  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.vars)
5863 }
5864 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5866  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.vars)
5867  return vars_;
5868 }
5869 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5871  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.vars)
5872  return &vars_;
5873 }
5874 
5875 // -------------------------------------------------------------------
5876 
5877 // ConstraintProto
5878 
5879 // string name = 1;
5881  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5882 }
5883 inline const std::string& ConstraintProto::name() const {
5884  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.name)
5885  return name_.GetNoArena();
5886 }
5887 inline void ConstraintProto::set_name(const std::string& value) {
5888 
5889  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
5890  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.name)
5891 }
5892 inline void ConstraintProto::set_name(std::string&& value) {
5893 
5894  name_.SetNoArena(
5895  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
5896  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.ConstraintProto.name)
5897 }
5898 inline void ConstraintProto::set_name(const char* value) {
5899  GOOGLE_DCHECK(value != nullptr);
5900 
5901  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5902  // @@protoc_insertion_point(field_set_char:operations_research.sat.ConstraintProto.name)
5903 }
5904 inline void ConstraintProto::set_name(const char* value, size_t size) {
5905 
5906  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5907  ::std::string(reinterpret_cast<const char*>(value), size));
5908  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.ConstraintProto.name)
5909 }
5910 inline std::string* ConstraintProto::mutable_name() {
5911 
5912  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.name)
5913  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5914 }
5915 inline std::string* ConstraintProto::release_name() {
5916  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.name)
5917 
5918  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5919 }
5920 inline void ConstraintProto::set_allocated_name(std::string* name) {
5921  if (name != nullptr) {
5922 
5923  } else {
5924 
5925  }
5926  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
5927  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.ConstraintProto.name)
5928 }
5929 
5930 // repeated int32 enforcement_literal = 2;
5932  return enforcement_literal_.size();
5933 }
5935  enforcement_literal_.Clear();
5936 }
5937 inline ::PROTOBUF_NAMESPACE_ID::int32 ConstraintProto::enforcement_literal(int index) const {
5938  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.enforcement_literal)
5939  return enforcement_literal_.Get(index);
5940 }
5941 inline void ConstraintProto::set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5942  enforcement_literal_.Set(index, value);
5943  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.enforcement_literal)
5944 }
5945 inline void ConstraintProto::add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value) {
5946  enforcement_literal_.Add(value);
5947  // @@protoc_insertion_point(field_add:operations_research.sat.ConstraintProto.enforcement_literal)
5948 }
5949 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5951  // @@protoc_insertion_point(field_list:operations_research.sat.ConstraintProto.enforcement_literal)
5952  return enforcement_literal_;
5953 }
5954 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5956  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ConstraintProto.enforcement_literal)
5957  return &enforcement_literal_;
5958 }
5959 
5960 // .operations_research.sat.BoolArgumentProto bool_or = 3;
5961 inline bool ConstraintProto::has_bool_or() const {
5962  return constraint_case() == kBoolOr;
5963 }
5964 inline void ConstraintProto::set_has_bool_or() {
5965  _oneof_case_[0] = kBoolOr;
5966 }
5968  if (has_bool_or()) {
5969  delete constraint_.bool_or_;
5970  clear_has_constraint();
5971  }
5972 }
5973 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_or() {
5974  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_or)
5975  if (has_bool_or()) {
5976  clear_has_constraint();
5977  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_or_;
5978  constraint_.bool_or_ = nullptr;
5979  return temp;
5980  } else {
5981  return nullptr;
5982  }
5983 }
5984 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_or() const {
5985  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_or)
5986  return has_bool_or()
5987  ? *constraint_.bool_or_
5988  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
5989 }
5990 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_or() {
5991  if (!has_bool_or()) {
5992  clear_constraint();
5993  set_has_bool_or();
5994  constraint_.bool_or_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
5995  GetArenaNoVirtual());
5996  }
5997  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_or)
5998  return constraint_.bool_or_;
5999 }
6000 
6001 // .operations_research.sat.BoolArgumentProto bool_and = 4;
6002 inline bool ConstraintProto::has_bool_and() const {
6003  return constraint_case() == kBoolAnd;
6004 }
6005 inline void ConstraintProto::set_has_bool_and() {
6006  _oneof_case_[0] = kBoolAnd;
6007 }
6009  if (has_bool_and()) {
6010  delete constraint_.bool_and_;
6011  clear_has_constraint();
6012  }
6013 }
6014 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_and() {
6015  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_and)
6016  if (has_bool_and()) {
6017  clear_has_constraint();
6018  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_and_;
6019  constraint_.bool_and_ = nullptr;
6020  return temp;
6021  } else {
6022  return nullptr;
6023  }
6024 }
6025 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_and() const {
6026  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_and)
6027  return has_bool_and()
6028  ? *constraint_.bool_and_
6029  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
6030 }
6031 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_and() {
6032  if (!has_bool_and()) {
6033  clear_constraint();
6034  set_has_bool_and();
6035  constraint_.bool_and_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
6036  GetArenaNoVirtual());
6037  }
6038  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_and)
6039  return constraint_.bool_and_;
6040 }
6041 
6042 // .operations_research.sat.BoolArgumentProto at_most_one = 26;
6044  return constraint_case() == kAtMostOne;
6045 }
6046 inline void ConstraintProto::set_has_at_most_one() {
6047  _oneof_case_[0] = kAtMostOne;
6048 }
6050  if (has_at_most_one()) {
6051  delete constraint_.at_most_one_;
6052  clear_has_constraint();
6053  }
6054 }
6055 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_at_most_one() {
6056  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.at_most_one)
6057  if (has_at_most_one()) {
6058  clear_has_constraint();
6059  ::operations_research::sat::BoolArgumentProto* temp = constraint_.at_most_one_;
6060  constraint_.at_most_one_ = nullptr;
6061  return temp;
6062  } else {
6063  return nullptr;
6064  }
6065 }
6066 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::at_most_one() const {
6067  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.at_most_one)
6068  return has_at_most_one()
6069  ? *constraint_.at_most_one_
6070  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
6071 }
6072 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_at_most_one() {
6073  if (!has_at_most_one()) {
6074  clear_constraint();
6075  set_has_at_most_one();
6076  constraint_.at_most_one_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
6077  GetArenaNoVirtual());
6078  }
6079  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.at_most_one)
6080  return constraint_.at_most_one_;
6081 }
6082 
6083 // .operations_research.sat.BoolArgumentProto bool_xor = 5;
6084 inline bool ConstraintProto::has_bool_xor() const {
6085  return constraint_case() == kBoolXor;
6086 }
6087 inline void ConstraintProto::set_has_bool_xor() {
6088  _oneof_case_[0] = kBoolXor;
6089 }
6091  if (has_bool_xor()) {
6092  delete constraint_.bool_xor_;
6093  clear_has_constraint();
6094  }
6095 }
6096 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_xor() {
6097  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_xor)
6098  if (has_bool_xor()) {
6099  clear_has_constraint();
6100  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_xor_;
6101  constraint_.bool_xor_ = nullptr;
6102  return temp;
6103  } else {
6104  return nullptr;
6105  }
6106 }
6107 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_xor() const {
6108  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_xor)
6109  return has_bool_xor()
6110  ? *constraint_.bool_xor_
6111  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
6112 }
6113 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_xor() {
6114  if (!has_bool_xor()) {
6115  clear_constraint();
6116  set_has_bool_xor();
6117  constraint_.bool_xor_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
6118  GetArenaNoVirtual());
6119  }
6120  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_xor)
6121  return constraint_.bool_xor_;
6122 }
6123 
6124 // .operations_research.sat.IntegerArgumentProto int_div = 7;
6125 inline bool ConstraintProto::has_int_div() const {
6126  return constraint_case() == kIntDiv;
6127 }
6128 inline void ConstraintProto::set_has_int_div() {
6129  _oneof_case_[0] = kIntDiv;
6130 }
6132  if (has_int_div()) {
6133  delete constraint_.int_div_;
6134  clear_has_constraint();
6135  }
6136 }
6137 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_div() {
6138  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_div)
6139  if (has_int_div()) {
6140  clear_has_constraint();
6141  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_div_;
6142  constraint_.int_div_ = nullptr;
6143  return temp;
6144  } else {
6145  return nullptr;
6146  }
6147 }
6148 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_div() const {
6149  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_div)
6150  return has_int_div()
6151  ? *constraint_.int_div_
6152  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
6153 }
6154 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_div() {
6155  if (!has_int_div()) {
6156  clear_constraint();
6157  set_has_int_div();
6158  constraint_.int_div_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
6159  GetArenaNoVirtual());
6160  }
6161  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_div)
6162  return constraint_.int_div_;
6163 }
6164 
6165 // .operations_research.sat.IntegerArgumentProto int_mod = 8;
6166 inline bool ConstraintProto::has_int_mod() const {
6167  return constraint_case() == kIntMod;
6168 }
6169 inline void ConstraintProto::set_has_int_mod() {
6170  _oneof_case_[0] = kIntMod;
6171 }
6173  if (has_int_mod()) {
6174  delete constraint_.int_mod_;
6175  clear_has_constraint();
6176  }
6177 }
6178 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_mod() {
6179  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_mod)
6180  if (has_int_mod()) {
6181  clear_has_constraint();
6182  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_mod_;
6183  constraint_.int_mod_ = nullptr;
6184  return temp;
6185  } else {
6186  return nullptr;
6187  }
6188 }
6189 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_mod() const {
6190  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_mod)
6191  return has_int_mod()
6192  ? *constraint_.int_mod_
6193  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
6194 }
6195 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_mod() {
6196  if (!has_int_mod()) {
6197  clear_constraint();
6198  set_has_int_mod();
6199  constraint_.int_mod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
6200  GetArenaNoVirtual());
6201  }
6202  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_mod)
6203  return constraint_.int_mod_;
6204 }
6205 
6206 // .operations_research.sat.IntegerArgumentProto int_max = 9;
6207 inline bool ConstraintProto::has_int_max() const {
6208  return constraint_case() == kIntMax;
6209 }
6210 inline void ConstraintProto::set_has_int_max() {
6211  _oneof_case_[0] = kIntMax;
6212 }
6214  if (has_int_max()) {
6215  delete constraint_.int_max_;
6216  clear_has_constraint();
6217  }
6218 }
6219 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_max() {
6220  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_max)
6221  if (has_int_max()) {
6222  clear_has_constraint();
6223  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_max_;
6224  constraint_.int_max_ = nullptr;
6225  return temp;
6226  } else {
6227  return nullptr;
6228  }
6229 }
6230 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_max() const {
6231  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_max)
6232  return has_int_max()
6233  ? *constraint_.int_max_
6234  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
6235 }
6236 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_max() {
6237  if (!has_int_max()) {
6238  clear_constraint();
6239  set_has_int_max();
6240  constraint_.int_max_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
6241  GetArenaNoVirtual());
6242  }
6243  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_max)
6244  return constraint_.int_max_;
6245 }
6246 
6247 // .operations_research.sat.IntegerArgumentProto int_min = 10;
6248 inline bool ConstraintProto::has_int_min() const {
6249  return constraint_case() == kIntMin;
6250 }
6251 inline void ConstraintProto::set_has_int_min() {
6252  _oneof_case_[0] = kIntMin;
6253 }
6255  if (has_int_min()) {
6256  delete constraint_.int_min_;
6257  clear_has_constraint();
6258  }
6259 }
6260 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_min() {
6261  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_min)
6262  if (has_int_min()) {
6263  clear_has_constraint();
6264  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_min_;
6265  constraint_.int_min_ = nullptr;
6266  return temp;
6267  } else {
6268  return nullptr;
6269  }
6270 }
6271 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_min() const {
6272  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_min)
6273  return has_int_min()
6274  ? *constraint_.int_min_
6275  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
6276 }
6277 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_min() {
6278  if (!has_int_min()) {
6279  clear_constraint();
6280  set_has_int_min();
6281  constraint_.int_min_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
6282  GetArenaNoVirtual());
6283  }
6284  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_min)
6285  return constraint_.int_min_;
6286 }
6287 
6288 // .operations_research.sat.IntegerArgumentProto int_prod = 11;
6289 inline bool ConstraintProto::has_int_prod() const {
6290  return constraint_case() == kIntProd;
6291 }
6292 inline void ConstraintProto::set_has_int_prod() {
6293  _oneof_case_[0] = kIntProd;
6294 }
6296  if (has_int_prod()) {
6297  delete constraint_.int_prod_;
6298  clear_has_constraint();
6299  }
6300 }
6301 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_prod() {
6302  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_prod)
6303  if (has_int_prod()) {
6304  clear_has_constraint();
6305  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_prod_;
6306  constraint_.int_prod_ = nullptr;
6307  return temp;
6308  } else {
6309  return nullptr;
6310  }
6311 }
6312 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_prod() const {
6313  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_prod)
6314  return has_int_prod()
6315  ? *constraint_.int_prod_
6316  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
6317 }
6318 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_prod() {
6319  if (!has_int_prod()) {
6320  clear_constraint();
6321  set_has_int_prod();
6322  constraint_.int_prod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
6323  GetArenaNoVirtual());
6324  }
6325  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_prod)
6326  return constraint_.int_prod_;
6327 }
6328 
6329 // .operations_research.sat.LinearConstraintProto linear = 12;
6330 inline bool ConstraintProto::has_linear() const {
6331  return constraint_case() == kLinear;
6332 }
6333 inline void ConstraintProto::set_has_linear() {
6334  _oneof_case_[0] = kLinear;
6335 }
6337  if (has_linear()) {
6338  delete constraint_.linear_;
6339  clear_has_constraint();
6340  }
6341 }
6342 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::release_linear() {
6343  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.linear)
6344  if (has_linear()) {
6345  clear_has_constraint();
6346  ::operations_research::sat::LinearConstraintProto* temp = constraint_.linear_;
6347  constraint_.linear_ = nullptr;
6348  return temp;
6349  } else {
6350  return nullptr;
6351  }
6352 }
6353 inline const ::operations_research::sat::LinearConstraintProto& ConstraintProto::linear() const {
6354  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.linear)
6355  return has_linear()
6356  ? *constraint_.linear_
6357  : *reinterpret_cast< ::operations_research::sat::LinearConstraintProto*>(&::operations_research::sat::_LinearConstraintProto_default_instance_);
6358 }
6359 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::mutable_linear() {
6360  if (!has_linear()) {
6361  clear_constraint();
6362  set_has_linear();
6363  constraint_.linear_ = CreateMaybeMessage< ::operations_research::sat::LinearConstraintProto >(
6364  GetArenaNoVirtual());
6365  }
6366  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.linear)
6367  return constraint_.linear_;
6368 }
6369 
6370 // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
6371 inline bool ConstraintProto::has_all_diff() const {
6372  return constraint_case() == kAllDiff;
6373 }
6374 inline void ConstraintProto::set_has_all_diff() {
6375  _oneof_case_[0] = kAllDiff;
6376 }
6378  if (has_all_diff()) {
6379  delete constraint_.all_diff_;
6380  clear_has_constraint();
6381  }
6382 }
6383 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::release_all_diff() {
6384  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.all_diff)
6385  if (has_all_diff()) {
6386  clear_has_constraint();
6387  ::operations_research::sat::AllDifferentConstraintProto* temp = constraint_.all_diff_;
6388  constraint_.all_diff_ = nullptr;
6389  return temp;
6390  } else {
6391  return nullptr;
6392  }
6393 }
6394 inline const ::operations_research::sat::AllDifferentConstraintProto& ConstraintProto::all_diff() const {
6395  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.all_diff)
6396  return has_all_diff()
6397  ? *constraint_.all_diff_
6398  : *reinterpret_cast< ::operations_research::sat::AllDifferentConstraintProto*>(&::operations_research::sat::_AllDifferentConstraintProto_default_instance_);
6399 }
6400 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::mutable_all_diff() {
6401  if (!has_all_diff()) {
6402  clear_constraint();
6403  set_has_all_diff();
6404  constraint_.all_diff_ = CreateMaybeMessage< ::operations_research::sat::AllDifferentConstraintProto >(
6405  GetArenaNoVirtual());
6406  }
6407  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.all_diff)
6408  return constraint_.all_diff_;
6409 }
6410 
6411 // .operations_research.sat.ElementConstraintProto element = 14;
6412 inline bool ConstraintProto::has_element() const {
6413  return constraint_case() == kElement;
6414 }
6415 inline void ConstraintProto::set_has_element() {
6416  _oneof_case_[0] = kElement;
6417 }
6419  if (has_element()) {
6420  delete constraint_.element_;
6421  clear_has_constraint();
6422  }
6423 }
6424 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::release_element() {
6425  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.element)
6426  if (has_element()) {
6427  clear_has_constraint();
6428  ::operations_research::sat::ElementConstraintProto* temp = constraint_.element_;
6429  constraint_.element_ = nullptr;
6430  return temp;
6431  } else {
6432  return nullptr;
6433  }
6434 }
6435 inline const ::operations_research::sat::ElementConstraintProto& ConstraintProto::element() const {
6436  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.element)
6437  return has_element()
6438  ? *constraint_.element_
6439  : *reinterpret_cast< ::operations_research::sat::ElementConstraintProto*>(&::operations_research::sat::_ElementConstraintProto_default_instance_);
6440 }
6441 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::mutable_element() {
6442  if (!has_element()) {
6443  clear_constraint();
6444  set_has_element();
6445  constraint_.element_ = CreateMaybeMessage< ::operations_research::sat::ElementConstraintProto >(
6446  GetArenaNoVirtual());
6447  }
6448  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.element)
6449  return constraint_.element_;
6450 }
6451 
6452 // .operations_research.sat.CircuitConstraintProto circuit = 15;
6453 inline bool ConstraintProto::has_circuit() const {
6454  return constraint_case() == kCircuit;
6455 }
6456 inline void ConstraintProto::set_has_circuit() {
6457  _oneof_case_[0] = kCircuit;
6458 }
6460  if (has_circuit()) {
6461  delete constraint_.circuit_;
6462  clear_has_constraint();
6463  }
6464 }
6465 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::release_circuit() {
6466  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit)
6467  if (has_circuit()) {
6468  clear_has_constraint();
6469  ::operations_research::sat::CircuitConstraintProto* temp = constraint_.circuit_;
6470  constraint_.circuit_ = nullptr;
6471  return temp;
6472  } else {
6473  return nullptr;
6474  }
6475 }
6476 inline const ::operations_research::sat::CircuitConstraintProto& ConstraintProto::circuit() const {
6477  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit)
6478  return has_circuit()
6479  ? *constraint_.circuit_
6480  : *reinterpret_cast< ::operations_research::sat::CircuitConstraintProto*>(&::operations_research::sat::_CircuitConstraintProto_default_instance_);
6481 }
6482 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::mutable_circuit() {
6483  if (!has_circuit()) {
6484  clear_constraint();
6485  set_has_circuit();
6486  constraint_.circuit_ = CreateMaybeMessage< ::operations_research::sat::CircuitConstraintProto >(
6487  GetArenaNoVirtual());
6488  }
6489  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit)
6490  return constraint_.circuit_;
6491 }
6492 
6493 // .operations_research.sat.RoutesConstraintProto routes = 23;
6494 inline bool ConstraintProto::has_routes() const {
6495  return constraint_case() == kRoutes;
6496 }
6497 inline void ConstraintProto::set_has_routes() {
6498  _oneof_case_[0] = kRoutes;
6499 }
6501  if (has_routes()) {
6502  delete constraint_.routes_;
6503  clear_has_constraint();
6504  }
6505 }
6506 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::release_routes() {
6507  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.routes)
6508  if (has_routes()) {
6509  clear_has_constraint();
6510  ::operations_research::sat::RoutesConstraintProto* temp = constraint_.routes_;
6511  constraint_.routes_ = nullptr;
6512  return temp;
6513  } else {
6514  return nullptr;
6515  }
6516 }
6517 inline const ::operations_research::sat::RoutesConstraintProto& ConstraintProto::routes() const {
6518  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.routes)
6519  return has_routes()
6520  ? *constraint_.routes_
6521  : *reinterpret_cast< ::operations_research::sat::RoutesConstraintProto*>(&::operations_research::sat::_RoutesConstraintProto_default_instance_);
6522 }
6523 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::mutable_routes() {
6524  if (!has_routes()) {
6525  clear_constraint();
6526  set_has_routes();
6527  constraint_.routes_ = CreateMaybeMessage< ::operations_research::sat::RoutesConstraintProto >(
6528  GetArenaNoVirtual());
6529  }
6530  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.routes)
6531  return constraint_.routes_;
6532 }
6533 
6534 // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
6536  return constraint_case() == kCircuitCovering;
6537 }
6538 inline void ConstraintProto::set_has_circuit_covering() {
6539  _oneof_case_[0] = kCircuitCovering;
6540 }
6542  if (has_circuit_covering()) {
6543  delete constraint_.circuit_covering_;
6544  clear_has_constraint();
6545  }
6546 }
6547 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::release_circuit_covering() {
6548  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit_covering)
6549  if (has_circuit_covering()) {
6550  clear_has_constraint();
6551  ::operations_research::sat::CircuitCoveringConstraintProto* temp = constraint_.circuit_covering_;
6552  constraint_.circuit_covering_ = nullptr;
6553  return temp;
6554  } else {
6555  return nullptr;
6556  }
6557 }
6558 inline const ::operations_research::sat::CircuitCoveringConstraintProto& ConstraintProto::circuit_covering() const {
6559  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit_covering)
6560  return has_circuit_covering()
6561  ? *constraint_.circuit_covering_
6562  : *reinterpret_cast< ::operations_research::sat::CircuitCoveringConstraintProto*>(&::operations_research::sat::_CircuitCoveringConstraintProto_default_instance_);
6563 }
6564 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::mutable_circuit_covering() {
6565  if (!has_circuit_covering()) {
6566  clear_constraint();
6567  set_has_circuit_covering();
6568  constraint_.circuit_covering_ = CreateMaybeMessage< ::operations_research::sat::CircuitCoveringConstraintProto >(
6569  GetArenaNoVirtual());
6570  }
6571  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit_covering)
6572  return constraint_.circuit_covering_;
6573 }
6574 
6575 // .operations_research.sat.TableConstraintProto table = 16;
6576 inline bool ConstraintProto::has_table() const {
6577  return constraint_case() == kTable;
6578 }
6579 inline void ConstraintProto::set_has_table() {
6580  _oneof_case_[0] = kTable;
6581 }
6583  if (has_table()) {
6584  delete constraint_.table_;
6585  clear_has_constraint();
6586  }
6587 }
6588 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::release_table() {
6589  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.table)
6590  if (has_table()) {
6591  clear_has_constraint();
6592  ::operations_research::sat::TableConstraintProto* temp = constraint_.table_;
6593  constraint_.table_ = nullptr;
6594  return temp;
6595  } else {
6596  return nullptr;
6597  }
6598 }
6599 inline const ::operations_research::sat::TableConstraintProto& ConstraintProto::table() const {
6600  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.table)
6601  return has_table()
6602  ? *constraint_.table_
6603  : *reinterpret_cast< ::operations_research::sat::TableConstraintProto*>(&::operations_research::sat::_TableConstraintProto_default_instance_);
6604 }
6605 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::mutable_table() {
6606  if (!has_table()) {
6607  clear_constraint();
6608  set_has_table();
6609  constraint_.table_ = CreateMaybeMessage< ::operations_research::sat::TableConstraintProto >(
6610  GetArenaNoVirtual());
6611  }
6612  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.table)
6613  return constraint_.table_;
6614 }
6615 
6616 // .operations_research.sat.AutomatonConstraintProto automaton = 17;
6617 inline bool ConstraintProto::has_automaton() const {
6618  return constraint_case() == kAutomaton;
6619 }
6620 inline void ConstraintProto::set_has_automaton() {
6621  _oneof_case_[0] = kAutomaton;
6622 }
6624  if (has_automaton()) {
6625  delete constraint_.automaton_;
6626  clear_has_constraint();
6627  }
6628 }
6629 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::release_automaton() {
6630  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.automaton)
6631  if (has_automaton()) {
6632  clear_has_constraint();
6633  ::operations_research::sat::AutomatonConstraintProto* temp = constraint_.automaton_;
6634  constraint_.automaton_ = nullptr;
6635  return temp;
6636  } else {
6637  return nullptr;
6638  }
6639 }
6640 inline const ::operations_research::sat::AutomatonConstraintProto& ConstraintProto::automaton() const {
6641  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.automaton)
6642  return has_automaton()
6643  ? *constraint_.automaton_
6644  : *reinterpret_cast< ::operations_research::sat::AutomatonConstraintProto*>(&::operations_research::sat::_AutomatonConstraintProto_default_instance_);
6645 }
6646 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::mutable_automaton() {
6647  if (!has_automaton()) {
6648  clear_constraint();
6649  set_has_automaton();
6650  constraint_.automaton_ = CreateMaybeMessage< ::operations_research::sat::AutomatonConstraintProto >(
6651  GetArenaNoVirtual());
6652  }
6653  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.automaton)
6654  return constraint_.automaton_;
6655 }
6656 
6657 // .operations_research.sat.InverseConstraintProto inverse = 18;
6658 inline bool ConstraintProto::has_inverse() const {
6659  return constraint_case() == kInverse;
6660 }
6661 inline void ConstraintProto::set_has_inverse() {
6662  _oneof_case_[0] = kInverse;
6663 }
6665  if (has_inverse()) {
6666  delete constraint_.inverse_;
6667  clear_has_constraint();
6668  }
6669 }
6670 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::release_inverse() {
6671  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.inverse)
6672  if (has_inverse()) {
6673  clear_has_constraint();
6674  ::operations_research::sat::InverseConstraintProto* temp = constraint_.inverse_;
6675  constraint_.inverse_ = nullptr;
6676  return temp;
6677  } else {
6678  return nullptr;
6679  }
6680 }
6681 inline const ::operations_research::sat::InverseConstraintProto& ConstraintProto::inverse() const {
6682  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.inverse)
6683  return has_inverse()
6684  ? *constraint_.inverse_
6685  : *reinterpret_cast< ::operations_research::sat::InverseConstraintProto*>(&::operations_research::sat::_InverseConstraintProto_default_instance_);
6686 }
6687 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::mutable_inverse() {
6688  if (!has_inverse()) {
6689  clear_constraint();
6690  set_has_inverse();
6691  constraint_.inverse_ = CreateMaybeMessage< ::operations_research::sat::InverseConstraintProto >(
6692  GetArenaNoVirtual());
6693  }
6694  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.inverse)
6695  return constraint_.inverse_;
6696 }
6697 
6698 // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
6699 inline bool ConstraintProto::has_reservoir() const {
6700  return constraint_case() == kReservoir;
6701 }
6702 inline void ConstraintProto::set_has_reservoir() {
6703  _oneof_case_[0] = kReservoir;
6704 }
6706  if (has_reservoir()) {
6707  delete constraint_.reservoir_;
6708  clear_has_constraint();
6709  }
6710 }
6711 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::release_reservoir() {
6712  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.reservoir)
6713  if (has_reservoir()) {
6714  clear_has_constraint();
6715  ::operations_research::sat::ReservoirConstraintProto* temp = constraint_.reservoir_;
6716  constraint_.reservoir_ = nullptr;
6717  return temp;
6718  } else {
6719  return nullptr;
6720  }
6721 }
6722 inline const ::operations_research::sat::ReservoirConstraintProto& ConstraintProto::reservoir() const {
6723  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.reservoir)
6724  return has_reservoir()
6725  ? *constraint_.reservoir_
6726  : *reinterpret_cast< ::operations_research::sat::ReservoirConstraintProto*>(&::operations_research::sat::_ReservoirConstraintProto_default_instance_);
6727 }
6728 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::mutable_reservoir() {
6729  if (!has_reservoir()) {
6730  clear_constraint();
6731  set_has_reservoir();
6732  constraint_.reservoir_ = CreateMaybeMessage< ::operations_research::sat::ReservoirConstraintProto >(
6733  GetArenaNoVirtual());
6734  }
6735  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.reservoir)
6736  return constraint_.reservoir_;
6737 }
6738 
6739 // .operations_research.sat.IntervalConstraintProto interval = 19;
6740 inline bool ConstraintProto::has_interval() const {
6741  return constraint_case() == kInterval;
6742 }
6743 inline void ConstraintProto::set_has_interval() {
6744  _oneof_case_[0] = kInterval;
6745 }
6747  if (has_interval()) {
6748  delete constraint_.interval_;
6749  clear_has_constraint();
6750  }
6751 }
6752 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::release_interval() {
6753  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.interval)
6754  if (has_interval()) {
6755  clear_has_constraint();
6756  ::operations_research::sat::IntervalConstraintProto* temp = constraint_.interval_;
6757  constraint_.interval_ = nullptr;
6758  return temp;
6759  } else {
6760  return nullptr;
6761  }
6762 }
6763 inline const ::operations_research::sat::IntervalConstraintProto& ConstraintProto::interval() const {
6764  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.interval)
6765  return has_interval()
6766  ? *constraint_.interval_
6767  : *reinterpret_cast< ::operations_research::sat::IntervalConstraintProto*>(&::operations_research::sat::_IntervalConstraintProto_default_instance_);
6768 }
6769 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::mutable_interval() {
6770  if (!has_interval()) {
6771  clear_constraint();
6772  set_has_interval();
6773  constraint_.interval_ = CreateMaybeMessage< ::operations_research::sat::IntervalConstraintProto >(
6774  GetArenaNoVirtual());
6775  }
6776  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.interval)
6777  return constraint_.interval_;
6778 }
6779 
6780 // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
6781 inline bool ConstraintProto::has_no_overlap() const {
6782  return constraint_case() == kNoOverlap;
6783 }
6784 inline void ConstraintProto::set_has_no_overlap() {
6785  _oneof_case_[0] = kNoOverlap;
6786 }
6788  if (has_no_overlap()) {
6789  delete constraint_.no_overlap_;
6790  clear_has_constraint();
6791  }
6792 }
6793 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::release_no_overlap() {
6794  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap)
6795  if (has_no_overlap()) {
6796  clear_has_constraint();
6797  ::operations_research::sat::NoOverlapConstraintProto* temp = constraint_.no_overlap_;
6798  constraint_.no_overlap_ = nullptr;
6799  return temp;
6800  } else {
6801  return nullptr;
6802  }
6803 }
6804 inline const ::operations_research::sat::NoOverlapConstraintProto& ConstraintProto::no_overlap() const {
6805  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap)
6806  return has_no_overlap()
6807  ? *constraint_.no_overlap_
6808  : *reinterpret_cast< ::operations_research::sat::NoOverlapConstraintProto*>(&::operations_research::sat::_NoOverlapConstraintProto_default_instance_);
6809 }
6810 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::mutable_no_overlap() {
6811  if (!has_no_overlap()) {
6812  clear_constraint();
6813  set_has_no_overlap();
6814  constraint_.no_overlap_ = CreateMaybeMessage< ::operations_research::sat::NoOverlapConstraintProto >(
6815  GetArenaNoVirtual());
6816  }
6817  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap)
6818  return constraint_.no_overlap_;
6819 }
6820 
6821 // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
6823  return constraint_case() == kNoOverlap2D;
6824 }
6825 inline void ConstraintProto::set_has_no_overlap_2d() {
6826  _oneof_case_[0] = kNoOverlap2D;
6827 }
6829  if (has_no_overlap_2d()) {
6830  delete constraint_.no_overlap_2d_;
6831  clear_has_constraint();
6832  }
6833 }
6834 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::release_no_overlap_2d() {
6835  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap_2d)
6836  if (has_no_overlap_2d()) {
6837  clear_has_constraint();
6838  ::operations_research::sat::NoOverlap2DConstraintProto* temp = constraint_.no_overlap_2d_;
6839  constraint_.no_overlap_2d_ = nullptr;
6840  return temp;
6841  } else {
6842  return nullptr;
6843  }
6844 }
6845 inline const ::operations_research::sat::NoOverlap2DConstraintProto& ConstraintProto::no_overlap_2d() const {
6846  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap_2d)
6847  return has_no_overlap_2d()
6848  ? *constraint_.no_overlap_2d_
6849  : *reinterpret_cast< ::operations_research::sat::NoOverlap2DConstraintProto*>(&::operations_research::sat::_NoOverlap2DConstraintProto_default_instance_);
6850 }
6851 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::mutable_no_overlap_2d() {
6852  if (!has_no_overlap_2d()) {
6853  clear_constraint();
6854  set_has_no_overlap_2d();
6855  constraint_.no_overlap_2d_ = CreateMaybeMessage< ::operations_research::sat::NoOverlap2DConstraintProto >(
6856  GetArenaNoVirtual());
6857  }
6858  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap_2d)
6859  return constraint_.no_overlap_2d_;
6860 }
6861 
6862 // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
6863 inline bool ConstraintProto::has_cumulative() const {
6864  return constraint_case() == kCumulative;
6865 }
6866 inline void ConstraintProto::set_has_cumulative() {
6867  _oneof_case_[0] = kCumulative;
6868 }
6870  if (has_cumulative()) {
6871  delete constraint_.cumulative_;
6872  clear_has_constraint();
6873  }
6874 }
6875 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::release_cumulative() {
6876  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.cumulative)
6877  if (has_cumulative()) {
6878  clear_has_constraint();
6879  ::operations_research::sat::CumulativeConstraintProto* temp = constraint_.cumulative_;
6880  constraint_.cumulative_ = nullptr;
6881  return temp;
6882  } else {
6883  return nullptr;
6884  }
6885 }
6886 inline const ::operations_research::sat::CumulativeConstraintProto& ConstraintProto::cumulative() const {
6887  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.cumulative)
6888  return has_cumulative()
6889  ? *constraint_.cumulative_
6890  : *reinterpret_cast< ::operations_research::sat::CumulativeConstraintProto*>(&::operations_research::sat::_CumulativeConstraintProto_default_instance_);
6891 }
6892 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::mutable_cumulative() {
6893  if (!has_cumulative()) {
6894  clear_constraint();
6895  set_has_cumulative();
6896  constraint_.cumulative_ = CreateMaybeMessage< ::operations_research::sat::CumulativeConstraintProto >(
6897  GetArenaNoVirtual());
6898  }
6899  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.cumulative)
6900  return constraint_.cumulative_;
6901 }
6902 
6903 inline bool ConstraintProto::has_constraint() const {
6904  return constraint_case() != CONSTRAINT_NOT_SET;
6905 }
6906 inline void ConstraintProto::clear_has_constraint() {
6907  _oneof_case_[0] = CONSTRAINT_NOT_SET;
6908 }
6910  return ConstraintProto::ConstraintCase(_oneof_case_[0]);
6911 }
6912 // -------------------------------------------------------------------
6913 
6914 // CpObjectiveProto
6915 
6916 // repeated int32 vars = 1;
6917 inline int CpObjectiveProto::vars_size() const {
6918  return vars_.size();
6919 }
6921  vars_.Clear();
6922 }
6923 inline ::PROTOBUF_NAMESPACE_ID::int32 CpObjectiveProto::vars(int index) const {
6924  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.vars)
6925  return vars_.Get(index);
6926 }
6927 inline void CpObjectiveProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6928  vars_.Set(index, value);
6929  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.vars)
6930 }
6931 inline void CpObjectiveProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6932  vars_.Add(value);
6933  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.vars)
6934 }
6935 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6937  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.vars)
6938  return vars_;
6939 }
6940 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6942  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.vars)
6943  return &vars_;
6944 }
6945 
6946 // repeated int64 coeffs = 4;
6947 inline int CpObjectiveProto::coeffs_size() const {
6948  return coeffs_.size();
6949 }
6951  coeffs_.Clear();
6952 }
6953 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::coeffs(int index) const {
6954  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.coeffs)
6955  return coeffs_.Get(index);
6956 }
6957 inline void CpObjectiveProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6958  coeffs_.Set(index, value);
6959  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.coeffs)
6960 }
6961 inline void CpObjectiveProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
6962  coeffs_.Add(value);
6963  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.coeffs)
6964 }
6965 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6967  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.coeffs)
6968  return coeffs_;
6969 }
6970 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6972  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.coeffs)
6973  return &coeffs_;
6974 }
6975 
6976 // double offset = 2;
6978  offset_ = 0;
6979 }
6980 inline double CpObjectiveProto::offset() const {
6981  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.offset)
6982  return offset_;
6983 }
6984 inline void CpObjectiveProto::set_offset(double value) {
6985 
6986  offset_ = value;
6987  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.offset)
6988 }
6989 
6990 // double scaling_factor = 3;
6992  scaling_factor_ = 0;
6993 }
6994 inline double CpObjectiveProto::scaling_factor() const {
6995  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.scaling_factor)
6996  return scaling_factor_;
6997 }
6998 inline void CpObjectiveProto::set_scaling_factor(double value) {
6999 
7000  scaling_factor_ = value;
7001  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.scaling_factor)
7002 }
7003 
7004 // repeated int64 domain = 5;
7005 inline int CpObjectiveProto::domain_size() const {
7006  return domain_.size();
7007 }
7009  domain_.Clear();
7010 }
7011 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::domain(int index) const {
7012  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.domain)
7013  return domain_.Get(index);
7014 }
7015 inline void CpObjectiveProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7016  domain_.Set(index, value);
7017  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.domain)
7018 }
7019 inline void CpObjectiveProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
7020  domain_.Add(value);
7021  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.domain)
7022 }
7023 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7025  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.domain)
7026  return domain_;
7027 }
7028 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7030  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.domain)
7031  return &domain_;
7032 }
7033 
7034 // -------------------------------------------------------------------
7035 
7036 // DecisionStrategyProto_AffineTransformation
7037 
7038 // int32 var = 1;
7040  var_ = 0;
7041 }
7042 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto_AffineTransformation::var() const {
7043  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
7044  return var_;
7045 }
7046 inline void DecisionStrategyProto_AffineTransformation::set_var(::PROTOBUF_NAMESPACE_ID::int32 value) {
7047 
7048  var_ = value;
7049  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
7050 }
7051 
7052 // int64 offset = 2;
7054  offset_ = PROTOBUF_LONGLONG(0);
7055 }
7056 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::offset() const {
7057  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
7058  return offset_;
7059 }
7060 inline void DecisionStrategyProto_AffineTransformation::set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
7061 
7062  offset_ = value;
7063  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
7064 }
7065 
7066 // int64 positive_coeff = 3;
7068  positive_coeff_ = PROTOBUF_LONGLONG(0);
7069 }
7070 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::positive_coeff() const {
7071  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
7072  return positive_coeff_;
7073 }
7074 inline void DecisionStrategyProto_AffineTransformation::set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value) {
7075 
7076  positive_coeff_ = value;
7077  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
7078 }
7079 
7080 // -------------------------------------------------------------------
7081 
7082 // DecisionStrategyProto
7083 
7084 // repeated int32 variables = 1;
7086  return variables_.size();
7087 }
7089  variables_.Clear();
7090 }
7091 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto::variables(int index) const {
7092  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variables)
7093  return variables_.Get(index);
7094 }
7095 inline void DecisionStrategyProto::set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7096  variables_.Set(index, value);
7097  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variables)
7098 }
7099 inline void DecisionStrategyProto::add_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
7100  variables_.Add(value);
7101  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.variables)
7102 }
7103 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7105  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.variables)
7106  return variables_;
7107 }
7108 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7110  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.variables)
7111  return &variables_;
7112 }
7113 
7114 // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
7116  variable_selection_strategy_ = 0;
7117 }
7119  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
7120  return static_cast< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy >(variable_selection_strategy_);
7121 }
7123 
7124  variable_selection_strategy_ = value;
7125  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
7126 }
7127 
7128 // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
7130  domain_reduction_strategy_ = 0;
7131 }
7133  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
7134  return static_cast< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy >(domain_reduction_strategy_);
7135 }
7137 
7138  domain_reduction_strategy_ = value;
7139  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
7140 }
7141 
7142 // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
7144  return transformations_.size();
7145 }
7147  transformations_.Clear();
7148 }
7149 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::mutable_transformations(int index) {
7150  // @@protoc_insertion_point(field_mutable:operations_research.sat.DecisionStrategyProto.transformations)
7151  return transformations_.Mutable(index);
7152 }
7153 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
7155  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.transformations)
7156  return &transformations_;
7157 }
7158 inline const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& DecisionStrategyProto::transformations(int index) const {
7159  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.transformations)
7160  return transformations_.Get(index);
7161 }
7162 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::add_transformations() {
7163  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.transformations)
7164  return transformations_.Add();
7165 }
7166 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
7168  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.transformations)
7169  return transformations_;
7170 }
7171 
7172 // -------------------------------------------------------------------
7173 
7174 // PartialVariableAssignment
7175 
7176 // repeated int32 vars = 1;
7178  return vars_.size();
7179 }
7181  vars_.Clear();
7182 }
7183 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::vars(int index) const {
7184  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.vars)
7185  return vars_.Get(index);
7186 }
7187 inline void PartialVariableAssignment::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7188  vars_.Set(index, value);
7189  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.vars)
7190 }
7191 inline void PartialVariableAssignment::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7192  vars_.Add(value);
7193  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.vars)
7194 }
7195 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7197  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.vars)
7198  return vars_;
7199 }
7200 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7202  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.vars)
7203  return &vars_;
7204 }
7205 
7206 // repeated int64 values = 2;
7208  return values_.size();
7209 }
7211  values_.Clear();
7212 }
7213 inline ::PROTOBUF_NAMESPACE_ID::int64 PartialVariableAssignment::values(int index) const {
7214  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.values)
7215  return values_.Get(index);
7216 }
7217 inline void PartialVariableAssignment::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7218  values_.Set(index, value);
7219  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.values)
7220 }
7221 inline void PartialVariableAssignment::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
7222  values_.Add(value);
7223  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.values)
7224 }
7225 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7227  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.values)
7228  return values_;
7229 }
7230 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7232  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.values)
7233  return &values_;
7234 }
7235 
7236 // -------------------------------------------------------------------
7237 
7238 // CpModelProto
7239 
7240 // string name = 1;
7242  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7243 }
7244 inline const std::string& CpModelProto::name() const {
7245  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.name)
7246  return name_.GetNoArena();
7247 }
7248 inline void CpModelProto::set_name(const std::string& value) {
7249 
7250  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7251  // @@protoc_insertion_point(field_set:operations_research.sat.CpModelProto.name)
7252 }
7253 inline void CpModelProto::set_name(std::string&& value) {
7254 
7255  name_.SetNoArena(
7256  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7257  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpModelProto.name)
7258 }
7259 inline void CpModelProto::set_name(const char* value) {
7260  GOOGLE_DCHECK(value != nullptr);
7261 
7262  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7263  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpModelProto.name)
7264 }
7265 inline void CpModelProto::set_name(const char* value, size_t size) {
7266 
7267  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7268  ::std::string(reinterpret_cast<const char*>(value), size));
7269  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpModelProto.name)
7270 }
7271 inline std::string* CpModelProto::mutable_name() {
7272 
7273  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.name)
7274  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7275 }
7276 inline std::string* CpModelProto::release_name() {
7277  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.name)
7278 
7279  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7280 }
7281 inline void CpModelProto::set_allocated_name(std::string* name) {
7282  if (name != nullptr) {
7283 
7284  } else {
7285 
7286  }
7287  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
7288  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.name)
7289 }
7290 
7291 // repeated .operations_research.sat.IntegerVariableProto variables = 2;
7292 inline int CpModelProto::variables_size() const {
7293  return variables_.size();
7294 }
7296  variables_.Clear();
7297 }
7298 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::mutable_variables(int index) {
7299  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.variables)
7300  return variables_.Mutable(index);
7301 }
7302 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
7304  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.variables)
7305  return &variables_;
7306 }
7307 inline const ::operations_research::sat::IntegerVariableProto& CpModelProto::variables(int index) const {
7308  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.variables)
7309  return variables_.Get(index);
7310 }
7311 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::add_variables() {
7312  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.variables)
7313  return variables_.Add();
7314 }
7315 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
7317  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.variables)
7318  return variables_;
7319 }
7320 
7321 // repeated .operations_research.sat.ConstraintProto constraints = 3;
7323  return constraints_.size();
7324 }
7326  constraints_.Clear();
7327 }
7328 inline ::operations_research::sat::ConstraintProto* CpModelProto::mutable_constraints(int index) {
7329  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.constraints)
7330  return constraints_.Mutable(index);
7331 }
7332 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
7334  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.constraints)
7335  return &constraints_;
7336 }
7337 inline const ::operations_research::sat::ConstraintProto& CpModelProto::constraints(int index) const {
7338  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.constraints)
7339  return constraints_.Get(index);
7340 }
7341 inline ::operations_research::sat::ConstraintProto* CpModelProto::add_constraints() {
7342  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.constraints)
7343  return constraints_.Add();
7344 }
7345 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
7347  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.constraints)
7348  return constraints_;
7349 }
7350 
7351 // .operations_research.sat.CpObjectiveProto objective = 4;
7352 inline bool CpModelProto::has_objective() const {
7353  return this != internal_default_instance() && objective_ != nullptr;
7354 }
7356  if (GetArenaNoVirtual() == nullptr && objective_ != nullptr) {
7357  delete objective_;
7358  }
7359  objective_ = nullptr;
7360 }
7361 inline const ::operations_research::sat::CpObjectiveProto& CpModelProto::objective() const {
7362  const ::operations_research::sat::CpObjectiveProto* p = objective_;
7363  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.objective)
7364  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::CpObjectiveProto*>(
7366 }
7367 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::release_objective() {
7368  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.objective)
7369 
7371  objective_ = nullptr;
7372  return temp;
7373 }
7374 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::mutable_objective() {
7375 
7376  if (objective_ == nullptr) {
7377  auto* p = CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(GetArenaNoVirtual());
7378  objective_ = p;
7379  }
7380  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.objective)
7381  return objective_;
7382 }
7384  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
7385  if (message_arena == nullptr) {
7386  delete objective_;
7387  }
7388  if (objective) {
7389  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
7390  if (message_arena != submessage_arena) {
7391  objective = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7392  message_arena, objective, submessage_arena);
7393  }
7394 
7395  } else {
7396 
7397  }
7398  objective_ = objective;
7399  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.objective)
7400 }
7401 
7402 // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
7404  return search_strategy_.size();
7405 }
7407  search_strategy_.Clear();
7408 }
7409 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::mutable_search_strategy(int index) {
7410  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.search_strategy)
7411  return search_strategy_.Mutable(index);
7412 }
7413 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
7415  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.search_strategy)
7416  return &search_strategy_;
7417 }
7418 inline const ::operations_research::sat::DecisionStrategyProto& CpModelProto::search_strategy(int index) const {
7419  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.search_strategy)
7420  return search_strategy_.Get(index);
7421 }
7422 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::add_search_strategy() {
7423  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.search_strategy)
7424  return search_strategy_.Add();
7425 }
7426 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
7428  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.search_strategy)
7429  return search_strategy_;
7430 }
7431 
7432 // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
7433 inline bool CpModelProto::has_solution_hint() const {
7434  return this != internal_default_instance() && solution_hint_ != nullptr;
7435 }
7437  if (GetArenaNoVirtual() == nullptr && solution_hint_ != nullptr) {
7438  delete solution_hint_;
7439  }
7440  solution_hint_ = nullptr;
7441 }
7442 inline const ::operations_research::sat::PartialVariableAssignment& CpModelProto::solution_hint() const {
7443  const ::operations_research::sat::PartialVariableAssignment* p = solution_hint_;
7444  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.solution_hint)
7445  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::PartialVariableAssignment*>(
7447 }
7448 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::release_solution_hint() {
7449  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.solution_hint)
7450 
7452  solution_hint_ = nullptr;
7453  return temp;
7454 }
7455 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::mutable_solution_hint() {
7456 
7457  if (solution_hint_ == nullptr) {
7458  auto* p = CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(GetArenaNoVirtual());
7459  solution_hint_ = p;
7460  }
7461  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.solution_hint)
7462  return solution_hint_;
7463 }
7465  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
7466  if (message_arena == nullptr) {
7467  delete solution_hint_;
7468  }
7469  if (solution_hint) {
7470  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
7471  if (message_arena != submessage_arena) {
7472  solution_hint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
7473  message_arena, solution_hint, submessage_arena);
7474  }
7475 
7476  } else {
7477 
7478  }
7479  solution_hint_ = solution_hint;
7480  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.solution_hint)
7481 }
7482 
7483 // -------------------------------------------------------------------
7484 
7485 // CpSolverResponse
7486 
7487 // .operations_research.sat.CpSolverStatus status = 1;
7489  status_ = 0;
7490 }
7492  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.status)
7493  return static_cast< ::operations_research::sat::CpSolverStatus >(status_);
7494 }
7496 
7497  status_ = value;
7498  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.status)
7499 }
7500 
7501 // repeated int64 solution = 2;
7503  return solution_.size();
7504 }
7506  solution_.Clear();
7507 }
7508 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution(int index) const {
7509  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution)
7510  return solution_.Get(index);
7511 }
7512 inline void CpSolverResponse::set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7513  solution_.Set(index, value);
7514  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution)
7515 }
7516 inline void CpSolverResponse::add_solution(::PROTOBUF_NAMESPACE_ID::int64 value) {
7517  solution_.Add(value);
7518  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution)
7519 }
7520 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7522  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution)
7523  return solution_;
7524 }
7525 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7527  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution)
7528  return &solution_;
7529 }
7530 
7531 // double objective_value = 3;
7533  objective_value_ = 0;
7534 }
7535 inline double CpSolverResponse::objective_value() const {
7536  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.objective_value)
7537  return objective_value_;
7538 }
7539 inline void CpSolverResponse::set_objective_value(double value) {
7540 
7541  objective_value_ = value;
7542  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.objective_value)
7543 }
7544 
7545 // double best_objective_bound = 4;
7547  best_objective_bound_ = 0;
7548 }
7550  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.best_objective_bound)
7551  return best_objective_bound_;
7552 }
7554 
7555  best_objective_bound_ = value;
7556  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.best_objective_bound)
7557 }
7558 
7559 // repeated int64 solution_lower_bounds = 18;
7561  return solution_lower_bounds_.size();
7562 }
7564  solution_lower_bounds_.Clear();
7565 }
7566 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_lower_bounds(int index) const {
7567  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_lower_bounds)
7568  return solution_lower_bounds_.Get(index);
7569 }
7570 inline void CpSolverResponse::set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7571  solution_lower_bounds_.Set(index, value);
7572  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_lower_bounds)
7573 }
7574 inline void CpSolverResponse::add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
7575  solution_lower_bounds_.Add(value);
7576  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_lower_bounds)
7577 }
7578 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7580  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
7581  return solution_lower_bounds_;
7582 }
7583 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7585  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
7586  return &solution_lower_bounds_;
7587 }
7588 
7589 // repeated int64 solution_upper_bounds = 19;
7591  return solution_upper_bounds_.size();
7592 }
7594  solution_upper_bounds_.Clear();
7595 }
7596 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_upper_bounds(int index) const {
7597  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_upper_bounds)
7598  return solution_upper_bounds_.Get(index);
7599 }
7600 inline void CpSolverResponse::set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7601  solution_upper_bounds_.Set(index, value);
7602  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_upper_bounds)
7603 }
7604 inline void CpSolverResponse::add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
7605  solution_upper_bounds_.Add(value);
7606  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_upper_bounds)
7607 }
7608 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7610  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
7611  return solution_upper_bounds_;
7612 }
7613 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7615  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
7616  return &solution_upper_bounds_;
7617 }
7618 
7619 // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
7621  return tightened_variables_.size();
7622 }
7624  tightened_variables_.Clear();
7625 }
7626 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::mutable_tightened_variables(int index) {
7627  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.tightened_variables)
7628  return tightened_variables_.Mutable(index);
7629 }
7630 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
7632  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.tightened_variables)
7633  return &tightened_variables_;
7634 }
7635 inline const ::operations_research::sat::IntegerVariableProto& CpSolverResponse::tightened_variables(int index) const {
7636  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.tightened_variables)
7637  return tightened_variables_.Get(index);
7638 }
7639 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::add_tightened_variables() {
7640  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.tightened_variables)
7641  return tightened_variables_.Add();
7642 }
7643 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
7645  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.tightened_variables)
7646  return tightened_variables_;
7647 }
7648 
7649 // bool all_solutions_were_found = 5;
7651  all_solutions_were_found_ = false;
7652 }
7654  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.all_solutions_were_found)
7655  return all_solutions_were_found_;
7656 }
7658 
7659  all_solutions_were_found_ = value;
7660  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.all_solutions_were_found)
7661 }
7662 
7663 // int64 num_booleans = 10;
7665  num_booleans_ = PROTOBUF_LONGLONG(0);
7666 }
7667 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_booleans() const {
7668  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_booleans)
7669  return num_booleans_;
7670 }
7671 inline void CpSolverResponse::set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value) {
7672 
7673  num_booleans_ = value;
7674  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_booleans)
7675 }
7676 
7677 // int64 num_conflicts = 11;
7679  num_conflicts_ = PROTOBUF_LONGLONG(0);
7680 }
7681 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_conflicts() const {
7682  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_conflicts)
7683  return num_conflicts_;
7684 }
7685 inline void CpSolverResponse::set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
7686 
7687  num_conflicts_ = value;
7688  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_conflicts)
7689 }
7690 
7691 // int64 num_branches = 12;
7693  num_branches_ = PROTOBUF_LONGLONG(0);
7694 }
7695 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_branches() const {
7696  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_branches)
7697  return num_branches_;
7698 }
7699 inline void CpSolverResponse::set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value) {
7700 
7701  num_branches_ = value;
7702  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_branches)
7703 }
7704 
7705 // int64 num_binary_propagations = 13;
7707  num_binary_propagations_ = PROTOBUF_LONGLONG(0);
7708 }
7709 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_binary_propagations() const {
7710  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_binary_propagations)
7711  return num_binary_propagations_;
7712 }
7713 inline void CpSolverResponse::set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
7714 
7715  num_binary_propagations_ = value;
7716  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_binary_propagations)
7717 }
7718 
7719 // int64 num_integer_propagations = 14;
7721  num_integer_propagations_ = PROTOBUF_LONGLONG(0);
7722 }
7723 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_integer_propagations() const {
7724  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_integer_propagations)
7725  return num_integer_propagations_;
7726 }
7727 inline void CpSolverResponse::set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
7728 
7729  num_integer_propagations_ = value;
7730  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_integer_propagations)
7731 }
7732 
7733 // double wall_time = 15;
7735  wall_time_ = 0;
7736 }
7737 inline double CpSolverResponse::wall_time() const {
7738  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.wall_time)
7739  return wall_time_;
7740 }
7741 inline void CpSolverResponse::set_wall_time(double value) {
7742 
7743  wall_time_ = value;
7744  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.wall_time)
7745 }
7746 
7747 // double user_time = 16;
7749  user_time_ = 0;
7750 }
7751 inline double CpSolverResponse::user_time() const {
7752  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.user_time)
7753  return user_time_;
7754 }
7755 inline void CpSolverResponse::set_user_time(double value) {
7756 
7757  user_time_ = value;
7758  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.user_time)
7759 }
7760 
7761 // double deterministic_time = 17;
7763  deterministic_time_ = 0;
7764 }
7766  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.deterministic_time)
7767  return deterministic_time_;
7768 }
7769 inline void CpSolverResponse::set_deterministic_time(double value) {
7770 
7771  deterministic_time_ = value;
7772  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.deterministic_time)
7773 }
7774 
7775 // double primal_integral = 22;
7777  primal_integral_ = 0;
7778 }
7779 inline double CpSolverResponse::primal_integral() const {
7780  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.primal_integral)
7781  return primal_integral_;
7782 }
7783 inline void CpSolverResponse::set_primal_integral(double value) {
7784 
7785  primal_integral_ = value;
7786  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.primal_integral)
7787 }
7788 
7789 // string solution_info = 20;
7791  solution_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7792 }
7793 inline const std::string& CpSolverResponse::solution_info() const {
7794  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_info)
7795  return solution_info_.GetNoArena();
7796 }
7797 inline void CpSolverResponse::set_solution_info(const std::string& value) {
7798 
7799  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7800  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_info)
7801 }
7802 inline void CpSolverResponse::set_solution_info(std::string&& value) {
7803 
7804  solution_info_.SetNoArena(
7805  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7806  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpSolverResponse.solution_info)
7807 }
7808 inline void CpSolverResponse::set_solution_info(const char* value) {
7809  GOOGLE_DCHECK(value != nullptr);
7810 
7811  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7812  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpSolverResponse.solution_info)
7813 }
7814 inline void CpSolverResponse::set_solution_info(const char* value, size_t size) {
7815 
7816  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7817  ::std::string(reinterpret_cast<const char*>(value), size));
7818  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpSolverResponse.solution_info)
7819 }
7821 
7822  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.solution_info)
7823  return solution_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7824 }
7826  // @@protoc_insertion_point(field_release:operations_research.sat.CpSolverResponse.solution_info)
7827 
7828  return solution_info_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7829 }
7830 inline void CpSolverResponse::set_allocated_solution_info(std::string* solution_info) {
7831  if (solution_info != nullptr) {
7832 
7833  } else {
7834 
7835  }
7836  solution_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), solution_info);
7837  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpSolverResponse.solution_info)
7838 }
7839 
7840 #ifdef __GNUC__
7841  #pragma GCC diagnostic pop
7842 #endif // __GNUC__
7843 // -------------------------------------------------------------------
7844 
7845 // -------------------------------------------------------------------
7846 
7847 // -------------------------------------------------------------------
7848 
7849 // -------------------------------------------------------------------
7850 
7851 // -------------------------------------------------------------------
7852 
7853 // -------------------------------------------------------------------
7854 
7855 // -------------------------------------------------------------------
7856 
7857 // -------------------------------------------------------------------
7858 
7859 // -------------------------------------------------------------------
7860 
7861 // -------------------------------------------------------------------
7862 
7863 // -------------------------------------------------------------------
7864 
7865 // -------------------------------------------------------------------
7866 
7867 // -------------------------------------------------------------------
7868 
7869 // -------------------------------------------------------------------
7870 
7871 // -------------------------------------------------------------------
7872 
7873 // -------------------------------------------------------------------
7874 
7875 // -------------------------------------------------------------------
7876 
7877 // -------------------------------------------------------------------
7878 
7879 // -------------------------------------------------------------------
7880 
7881 // -------------------------------------------------------------------
7882 
7883 // -------------------------------------------------------------------
7884 
7885 // -------------------------------------------------------------------
7886 
7887 // -------------------------------------------------------------------
7888 
7889 
7890 // @@protoc_insertion_point(namespace_scope)
7891 
7892 } // namespace sat
7893 } // namespace operations_research
7894 
7895 PROTOBUF_NAMESPACE_OPEN
7896 
7897 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy> : ::std::true_type {};
7898 template <>
7899 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy>() {
7901 }
7902 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy> : ::std::true_type {};
7903 template <>
7904 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy>() {
7906 }
7907 template <> struct is_proto_enum< ::operations_research::sat::CpSolverStatus> : ::std::true_type {};
7908 template <>
7909 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::CpSolverStatus>() {
7911 }
7912 
7913 PROTOBUF_NAMESPACE_CLOSE
7914 
7915 // @@protoc_insertion_point(global_scope)
7916 
7917 #include <google/protobuf/port_undef.inc>
7918 #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:1585
const std::string & CpSolverStatus_Name(T enum_t_value)
Definition: cp_model.pb.h:234
::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:5719
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:845
void clear_transformations()
Definition: cp_model.pb.h:7146
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5870
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::IntegerArgumentProto * release_int_prod()
Definition: cp_model.pb.h:6301
::operations_research::sat::CpObjectiveProto * mutable_objective()
Definition: cp_model.pb.h:7374
Definition: cp_model.pb.h:170
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:5112
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
std::string * release_name()
Definition: cp_model.pb.h:7276
static bool DomainReductionStrategy_IsValid(int value)
Definition: cp_model.pb.h:3852
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2442
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:7316
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:5920
void clear_status()
Definition: cp_model.pb.h:7488
void clear_all_diff()
Definition: cp_model.pb.h:6377
ReservoirConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1790
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & final_states() const
Definition: cp_model.pb.h:5745
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2445
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:4695
void set_all_solutions_were_found(bool value)
Definition: cp_model.pb.h:7657
virtual ~IntervalConstraintProto()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:3090
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_enforcement_literal()
Definition: cp_model.pb.h:5955
int GetCachedSize() const final
Definition: cp_model.pb.h:899
Definition: cp_model.pb.h:4400
static void InitAsDefaultInstance()
std::string * release_name()
Definition: cp_model.pb.h:4608
static void InitAsDefaultInstance()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~LinearConstraintProto()
Definition: cp_model.pb.h:1687
const ::operations_research::sat::IntegerArgumentProto & int_mod() const
Definition: cp_model.pb.h:6189
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4844
Definition: cp_model.pb.h:1138
void clear_num_integer_propagations()
Definition: cp_model.pb.h:7720
static bool DomainReductionStrategy_Parse(const std::string &name, DomainReductionStrategy *value)
Definition: cp_model.pb.h:3872
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2604
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_lower_bounds() const
Definition: cp_model.pb.h:7579
const ::operations_research::sat::BoolArgumentProto & bool_or() const
Definition: cp_model.pb.h:5984
void clear_linear()
Definition: cp_model.pb.h:6336
void clear_name()
Definition: cp_model.pb.h:7241
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:710
int actives_size() const
Definition: cp_model.pb.h:5240
static void InitAsDefaultInstance()
void clear_final_states()
Definition: cp_model.pb.h:5729
bool DecisionStrategyProto_VariableSelectionStrategy_Parse(const std::string &name, DecisionStrategyProto_VariableSelectionStrategy *value)
Definition: cp_model.pb.h:186
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static constexpr DomainReductionStrategy SELECT_MAX_VALUE
Definition: cp_model.pb.h:3846
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > * mutable_constraints()
Definition: cp_model.pb.h:7333
ElementConstraintProto & operator=(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1002
LinearConstraintProto * New() const final
Definition: cp_model.pb.h:874
Definition: cp_model.pb.h:3083
BoolArgumentProto()
DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_
::PROTOBUF_NAMESPACE_ID::int32 size() const
Definition: cp_model.pb.h:4961
int enforcement_literal_size() const
Definition: cp_model.pb.h:5931
void Swap(InverseConstraintProto *other)
Definition: cp_model.pb.h:2623
static void InitAsDefaultInstance()
int vars_size() const
Definition: cp_model.pb.h:7177
Definition: cp_model.pb.h:221
void clear_solution_upper_bounds()
Definition: cp_model.pb.h:7593
IntegerVariableProto * New() const final
Definition: cp_model.pb.h:302
Definition: cp_model.pb.h:3089
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:5328
void clear_y_intervals()
Definition: cp_model.pb.h:5043
void set_end(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4951
virtual ~CpObjectiveProto()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static void InitAsDefaultInstance()
int solution_lower_bounds_size() const
Definition: cp_model.pb.h:7560
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_literals()
Definition: cp_model.pb.h:5431
Definition: cp_model.pb.h:3085
void set_allocated_interval(::operations_research::sat::IntervalConstraintProto *interval)
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2290
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_
CircuitConstraintProto()
void Swap(AllDifferentConstraintProto *other)
Definition: cp_model.pb.h:729
::operations_research::sat::PartialVariableAssignment * release_solution_hint()
Definition: cp_model.pb.h:7448
static const CpObjectiveProto * internal_default_instance()
Definition: cp_model.pb.h:3407
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6941
CpObjectiveProto(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:3377
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_VariableSelectionStrategy_descriptor()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2756
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4410
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_lower_bounds()
Definition: cp_model.pb.h:7584
void clear_size()
Definition: cp_model.pb.h:4958
friend void swap(CumulativeConstraintProto &a, CumulativeConstraintProto &b)
Definition: cp_model.pb.h:1617
NoOverlapConstraintProto * New() const final
Definition: cp_model.pb.h:1337
void clear_target()
Definition: cp_model.pb.h:4692
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_x_intervals()
Definition: cp_model.pb.h:5034
Definition: cp_model.pb.h:1573
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5314
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5378
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5128
bool has_int_prod() const
Definition: cp_model.pb.h:6289
const ::operations_research::sat::CircuitCoveringConstraintProto & circuit_covering() const
Definition: cp_model.pb.h:6558
Definition: cp_model.pb.h:2728
void clear_transition_label()
Definition: cp_model.pb.h:5819
int GetCachedSize() const final
Definition: cp_model.pb.h:1362
BoolArgumentProto & operator=(const BoolArgumentProto &from)
Definition: cp_model.pb.h:411
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:7201
NoOverlapConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1341
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & x_intervals() const
Definition: cp_model.pb.h:5029
::operations_research::sat::RoutesConstraintProto * mutable_routes()
Definition: cp_model.pb.h:6523
bool has_all_diff() const
Definition: cp_model.pb.h:6371
void clear_int_min()
Definition: cp_model.pb.h:6254
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4407
Definition: cp_model.pb.h:164
bool IsInitialized() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1169
Definition: cp_model.pb.h:2192
bool IsInitialized() const final
void set_allocated_reservoir(::operations_research::sat::ReservoirConstraintProto *reservoir)
Definition: cp_model.pb.h:2842
CpSolverResponse & operator=(const CpSolverResponse &from)
Definition: cp_model.pb.h:4292
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
bool IsInitialized() const final
void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5054
size_t ByteSizeLong() const final
const ::operations_research::sat::NoOverlap2DConstraintProto & no_overlap_2d() const
Definition: cp_model.pb.h:6845
static void InitAsDefaultInstance()
void clear_heads()
Definition: cp_model.pb.h:5401
int domain_size() const
Definition: cp_model.pb.h:4834
int values_size() const
Definition: cp_model.pb.h:5600
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:4682
static const ElementConstraintProto & default_instance()
int heads_size() const
Definition: cp_model.pb.h:5304
PartialVariableAssignment()
::operations_research::sat::CircuitCoveringConstraintProto * mutable_circuit_covering()
Definition: cp_model.pb.h:6564
CircuitConstraintProto(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1919
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::ElementConstraintProto * release_element()
Definition: cp_model.pb.h:6424
void clear_index()
Definition: cp_model.pb.h:4868
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto * New() const final
Definition: cp_model.pb.h:1192
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:4613
Definition: cp_model.pb.h:1846
AllDifferentConstraintProto * New() const final
Definition: cp_model.pb.h:736
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6936
AutomatonConstraintProto & operator=(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2744
bool has_cumulative() const
Definition: cp_model.pb.h:6863
void clear_positive_coeff()
Definition: cp_model.pb.h:7067
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
Definition: cp_model.pb.h:2971
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
int solution_size() const
Definition: cp_model.pb.h:7502
RoutesConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2136
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4986
static constexpr DomainReductionStrategy DomainReductionStrategy_MIN
Definition: cp_model.pb.h:3855
double deterministic_time() const
Definition: cp_model.pb.h:7765
static const CpSolverResponse & default_instance()
bool has_circuit_covering() const
Definition: cp_model.pb.h:6535
static bool VariableSelectionStrategy_IsValid(int value)
Definition: cp_model.pb.h:3818
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2769
ElementConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1044
size_t ByteSizeLong() const final
void Swap(IntegerArgumentProto *other)
Definition: cp_model.pb.h:584
int tails_size() const
Definition: cp_model.pb.h:5368
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:5392
Definition: cp_model.pb.h:2988
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
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:4699
AutomatonConstraintProto * New() const final
Definition: cp_model.pb.h:2782
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3398
Definition: cp_model.pb.h:4395
PartialVariableAssignment & operator=(const PartialVariableAssignment &from)
Definition: cp_model.pb.h:3944
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3581
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6931
Definition: cp_model.pb.h:2982
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5224
PartialVariableAssignment & operator=(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:3948
int final_states_size() const
Definition: cp_model.pb.h:5726
LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_
Definition: cp_model.pb.h:1849
PartialVariableAssignment * New() const final
Definition: cp_model.pb.h:3986
void clear_tails()
Definition: cp_model.pb.h:5371
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool has_bool_and() const
Definition: cp_model.pb.h:6002
void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5800
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:4915
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:5137
size_t ByteSizeLong() const final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1614
DecisionStrategyProto * New() const final
Definition: cp_model.pb.h:3749
int vars_size() const
Definition: cp_model.pb.h:4896
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy variable_selection_strategy() const
Definition: cp_model.pb.h:7118
static const LinearConstraintProto & default_instance()
TableConstraintProto & operator=(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2433
DecisionStrategyProto_DomainReductionStrategy
Definition: cp_model.pb.h:191
void clear_heads()
Definition: cp_model.pb.h:5307
NoOverlap2DConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1479
static constexpr int VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:3825
void Swap(CpModelProto *other)
Definition: cp_model.pb.h:4131
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5284
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > & search_strategy() const
Definition: cp_model.pb.h:7427
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::IntegerArgumentProto * mutable_int_mod()
Definition: cp_model.pb.h:6195
CircuitCoveringConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2323
void clear_f_inverse()
Definition: cp_model.pb.h:5681
void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5550
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void Swap(CircuitCoveringConstraintProto *other)
Definition: cp_model.pb.h:2312
void clear_values()
Definition: cp_model.pb.h:7210
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2617
double primal_integral() const
Definition: cp_model.pb.h:7779
ReservoirConstraintProto()
int coeffs_size() const
Definition: cp_model.pb.h:6947
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:478
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_label() const
Definition: cp_model.pb.h:5835
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static constexpr VariableSelectionStrategy CHOOSE_MAX_DOMAIN_SIZE
Definition: cp_model.pb.h:3816
void clear_bool_and()
Definition: cp_model.pb.h:6008
Definition: cp_model.pb.h:220
::operations_research::sat::ReservoirConstraintProto * mutable_reservoir()
Definition: cp_model.pb.h:6728
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > & tightened_variables() const
Definition: cp_model.pb.h:7644
Definition: cp_model.pb.h:2978
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int intervals_size() const
Definition: cp_model.pb.h:4976
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:6248
::operations_research::sat::BoolArgumentProto * release_bool_xor()
Definition: cp_model.pb.h:6096
void clear_automaton()
Definition: cp_model.pb.h:6623
::operations_research::sat::IntervalConstraintProto * release_interval()
Definition: cp_model.pb.h:6752
RoutesConstraintProto & operator=(const RoutesConstraintProto &from)
Definition: cp_model.pb.h:2090
std::string * mutable_name()
Definition: cp_model.pb.h:4603
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int32 index() const
Definition: cp_model.pb.h:4871
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1314
NoOverlap2DConstraintProto & operator=(const NoOverlap2DConstraintProto &from)
Definition: cp_model.pb.h:1433
int GetCachedSize() const final
Definition: cp_model.pb.h:2807
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1452
int solution_upper_bounds_size() const
Definition: cp_model.pb.h:7590
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_allocated_linear(::operations_research::sat::LinearConstraintProto *linear)
static constexpr VariableSelectionStrategy CHOOSE_HIGHEST_MAX
Definition: cp_model.pb.h:3812
static void InitAsDefaultInstance()
void set_allocated_int_prod(::operations_research::sat::IntegerArgumentProto *int_prod)
Definition: cp_model.pb.h:1099
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:424
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4818
Definition: cp_model.pb.h:986
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5412
BoolArgumentProto & operator=(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:415
friend void swap(AllDifferentConstraintProto &a, AllDifferentConstraintProto &b)
Definition: cp_model.pb.h:726
Definition: cp_model.pb.h:2972
::PROTOBUF_NAMESPACE_ID::int32 var() const
Definition: cp_model.pb.h:7042
AutomatonConstraintProto()
Definition: cp_model.pb.h:4402
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2448
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5288
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CpSolverStatus_descriptor()
Definition: cp_model.pb.h:3082
static const CpModelProto & default_instance()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1953
::operations_research::sat::CumulativeConstraintProto * mutable_cumulative()
Definition: cp_model.pb.h:6892
RoutesConstraintProto & operator=(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2094
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3411
Definition: cp_model.pb.h:1912
Definition: cp_model.pb.h:3883
DecisionStrategyProto_AffineTransformation & operator=(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:3566
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:7231
::PROTOBUF_NAMESPACE_ID::int32 capacity() const
Definition: cp_model.pb.h:5077
bool has_int_mod() const
Definition: cp_model.pb.h:6166
void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7685
CircuitCoveringConstraintProto(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2272
static const CircuitConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1949
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:1283
void set_solution_info(const std::string &value)
Definition: cp_model.pb.h:7797
void Swap(LinearConstraintProto *other)
Definition: cp_model.pb.h:867
CircuitCoveringConstraintProto & operator=(const CircuitCoveringConstraintProto &from)
Definition: cp_model.pb.h:2277
void clear_num_booleans()
Definition: cp_model.pb.h:7664
void set_allocated_all_diff(::operations_research::sat::AllDifferentConstraintProto *all_diff)
virtual ~NoOverlap2DConstraintProto()
CpObjectiveProto()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:289
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:5452
LinearConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:878
const ::operations_research::sat::TableConstraintProto & table() const
Definition: cp_model.pb.h:6599
static void InitAsDefaultInstance()
bool has_objective() const
Definition: cp_model.pb.h:7352
void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5662
bool CpSolverStatus_IsValid(int value)
friend void swap(NoOverlap2DConstraintProto &a, NoOverlap2DConstraintProto &b)
Definition: cp_model.pb.h:1465
int GetCachedSize() const final
Definition: cp_model.pb.h:3629
const ::operations_research::sat::AllDifferentConstraintProto & all_diff() const
Definition: cp_model.pb.h:6394
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4125
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const
Definition: cp_model.pb.h:7070
CpModelProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4142
ConstraintCase
Definition: cp_model.pb.h:2965
virtual ~CpSolverResponse()
CpSolverResponse & operator=(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:4296
Definition: cp_model.pb.h:3665
Definition: cp_model.pb.h:3077
void clear_best_objective_bound()
Definition: cp_model.pb.h:7546
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_label()
Definition: cp_model.pb.h:5840
void clear_all_solutions_were_found()
Definition: cp_model.pb.h:7650
AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_
void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5766
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:4725
int GetCachedSize() const final
Definition: cp_model.pb.h:3449
Definition: cp_model.pb.h:2966
Definition: cp_model.pb.h:3073
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:851
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::operations_research::sat::IntegerArgumentProto & int_div() const
Definition: cp_model.pb.h:6148
BoolArgumentProto(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:406
Definition: cp_model.pb.h:4201
int GetCachedSize() const final
Definition: cp_model.pb.h:761
::operations_research::sat::BoolArgumentProto * mutable_bool_and()
Definition: cp_model.pb.h:6031
bool IsInitialized() const final
AllDifferentConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:740
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1179
size_t ByteSizeLong() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & y_intervals() const
Definition: cp_model.pb.h:5059
Definition: cp_model.pb.h:2986
CpSolverResponse(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:4287
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
const ::operations_research::sat::PartialVariableAssignment & solution_hint() const
Definition: cp_model.pb.h:7442
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: cp_model.pb.h:934
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4716
size_t ByteSizeLong() const final
int demands_size() const
Definition: cp_model.pb.h:5118
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3395
friend void swap(NoOverlapConstraintProto &a, NoOverlapConstraintProto &b)
Definition: cp_model.pb.h:1327
static const IntervalConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1175
int tightened_variables_size() const
Definition: cp_model.pb.h:7620
int GetCachedSize() const final
Definition: cp_model.pb.h:1500
Definition: cp_model.pb.h:3072
NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void clear_circuit_covering()
Definition: cp_model.pb.h:6541
void clear_domain_reduction_strategy()
Definition: cp_model.pb.h:7129
Definition: cp_model.pb.h:512
void clear_intervals()
Definition: cp_model.pb.h:5091
static const IntegerVariableProto * internal_default_instance()
Definition: cp_model.pb.h:285
void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5081
void clear_num_binary_propagations()
Definition: cp_model.pb.h:7706
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2119
bool has_bool_xor() const
Definition: cp_model.pb.h:6084
Definition: cp_model.h:52
Definition: cp_model.pb.h:3078
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7191
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & demands() const
Definition: cp_model.pb.h:5229
CpModelProto * New() const final
Definition: cp_model.pb.h:4138
bool IsInitialized() const final
static const InverseConstraintProto & default_instance()
friend void swap(DecisionStrategyProto_AffineTransformation &a, DecisionStrategyProto_AffineTransformation &b)
Definition: cp_model.pb.h:3594
void set_allocated_inverse(::operations_research::sat::InverseConstraintProto *inverse)
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7015
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:5107
void Swap(CumulativeConstraintProto *other)
Definition: cp_model.pb.h:1620
bool IsInitialized() const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_distinguished_nodes()
Definition: cp_model.pb.h:5560
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
IntegerArgumentProto & operator=(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:553
CpModelProto & operator=(const CpModelProto &from)
Definition: cp_model.pb.h:4096
Definition: cp_model.pb.h:3070
NoOverlap2DConstraintProto * New() const final
Definition: cp_model.pb.h:1475
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5594
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4848
bool IsInitialized() const final
void clear_variables()
Definition: cp_model.pb.h:7295
Definition: cp_model.pb.h:2841
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:568
static const IntegerArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:574
virtual ~BoolArgumentProto()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4305
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:5387
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:3093
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:723
virtual ~DecisionStrategyProto_AffineTransformation()
static void InitAsDefaultInstance()
void clear_name()
Definition: cp_model.pb.h:4573
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ReservoirConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1769
ReservoirConstraintProto & operator=(const ReservoirConstraintProto &from)
Definition: cp_model.pb.h:1744
NoOverlap2DConstraintProto()
int GetCachedSize() const final
Definition: cp_model.pb.h:1217
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const CumulativeConstraintProto & default_instance()
Definition: cp_model.pb.h:3484
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:5298
IntegerVariableProto(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:255
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution()
Definition: cp_model.pb.h:7526
void clear_solution_lower_bounds()
Definition: cp_model.pb.h:7563
int tails_size() const
Definition: cp_model.pb.h:5274
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
int variables_size() const
Definition: cp_model.pb.h:7292
ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_
static const AllDifferentConstraintProto & default_instance()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
::operations_research::sat::NoOverlapConstraintProto * release_no_overlap()
Definition: cp_model.pb.h:6793
Definition: cp_model.pb.h:196
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:7056
Definition: cp_model.pb.h:224
Definition: cp_model.pb.h:219
static const PartialVariableAssignment * internal_default_instance()
Definition: cp_model.pb.h:3969
Definition: cp_model.pb.h:2980
void set_start(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4937
ElementConstraintProto(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:993
void clear_offset()
Definition: cp_model.pb.h:6977
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_min_level()
Definition: cp_model.pb.h:5152
::operations_research::sat::BoolArgumentProto * release_bool_or()
Definition: cp_model.pb.h:5973
bool CpSolverStatus_Parse(const std::string &name, CpSolverStatus *value)
Definition: cp_model.pb.h:241
bool IsInitialized() const final
void clear_vars()
Definition: cp_model.pb.h:4743
static void InitAsDefaultInstance()
ElementConstraintProto & operator=(const ElementConstraintProto &from)
Definition: cp_model.pb.h:998
ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(CpModelProto &a, CpModelProto &b)
Definition: cp_model.pb.h:4128
void set_objective_value(double value)
Definition: cp_model.pb.h:7539
Definition: cp_model.pb.h:3486
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3973
void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5516
void clear_vars()
Definition: cp_model.pb.h:5573
void clear_vars()
Definition: cp_model.pb.h:6920
::operations_research::sat::LinearConstraintProto * release_linear()
Definition: cp_model.pb.h:6342
static const RoutesConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2115
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::CircuitCoveringConstraintProto * release_circuit_covering()
Definition: cp_model.pb.h:6547
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_tail()
Definition: cp_model.pb.h:5780
static const PartialVariableAssignment & default_instance()
static const std::string & DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:3866
Definition: cp_model.pb.h:3071
int values_size() const
Definition: cp_model.pb.h:7207
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:2344
Definition: cp_model.pb.h:3483
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5610
CumulativeConstraintProto()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
const std::string & DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:206
bool has_solution_hint() const
Definition: cp_model.pb.h:7433
CircuitConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1970
static constexpr DomainReductionStrategy DomainReductionStrategy_MAX
Definition: cp_model.pb.h:3857
void set_target(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4889
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:4920
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_head()
Definition: cp_model.pb.h:5810
int GetCachedSize() const final
Definition: cp_model.pb.h:2496
void set_name(const std::string &value)
Definition: cp_model.pb.h:5887
Definition: cp_model.pb.h:3485
IntegerArgumentProto & operator=(const IntegerArgumentProto &from)
Definition: cp_model.pb.h:549
CircuitCoveringConstraintProto & operator=(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2281
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1011
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: cp_model.pb.h:2977
Definition: cp_model.pb.h:4198
int coeffs_size() const
Definition: cp_model.pb.h:4804
Definition: cp_model.pb.h:362
CpSolverResponse * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4338
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5382
::operations_research::sat::RoutesConstraintProto * release_routes()
Definition: cp_model.pb.h:6506
Definition: cp_model.pb.h:3080
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7099
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:4995
void clear_vars()
Definition: cp_model.pb.h:4709
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2960
void Swap(IntegerVariableProto *other)
Definition: cp_model.pb.h:295
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1308
int x_intervals_size() const
Definition: cp_model.pb.h:5010
bool has_no_overlap_2d() const
Definition: cp_model.pb.h:6822
size_t ByteSizeLong() const final
static const NoOverlap2DConstraintProto & default_instance()
Definition: cp_model.pb.h:2975
Definition: cp_model.pb.h:3663
DecisionStrategyProto()
int y_intervals_size() const
Definition: cp_model.pb.h:5040
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:427
size_t ByteSizeLong() const final
void clear_vars()
Definition: cp_model.pb.h:7180
void clear_int_mod()
Definition: cp_model.pb.h:6172
void clear_variable_selection_strategy()
Definition: cp_model.pb.h:7115
TableConstraintProto * New() const final
Definition: cp_model.pb.h:2471
Definition: cp_model.pb.h:1688
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7217
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & variables() const
Definition: cp_model.pb.h:7104
::operations_research::sat::LinearConstraintProto * mutable_linear()
Definition: cp_model.pb.h:6359
Definition: cp_model.pb.h:2026
int vars_size() const
Definition: cp_model.pb.h:4774
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void set_allocated_circuit_covering(::operations_research::sat::CircuitCoveringConstraintProto *circuit_covering)
ReservoirConstraintProto * New() const final
Definition: cp_model.pb.h:1786
void clear_solution_info()
Definition: cp_model.pb.h:7790
TableConstraintProto(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2424
void clear_name()
Definition: cp_model.pb.h:5880
InverseConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2634
ElementConstraintProto()
int transformations_size() const
Definition: cp_model.pb.h:7143
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > * mutable_search_strategy()
Definition: cp_model.pb.h:7414
static const InverseConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2613
friend void swap(BoolArgumentProto &a, BoolArgumentProto &b)
Definition: cp_model.pb.h:443
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN
Definition: cp_model.pb.h:200
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:5142
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:5619
void set_allocated_solution_hint(::operations_research::sat::PartialVariableAssignment *solution_hint)
Definition: cp_model.pb.h:7464
size_t ByteSizeLong() const final
::operations_research::sat::TableConstraintProto * mutable_table()
Definition: cp_model.pb.h:6605
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_actives()
Definition: cp_model.pb.h:5264
void clear_coeffs()
Definition: cp_model.pb.h:4807
::operations_research::sat::NoOverlapConstraintProto * mutable_no_overlap()
Definition: cp_model.pb.h:6810
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:5589
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:4858
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
friend void swap(ConstraintProto &a, ConstraintProto &b)
Definition: cp_model.pb.h:3000
size_t ByteSizeLong() const final
CpModelProto(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:4091
Definition: cp_model.pb.h:2968
static void InitAsDefaultInstance()
ConstraintProto * New() const final
Definition: cp_model.pb.h:3010
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7221
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4906
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
Definition: cp_model.pb.h:168
void clear_num_conflicts()
Definition: cp_model.pb.h:7678
IntegerArgumentProto()
const ::operations_research::sat::InverseConstraintProto & inverse() const
Definition: cp_model.pb.h:6681
Definition: cp_model.pb.h:2532
Definition: cp_model.pb.h:193
CircuitConstraintProto & operator=(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1928
static void InitAsDefaultInstance()
static const AutomatonConstraintProto & default_instance()
ConstraintCase constraint_case() const
Definition: cp_model.pb.h:6909
Definition: cp_model.pb.h:4397
bool has_element() const
Definition: cp_model.pb.h:6412
RoutesConstraintProto(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2085
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:2078
int demands_size() const
Definition: cp_model.pb.h:5210
std::string * mutable_solution_info()
Definition: cp_model.pb.h:7820
Definition: cp_model.pb.h:933
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5220
Definition: cp_model.pb.h:3087
Definition: cp_model.pb.h:1848
InverseConstraintProto(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2583
CpSolverResponse * New() const final
Definition: cp_model.pb.h:4334
static constexpr DomainReductionStrategy SELECT_LOWER_HALF
Definition: cp_model.pb.h:3848
IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_
bool IsInitialized() const final
Definition: cp_model.pb.h:4406
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
bool IsInitialized() const final
void clear_table()
Definition: cp_model.pb.h:6582
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1163
void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5830
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_tightened_variables()
Definition: cp_model.pb.h:7631
DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3963
void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5770
friend void swap(ElementConstraintProto &a, ElementConstraintProto &b)
Definition: cp_model.pb.h:1030
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:1251
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:616
Definition: cp_model.pb.h:3091
Definition: cp_model.pb.h:2929
virtual ~ElementConstraintProto()
RoutesConstraintProto()
friend void swap(LinearConstraintProto &a, LinearConstraintProto &b)
Definition: cp_model.pb.h:864
double best_objective_bound() const
Definition: cp_model.pb.h:7549
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
bool has_automaton() const
Definition: cp_model.pb.h:6617
int f_direct_size() const
Definition: cp_model.pb.h:5648
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
ConstraintProto()
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
Definition: cp_model.pb.h:2845
void set_deterministic_time(double value)
Definition: cp_model.pb.h:7769
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1773
void Swap(RoutesConstraintProto *other)
Definition: cp_model.pb.h:2125
CircuitConstraintProto & operator=(const CircuitConstraintProto &from)
Definition: cp_model.pb.h:1924
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:3821
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:562
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
int vars_size() const
Definition: cp_model.pb.h:5846
Definition: cp_model.pb.h:222
void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5740
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_demands()
Definition: cp_model.pb.h:5461
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & times() const
Definition: cp_model.pb.h:5199
void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7516
static const NoOverlapConstraintProto & default_instance()
RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3957
static const TableConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & enforcement_literal() const
Definition: cp_model.pb.h:5950
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX
Definition: cp_model.pb.h:201
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_f_direct()
Definition: cp_model.pb.h:5651
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5348
void clear_solution_hint()
Definition: cp_model.pb.h:7436
static constexpr int DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:3859
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:279
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1462
::operations_research::sat::IntegerArgumentProto * mutable_int_prod()
Definition: cp_model.pb.h:6318
DecisionStrategyProto_AffineTransformation(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:3557
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & nexts() const
Definition: cp_model.pb.h:5525
constexpr int DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:202
void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7600
size_t ByteSizeLong() const final
void add_times(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5194
AllDifferentConstraintProto()
::operations_research::sat::PartialVariableAssignment * mutable_solution_hint()
Definition: cp_model.pb.h:7455
int variables_size() const
Definition: cp_model.pb.h:7085
::operations_research::sat::IntegerVariableProto * add_variables()
Definition: cp_model.pb.h:7311
Definition: cp_model.pb.h:795
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:2655
const std::string & solution_info() const
Definition: cp_model.pb.h:7793
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_upper_bounds() const
Definition: cp_model.pb.h:7609
bool has_routes() const
Definition: cp_model.pb.h:6494
Definition: cp_model.pb.h:4405
void clear_scaling_factor()
Definition: cp_model.pb.h:6991
::operations_research::sat::ElementConstraintProto * mutable_element()
Definition: cp_model.pb.h:6441
static const DecisionStrategyProto * internal_default_instance()
Definition: cp_model.pb.h:3732
void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5826
Definition: cp_model.pb.h:3088
InverseConstraintProto & operator=(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2592
bool has_reservoir() const
Definition: cp_model.pb.h:6699
::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const
Definition: cp_model.pb.h:7723
DecisionStrategyProto_VariableSelectionStrategy
Definition: cp_model.pb.h:163
void clear_nexts()
Definition: cp_model.pb.h:5509
static void InitAsDefaultInstance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1311
CumulativeConstraintProto & operator=(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1589
bool all_solutions_were_found() const
Definition: cp_model.pb.h:7653
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:713
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:5865
LinearConstraintProto & operator=(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:836
ConstraintProto(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2936
Definition: cp_model.pb.h:4404
std::string * mutable_name()
Definition: cp_model.pb.h:5910
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:2844
void set_status(::operations_research::sat::CpSolverStatus value)
Definition: cp_model.pb.h:7495
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:2846
Definition: cp_model.pb.h:4084
NoOverlapConstraintProto & operator=(const NoOverlapConstraintProto &from)
Definition: cp_model.pb.h:1295
bool has_bool_or() const
Definition: cp_model.pb.h:5961
void clear_target()
Definition: cp_model.pb.h:4882
int GetCachedSize() const final
Definition: cp_model.pb.h:3035
Definition: cp_model.pb.h:4394
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3960
Definition: cp_model.pb.h:1100
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:2378
Definition: cp_model.pb.h:3882
void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5020
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2957
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void clear_element()
Definition: cp_model.pb.h:6418
::operations_research::sat::AutomatonConstraintProto * mutable_automaton()
Definition: cp_model.pb.h:6646
bool has_circuit() const
Definition: cp_model.pb.h:6453
Definition: cp_model.pb.h:3932
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5442
virtual ~AllDifferentConstraintProto()
void clear_variables()
Definition: cp_model.pb.h:7088
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_variables()
Definition: cp_model.pb.h:7109
::operations_research::sat::DecisionStrategyProto_AffineTransformation * add_transformations()
Definition: cp_model.pb.h:7162
BoolArgumentProto * New() const final
Definition: cp_model.pb.h:453
void set_allocated_routes(::operations_research::sat::RoutesConstraintProto *routes)
double user_time() const
Definition: cp_model.pb.h:7751
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4814
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4197
Definition: cp_model.pb.h:3076
void set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value)
Definition: cp_model.pb.h:7136
::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:3808
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:6971
::operations_research::sat::InverseConstraintProto * release_inverse()
Definition: cp_model.pb.h:6670
static const CumulativeConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1610
static const CpObjectiveProto & default_instance()
const ::operations_research::sat::IntervalConstraintProto & interval() const
Definition: cp_model.pb.h:6763
void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5688
void clear_domain()
Definition: cp_model.pb.h:7008
::operations_research::sat::BoolArgumentProto * release_bool_and()
Definition: cp_model.pb.h:6014
::operations_research::sat::IntegerArgumentProto * release_int_div()
Definition: cp_model.pb.h:6137
static constexpr VariableSelectionStrategy CHOOSE_MIN_DOMAIN_SIZE
Definition: cp_model.pb.h:3814
int nexts_size() const
Definition: cp_model.pb.h:5506
ElementConstraintProto * New() const final
Definition: cp_model.pb.h:1040
Definition: cp_model.pb.h:4202
Definition: cp_model.pb.h:3695
::operations_research::sat::IntegerArgumentProto * mutable_int_min()
Definition: cp_model.pb.h:6277
std::string * release_solution_info()
Definition: cp_model.pb.h:7825
DecisionStrategyProto_AffineTransformation * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3608
TableConstraintProto & operator=(const TableConstraintProto &from)
Definition: cp_model.pb.h:2429
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:276
static const LinearConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:857
void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5945
int GetCachedSize() const final
Definition: cp_model.pb.h:327
Definition: cp_model.pb.h:197
void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7060
void clear_vars()
Definition: cp_model.pb.h:4777
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1014
::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const
Definition: cp_model.pb.h:7709
PartialVariableAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3990
::PROTOBUF_NAMESPACE_ID::int64 capacity() const
Definition: cp_model.pb.h:5491
DecisionStrategyProto & operator=(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:3711
size_t ByteSizeLong() const final
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2607
::operations_research::sat::CircuitConstraintProto * mutable_circuit()
Definition: cp_model.pb.h:6482
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_inverse()
Definition: cp_model.pb.h:5702
virtual ~NoOverlapConstraintProto()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7604
void clear_tightened_variables()
Definition: cp_model.pb.h:7623
void Swap(TableConstraintProto *other)
Definition: cp_model.pb.h:2464
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1017
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: cp_model.pb.h:55
::operations_research::sat::DecisionStrategyProto * add_search_strategy()
Definition: cp_model.pb.h:7422
bool IsInitialized() const final
size_t ByteSizeLong() const final
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4672
int search_strategy_size() const
Definition: cp_model.pb.h:7403
CircuitCoveringConstraintProto()
static const CpSolverResponse * internal_default_instance()
Definition: cp_model.pb.h:4317
Definition: cp_model.pb.h:169
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const CircuitCoveringConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2302
void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7699
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const std::string & name() const
Definition: cp_model.pb.h:5883
bool has_int_max() const
Definition: cp_model.pb.h:6207
Definition: cp_model.pb.h:935
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
void clear_end()
Definition: cp_model.pb.h:4944
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_direct()
Definition: cp_model.pb.h:5672
void Swap(AutomatonConstraintProto *other)
Definition: cp_model.pb.h:2775
void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5173
Definition: cp_model.pb.h:399
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4634
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > & constraints() const
Definition: cp_model.pb.h:7346
static const CpModelProto * internal_default_instance()
Definition: cp_model.pb.h:4121
int constraints_size() const
Definition: cp_model.pb.h:7322
Definition: cp_model.pb.h:2970
static const RoutesConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:5323
int literals_size() const
Definition: cp_model.pb.h:5428
bool IsInitialized() const final
bool IsInitialized() const final
void clear_max_level()
Definition: cp_model.pb.h:5166
void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5159
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:5417
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~IntegerArgumentProto()
void clear_constraints()
Definition: cp_model.pb.h:7325
DecisionStrategyProto_AffineTransformation * New() const final
Definition: cp_model.pb.h:3604
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const DecisionStrategyProto & default_instance()
Definition: cp_model.pb.h:3086
static void InitAsDefaultInstance()
Definition: cp_model.pb.h:2193
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7187
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto()
Definition: cp_model.pb.h:2191
Definition: cp_model.pb.h:682
void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5736
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_capacity()
Definition: cp_model.pb.h:5488
CpObjectiveProto * New() const final
Definition: cp_model.pb.h:3424
Definition: cp_model.pb.h:248
Definition: cp_model.pb.h:2969
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void Swap(DecisionStrategyProto_AffineTransformation *other)
Definition: cp_model.pb.h:3597
bool IsInitialized() const final
friend void swap(CircuitCoveringConstraintProto &a, CircuitCoveringConstraintProto &b)
Definition: cp_model.pb.h:2309
::operations_research::sat::AllDifferentConstraintProto * release_all_diff()
Definition: cp_model.pb.h:6383
ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4720
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3726
void clear_transition_head()
Definition: cp_model.pb.h:5789
const ::operations_research::sat::BoolArgumentProto & bool_and() const
Definition: cp_model.pb.h:6025
void set_allocated_table(::operations_research::sat::TableConstraintProto *table)
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5468
static constexpr DomainReductionStrategy SELECT_MIN_VALUE
Definition: cp_model.pb.h:3844
Definition: cp_model.pb.h:223
void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7570
int vars_size() const
Definition: cp_model.pb.h:5570
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1940
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1324
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1027
void clear_starting_state()
Definition: cp_model.pb.h:5712
virtual ~TableConstraintProto()
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:2772
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
Definition: cp_model.pb.h:3370
int GetCachedSize() const final
Definition: cp_model.pb.h:4163
Definition: cp_model.pb.h:194
Definition: cp_model.pb.h:3880
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:4823
Definition: cp_model.pb.h:192
::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const
Definition: cp_model.pb.h:7667
static const ConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2993
void Swap(ElementConstraintProto *other)
Definition: cp_model.pb.h:1033
const ::operations_research::sat::CpObjectiveProto & objective() const
Definition: cp_model.pb.h:7361
DecisionStrategyProto_VariableSelectionStrategy VariableSelectionStrategy
Definition: cp_model.pb.h:3807
Definition: cp_model.pb.h:4280
void set_size(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4965
void clear_distinguished_nodes()
Definition: cp_model.pb.h:5539
void Swap(CpObjectiveProto *other)
Definition: cp_model.pb.h:3417
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:4885
Definition: cp_model.pb.h:2967
bool IsInitialized() const final
void set_negated(bool value)
Definition: cp_model.pb.h:5637
void clear_bool_or()
Definition: cp_model.pb.h:5967
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5860
ConstraintProto & operator=(const ConstraintProto &from)
Definition: cp_model.pb.h:2941
InverseConstraintProto * New() const final
Definition: cp_model.pb.h:2630
int intervals_size() const
Definition: cp_model.pb.h:5088
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > & transformations() const
Definition: cp_model.pb.h:7167
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6927
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3578
::operations_research::sat::IntegerArgumentProto * mutable_int_max()
Definition: cp_model.pb.h:6236
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1760
Definition: cp_model.pb.h:4408
NoOverlap2DConstraintProto(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1428
::PROTOBUF_NAMESPACE_ID::int64 max_level() const
Definition: cp_model.pb.h:5169
Definition: cp_model.pb.h:46
const std::string & name() const
Definition: cp_model.pb.h:4576
CpSolverStatus
Definition: cp_model.pb.h:218
PartialVariableAssignment(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:3939
DecisionStrategyProto & operator=(const DecisionStrategyProto &from)
Definition: cp_model.pb.h:3707
::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:2601
void Swap(NoOverlapConstraintProto *other)
Definition: cp_model.pb.h:1330
IntegerVariableProto & operator=(const IntegerVariableProto &from)
Definition: cp_model.pb.h:260
void set_name(const std::string &value)
Definition: cp_model.pb.h:7248
bool IsInitialized() const final
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:5422
int GetCachedSize() const final
Definition: cp_model.pb.h:1065
IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:4045
Definition: cp_model.pb.h:3079
BoolArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:457
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_inverse() const
Definition: cp_model.pb.h:5697
virtual ~CpModelProto()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution() const
Definition: cp_model.pb.h:7521
static const TableConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2454
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2296
const ::operations_research::sat::IntegerArgumentProto & int_max() const
Definition: cp_model.pb.h:6230
virtual ~InverseConstraintProto()
void clear_solution()
Definition: cp_model.pb.h:7505
Definition: cp_model.pb.h:4398
const std::string & DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:179
void Swap(BoolArgumentProto *other)
Definition: cp_model.pb.h:446
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:5477
Definition: cp_model.pb.h:166
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:4798
void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5520
void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5254
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:5234
static void InitAsDefaultInstance()
Definition: cp_model.pb.h:3084
void set_scaling_factor(double value)
Definition: cp_model.pb.h:6998
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2306
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:4828
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static void InitAsDefaultInstance()
void clear_user_time()
Definition: cp_model.pb.h:7748
::operations_research::sat::AutomatonConstraintProto * release_automaton()
Definition: cp_model.pb.h:6629
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:2759
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & distinguished_nodes() const
Definition: cp_model.pb.h:5555
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3736
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:2981
void clear_offset()
Definition: cp_model.pb.h:7053
::operations_research::sat::CumulativeConstraintProto * release_cumulative()
Definition: cp_model.pb.h:6875
size_t ByteSizeLong() const final
static const ElementConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1023
CpSolverResponse()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~ReservoirConstraintProto()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_automaton(::operations_research::sat::AutomatonConstraintProto *automaton)
Definition: cp_model.pb.h:3074
::operations_research::sat::BoolArgumentProto * mutable_at_most_one()
Definition: cp_model.pb.h:6072
void clear_actives()
Definition: cp_model.pb.h:5243
Definition: cp_model.pb.h:1252
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_tail() const
Definition: cp_model.pb.h:5775
LinearConstraintProto(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:827
int vars_size() const
Definition: cp_model.pb.h:4706
int transition_head_size() const
Definition: cp_model.pb.h:5786
::operations_research::sat::IntegerArgumentProto * release_int_min()
Definition: cp_model.pb.h:6260
ConstraintProto & operator=(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2945
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5614
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
friend void swap(RoutesConstraintProto &a, RoutesConstraintProto &b)
Definition: cp_model.pb.h:2122
void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5796
NoOverlapConstraintProto & operator=(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1299
int distinguished_nodes_size() const
Definition: cp_model.pb.h:5536
Definition: cp_model.pb.h:2983
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6957
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
size_t ByteSizeLong() const final
::operations_research::sat::IntegerArgumentProto * release_int_mod()
Definition: cp_model.pb.h:6178
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:273
CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_
virtual ~PartialVariableAssignment()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const BoolArgumentProto & default_instance()
int domain_size() const
Definition: cp_model.pb.h:4624
void clear_objective_value()
Definition: cp_model.pb.h:7532
void clear_circuit()
Definition: cp_model.pb.h:6459
void set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value)
Definition: cp_model.pb.h:7122
bool IsInitialized() const final
void clear_no_overlap()
Definition: cp_model.pb.h:6787
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4112
int GetCachedSize() const final
Definition: cp_model.pb.h:1991
void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5050
void set_name(const std::string &value)
Definition: cp_model.pb.h:4580
Definition: cp_model.pb.h:2989
int GetCachedSize() const final
Definition: cp_model.pb.h:4011
Definition: cp_model.pb.h:165
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void Swap(NoOverlap2DConstraintProto *other)
Definition: cp_model.pb.h:1468
friend void swap(ReservoirConstraintProto &a, ReservoirConstraintProto &b)
Definition: cp_model.pb.h:1776
constexpr CpSolverStatus CpSolverStatus_MAX
Definition: cp_model.pb.h:229
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:3774
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:7226
Definition: cp_model.pb.h:167
ConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3014
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
double objective_value() const
Definition: cp_model.pb.h:7535
Definition: cp_model.pb.h:3092
static const DecisionStrategyProto_AffineTransformation & default_instance()
void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7727
AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_
int literals_size() const
Definition: cp_model.pb.h:4658
::operations_research::sat::CircuitConstraintProto * release_circuit()
Definition: cp_model.pb.h:6465
::PROTOBUF_NAMESPACE_ID::int64 starting_state() const
Definition: cp_model.pb.h:5715
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const
Definition: cp_model.pb.h:7681
virtual ~CircuitConstraintProto()
void clear_reservoir()
Definition: cp_model.pb.h:6705
double scaling_factor() const
Definition: cp_model.pb.h:6994
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static bool VariableSelectionStrategy_Parse(const std::string &name, VariableSelectionStrategy *value)
Definition: cp_model.pb.h:3838
virtual ~CircuitCoveringConstraintProto()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4750
NoOverlap2DConstraintProto & operator=(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1437
IntegerVariableProto()
int vars_size() const
Definition: cp_model.pb.h:4740
void set_best_objective_bound(double value)
Definition: cp_model.pb.h:7553
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntegerArgumentProto * New() const final
Definition: cp_model.pb.h:591
int f_inverse_size() const
Definition: cp_model.pb.h:5678
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
friend void swap(CpSolverResponse &a, CpSolverResponse &b)
Definition: cp_model.pb.h:4324
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
constexpr CpSolverStatus CpSolverStatus_MIN
Definition: cp_model.pb.h:228
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:430
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:5624
const std::string & name() const
Definition: cp_model.pb.h:7244
Definition: cp_model.pb.h:2576
void set_var(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7046
static const AutomatonConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2765
void clear_search_strategy()
Definition: cp_model.pb.h:7406
void clear_inverse()
Definition: cp_model.pb.h:6664
void clear_int_max()
Definition: cp_model.pb.h:6213
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:1598
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3591
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:3862
void clear_objective()
Definition: cp_model.pb.h:7355
void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5658
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & actives() const
Definition: cp_model.pb.h:5259
Definition: cp_model.pb.h:3081
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:848
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5132
CpModelProto()
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4668
Definition: cp_model.pb.h:2987
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
static void InitAsDefaultInstance()
AllDifferentConstraintProto & operator=(const AllDifferentConstraintProto &from)
Definition: cp_model.pb.h:694
Definition: cp_model.pb.h:361
InverseConstraintProto & operator=(const InverseConstraintProto &from)
Definition: cp_model.pb.h:2588
static const DecisionStrategyProto_AffineTransformation * internal_default_instance()
Definition: cp_model.pb.h:3587
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
const ::operations_research::sat::AutomatonConstraintProto & automaton() const
Definition: cp_model.pb.h:6640
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_upper_bounds()
Definition: cp_model.pb.h:7614
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2109
Definition: cp_model.pb.h:3487
size_t ByteSizeLong() const final
CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_
Definition: cp_model.pb.h:4199
void Swap(DecisionStrategyProto *other)
Definition: cp_model.pb.h:3742
void clear_enforcement_literal()
Definition: cp_model.pb.h:5934
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1449
void clear_domain()
Definition: cp_model.pb.h:4627
static void InitAsDefaultInstance()
DecisionStrategyProto_DomainReductionStrategy DomainReductionStrategy
Definition: cp_model.pb.h:3843
int domain_size() const
Definition: cp_model.pb.h:7005
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_wall_time()
Definition: cp_model.pb.h:7734
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:4793
static const BoolArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:436
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2458
::operations_research::sat::BoolArgumentProto * release_at_most_one()
Definition: cp_model.pb.h:6055
bool IsInitialized() const final
IntervalConstraintProto(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1145
static constexpr VariableSelectionStrategy CHOOSE_LOWEST_MIN
Definition: cp_model.pb.h:3810
friend void swap(CircuitConstraintProto &a, CircuitConstraintProto &b)
Definition: cp_model.pb.h:1956
static const AllDifferentConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:719
Definition: cp_model.pb.h:2974
static const NoOverlapConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1320
Definition: cp_model.pb.h:1732
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4321
Definition: cp_model.pb.h:1396
Definition: cp_model.pb.h:3664
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2954
int GetCachedSize() const final
Definition: cp_model.pb.h:1652
void set_allocated_solution_info(std::string *solution_info)
Definition: cp_model.pb.h:7830
Definition: cp_model.pb.h:3550
bool IsInitialized() const final
::operations_research::sat::BoolArgumentProto * mutable_bool_or()
Definition: cp_model.pb.h:5990
int heads_size() const
Definition: cp_model.pb.h:5398
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3720
Definition: cp_model.pb.h:225
bool has_no_overlap() const
Definition: cp_model.pb.h:6781
bool IsInitialized() const final
::operations_research::sat::TableConstraintProto * release_table()
Definition: cp_model.pb.h:6588
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5102
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:173
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:4648
size_t ByteSizeLong() const final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) 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:7154
const ::operations_research::sat::CumulativeConstraintProto & cumulative() const
Definition: cp_model.pb.h:6886
void clear_cumulative()
Definition: cp_model.pb.h:6869
RoutesConstraintProto * New() const final
Definition: cp_model.pb.h:2132
double wall_time() const
Definition: cp_model.pb.h:7737
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
void set_index(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4875
Definition: cp_model.pb.h:2976
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:4853
void clear_x_intervals()
Definition: cp_model.pb.h:5013
CpObjectiveProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3428
void clear_num_branches()
Definition: cp_model.pb.h:7692
::operations_research::sat::IntegerVariableProto * add_tightened_variables()
Definition: cp_model.pb.h:7639
void clear_literals()
Definition: cp_model.pb.h:5337
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:3823
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:174
Definition: cp_model.pb.h:2530
::PROTOBUF_NAMESPACE_ID::int32 start() const
Definition: cp_model.pb.h:4933
CircuitCoveringConstraintProto * New() const final
Definition: cp_model.pb.h:2319
::operations_research::sat::IntervalConstraintProto * mutable_interval()
Definition: cp_model.pb.h:6769
virtual ~IntegerVariableProto()
BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_
Definition: cp_model.pb.h:4399
Definition: cp_model.pb.h:2984
::operations_research::sat::ReservoirConstraintProto * release_reservoir()
Definition: cp_model.pb.h:6711
void set_allocated_bool_xor(::operations_research::sat::BoolArgumentProto *bool_xor)
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_final_states()
Definition: cp_model.pb.h:5750
const ::operations_research::sat::IntegerArgumentProto & int_prod() const
Definition: cp_model.pb.h:6312
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
DecisionStrategyProto_AffineTransformation AffineTransformation
Definition: cp_model.pb.h:3805
void clear_constraint()
void set_allocated_objective(::operations_research::sat::CpObjectiveProto *objective)
Definition: cp_model.pb.h:7383
DecisionStrategyProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3753
NoOverlapConstraintProto(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1290
const ::operations_research::sat::NoOverlapConstraintProto & no_overlap() const
Definition: cp_model.pb.h:6804
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_head() const
Definition: cp_model.pb.h:5805
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:4643
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7019
IntegerVariableProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:306
void clear_coeffs()
Definition: cp_model.pb.h:6950
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1446
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4910
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:4730
static const IntegerVariableProto & default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:707
DecisionStrategyProto_AffineTransformation & operator=(const DecisionStrategyProto_AffineTransformation &from)
Definition: cp_model.pb.h:3562
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:7196
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5580
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:578
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1943
static const ConstraintProto & default_instance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:5482
const ::operations_research::sat::IntegerArgumentProto & int_min() const
Definition: cp_model.pb.h:6271
Definition: cp_model.pb.h:651
constexpr int DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:175
void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5190
int vars_size() const
Definition: cp_model.pb.h:6917
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:4759
void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5941
IntervalConstraintProto & operator=(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1154
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:565
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3401
bool has_int_div() const
Definition: cp_model.pb.h:6125
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:4638
bool has_linear() const
Definition: cp_model.pb.h:6330
IntegerVariableProto & operator=(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:264
Definition: cp_model.pb.h:2379
static const std::string & VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:3832
void clear_int_prod()
Definition: cp_model.pb.h:6295
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
bool negated() const
Definition: cp_model.pb.h:5633
bool DecisionStrategyProto_VariableSelectionStrategy_IsValid(int value)
::PROTOBUF_NAMESPACE_ID::int64 num_branches() const
Definition: cp_model.pb.h:7695
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5472
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5250
friend void swap(IntegerVariableProto &a, IntegerVariableProto &b)
Definition: cp_model.pb.h:292
Definition: cp_model.pb.h:2985
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
void clear_transition_tail()
Definition: cp_model.pb.h:5759
int demands_size() const
Definition: cp_model.pb.h:5458
void clear_start()
Definition: cp_model.pb.h:4930
void clear_demands()
Definition: cp_model.pb.h:5121
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
int literals_size() const
Definition: cp_model.pb.h:5334
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
DecisionStrategyProto(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:3702
Definition: cp_model.pb.h:1535
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const CircuitCoveringConstraintProto & default_instance()
IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_
static void InitAsDefaultInstance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
CpObjectiveProto & operator=(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:3386
size_t ByteSizeLong() const final
static const IntegerArgumentProto & default_instance()
Definition: cp_model.pb.h:3075
void clear_bool_xor()
Definition: cp_model.pb.h:6090
TableConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2475
void clear_negated()
Definition: cp_model.pb.h:5630
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2293
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5344
void Swap(ReservoirConstraintProto *other)
Definition: cp_model.pb.h:1779
CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
bool IsInitialized() const final
Definition: cp_model.pb.h:4046
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
IntervalConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1196
void Swap(IntervalConstraintProto *other)
Definition: cp_model.pb.h:1185
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4396
AutomatonConstraintProto & operator=(const AutomatonConstraintProto &from)
Definition: cp_model.pb.h:2740
void set_wall_time(double value)
Definition: cp_model.pb.h:7741
NoOverlapConstraintProto()
int transition_label_size() const
Definition: cp_model.pb.h:5816
void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7713
void clear_routes()
Definition: cp_model.pb.h:6500
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7671
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_variables()
Definition: cp_model.pb.h:7303
friend void swap(IntegerArgumentProto &a, IntegerArgumentProto &b)
Definition: cp_model.pb.h:581
void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7095
Definition: cp_model.pb.h:1421
const ::operations_research::sat::RoutesConstraintProto & routes() const
Definition: cp_model.pb.h:6517
Definition: cp_model.pb.h:40
::operations_research::sat::NoOverlap2DConstraintProto * mutable_no_overlap_2d()
Definition: cp_model.pb.h:6851
::PROTOBUF_NAMESPACE_ID::int32 end() const
Definition: cp_model.pb.h:4947
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2103
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:5293
void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5546
Definition: cp_model.pb.h:3069
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4784
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_nexts()
Definition: cp_model.pb.h:5530
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1937
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_y_intervals()
Definition: cp_model.pb.h:5064
CircuitConstraintProto * New() const final
Definition: cp_model.pb.h:1966
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1601
IntegerArgumentProto(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:544
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2753
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
CpObjectiveProto & operator=(const CpObjectiveProto &from)
Definition: cp_model.pb.h:3382
static constexpr DomainReductionStrategy SELECT_UPPER_HALF
Definition: cp_model.pb.h:3850
Definition: cp_model.pb.h:2531
ReservoirConstraintProto(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1739
void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5495
virtual ~AutomatonConstraintProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:7029
CumulativeConstraintProto * New() const final
Definition: cp_model.pb.h:1627
Definition: cp_model.pb.h:2690
void clear_literals()
Definition: cp_model.pb.h:4661
int GetCachedSize() const final
Definition: cp_model.pb.h:2157
void clear_no_overlap_2d()
Definition: cp_model.pb.h:6828
ReservoirConstraintProto & operator=(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1748
bool DecisionStrategyProto_DomainReductionStrategy_Parse(const std::string &name, DecisionStrategyProto_DomainReductionStrategy *value)
Definition: cp_model.pb.h:213
DecisionStrategyProto_AffineTransformation()
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
static const NoOverlap2DConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1458
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6961
CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:4677
Definition: cp_model.pb.h:2417
Definition: cp_model.pb.h:1845
void Swap(CircuitConstraintProto *other)
Definition: cp_model.pb.h:1959
void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7574
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_DomainReductionStrategy_descriptor()
Definition: cp_model.pb.h:1253
const ::operations_research::sat::BoolArgumentProto & bool_xor() const
Definition: cp_model.pb.h:6107
bool has_at_most_one() const
Definition: cp_model.pb.h:6043
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1166
void set_user_time(double value)
Definition: cp_model.pb.h:7755
Definition: cp_model.pb.h:2265
void clear_interval()
Definition: cp_model.pb.h:6746
Definition: cp_model.pb.h:537
const ::operations_research::sat::LinearConstraintProto & linear() const
Definition: cp_model.pb.h:6353
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
::PROTOBUF_NAMESPACE_ID::uint8 * InternalSerializeWithCachedSizesToArray(::PROTOBUF_NAMESPACE_ID::uint8 *target) const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1604
TableConstraintProto()
::operations_research::sat::NoOverlap2DConstraintProto * release_no_overlap_2d()
Definition: cp_model.pb.h:6834
::operations_research::sat::IntegerArgumentProto * release_int_max()
Definition: cp_model.pb.h:6219
::operations_research::sat::IntegerArgumentProto * mutable_int_div()
Definition: cp_model.pb.h:6154
::operations_research::sat::CpObjectiveProto * release_objective()
Definition: cp_model.pb.h:7367
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:5358
void clear_deterministic_time()
Definition: cp_model.pb.h:7762
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4788
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:6966
void set_allocated_bool_or(::operations_research::sat::BoolArgumentProto *bool_or)
Definition: cp_model.pb.h:4200
friend void swap(DecisionStrategyProto &a, DecisionStrategyProto &b)
Definition: cp_model.pb.h:3739
void clear_intervals()
Definition: cp_model.pb.h:4979
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4115
const ::operations_research::sat::BoolArgumentProto & at_most_one() const
Definition: cp_model.pb.h:6066
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5856
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:1811
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5692
void clear_int_div()
Definition: cp_model.pb.h:6131
void Swap(PartialVariableAssignment *other)
Definition: cp_model.pb.h:3979
void clear_times()
Definition: cp_model.pb.h:5183
bool has_inverse() const
Definition: cp_model.pb.h:6658
Definition: cp_model.pb.h:1686
const ::operations_research::sat::ElementConstraintProto & element() const
Definition: cp_model.pb.h:6435
Definition: cp_model.pb.h:195
void clear_at_most_one()
Definition: cp_model.pb.h:6049
Definition: cp_model.pb.h:1534
void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7512
Definition: cp_model.pb.h:820
bool IsInitialized() const final
static const IntervalConstraintProto & default_instance()
Definition: cp_model.pb.h:3881
void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7074
virtual ~CumulativeConstraintProto()
friend void swap(IntervalConstraintProto &a, IntervalConstraintProto &b)
Definition: cp_model.pb.h:1182
void clear_values()
Definition: cp_model.pb.h:5603
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()
void clear_vars()
Definition: cp_model.pb.h:5849
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3575
void clear_var()
Definition: cp_model.pb.h:7039
bool has_table() const
Definition: cp_model.pb.h:6576
CpModelProto & operator=(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:4100
CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_
Definition: cp_model.pb.h:4401
void clear_vars()
Definition: cp_model.pb.h:4899
IntegerArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:595
friend void swap(PartialVariableAssignment &a, PartialVariableAssignment &b)
Definition: cp_model.pb.h:3976
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5318
bool IsInitialized() const final
friend void swap(CpObjectiveProto &a, CpObjectiveProto &b)
Definition: cp_model.pb.h:3414
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4754
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:5353
AutomatonConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2786
void set_offset(double value)
Definition: cp_model.pb.h:6984
Definition: cp_model.pb.h:2979
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:5447
void clear_tails()
Definition: cp_model.pb.h:5277
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1763
std::string * release_name()
Definition: cp_model.pb.h:5915
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5408
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:4403
Definition: cp_model.pb.h:2027
void Swap(ConstraintProto *other)
Definition: cp_model.pb.h:3003
AutomatonConstraintProto(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2735
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:4990
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:440
LinearConstraintProto & operator=(const LinearConstraintProto &from)
Definition: cp_model.pb.h:832
void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5024
Definition: cp_model.pb.h:2689
std::string * mutable_name()
Definition: cp_model.pb.h:7271
CumulativeConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1631
::operations_research::sat::CpSolverStatus status() const
Definition: cp_model.pb.h:7491
void SerializeWithCachedSizes(::PROTOBUF_NAMESPACE_ID::io::CodedOutputStream *output) const final
size_t ByteSizeLong() const final
int times_size() const
Definition: cp_model.pb.h:5180
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4308
::PROTOBUF_NAMESPACE_ID::int64 min_level() const
Definition: cp_model.pb.h:5155
InverseConstraintProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:5000
int GetCachedSize() const final
Definition: cp_model.pb.h:4359
int transition_tail_size() const
Definition: cp_model.pb.h:5756
const ::operations_research::sat::CircuitConstraintProto & circuit() const
Definition: cp_model.pb.h:6476
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:861
Definition: cp_model.pb.h:4393
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:7281
double offset() const
Definition: cp_model.pb.h:6980
const ::operations_research::sat::ReservoirConstraintProto & reservoir() const
Definition: cp_model.pb.h:6722
bool DecisionStrategyProto_DomainReductionStrategy_IsValid(int value)
Definition: cp_model.pb.h:650
IntervalConstraintProto & operator=(const IntervalConstraintProto &from)
Definition: cp_model.pb.h:1150
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2997
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: cp_model.pb.h:2195
::operations_research::sat::BoolArgumentProto * mutable_bool_xor()
Definition: cp_model.pb.h:6113
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:7024
void clear_capacity()
Definition: cp_model.pb.h:5074
::operations_research::sat::AllDifferentConstraintProto * mutable_all_diff()
Definition: cp_model.pb.h:6400
void set_primal_integral(double value)
Definition: cp_model.pb.h:7783
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1757
void Swap(CpSolverResponse *other)
Definition: cp_model.pb.h:4327
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4311
static void InitAsDefaultInstance()
Definition: cp_model.pb.h:1101
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5584
Definition: cp_model.pb.h:2973
Definition: cp_model.pb.h:2025
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_direct() const
Definition: cp_model.pb.h:5667
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_times()
Definition: cp_model.pb.h:5204
static void InitAsDefaultInstance()
friend void swap(InverseConstraintProto &a, InverseConstraintProto &b)
Definition: cp_model.pb.h:2620
Definition: cp_model.pb.h:2194
::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy domain_reduction_strategy() const
Definition: cp_model.pb.h:7132
::operations_research::sat::InverseConstraintProto * mutable_inverse()
Definition: cp_model.pb.h:6687
bool MergePartialFromCodedStream(::PROTOBUF_NAMESPACE_ID::io::CodedInputStream *input) final
AllDifferentConstraintProto(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:689
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2106
virtual ~DecisionStrategyProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:4764
Definition: cp_model.pb.h:4409
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5098
CumulativeConstraintProto(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1580
CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_
constexpr int CpSolverStatus_ARRAYSIZE
Definition: cp_model.pb.h:230
AllDifferentConstraintProto & operator=(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:698
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * VariableSelectionStrategy_descriptor()
Definition: cp_model.pb.h:3828
void clear_domain()
Definition: cp_model.pb.h:4837
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_interval() const
Definition: cp_model.pb.h:6740
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3723
virtual ~ConstraintProto()
void clear_demands()
Definition: cp_model.pb.h:5213
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5438
Definition: cp_model.pb.h:2843
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::ConstraintProto * add_constraints()
Definition: cp_model.pb.h:7341
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4109
void clear_primal_integral()
Definition: cp_model.pb.h:7776
NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_
bool IsInitialized() const final
friend void swap(TableConstraintProto &a, TableConstraintProto &b)
Definition: cp_model.pb.h:2461
Definition: cp_model.pb.h:1847