C++ Reference

C++ Reference: CP-SAT

cp_model.pb.h
Go to the documentation of this file.
1 // Generated by the protocol buffer compiler. DO NOT EDIT!
2 // source: ortools/sat/cp_model.proto
3 
4 #ifndef GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
5 #define GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
6 
7 #include <limits>
8 #include <string>
9 
10 #include <google/protobuf/port_def.inc>
11 #if PROTOBUF_VERSION < 3011000
12 #error This file was generated by a newer version of protoc which is
13 #error incompatible with your Protocol Buffer headers. Please update
14 #error your headers.
15 #endif
16 #if 3011002 < PROTOBUF_MIN_PROTOC_VERSION
17 #error This file was generated by an older version of protoc which is
18 #error incompatible with your Protocol Buffer headers. Please
19 #error regenerate this file with a newer version of protoc.
20 #endif
21 
22 #include <google/protobuf/port_undef.inc>
23 #include <google/protobuf/io/coded_stream.h>
24 #include <google/protobuf/arena.h>
25 #include <google/protobuf/arenastring.h>
26 #include <google/protobuf/generated_message_table_driven.h>
27 #include <google/protobuf/generated_message_util.h>
28 #include <google/protobuf/inlined_string_field.h>
29 #include <google/protobuf/metadata.h>
30 #include <google/protobuf/generated_message_reflection.h>
31 #include <google/protobuf/message.h>
32 #include <google/protobuf/repeated_field.h> // IWYU pragma: export
33 #include <google/protobuf/extension_set.h> // IWYU pragma: export
34 #include <google/protobuf/generated_enum_reflection.h>
35 #include <google/protobuf/unknown_field_set.h>
36 // @@protoc_insertion_point(includes)
37 #include <google/protobuf/port_def.inc>
38 #define PROTOBUF_INTERNAL_EXPORT_ortools_2fsat_2fcp_5fmodel_2eproto
39 PROTOBUF_NAMESPACE_OPEN
40 namespace internal {
41 class AnyMetadata;
42 } // namespace internal
43 PROTOBUF_NAMESPACE_CLOSE
44 
45 // Internal implementation detail -- do not use these members.
47  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[]
48  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
49  static const ::PROTOBUF_NAMESPACE_ID::internal::AuxillaryParseTableField aux[]
50  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
51  static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTable schema[26]
52  PROTOBUF_SECTION_VARIABLE(protodesc_cold);
53  static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[];
54  static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[];
55  static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[];
56 };
57 extern const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto;
58 namespace operations_research {
59 namespace sat {
60 class AllDifferentConstraintProto;
61 class AllDifferentConstraintProtoDefaultTypeInternal;
62 extern AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_;
63 class AutomatonConstraintProto;
64 class AutomatonConstraintProtoDefaultTypeInternal;
65 extern AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_;
66 class BoolArgumentProto;
67 class BoolArgumentProtoDefaultTypeInternal;
68 extern BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_;
69 class CircuitConstraintProto;
70 class CircuitConstraintProtoDefaultTypeInternal;
71 extern CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_;
72 class CircuitCoveringConstraintProto;
73 class CircuitCoveringConstraintProtoDefaultTypeInternal;
74 extern CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_;
75 class ConstraintProto;
76 class ConstraintProtoDefaultTypeInternal;
77 extern ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_;
78 class CpModelProto;
79 class CpModelProtoDefaultTypeInternal;
80 extern CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_;
81 class CpObjectiveProto;
82 class CpObjectiveProtoDefaultTypeInternal;
83 extern CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_;
84 class CpSolverResponse;
85 class CpSolverResponseDefaultTypeInternal;
86 extern CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_;
87 class CumulativeConstraintProto;
88 class CumulativeConstraintProtoDefaultTypeInternal;
89 extern CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_;
90 class DecisionStrategyProto;
91 class DecisionStrategyProtoDefaultTypeInternal;
92 extern DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_;
93 class DecisionStrategyProto_AffineTransformation;
94 class DecisionStrategyProto_AffineTransformationDefaultTypeInternal;
95 extern DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_;
96 class ElementConstraintProto;
97 class ElementConstraintProtoDefaultTypeInternal;
98 extern ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_;
99 class IntegerArgumentProto;
100 class IntegerArgumentProtoDefaultTypeInternal;
101 extern IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_;
102 class IntegerVariableProto;
103 class IntegerVariableProtoDefaultTypeInternal;
104 extern IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_;
105 class IntervalConstraintProto;
106 class IntervalConstraintProtoDefaultTypeInternal;
107 extern IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_;
108 class InverseConstraintProto;
109 class InverseConstraintProtoDefaultTypeInternal;
110 extern InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_;
111 class LinearArgumentProto;
112 class LinearArgumentProtoDefaultTypeInternal;
113 extern LinearArgumentProtoDefaultTypeInternal _LinearArgumentProto_default_instance_;
114 class LinearConstraintProto;
115 class LinearConstraintProtoDefaultTypeInternal;
116 extern LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_;
117 class LinearExpressionProto;
118 class LinearExpressionProtoDefaultTypeInternal;
119 extern LinearExpressionProtoDefaultTypeInternal _LinearExpressionProto_default_instance_;
120 class NoOverlap2DConstraintProto;
121 class NoOverlap2DConstraintProtoDefaultTypeInternal;
122 extern NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_;
123 class NoOverlapConstraintProto;
124 class NoOverlapConstraintProtoDefaultTypeInternal;
125 extern NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_;
126 class PartialVariableAssignment;
127 class PartialVariableAssignmentDefaultTypeInternal;
128 extern PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_;
129 class ReservoirConstraintProto;
130 class ReservoirConstraintProtoDefaultTypeInternal;
131 extern ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_;
132 class RoutesConstraintProto;
133 class RoutesConstraintProtoDefaultTypeInternal;
134 extern RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_;
135 class TableConstraintProto;
136 class TableConstraintProtoDefaultTypeInternal;
137 extern TableConstraintProtoDefaultTypeInternal _TableConstraintProto_default_instance_;
138 } // namespace sat
139 } // namespace operations_research
140 PROTOBUF_NAMESPACE_OPEN
141 template<> ::operations_research::sat::AllDifferentConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AllDifferentConstraintProto>(Arena*);
142 template<> ::operations_research::sat::AutomatonConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::AutomatonConstraintProto>(Arena*);
143 template<> ::operations_research::sat::BoolArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::BoolArgumentProto>(Arena*);
144 template<> ::operations_research::sat::CircuitConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitConstraintProto>(Arena*);
145 template<> ::operations_research::sat::CircuitCoveringConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CircuitCoveringConstraintProto>(Arena*);
146 template<> ::operations_research::sat::ConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ConstraintProto>(Arena*);
147 template<> ::operations_research::sat::CpModelProto* Arena::CreateMaybeMessage<::operations_research::sat::CpModelProto>(Arena*);
148 template<> ::operations_research::sat::CpObjectiveProto* Arena::CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(Arena*);
149 template<> ::operations_research::sat::CpSolverResponse* Arena::CreateMaybeMessage<::operations_research::sat::CpSolverResponse>(Arena*);
150 template<> ::operations_research::sat::CumulativeConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::CumulativeConstraintProto>(Arena*);
151 template<> ::operations_research::sat::DecisionStrategyProto* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto>(Arena*);
152 template<> ::operations_research::sat::DecisionStrategyProto_AffineTransformation* Arena::CreateMaybeMessage<::operations_research::sat::DecisionStrategyProto_AffineTransformation>(Arena*);
153 template<> ::operations_research::sat::ElementConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ElementConstraintProto>(Arena*);
154 template<> ::operations_research::sat::IntegerArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerArgumentProto>(Arena*);
155 template<> ::operations_research::sat::IntegerVariableProto* Arena::CreateMaybeMessage<::operations_research::sat::IntegerVariableProto>(Arena*);
156 template<> ::operations_research::sat::IntervalConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::IntervalConstraintProto>(Arena*);
157 template<> ::operations_research::sat::InverseConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::InverseConstraintProto>(Arena*);
158 template<> ::operations_research::sat::LinearArgumentProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearArgumentProto>(Arena*);
159 template<> ::operations_research::sat::LinearConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearConstraintProto>(Arena*);
160 template<> ::operations_research::sat::LinearExpressionProto* Arena::CreateMaybeMessage<::operations_research::sat::LinearExpressionProto>(Arena*);
161 template<> ::operations_research::sat::NoOverlap2DConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlap2DConstraintProto>(Arena*);
162 template<> ::operations_research::sat::NoOverlapConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::NoOverlapConstraintProto>(Arena*);
163 template<> ::operations_research::sat::PartialVariableAssignment* Arena::CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(Arena*);
164 template<> ::operations_research::sat::ReservoirConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::ReservoirConstraintProto>(Arena*);
165 template<> ::operations_research::sat::RoutesConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::RoutesConstraintProto>(Arena*);
166 template<> ::operations_research::sat::TableConstraintProto* Arena::CreateMaybeMessage<::operations_research::sat::TableConstraintProto>(Arena*);
167 PROTOBUF_NAMESPACE_CLOSE
168 namespace operations_research {
169 namespace sat {
170 
179 };
184 
185 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_VariableSelectionStrategy_descriptor();
186 template<typename T>
187 inline const std::string& DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value) {
188  static_assert(::std::is_same<T, DecisionStrategyProto_VariableSelectionStrategy>::value ||
189  ::std::is_integral<T>::value,
190  "Incorrect type passed to function DecisionStrategyProto_VariableSelectionStrategy_Name.");
191  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
193 }
195  const std::string& name, DecisionStrategyProto_VariableSelectionStrategy* value) {
196  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_VariableSelectionStrategy>(
198 }
207 };
212 
213 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* DecisionStrategyProto_DomainReductionStrategy_descriptor();
214 template<typename T>
215 inline const std::string& DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value) {
216  static_assert(::std::is_same<T, DecisionStrategyProto_DomainReductionStrategy>::value ||
217  ::std::is_integral<T>::value,
218  "Incorrect type passed to function DecisionStrategyProto_DomainReductionStrategy_Name.");
219  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
221 }
223  const std::string& name, DecisionStrategyProto_DomainReductionStrategy* value) {
224  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<DecisionStrategyProto_DomainReductionStrategy>(
226 }
227 enum CpSolverStatus : int {
228  UNKNOWN = 0,
230  FEASIBLE = 2,
232  OPTIMAL = 4,
233  CpSolverStatus_INT_MIN_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::min(),
234  CpSolverStatus_INT_MAX_SENTINEL_DO_NOT_USE_ = std::numeric_limits<::PROTOBUF_NAMESPACE_ID::int32>::max()
235 };
236 bool CpSolverStatus_IsValid(int value);
240 
241 const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* CpSolverStatus_descriptor();
242 template<typename T>
243 inline const std::string& CpSolverStatus_Name(T enum_t_value) {
244  static_assert(::std::is_same<T, CpSolverStatus>::value ||
245  ::std::is_integral<T>::value,
246  "Incorrect type passed to function CpSolverStatus_Name.");
247  return ::PROTOBUF_NAMESPACE_ID::internal::NameOfEnum(
248  CpSolverStatus_descriptor(), enum_t_value);
249 }
251  const std::string& name, CpSolverStatus* value) {
252  return ::PROTOBUF_NAMESPACE_ID::internal::ParseNamedEnum<CpSolverStatus>(
253  CpSolverStatus_descriptor(), name, value);
254 }
255 // ===================================================================
256 
258  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerVariableProto) */ {
259  public:
261  virtual ~IntegerVariableProto();
262 
266  *this = ::std::move(from);
267  }
268 
270  CopyFrom(from);
271  return *this;
272  }
274  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
275  if (this != &from) InternalSwap(&from);
276  } else {
277  CopyFrom(from);
278  }
279  return *this;
280  }
281 
282  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
283  return GetDescriptor();
284  }
285  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
286  return GetMetadataStatic().descriptor;
287  }
288  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
289  return GetMetadataStatic().reflection;
290  }
291  static const IntegerVariableProto& default_instance();
292 
293  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
295  return reinterpret_cast<const IntegerVariableProto*>(
297  }
298  static constexpr int kIndexInFileMessages =
299  0;
300 
302  a.Swap(&b);
303  }
304  inline void Swap(IntegerVariableProto* other) {
305  if (other == this) return;
306  InternalSwap(other);
307  }
308 
309  // implements Message ----------------------------------------------
310 
311  inline IntegerVariableProto* New() const final {
312  return CreateMaybeMessage<IntegerVariableProto>(nullptr);
313  }
314 
315  IntegerVariableProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
316  return CreateMaybeMessage<IntegerVariableProto>(arena);
317  }
318  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
319  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
320  void CopyFrom(const IntegerVariableProto& from);
321  void MergeFrom(const IntegerVariableProto& from);
322  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
323  bool IsInitialized() const final;
324 
325  size_t ByteSizeLong() const final;
326  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
327  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
328  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
329  int GetCachedSize() const final { return _cached_size_.Get(); }
330 
331  private:
332  inline void SharedCtor();
333  inline void SharedDtor();
334  void SetCachedSize(int size) const final;
335  void InternalSwap(IntegerVariableProto* other);
336  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
337  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
338  return "operations_research.sat.IntegerVariableProto";
339  }
340  private:
341  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
342  return nullptr;
343  }
344  inline void* MaybeArenaPtr() const {
345  return nullptr;
346  }
347  public:
348 
349  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
350  private:
351  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
352  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
354  }
355 
356  public:
357 
358  // nested types ----------------------------------------------------
359 
360  // accessors -------------------------------------------------------
361 
362  enum : int {
365  };
366  // repeated int64 domain = 2;
367  int domain_size() const;
368  private:
369  int _internal_domain_size() const;
370  public:
371  void clear_domain();
372  private:
373  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
374  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
375  _internal_domain() const;
376  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
377  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
378  _internal_mutable_domain();
379  public:
380  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
381  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
382  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
383  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
384  domain() const;
385  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
386  mutable_domain();
387 
388  // string name = 1;
389  void clear_name();
390  const std::string& name() const;
391  void set_name(const std::string& value);
392  void set_name(std::string&& value);
393  void set_name(const char* value);
394  void set_name(const char* value, size_t size);
395  std::string* mutable_name();
396  std::string* release_name();
397  void set_allocated_name(std::string* name);
398  private:
399  const std::string& _internal_name() const;
400  void _internal_set_name(const std::string& value);
401  std::string* _internal_mutable_name();
402  public:
403 
404  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerVariableProto)
405  private:
406  class _Internal;
407 
408  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
409  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
410  mutable std::atomic<int> _domain_cached_byte_size_;
411  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
412  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
413  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
414 };
415 // -------------------------------------------------------------------
416 
418  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.BoolArgumentProto) */ {
419  public:
421  virtual ~BoolArgumentProto();
422 
425  : BoolArgumentProto() {
426  *this = ::std::move(from);
427  }
428 
430  CopyFrom(from);
431  return *this;
432  }
433  inline BoolArgumentProto& operator=(BoolArgumentProto&& from) noexcept {
434  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
435  if (this != &from) InternalSwap(&from);
436  } else {
437  CopyFrom(from);
438  }
439  return *this;
440  }
441 
442  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
443  return GetDescriptor();
444  }
445  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
446  return GetMetadataStatic().descriptor;
447  }
448  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
449  return GetMetadataStatic().reflection;
450  }
451  static const BoolArgumentProto& default_instance();
452 
453  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
455  return reinterpret_cast<const BoolArgumentProto*>(
457  }
458  static constexpr int kIndexInFileMessages =
459  1;
460 
462  a.Swap(&b);
463  }
464  inline void Swap(BoolArgumentProto* other) {
465  if (other == this) return;
466  InternalSwap(other);
467  }
468 
469  // implements Message ----------------------------------------------
470 
471  inline BoolArgumentProto* New() const final {
472  return CreateMaybeMessage<BoolArgumentProto>(nullptr);
473  }
474 
475  BoolArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
476  return CreateMaybeMessage<BoolArgumentProto>(arena);
477  }
478  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
479  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
480  void CopyFrom(const BoolArgumentProto& from);
481  void MergeFrom(const BoolArgumentProto& from);
482  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
483  bool IsInitialized() const final;
484 
485  size_t ByteSizeLong() const final;
486  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
487  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
488  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
489  int GetCachedSize() const final { return _cached_size_.Get(); }
490 
491  private:
492  inline void SharedCtor();
493  inline void SharedDtor();
494  void SetCachedSize(int size) const final;
495  void InternalSwap(BoolArgumentProto* other);
496  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
497  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
498  return "operations_research.sat.BoolArgumentProto";
499  }
500  private:
501  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
502  return nullptr;
503  }
504  inline void* MaybeArenaPtr() const {
505  return nullptr;
506  }
507  public:
508 
509  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
510  private:
511  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
512  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
514  }
515 
516  public:
517 
518  // nested types ----------------------------------------------------
519 
520  // accessors -------------------------------------------------------
521 
522  enum : int {
524  };
525  // repeated int32 literals = 1;
526  int literals_size() const;
527  private:
528  int _internal_literals_size() const;
529  public:
530  void clear_literals();
531  private:
532  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
533  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
534  _internal_literals() const;
535  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
536  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
537  _internal_mutable_literals();
538  public:
539  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
540  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
541  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
542  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
543  literals() const;
544  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
546 
547  // @@protoc_insertion_point(class_scope:operations_research.sat.BoolArgumentProto)
548  private:
549  class _Internal;
550 
551  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
552  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
553  mutable std::atomic<int> _literals_cached_byte_size_;
554  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
555  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
556 };
557 // -------------------------------------------------------------------
558 
560  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntegerArgumentProto) */ {
561  public:
563  virtual ~IntegerArgumentProto();
564 
568  *this = ::std::move(from);
569  }
570 
572  CopyFrom(from);
573  return *this;
574  }
576  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
577  if (this != &from) InternalSwap(&from);
578  } else {
579  CopyFrom(from);
580  }
581  return *this;
582  }
583 
584  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
585  return GetDescriptor();
586  }
587  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
588  return GetMetadataStatic().descriptor;
589  }
590  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
591  return GetMetadataStatic().reflection;
592  }
593  static const IntegerArgumentProto& default_instance();
594 
595  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
597  return reinterpret_cast<const IntegerArgumentProto*>(
599  }
600  static constexpr int kIndexInFileMessages =
601  2;
602 
604  a.Swap(&b);
605  }
606  inline void Swap(IntegerArgumentProto* other) {
607  if (other == this) return;
608  InternalSwap(other);
609  }
610 
611  // implements Message ----------------------------------------------
612 
613  inline IntegerArgumentProto* New() const final {
614  return CreateMaybeMessage<IntegerArgumentProto>(nullptr);
615  }
616 
617  IntegerArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
618  return CreateMaybeMessage<IntegerArgumentProto>(arena);
619  }
620  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
621  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
622  void CopyFrom(const IntegerArgumentProto& from);
623  void MergeFrom(const IntegerArgumentProto& from);
624  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
625  bool IsInitialized() const final;
626 
627  size_t ByteSizeLong() const final;
628  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
629  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
630  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
631  int GetCachedSize() const final { return _cached_size_.Get(); }
632 
633  private:
634  inline void SharedCtor();
635  inline void SharedDtor();
636  void SetCachedSize(int size) const final;
637  void InternalSwap(IntegerArgumentProto* other);
638  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
639  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
640  return "operations_research.sat.IntegerArgumentProto";
641  }
642  private:
643  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
644  return nullptr;
645  }
646  inline void* MaybeArenaPtr() const {
647  return nullptr;
648  }
649  public:
650 
651  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
652  private:
653  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
654  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
656  }
657 
658  public:
659 
660  // nested types ----------------------------------------------------
661 
662  // accessors -------------------------------------------------------
663 
664  enum : int {
667  };
668  // repeated int32 vars = 2;
669  int vars_size() const;
670  private:
671  int _internal_vars_size() const;
672  public:
673  void clear_vars();
674  private:
675  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
676  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
677  _internal_vars() const;
678  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
679  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
680  _internal_mutable_vars();
681  public:
682  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
683  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
684  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
685  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
686  vars() const;
687  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
688  mutable_vars();
689 
690  // int32 target = 1;
691  void clear_target();
692  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
693  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
694  private:
695  ::PROTOBUF_NAMESPACE_ID::int32 _internal_target() const;
696  void _internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
697  public:
698 
699  // @@protoc_insertion_point(class_scope:operations_research.sat.IntegerArgumentProto)
700  private:
701  class _Internal;
702 
703  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
704  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
705  mutable std::atomic<int> _vars_cached_byte_size_;
706  ::PROTOBUF_NAMESPACE_ID::int32 target_;
707  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
708  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
709 };
710 // -------------------------------------------------------------------
711 
713  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearExpressionProto) */ {
714  public:
716  virtual ~LinearExpressionProto();
717 
721  *this = ::std::move(from);
722  }
723 
725  CopyFrom(from);
726  return *this;
727  }
729  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
730  if (this != &from) InternalSwap(&from);
731  } else {
732  CopyFrom(from);
733  }
734  return *this;
735  }
736 
737  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
738  return GetDescriptor();
739  }
740  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
741  return GetMetadataStatic().descriptor;
742  }
743  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
744  return GetMetadataStatic().reflection;
745  }
746  static const LinearExpressionProto& default_instance();
747 
748  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
750  return reinterpret_cast<const LinearExpressionProto*>(
752  }
753  static constexpr int kIndexInFileMessages =
754  3;
755 
757  a.Swap(&b);
758  }
759  inline void Swap(LinearExpressionProto* other) {
760  if (other == this) return;
761  InternalSwap(other);
762  }
763 
764  // implements Message ----------------------------------------------
765 
766  inline LinearExpressionProto* New() const final {
767  return CreateMaybeMessage<LinearExpressionProto>(nullptr);
768  }
769 
770  LinearExpressionProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
771  return CreateMaybeMessage<LinearExpressionProto>(arena);
772  }
773  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
774  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
775  void CopyFrom(const LinearExpressionProto& from);
776  void MergeFrom(const LinearExpressionProto& from);
777  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
778  bool IsInitialized() const final;
779 
780  size_t ByteSizeLong() const final;
781  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
782  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
783  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
784  int GetCachedSize() const final { return _cached_size_.Get(); }
785 
786  private:
787  inline void SharedCtor();
788  inline void SharedDtor();
789  void SetCachedSize(int size) const final;
790  void InternalSwap(LinearExpressionProto* other);
791  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
792  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
793  return "operations_research.sat.LinearExpressionProto";
794  }
795  private:
796  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
797  return nullptr;
798  }
799  inline void* MaybeArenaPtr() const {
800  return nullptr;
801  }
802  public:
803 
804  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
805  private:
806  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
807  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
809  }
810 
811  public:
812 
813  // nested types ----------------------------------------------------
814 
815  // accessors -------------------------------------------------------
816 
817  enum : int {
821  };
822  // repeated int32 vars = 1;
823  int vars_size() const;
824  private:
825  int _internal_vars_size() const;
826  public:
827  void clear_vars();
828  private:
829  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
830  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
831  _internal_vars() const;
832  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
833  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
834  _internal_mutable_vars();
835  public:
836  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
837  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
838  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
839  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
840  vars() const;
841  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
842  mutable_vars();
843 
844  // repeated int32 coeffs = 2;
845  int coeffs_size() const;
846  private:
847  int _internal_coeffs_size() const;
848  public:
849  void clear_coeffs();
850  private:
851  ::PROTOBUF_NAMESPACE_ID::int32 _internal_coeffs(int index) const;
852  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
853  _internal_coeffs() const;
854  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
855  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
856  _internal_mutable_coeffs();
857  public:
858  ::PROTOBUF_NAMESPACE_ID::int32 coeffs(int index) const;
859  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
860  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value);
861  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
862  coeffs() const;
863  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
864  mutable_coeffs();
865 
866  // int64 offset = 3;
867  void clear_offset();
868  ::PROTOBUF_NAMESPACE_ID::int64 offset() const;
869  void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
870  private:
871  ::PROTOBUF_NAMESPACE_ID::int64 _internal_offset() const;
872  void _internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
873  public:
874 
875  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearExpressionProto)
876  private:
877  class _Internal;
878 
879  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
880  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
881  mutable std::atomic<int> _vars_cached_byte_size_;
882  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > coeffs_;
883  mutable std::atomic<int> _coeffs_cached_byte_size_;
884  ::PROTOBUF_NAMESPACE_ID::int64 offset_;
885  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
886  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
887 };
888 // -------------------------------------------------------------------
889 
891  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearArgumentProto) */ {
892  public:
894  virtual ~LinearArgumentProto();
895 
898  : LinearArgumentProto() {
899  *this = ::std::move(from);
900  }
901 
903  CopyFrom(from);
904  return *this;
905  }
907  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
908  if (this != &from) InternalSwap(&from);
909  } else {
910  CopyFrom(from);
911  }
912  return *this;
913  }
914 
915  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
916  return GetDescriptor();
917  }
918  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
919  return GetMetadataStatic().descriptor;
920  }
921  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
922  return GetMetadataStatic().reflection;
923  }
924  static const LinearArgumentProto& default_instance();
925 
926  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
928  return reinterpret_cast<const LinearArgumentProto*>(
930  }
931  static constexpr int kIndexInFileMessages =
932  4;
933 
935  a.Swap(&b);
936  }
937  inline void Swap(LinearArgumentProto* other) {
938  if (other == this) return;
939  InternalSwap(other);
940  }
941 
942  // implements Message ----------------------------------------------
943 
944  inline LinearArgumentProto* New() const final {
945  return CreateMaybeMessage<LinearArgumentProto>(nullptr);
946  }
947 
948  LinearArgumentProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
949  return CreateMaybeMessage<LinearArgumentProto>(arena);
950  }
951  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
952  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
953  void CopyFrom(const LinearArgumentProto& from);
954  void MergeFrom(const LinearArgumentProto& from);
955  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
956  bool IsInitialized() const final;
957 
958  size_t ByteSizeLong() const final;
959  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
960  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
961  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
962  int GetCachedSize() const final { return _cached_size_.Get(); }
963 
964  private:
965  inline void SharedCtor();
966  inline void SharedDtor();
967  void SetCachedSize(int size) const final;
968  void InternalSwap(LinearArgumentProto* other);
969  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
970  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
971  return "operations_research.sat.LinearArgumentProto";
972  }
973  private:
974  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
975  return nullptr;
976  }
977  inline void* MaybeArenaPtr() const {
978  return nullptr;
979  }
980  public:
981 
982  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
983  private:
984  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
985  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
987  }
988 
989  public:
990 
991  // nested types ----------------------------------------------------
992 
993  // accessors -------------------------------------------------------
994 
995  enum : int {
998  };
999  // repeated .operations_research.sat.LinearExpressionProto exprs = 2;
1000  int exprs_size() const;
1001  private:
1002  int _internal_exprs_size() const;
1003  public:
1004  void clear_exprs();
1006  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >*
1007  mutable_exprs();
1008  private:
1009  const ::operations_research::sat::LinearExpressionProto& _internal_exprs(int index) const;
1011  public:
1012  const ::operations_research::sat::LinearExpressionProto& exprs(int index) const;
1014  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >&
1015  exprs() const;
1016 
1017  // .operations_research.sat.LinearExpressionProto target = 1;
1018  bool has_target() const;
1019  private:
1020  bool _internal_has_target() const;
1021  public:
1022  void clear_target();
1023  const ::operations_research::sat::LinearExpressionProto& target() const;
1027  private:
1028  const ::operations_research::sat::LinearExpressionProto& _internal_target() const;
1029  ::operations_research::sat::LinearExpressionProto* _internal_mutable_target();
1030  public:
1031 
1032  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearArgumentProto)
1033  private:
1034  class _Internal;
1035 
1036  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1037  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > exprs_;
1039  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1040  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1041 };
1042 // -------------------------------------------------------------------
1043 
1045  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AllDifferentConstraintProto) */ {
1046  public:
1048  virtual ~AllDifferentConstraintProto();
1049 
1053  *this = ::std::move(from);
1054  }
1055 
1057  CopyFrom(from);
1058  return *this;
1059  }
1061  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1062  if (this != &from) InternalSwap(&from);
1063  } else {
1064  CopyFrom(from);
1065  }
1066  return *this;
1067  }
1068 
1069  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1070  return GetDescriptor();
1071  }
1072  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1073  return GetMetadataStatic().descriptor;
1074  }
1075  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1076  return GetMetadataStatic().reflection;
1077  }
1079 
1080  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1082  return reinterpret_cast<const AllDifferentConstraintProto*>(
1084  }
1085  static constexpr int kIndexInFileMessages =
1086  5;
1087 
1089  a.Swap(&b);
1090  }
1091  inline void Swap(AllDifferentConstraintProto* other) {
1092  if (other == this) return;
1093  InternalSwap(other);
1094  }
1095 
1096  // implements Message ----------------------------------------------
1097 
1098  inline AllDifferentConstraintProto* New() const final {
1099  return CreateMaybeMessage<AllDifferentConstraintProto>(nullptr);
1100  }
1101 
1102  AllDifferentConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1103  return CreateMaybeMessage<AllDifferentConstraintProto>(arena);
1104  }
1105  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1106  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1107  void CopyFrom(const AllDifferentConstraintProto& from);
1108  void MergeFrom(const AllDifferentConstraintProto& from);
1109  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1110  bool IsInitialized() const final;
1111 
1112  size_t ByteSizeLong() const final;
1113  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1114  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1115  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1116  int GetCachedSize() const final { return _cached_size_.Get(); }
1117 
1118  private:
1119  inline void SharedCtor();
1120  inline void SharedDtor();
1121  void SetCachedSize(int size) const final;
1122  void InternalSwap(AllDifferentConstraintProto* other);
1123  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1124  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1125  return "operations_research.sat.AllDifferentConstraintProto";
1126  }
1127  private:
1128  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1129  return nullptr;
1130  }
1131  inline void* MaybeArenaPtr() const {
1132  return nullptr;
1133  }
1134  public:
1135 
1136  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1137  private:
1138  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1139  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1141  }
1142 
1143  public:
1144 
1145  // nested types ----------------------------------------------------
1146 
1147  // accessors -------------------------------------------------------
1148 
1149  enum : int {
1151  };
1152  // repeated int32 vars = 1;
1153  int vars_size() const;
1154  private:
1155  int _internal_vars_size() const;
1156  public:
1157  void clear_vars();
1158  private:
1159  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1160  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1161  _internal_vars() const;
1162  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1163  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1164  _internal_mutable_vars();
1165  public:
1166  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1167  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1168  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1169  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1170  vars() const;
1171  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1172  mutable_vars();
1173 
1174  // @@protoc_insertion_point(class_scope:operations_research.sat.AllDifferentConstraintProto)
1175  private:
1176  class _Internal;
1177 
1178  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1179  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1180  mutable std::atomic<int> _vars_cached_byte_size_;
1181  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1182  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1183 };
1184 // -------------------------------------------------------------------
1185 
1187  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.LinearConstraintProto) */ {
1188  public:
1190  virtual ~LinearConstraintProto();
1191 
1194  : LinearConstraintProto() {
1195  *this = ::std::move(from);
1196  }
1197 
1199  CopyFrom(from);
1200  return *this;
1201  }
1203  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1204  if (this != &from) InternalSwap(&from);
1205  } else {
1206  CopyFrom(from);
1207  }
1208  return *this;
1209  }
1210 
1211  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1212  return GetDescriptor();
1213  }
1214  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1215  return GetMetadataStatic().descriptor;
1216  }
1217  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1218  return GetMetadataStatic().reflection;
1219  }
1220  static const LinearConstraintProto& default_instance();
1221 
1222  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1224  return reinterpret_cast<const LinearConstraintProto*>(
1226  }
1227  static constexpr int kIndexInFileMessages =
1228  6;
1229 
1231  a.Swap(&b);
1232  }
1233  inline void Swap(LinearConstraintProto* other) {
1234  if (other == this) return;
1235  InternalSwap(other);
1236  }
1237 
1238  // implements Message ----------------------------------------------
1239 
1240  inline LinearConstraintProto* New() const final {
1241  return CreateMaybeMessage<LinearConstraintProto>(nullptr);
1242  }
1243 
1244  LinearConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1245  return CreateMaybeMessage<LinearConstraintProto>(arena);
1246  }
1247  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1248  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1249  void CopyFrom(const LinearConstraintProto& from);
1250  void MergeFrom(const LinearConstraintProto& from);
1251  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1252  bool IsInitialized() const final;
1253 
1254  size_t ByteSizeLong() const final;
1255  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1256  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1257  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1258  int GetCachedSize() const final { return _cached_size_.Get(); }
1259 
1260  private:
1261  inline void SharedCtor();
1262  inline void SharedDtor();
1263  void SetCachedSize(int size) const final;
1264  void InternalSwap(LinearConstraintProto* other);
1265  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1266  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1267  return "operations_research.sat.LinearConstraintProto";
1268  }
1269  private:
1270  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1271  return nullptr;
1272  }
1273  inline void* MaybeArenaPtr() const {
1274  return nullptr;
1275  }
1276  public:
1277 
1278  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1279  private:
1280  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1281  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1283  }
1284 
1285  public:
1286 
1287  // nested types ----------------------------------------------------
1288 
1289  // accessors -------------------------------------------------------
1290 
1291  enum : int {
1295  };
1296  // repeated int32 vars = 1;
1297  int vars_size() const;
1298  private:
1299  int _internal_vars_size() const;
1300  public:
1301  void clear_vars();
1302  private:
1303  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1304  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1305  _internal_vars() const;
1306  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1307  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1308  _internal_mutable_vars();
1309  public:
1310  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1311  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1312  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1313  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1314  vars() const;
1315  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1316  mutable_vars();
1317 
1318  // repeated int64 coeffs = 2;
1319  int coeffs_size() const;
1320  private:
1321  int _internal_coeffs_size() const;
1322  public:
1323  void clear_coeffs();
1324  private:
1325  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coeffs(int index) const;
1326  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1327  _internal_coeffs() const;
1328  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
1329  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1330  _internal_mutable_coeffs();
1331  public:
1332  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
1333  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
1334  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
1335  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1336  coeffs() const;
1337  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1338  mutable_coeffs();
1339 
1340  // repeated int64 domain = 3;
1341  int domain_size() const;
1342  private:
1343  int _internal_domain_size() const;
1344  public:
1345  void clear_domain();
1346  private:
1347  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
1348  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1349  _internal_domain() const;
1350  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
1351  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1352  _internal_mutable_domain();
1353  public:
1354  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
1355  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
1356  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
1357  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
1358  domain() const;
1359  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
1360  mutable_domain();
1361 
1362  // @@protoc_insertion_point(class_scope:operations_research.sat.LinearConstraintProto)
1363  private:
1364  class _Internal;
1365 
1366  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1367  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1368  mutable std::atomic<int> _vars_cached_byte_size_;
1369  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
1370  mutable std::atomic<int> _coeffs_cached_byte_size_;
1371  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
1372  mutable std::atomic<int> _domain_cached_byte_size_;
1373  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1374  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1375 };
1376 // -------------------------------------------------------------------
1377 
1379  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ElementConstraintProto) */ {
1380  public:
1382  virtual ~ElementConstraintProto();
1383 
1387  *this = ::std::move(from);
1388  }
1389 
1391  CopyFrom(from);
1392  return *this;
1393  }
1395  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1396  if (this != &from) InternalSwap(&from);
1397  } else {
1398  CopyFrom(from);
1399  }
1400  return *this;
1401  }
1402 
1403  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1404  return GetDescriptor();
1405  }
1406  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1407  return GetMetadataStatic().descriptor;
1408  }
1409  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1410  return GetMetadataStatic().reflection;
1411  }
1412  static const ElementConstraintProto& default_instance();
1413 
1414  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1416  return reinterpret_cast<const ElementConstraintProto*>(
1418  }
1419  static constexpr int kIndexInFileMessages =
1420  7;
1421 
1423  a.Swap(&b);
1424  }
1425  inline void Swap(ElementConstraintProto* other) {
1426  if (other == this) return;
1427  InternalSwap(other);
1428  }
1429 
1430  // implements Message ----------------------------------------------
1431 
1432  inline ElementConstraintProto* New() const final {
1433  return CreateMaybeMessage<ElementConstraintProto>(nullptr);
1434  }
1435 
1436  ElementConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1437  return CreateMaybeMessage<ElementConstraintProto>(arena);
1438  }
1439  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1440  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1441  void CopyFrom(const ElementConstraintProto& from);
1442  void MergeFrom(const ElementConstraintProto& from);
1443  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1444  bool IsInitialized() const final;
1445 
1446  size_t ByteSizeLong() const final;
1447  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1448  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1449  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1450  int GetCachedSize() const final { return _cached_size_.Get(); }
1451 
1452  private:
1453  inline void SharedCtor();
1454  inline void SharedDtor();
1455  void SetCachedSize(int size) const final;
1456  void InternalSwap(ElementConstraintProto* other);
1457  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1458  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1459  return "operations_research.sat.ElementConstraintProto";
1460  }
1461  private:
1462  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1463  return nullptr;
1464  }
1465  inline void* MaybeArenaPtr() const {
1466  return nullptr;
1467  }
1468  public:
1469 
1470  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1471  private:
1472  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1473  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1475  }
1476 
1477  public:
1478 
1479  // nested types ----------------------------------------------------
1480 
1481  // accessors -------------------------------------------------------
1482 
1483  enum : int {
1487  };
1488  // repeated int32 vars = 3;
1489  int vars_size() const;
1490  private:
1491  int _internal_vars_size() const;
1492  public:
1493  void clear_vars();
1494  private:
1495  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
1496  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1497  _internal_vars() const;
1498  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1499  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1500  _internal_mutable_vars();
1501  public:
1502  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
1503  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1504  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
1505  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1506  vars() const;
1507  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1508  mutable_vars();
1509 
1510  // int32 index = 1;
1511  void clear_index();
1512  ::PROTOBUF_NAMESPACE_ID::int32 index() const;
1513  void set_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1514  private:
1515  ::PROTOBUF_NAMESPACE_ID::int32 _internal_index() const;
1516  void _internal_set_index(::PROTOBUF_NAMESPACE_ID::int32 value);
1517  public:
1518 
1519  // int32 target = 2;
1520  void clear_target();
1521  ::PROTOBUF_NAMESPACE_ID::int32 target() const;
1522  void set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1523  private:
1524  ::PROTOBUF_NAMESPACE_ID::int32 _internal_target() const;
1525  void _internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value);
1526  public:
1527 
1528  // @@protoc_insertion_point(class_scope:operations_research.sat.ElementConstraintProto)
1529  private:
1530  class _Internal;
1531 
1532  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1533  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
1534  mutable std::atomic<int> _vars_cached_byte_size_;
1535  ::PROTOBUF_NAMESPACE_ID::int32 index_;
1536  ::PROTOBUF_NAMESPACE_ID::int32 target_;
1537  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1538  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1539 };
1540 // -------------------------------------------------------------------
1541 
1543  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.IntervalConstraintProto) */ {
1544  public:
1546  virtual ~IntervalConstraintProto();
1547 
1551  *this = ::std::move(from);
1552  }
1553 
1555  CopyFrom(from);
1556  return *this;
1557  }
1559  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1560  if (this != &from) InternalSwap(&from);
1561  } else {
1562  CopyFrom(from);
1563  }
1564  return *this;
1565  }
1566 
1567  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1568  return GetDescriptor();
1569  }
1570  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1571  return GetMetadataStatic().descriptor;
1572  }
1573  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1574  return GetMetadataStatic().reflection;
1575  }
1576  static const IntervalConstraintProto& default_instance();
1577 
1578  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1580  return reinterpret_cast<const IntervalConstraintProto*>(
1582  }
1583  static constexpr int kIndexInFileMessages =
1584  8;
1585 
1587  a.Swap(&b);
1588  }
1589  inline void Swap(IntervalConstraintProto* other) {
1590  if (other == this) return;
1591  InternalSwap(other);
1592  }
1593 
1594  // implements Message ----------------------------------------------
1595 
1596  inline IntervalConstraintProto* New() const final {
1597  return CreateMaybeMessage<IntervalConstraintProto>(nullptr);
1598  }
1599 
1600  IntervalConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1601  return CreateMaybeMessage<IntervalConstraintProto>(arena);
1602  }
1603  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1604  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1605  void CopyFrom(const IntervalConstraintProto& from);
1606  void MergeFrom(const IntervalConstraintProto& from);
1607  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1608  bool IsInitialized() const final;
1609 
1610  size_t ByteSizeLong() const final;
1611  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1612  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1613  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1614  int GetCachedSize() const final { return _cached_size_.Get(); }
1615 
1616  private:
1617  inline void SharedCtor();
1618  inline void SharedDtor();
1619  void SetCachedSize(int size) const final;
1620  void InternalSwap(IntervalConstraintProto* other);
1621  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1622  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1623  return "operations_research.sat.IntervalConstraintProto";
1624  }
1625  private:
1626  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1627  return nullptr;
1628  }
1629  inline void* MaybeArenaPtr() const {
1630  return nullptr;
1631  }
1632  public:
1633 
1634  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1635  private:
1636  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1637  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1639  }
1640 
1641  public:
1642 
1643  // nested types ----------------------------------------------------
1644 
1645  // accessors -------------------------------------------------------
1646 
1647  enum : int {
1651  };
1652  // int32 start = 1;
1653  void clear_start();
1654  ::PROTOBUF_NAMESPACE_ID::int32 start() const;
1655  void set_start(::PROTOBUF_NAMESPACE_ID::int32 value);
1656  private:
1657  ::PROTOBUF_NAMESPACE_ID::int32 _internal_start() const;
1658  void _internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value);
1659  public:
1660 
1661  // int32 end = 2;
1662  void clear_end();
1663  ::PROTOBUF_NAMESPACE_ID::int32 end() const;
1664  void set_end(::PROTOBUF_NAMESPACE_ID::int32 value);
1665  private:
1666  ::PROTOBUF_NAMESPACE_ID::int32 _internal_end() const;
1667  void _internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value);
1668  public:
1669 
1670  // int32 size = 3;
1671  void clear_size();
1672  ::PROTOBUF_NAMESPACE_ID::int32 size() const;
1673  void set_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1674  private:
1675  ::PROTOBUF_NAMESPACE_ID::int32 _internal_size() const;
1676  void _internal_set_size(::PROTOBUF_NAMESPACE_ID::int32 value);
1677  public:
1678 
1679  // @@protoc_insertion_point(class_scope:operations_research.sat.IntervalConstraintProto)
1680  private:
1681  class _Internal;
1682 
1683  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1684  ::PROTOBUF_NAMESPACE_ID::int32 start_;
1685  ::PROTOBUF_NAMESPACE_ID::int32 end_;
1686  ::PROTOBUF_NAMESPACE_ID::int32 size_;
1687  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1688  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1689 };
1690 // -------------------------------------------------------------------
1691 
1693  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlapConstraintProto) */ {
1694  public:
1696  virtual ~NoOverlapConstraintProto();
1697 
1701  *this = ::std::move(from);
1702  }
1703 
1705  CopyFrom(from);
1706  return *this;
1707  }
1709  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1710  if (this != &from) InternalSwap(&from);
1711  } else {
1712  CopyFrom(from);
1713  }
1714  return *this;
1715  }
1716 
1717  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1718  return GetDescriptor();
1719  }
1720  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1721  return GetMetadataStatic().descriptor;
1722  }
1723  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1724  return GetMetadataStatic().reflection;
1725  }
1727 
1728  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1730  return reinterpret_cast<const NoOverlapConstraintProto*>(
1732  }
1733  static constexpr int kIndexInFileMessages =
1734  9;
1735 
1737  a.Swap(&b);
1738  }
1739  inline void Swap(NoOverlapConstraintProto* other) {
1740  if (other == this) return;
1741  InternalSwap(other);
1742  }
1743 
1744  // implements Message ----------------------------------------------
1745 
1746  inline NoOverlapConstraintProto* New() const final {
1747  return CreateMaybeMessage<NoOverlapConstraintProto>(nullptr);
1748  }
1749 
1750  NoOverlapConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1751  return CreateMaybeMessage<NoOverlapConstraintProto>(arena);
1752  }
1753  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1754  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1755  void CopyFrom(const NoOverlapConstraintProto& from);
1756  void MergeFrom(const NoOverlapConstraintProto& from);
1757  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1758  bool IsInitialized() const final;
1759 
1760  size_t ByteSizeLong() const final;
1761  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1762  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1763  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1764  int GetCachedSize() const final { return _cached_size_.Get(); }
1765 
1766  private:
1767  inline void SharedCtor();
1768  inline void SharedDtor();
1769  void SetCachedSize(int size) const final;
1770  void InternalSwap(NoOverlapConstraintProto* other);
1771  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1772  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1773  return "operations_research.sat.NoOverlapConstraintProto";
1774  }
1775  private:
1776  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1777  return nullptr;
1778  }
1779  inline void* MaybeArenaPtr() const {
1780  return nullptr;
1781  }
1782  public:
1783 
1784  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1785  private:
1786  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1787  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1789  }
1790 
1791  public:
1792 
1793  // nested types ----------------------------------------------------
1794 
1795  // accessors -------------------------------------------------------
1796 
1797  enum : int {
1799  };
1800  // repeated int32 intervals = 1;
1801  int intervals_size() const;
1802  private:
1803  int _internal_intervals_size() const;
1804  public:
1805  void clear_intervals();
1806  private:
1807  ::PROTOBUF_NAMESPACE_ID::int32 _internal_intervals(int index) const;
1808  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1809  _internal_intervals() const;
1810  void _internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1811  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1812  _internal_mutable_intervals();
1813  public:
1814  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
1815  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1816  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1817  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1818  intervals() const;
1819  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1821 
1822  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlapConstraintProto)
1823  private:
1824  class _Internal;
1825 
1826  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
1827  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
1828  mutable std::atomic<int> _intervals_cached_byte_size_;
1829  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
1830  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
1831 };
1832 // -------------------------------------------------------------------
1833 
1835  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.NoOverlap2DConstraintProto) */ {
1836  public:
1838  virtual ~NoOverlap2DConstraintProto();
1839 
1843  *this = ::std::move(from);
1844  }
1845 
1847  CopyFrom(from);
1848  return *this;
1849  }
1851  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
1852  if (this != &from) InternalSwap(&from);
1853  } else {
1854  CopyFrom(from);
1855  }
1856  return *this;
1857  }
1858 
1859  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
1860  return GetDescriptor();
1861  }
1862  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
1863  return GetMetadataStatic().descriptor;
1864  }
1865  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
1866  return GetMetadataStatic().reflection;
1867  }
1869 
1870  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
1872  return reinterpret_cast<const NoOverlap2DConstraintProto*>(
1874  }
1875  static constexpr int kIndexInFileMessages =
1876  10;
1877 
1879  a.Swap(&b);
1880  }
1881  inline void Swap(NoOverlap2DConstraintProto* other) {
1882  if (other == this) return;
1883  InternalSwap(other);
1884  }
1885 
1886  // implements Message ----------------------------------------------
1887 
1888  inline NoOverlap2DConstraintProto* New() const final {
1889  return CreateMaybeMessage<NoOverlap2DConstraintProto>(nullptr);
1890  }
1891 
1892  NoOverlap2DConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
1893  return CreateMaybeMessage<NoOverlap2DConstraintProto>(arena);
1894  }
1895  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1896  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
1897  void CopyFrom(const NoOverlap2DConstraintProto& from);
1898  void MergeFrom(const NoOverlap2DConstraintProto& from);
1899  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
1900  bool IsInitialized() const final;
1901 
1902  size_t ByteSizeLong() const final;
1903  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
1904  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
1905  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
1906  int GetCachedSize() const final { return _cached_size_.Get(); }
1907 
1908  private:
1909  inline void SharedCtor();
1910  inline void SharedDtor();
1911  void SetCachedSize(int size) const final;
1912  void InternalSwap(NoOverlap2DConstraintProto* other);
1913  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
1914  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
1915  return "operations_research.sat.NoOverlap2DConstraintProto";
1916  }
1917  private:
1918  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
1919  return nullptr;
1920  }
1921  inline void* MaybeArenaPtr() const {
1922  return nullptr;
1923  }
1924  public:
1925 
1926  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
1927  private:
1928  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
1929  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
1931  }
1932 
1933  public:
1934 
1935  // nested types ----------------------------------------------------
1936 
1937  // accessors -------------------------------------------------------
1938 
1939  enum : int {
1943  };
1944  // repeated int32 x_intervals = 1;
1945  int x_intervals_size() const;
1946  private:
1947  int _internal_x_intervals_size() const;
1948  public:
1949  void clear_x_intervals();
1950  private:
1951  ::PROTOBUF_NAMESPACE_ID::int32 _internal_x_intervals(int index) const;
1952  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1953  _internal_x_intervals() const;
1954  void _internal_add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1955  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1956  _internal_mutable_x_intervals();
1957  public:
1958  ::PROTOBUF_NAMESPACE_ID::int32 x_intervals(int index) const;
1959  void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1960  void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1961  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1962  x_intervals() const;
1963  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1965 
1966  // repeated int32 y_intervals = 2;
1967  int y_intervals_size() const;
1968  private:
1969  int _internal_y_intervals_size() const;
1970  public:
1971  void clear_y_intervals();
1972  private:
1973  ::PROTOBUF_NAMESPACE_ID::int32 _internal_y_intervals(int index) const;
1974  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1975  _internal_y_intervals() const;
1976  void _internal_add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1977  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1978  _internal_mutable_y_intervals();
1979  public:
1980  ::PROTOBUF_NAMESPACE_ID::int32 y_intervals(int index) const;
1981  void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
1982  void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
1983  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
1984  y_intervals() const;
1985  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
1987 
1988  // bool boxes_with_null_area_can_overlap = 3;
1990  bool boxes_with_null_area_can_overlap() const;
1991  void set_boxes_with_null_area_can_overlap(bool value);
1992  private:
1993  bool _internal_boxes_with_null_area_can_overlap() const;
1994  void _internal_set_boxes_with_null_area_can_overlap(bool value);
1995  public:
1996 
1997  // @@protoc_insertion_point(class_scope:operations_research.sat.NoOverlap2DConstraintProto)
1998  private:
1999  class _Internal;
2000 
2001  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2002  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > x_intervals_;
2003  mutable std::atomic<int> _x_intervals_cached_byte_size_;
2004  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > y_intervals_;
2005  mutable std::atomic<int> _y_intervals_cached_byte_size_;
2006  bool boxes_with_null_area_can_overlap_;
2007  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2008  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2009 };
2010 // -------------------------------------------------------------------
2011 
2013  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CumulativeConstraintProto) */ {
2014  public:
2016  virtual ~CumulativeConstraintProto();
2017 
2021  *this = ::std::move(from);
2022  }
2023 
2025  CopyFrom(from);
2026  return *this;
2027  }
2029  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2030  if (this != &from) InternalSwap(&from);
2031  } else {
2032  CopyFrom(from);
2033  }
2034  return *this;
2035  }
2036 
2037  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2038  return GetDescriptor();
2039  }
2040  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2041  return GetMetadataStatic().descriptor;
2042  }
2043  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2044  return GetMetadataStatic().reflection;
2045  }
2047 
2048  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2050  return reinterpret_cast<const CumulativeConstraintProto*>(
2052  }
2053  static constexpr int kIndexInFileMessages =
2054  11;
2055 
2057  a.Swap(&b);
2058  }
2059  inline void Swap(CumulativeConstraintProto* other) {
2060  if (other == this) return;
2061  InternalSwap(other);
2062  }
2063 
2064  // implements Message ----------------------------------------------
2065 
2066  inline CumulativeConstraintProto* New() const final {
2067  return CreateMaybeMessage<CumulativeConstraintProto>(nullptr);
2068  }
2069 
2070  CumulativeConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2071  return CreateMaybeMessage<CumulativeConstraintProto>(arena);
2072  }
2073  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2074  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2075  void CopyFrom(const CumulativeConstraintProto& from);
2076  void MergeFrom(const CumulativeConstraintProto& from);
2077  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2078  bool IsInitialized() const final;
2079 
2080  size_t ByteSizeLong() const final;
2081  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2082  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2083  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2084  int GetCachedSize() const final { return _cached_size_.Get(); }
2085 
2086  private:
2087  inline void SharedCtor();
2088  inline void SharedDtor();
2089  void SetCachedSize(int size) const final;
2090  void InternalSwap(CumulativeConstraintProto* other);
2091  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2092  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2093  return "operations_research.sat.CumulativeConstraintProto";
2094  }
2095  private:
2096  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2097  return nullptr;
2098  }
2099  inline void* MaybeArenaPtr() const {
2100  return nullptr;
2101  }
2102  public:
2103 
2104  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2105  private:
2106  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2107  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2109  }
2110 
2111  public:
2112 
2113  // nested types ----------------------------------------------------
2114 
2115  // accessors -------------------------------------------------------
2116 
2117  enum : int {
2121  };
2122  // repeated int32 intervals = 2;
2123  int intervals_size() const;
2124  private:
2125  int _internal_intervals_size() const;
2126  public:
2127  void clear_intervals();
2128  private:
2129  ::PROTOBUF_NAMESPACE_ID::int32 _internal_intervals(int index) const;
2130  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2131  _internal_intervals() const;
2132  void _internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
2133  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2134  _internal_mutable_intervals();
2135  public:
2136  ::PROTOBUF_NAMESPACE_ID::int32 intervals(int index) const;
2137  void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2138  void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value);
2139  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2140  intervals() const;
2141  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2143 
2144  // repeated int32 demands = 3;
2145  int demands_size() const;
2146  private:
2147  int _internal_demands_size() const;
2148  public:
2149  void clear_demands();
2150  private:
2151  ::PROTOBUF_NAMESPACE_ID::int32 _internal_demands(int index) const;
2152  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2153  _internal_demands() const;
2154  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2155  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2156  _internal_mutable_demands();
2157  public:
2158  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
2159  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2160  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2161  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2162  demands() const;
2163  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2164  mutable_demands();
2165 
2166  // int32 capacity = 1;
2167  void clear_capacity();
2168  ::PROTOBUF_NAMESPACE_ID::int32 capacity() const;
2169  void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value);
2170  private:
2171  ::PROTOBUF_NAMESPACE_ID::int32 _internal_capacity() const;
2172  void _internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value);
2173  public:
2174 
2175  // @@protoc_insertion_point(class_scope:operations_research.sat.CumulativeConstraintProto)
2176  private:
2177  class _Internal;
2178 
2179  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2180  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > intervals_;
2181  mutable std::atomic<int> _intervals_cached_byte_size_;
2182  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
2183  mutable std::atomic<int> _demands_cached_byte_size_;
2184  ::PROTOBUF_NAMESPACE_ID::int32 capacity_;
2185  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2186  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2187 };
2188 // -------------------------------------------------------------------
2189 
2191  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ReservoirConstraintProto) */ {
2192  public:
2194  virtual ~ReservoirConstraintProto();
2195 
2199  *this = ::std::move(from);
2200  }
2201 
2203  CopyFrom(from);
2204  return *this;
2205  }
2207  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2208  if (this != &from) InternalSwap(&from);
2209  } else {
2210  CopyFrom(from);
2211  }
2212  return *this;
2213  }
2214 
2215  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2216  return GetDescriptor();
2217  }
2218  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2219  return GetMetadataStatic().descriptor;
2220  }
2221  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2222  return GetMetadataStatic().reflection;
2223  }
2225 
2226  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2228  return reinterpret_cast<const ReservoirConstraintProto*>(
2230  }
2231  static constexpr int kIndexInFileMessages =
2232  12;
2233 
2235  a.Swap(&b);
2236  }
2237  inline void Swap(ReservoirConstraintProto* other) {
2238  if (other == this) return;
2239  InternalSwap(other);
2240  }
2241 
2242  // implements Message ----------------------------------------------
2243 
2244  inline ReservoirConstraintProto* New() const final {
2245  return CreateMaybeMessage<ReservoirConstraintProto>(nullptr);
2246  }
2247 
2248  ReservoirConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2249  return CreateMaybeMessage<ReservoirConstraintProto>(arena);
2250  }
2251  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2252  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2253  void CopyFrom(const ReservoirConstraintProto& from);
2254  void MergeFrom(const ReservoirConstraintProto& from);
2255  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2256  bool IsInitialized() const final;
2257 
2258  size_t ByteSizeLong() const final;
2259  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2260  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2261  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2262  int GetCachedSize() const final { return _cached_size_.Get(); }
2263 
2264  private:
2265  inline void SharedCtor();
2266  inline void SharedDtor();
2267  void SetCachedSize(int size) const final;
2268  void InternalSwap(ReservoirConstraintProto* other);
2269  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2270  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2271  return "operations_research.sat.ReservoirConstraintProto";
2272  }
2273  private:
2274  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2275  return nullptr;
2276  }
2277  inline void* MaybeArenaPtr() const {
2278  return nullptr;
2279  }
2280  public:
2281 
2282  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2283  private:
2284  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2285  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2287  }
2288 
2289  public:
2290 
2291  // nested types ----------------------------------------------------
2292 
2293  // accessors -------------------------------------------------------
2294 
2295  enum : int {
2301  };
2302  // repeated int32 times = 3;
2303  int times_size() const;
2304  private:
2305  int _internal_times_size() const;
2306  public:
2307  void clear_times();
2308  private:
2309  ::PROTOBUF_NAMESPACE_ID::int32 _internal_times(int index) const;
2310  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2311  _internal_times() const;
2312  void _internal_add_times(::PROTOBUF_NAMESPACE_ID::int32 value);
2313  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2314  _internal_mutable_times();
2315  public:
2316  ::PROTOBUF_NAMESPACE_ID::int32 times(int index) const;
2317  void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2318  void add_times(::PROTOBUF_NAMESPACE_ID::int32 value);
2319  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2320  times() const;
2321  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2322  mutable_times();
2323 
2324  // repeated int64 demands = 4;
2325  int demands_size() const;
2326  private:
2327  int _internal_demands_size() const;
2328  public:
2329  void clear_demands();
2330  private:
2331  ::PROTOBUF_NAMESPACE_ID::int64 _internal_demands(int index) const;
2332  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2333  _internal_demands() const;
2334  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int64 value);
2335  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2336  _internal_mutable_demands();
2337  public:
2338  ::PROTOBUF_NAMESPACE_ID::int64 demands(int index) const;
2339  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2340  void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value);
2341  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2342  demands() const;
2343  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2344  mutable_demands();
2345 
2346  // repeated int32 actives = 5;
2347  int actives_size() const;
2348  private:
2349  int _internal_actives_size() const;
2350  public:
2351  void clear_actives();
2352  private:
2353  ::PROTOBUF_NAMESPACE_ID::int32 _internal_actives(int index) const;
2354  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2355  _internal_actives() const;
2356  void _internal_add_actives(::PROTOBUF_NAMESPACE_ID::int32 value);
2357  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2358  _internal_mutable_actives();
2359  public:
2360  ::PROTOBUF_NAMESPACE_ID::int32 actives(int index) const;
2361  void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2362  void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value);
2363  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2364  actives() const;
2365  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2366  mutable_actives();
2367 
2368  // int64 min_level = 1;
2369  void clear_min_level();
2370  ::PROTOBUF_NAMESPACE_ID::int64 min_level() const;
2371  void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2372  private:
2373  ::PROTOBUF_NAMESPACE_ID::int64 _internal_min_level() const;
2374  void _internal_set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2375  public:
2376 
2377  // int64 max_level = 2;
2378  void clear_max_level();
2379  ::PROTOBUF_NAMESPACE_ID::int64 max_level() const;
2380  void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2381  private:
2382  ::PROTOBUF_NAMESPACE_ID::int64 _internal_max_level() const;
2383  void _internal_set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value);
2384  public:
2385 
2386  // @@protoc_insertion_point(class_scope:operations_research.sat.ReservoirConstraintProto)
2387  private:
2388  class _Internal;
2389 
2390  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2391  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > times_;
2392  mutable std::atomic<int> _times_cached_byte_size_;
2393  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > demands_;
2394  mutable std::atomic<int> _demands_cached_byte_size_;
2395  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > actives_;
2396  mutable std::atomic<int> _actives_cached_byte_size_;
2397  ::PROTOBUF_NAMESPACE_ID::int64 min_level_;
2398  ::PROTOBUF_NAMESPACE_ID::int64 max_level_;
2399  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2400  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2401 };
2402 // -------------------------------------------------------------------
2403 
2405  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitConstraintProto) */ {
2406  public:
2408  virtual ~CircuitConstraintProto();
2409 
2413  *this = ::std::move(from);
2414  }
2415 
2417  CopyFrom(from);
2418  return *this;
2419  }
2421  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2422  if (this != &from) InternalSwap(&from);
2423  } else {
2424  CopyFrom(from);
2425  }
2426  return *this;
2427  }
2428 
2429  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2430  return GetDescriptor();
2431  }
2432  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2433  return GetMetadataStatic().descriptor;
2434  }
2435  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2436  return GetMetadataStatic().reflection;
2437  }
2438  static const CircuitConstraintProto& default_instance();
2439 
2440  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2442  return reinterpret_cast<const CircuitConstraintProto*>(
2444  }
2445  static constexpr int kIndexInFileMessages =
2446  13;
2447 
2449  a.Swap(&b);
2450  }
2451  inline void Swap(CircuitConstraintProto* other) {
2452  if (other == this) return;
2453  InternalSwap(other);
2454  }
2455 
2456  // implements Message ----------------------------------------------
2457 
2458  inline CircuitConstraintProto* New() const final {
2459  return CreateMaybeMessage<CircuitConstraintProto>(nullptr);
2460  }
2461 
2462  CircuitConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2463  return CreateMaybeMessage<CircuitConstraintProto>(arena);
2464  }
2465  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2466  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2467  void CopyFrom(const CircuitConstraintProto& from);
2468  void MergeFrom(const CircuitConstraintProto& from);
2469  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2470  bool IsInitialized() const final;
2471 
2472  size_t ByteSizeLong() const final;
2473  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2474  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2475  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2476  int GetCachedSize() const final { return _cached_size_.Get(); }
2477 
2478  private:
2479  inline void SharedCtor();
2480  inline void SharedDtor();
2481  void SetCachedSize(int size) const final;
2482  void InternalSwap(CircuitConstraintProto* other);
2483  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2484  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2485  return "operations_research.sat.CircuitConstraintProto";
2486  }
2487  private:
2488  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2489  return nullptr;
2490  }
2491  inline void* MaybeArenaPtr() const {
2492  return nullptr;
2493  }
2494  public:
2495 
2496  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2497  private:
2498  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2499  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2501  }
2502 
2503  public:
2504 
2505  // nested types ----------------------------------------------------
2506 
2507  // accessors -------------------------------------------------------
2508 
2509  enum : int {
2513  };
2514  // repeated int32 tails = 3;
2515  int tails_size() const;
2516  private:
2517  int _internal_tails_size() const;
2518  public:
2519  void clear_tails();
2520  private:
2521  ::PROTOBUF_NAMESPACE_ID::int32 _internal_tails(int index) const;
2522  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2523  _internal_tails() const;
2524  void _internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2525  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2526  _internal_mutable_tails();
2527  public:
2528  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2529  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2530  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2531  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2532  tails() const;
2533  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2534  mutable_tails();
2535 
2536  // repeated int32 heads = 4;
2537  int heads_size() const;
2538  private:
2539  int _internal_heads_size() const;
2540  public:
2541  void clear_heads();
2542  private:
2543  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heads(int index) const;
2544  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2545  _internal_heads() const;
2546  void _internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2547  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2548  _internal_mutable_heads();
2549  public:
2550  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2551  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2552  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2553  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2554  heads() const;
2555  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2556  mutable_heads();
2557 
2558  // repeated int32 literals = 5;
2559  int literals_size() const;
2560  private:
2561  int _internal_literals_size() const;
2562  public:
2563  void clear_literals();
2564  private:
2565  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
2566  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2567  _internal_literals() const;
2568  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2569  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2570  _internal_mutable_literals();
2571  public:
2572  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2573  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2574  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2575  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2576  literals() const;
2577  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2578  mutable_literals();
2579 
2580  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitConstraintProto)
2581  private:
2582  class _Internal;
2583 
2584  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2585  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2586  mutable std::atomic<int> _tails_cached_byte_size_;
2587  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2588  mutable std::atomic<int> _heads_cached_byte_size_;
2589  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2590  mutable std::atomic<int> _literals_cached_byte_size_;
2591  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2592  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2593 };
2594 // -------------------------------------------------------------------
2595 
2597  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.RoutesConstraintProto) */ {
2598  public:
2600  virtual ~RoutesConstraintProto();
2601 
2604  : RoutesConstraintProto() {
2605  *this = ::std::move(from);
2606  }
2607 
2609  CopyFrom(from);
2610  return *this;
2611  }
2613  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2614  if (this != &from) InternalSwap(&from);
2615  } else {
2616  CopyFrom(from);
2617  }
2618  return *this;
2619  }
2620 
2621  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2622  return GetDescriptor();
2623  }
2624  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2625  return GetMetadataStatic().descriptor;
2626  }
2627  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2628  return GetMetadataStatic().reflection;
2629  }
2630  static const RoutesConstraintProto& default_instance();
2631 
2632  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2634  return reinterpret_cast<const RoutesConstraintProto*>(
2636  }
2637  static constexpr int kIndexInFileMessages =
2638  14;
2639 
2641  a.Swap(&b);
2642  }
2643  inline void Swap(RoutesConstraintProto* other) {
2644  if (other == this) return;
2645  InternalSwap(other);
2646  }
2647 
2648  // implements Message ----------------------------------------------
2649 
2650  inline RoutesConstraintProto* New() const final {
2651  return CreateMaybeMessage<RoutesConstraintProto>(nullptr);
2652  }
2653 
2654  RoutesConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2655  return CreateMaybeMessage<RoutesConstraintProto>(arena);
2656  }
2657  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2658  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2659  void CopyFrom(const RoutesConstraintProto& from);
2660  void MergeFrom(const RoutesConstraintProto& from);
2661  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2662  bool IsInitialized() const final;
2663 
2664  size_t ByteSizeLong() const final;
2665  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2666  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2667  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2668  int GetCachedSize() const final { return _cached_size_.Get(); }
2669 
2670  private:
2671  inline void SharedCtor();
2672  inline void SharedDtor();
2673  void SetCachedSize(int size) const final;
2674  void InternalSwap(RoutesConstraintProto* other);
2675  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2676  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2677  return "operations_research.sat.RoutesConstraintProto";
2678  }
2679  private:
2680  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2681  return nullptr;
2682  }
2683  inline void* MaybeArenaPtr() const {
2684  return nullptr;
2685  }
2686  public:
2687 
2688  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2689  private:
2690  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2691  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2693  }
2694 
2695  public:
2696 
2697  // nested types ----------------------------------------------------
2698 
2699  // accessors -------------------------------------------------------
2700 
2701  enum : int {
2707  };
2708  // repeated int32 tails = 1;
2709  int tails_size() const;
2710  private:
2711  int _internal_tails_size() const;
2712  public:
2713  void clear_tails();
2714  private:
2715  ::PROTOBUF_NAMESPACE_ID::int32 _internal_tails(int index) const;
2716  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2717  _internal_tails() const;
2718  void _internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2719  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2720  _internal_mutable_tails();
2721  public:
2722  ::PROTOBUF_NAMESPACE_ID::int32 tails(int index) const;
2723  void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2724  void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value);
2725  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2726  tails() const;
2727  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2728  mutable_tails();
2729 
2730  // repeated int32 heads = 2;
2731  int heads_size() const;
2732  private:
2733  int _internal_heads_size() const;
2734  public:
2735  void clear_heads();
2736  private:
2737  ::PROTOBUF_NAMESPACE_ID::int32 _internal_heads(int index) const;
2738  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2739  _internal_heads() const;
2740  void _internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2741  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2742  _internal_mutable_heads();
2743  public:
2744  ::PROTOBUF_NAMESPACE_ID::int32 heads(int index) const;
2745  void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2746  void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value);
2747  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2748  heads() const;
2749  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2750  mutable_heads();
2751 
2752  // repeated int32 literals = 3;
2753  int literals_size() const;
2754  private:
2755  int _internal_literals_size() const;
2756  public:
2757  void clear_literals();
2758  private:
2759  ::PROTOBUF_NAMESPACE_ID::int32 _internal_literals(int index) const;
2760  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2761  _internal_literals() const;
2762  void _internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2763  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2764  _internal_mutable_literals();
2765  public:
2766  ::PROTOBUF_NAMESPACE_ID::int32 literals(int index) const;
2767  void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2768  void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value);
2769  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2770  literals() const;
2771  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2772  mutable_literals();
2773 
2774  // repeated int32 demands = 4;
2775  int demands_size() const;
2776  private:
2777  int _internal_demands_size() const;
2778  public:
2779  void clear_demands();
2780  private:
2781  ::PROTOBUF_NAMESPACE_ID::int32 _internal_demands(int index) const;
2782  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2783  _internal_demands() const;
2784  void _internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2785  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2786  _internal_mutable_demands();
2787  public:
2788  ::PROTOBUF_NAMESPACE_ID::int32 demands(int index) const;
2789  void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2790  void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value);
2791  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2792  demands() const;
2793  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2794  mutable_demands();
2795 
2796  // int64 capacity = 5;
2797  void clear_capacity();
2798  ::PROTOBUF_NAMESPACE_ID::int64 capacity() const;
2799  void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
2800  private:
2801  ::PROTOBUF_NAMESPACE_ID::int64 _internal_capacity() const;
2802  void _internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value);
2803  public:
2804 
2805  // @@protoc_insertion_point(class_scope:operations_research.sat.RoutesConstraintProto)
2806  private:
2807  class _Internal;
2808 
2809  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2810  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > tails_;
2811  mutable std::atomic<int> _tails_cached_byte_size_;
2812  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > heads_;
2813  mutable std::atomic<int> _heads_cached_byte_size_;
2814  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > literals_;
2815  mutable std::atomic<int> _literals_cached_byte_size_;
2816  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > demands_;
2817  mutable std::atomic<int> _demands_cached_byte_size_;
2818  ::PROTOBUF_NAMESPACE_ID::int64 capacity_;
2819  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2820  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2821 };
2822 // -------------------------------------------------------------------
2823 
2825  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CircuitCoveringConstraintProto) */ {
2826  public:
2829 
2833  *this = ::std::move(from);
2834  }
2835 
2837  CopyFrom(from);
2838  return *this;
2839  }
2841  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
2842  if (this != &from) InternalSwap(&from);
2843  } else {
2844  CopyFrom(from);
2845  }
2846  return *this;
2847  }
2848 
2849  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
2850  return GetDescriptor();
2851  }
2852  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
2853  return GetMetadataStatic().descriptor;
2854  }
2855  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
2856  return GetMetadataStatic().reflection;
2857  }
2859 
2860  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
2862  return reinterpret_cast<const CircuitCoveringConstraintProto*>(
2864  }
2865  static constexpr int kIndexInFileMessages =
2866  15;
2867 
2869  a.Swap(&b);
2870  }
2871  inline void Swap(CircuitCoveringConstraintProto* other) {
2872  if (other == this) return;
2873  InternalSwap(other);
2874  }
2875 
2876  // implements Message ----------------------------------------------
2877 
2878  inline CircuitCoveringConstraintProto* New() const final {
2879  return CreateMaybeMessage<CircuitCoveringConstraintProto>(nullptr);
2880  }
2881 
2882  CircuitCoveringConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
2883  return CreateMaybeMessage<CircuitCoveringConstraintProto>(arena);
2884  }
2885  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2886  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
2887  void CopyFrom(const CircuitCoveringConstraintProto& from);
2888  void MergeFrom(const CircuitCoveringConstraintProto& from);
2889  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
2890  bool IsInitialized() const final;
2891 
2892  size_t ByteSizeLong() const final;
2893  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
2894  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
2895  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
2896  int GetCachedSize() const final { return _cached_size_.Get(); }
2897 
2898  private:
2899  inline void SharedCtor();
2900  inline void SharedDtor();
2901  void SetCachedSize(int size) const final;
2902  void InternalSwap(CircuitCoveringConstraintProto* other);
2903  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
2904  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
2905  return "operations_research.sat.CircuitCoveringConstraintProto";
2906  }
2907  private:
2908  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
2909  return nullptr;
2910  }
2911  inline void* MaybeArenaPtr() const {
2912  return nullptr;
2913  }
2914  public:
2915 
2916  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
2917  private:
2918  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
2919  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
2921  }
2922 
2923  public:
2924 
2925  // nested types ----------------------------------------------------
2926 
2927  // accessors -------------------------------------------------------
2928 
2929  enum : int {
2932  };
2933  // repeated int32 nexts = 1;
2934  int nexts_size() const;
2935  private:
2936  int _internal_nexts_size() const;
2937  public:
2938  void clear_nexts();
2939  private:
2940  ::PROTOBUF_NAMESPACE_ID::int32 _internal_nexts(int index) const;
2941  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2942  _internal_nexts() const;
2943  void _internal_add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value);
2944  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2945  _internal_mutable_nexts();
2946  public:
2947  ::PROTOBUF_NAMESPACE_ID::int32 nexts(int index) const;
2948  void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
2949  void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value);
2950  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
2951  nexts() const;
2952  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
2953  mutable_nexts();
2954 
2955  // repeated int64 distinguished_nodes = 2;
2956  int distinguished_nodes_size() const;
2957  private:
2958  int _internal_distinguished_nodes_size() const;
2959  public:
2961  private:
2962  ::PROTOBUF_NAMESPACE_ID::int64 _internal_distinguished_nodes(int index) const;
2963  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2964  _internal_distinguished_nodes() const;
2965  void _internal_add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);
2966  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2967  _internal_mutable_distinguished_nodes();
2968  public:
2969  ::PROTOBUF_NAMESPACE_ID::int64 distinguished_nodes(int index) const;
2970  void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
2971  void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value);
2972  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
2973  distinguished_nodes() const;
2974  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
2976 
2977  // @@protoc_insertion_point(class_scope:operations_research.sat.CircuitCoveringConstraintProto)
2978  private:
2979  class _Internal;
2980 
2981  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
2982  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > nexts_;
2983  mutable std::atomic<int> _nexts_cached_byte_size_;
2984  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > distinguished_nodes_;
2985  mutable std::atomic<int> _distinguished_nodes_cached_byte_size_;
2986  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
2987  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
2988 };
2989 // -------------------------------------------------------------------
2990 
2992  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.TableConstraintProto) */ {
2993  public:
2995  virtual ~TableConstraintProto();
2996 
2999  : TableConstraintProto() {
3000  *this = ::std::move(from);
3001  }
3002 
3004  CopyFrom(from);
3005  return *this;
3006  }
3008  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3009  if (this != &from) InternalSwap(&from);
3010  } else {
3011  CopyFrom(from);
3012  }
3013  return *this;
3014  }
3015 
3016  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3017  return GetDescriptor();
3018  }
3019  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3020  return GetMetadataStatic().descriptor;
3021  }
3022  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3023  return GetMetadataStatic().reflection;
3024  }
3025  static const TableConstraintProto& default_instance();
3026 
3027  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3029  return reinterpret_cast<const TableConstraintProto*>(
3031  }
3032  static constexpr int kIndexInFileMessages =
3033  16;
3034 
3036  a.Swap(&b);
3037  }
3038  inline void Swap(TableConstraintProto* other) {
3039  if (other == this) return;
3040  InternalSwap(other);
3041  }
3042 
3043  // implements Message ----------------------------------------------
3044 
3045  inline TableConstraintProto* New() const final {
3046  return CreateMaybeMessage<TableConstraintProto>(nullptr);
3047  }
3048 
3049  TableConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3050  return CreateMaybeMessage<TableConstraintProto>(arena);
3051  }
3052  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3053  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3054  void CopyFrom(const TableConstraintProto& from);
3055  void MergeFrom(const TableConstraintProto& from);
3056  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3057  bool IsInitialized() const final;
3058 
3059  size_t ByteSizeLong() const final;
3060  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3061  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3062  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3063  int GetCachedSize() const final { return _cached_size_.Get(); }
3064 
3065  private:
3066  inline void SharedCtor();
3067  inline void SharedDtor();
3068  void SetCachedSize(int size) const final;
3069  void InternalSwap(TableConstraintProto* other);
3070  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3071  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3072  return "operations_research.sat.TableConstraintProto";
3073  }
3074  private:
3075  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3076  return nullptr;
3077  }
3078  inline void* MaybeArenaPtr() const {
3079  return nullptr;
3080  }
3081  public:
3082 
3083  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3084  private:
3085  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3086  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3088  }
3089 
3090  public:
3091 
3092  // nested types ----------------------------------------------------
3093 
3094  // accessors -------------------------------------------------------
3095 
3096  enum : int {
3100  };
3101  // repeated int32 vars = 1;
3102  int vars_size() const;
3103  private:
3104  int _internal_vars_size() const;
3105  public:
3106  void clear_vars();
3107  private:
3108  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
3109  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3110  _internal_vars() const;
3111  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3112  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3113  _internal_mutable_vars();
3114  public:
3115  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
3116  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3117  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3118  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3119  vars() const;
3120  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3121  mutable_vars();
3122 
3123  // repeated int64 values = 2;
3124  int values_size() const;
3125  private:
3126  int _internal_values_size() const;
3127  public:
3128  void clear_values();
3129  private:
3130  ::PROTOBUF_NAMESPACE_ID::int64 _internal_values(int index) const;
3131  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3132  _internal_values() const;
3133  void _internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
3134  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3135  _internal_mutable_values();
3136  public:
3137  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
3138  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3139  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
3140  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3141  values() const;
3142  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3143  mutable_values();
3144 
3145  // bool negated = 3;
3146  void clear_negated();
3147  bool negated() const;
3148  void set_negated(bool value);
3149  private:
3150  bool _internal_negated() const;
3151  void _internal_set_negated(bool value);
3152  public:
3153 
3154  // @@protoc_insertion_point(class_scope:operations_research.sat.TableConstraintProto)
3155  private:
3156  class _Internal;
3157 
3158  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3159  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
3160  mutable std::atomic<int> _vars_cached_byte_size_;
3161  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
3162  mutable std::atomic<int> _values_cached_byte_size_;
3163  bool negated_;
3164  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3165  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3166 };
3167 // -------------------------------------------------------------------
3168 
3170  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.InverseConstraintProto) */ {
3171  public:
3173  virtual ~InverseConstraintProto();
3174 
3178  *this = ::std::move(from);
3179  }
3180 
3182  CopyFrom(from);
3183  return *this;
3184  }
3186  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3187  if (this != &from) InternalSwap(&from);
3188  } else {
3189  CopyFrom(from);
3190  }
3191  return *this;
3192  }
3193 
3194  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3195  return GetDescriptor();
3196  }
3197  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3198  return GetMetadataStatic().descriptor;
3199  }
3200  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3201  return GetMetadataStatic().reflection;
3202  }
3203  static const InverseConstraintProto& default_instance();
3204 
3205  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3207  return reinterpret_cast<const InverseConstraintProto*>(
3209  }
3210  static constexpr int kIndexInFileMessages =
3211  17;
3212 
3214  a.Swap(&b);
3215  }
3216  inline void Swap(InverseConstraintProto* other) {
3217  if (other == this) return;
3218  InternalSwap(other);
3219  }
3220 
3221  // implements Message ----------------------------------------------
3222 
3223  inline InverseConstraintProto* New() const final {
3224  return CreateMaybeMessage<InverseConstraintProto>(nullptr);
3225  }
3226 
3227  InverseConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3228  return CreateMaybeMessage<InverseConstraintProto>(arena);
3229  }
3230  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3231  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3232  void CopyFrom(const InverseConstraintProto& from);
3233  void MergeFrom(const InverseConstraintProto& from);
3234  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3235  bool IsInitialized() const final;
3236 
3237  size_t ByteSizeLong() const final;
3238  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3239  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3240  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3241  int GetCachedSize() const final { return _cached_size_.Get(); }
3242 
3243  private:
3244  inline void SharedCtor();
3245  inline void SharedDtor();
3246  void SetCachedSize(int size) const final;
3247  void InternalSwap(InverseConstraintProto* other);
3248  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3249  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3250  return "operations_research.sat.InverseConstraintProto";
3251  }
3252  private:
3253  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3254  return nullptr;
3255  }
3256  inline void* MaybeArenaPtr() const {
3257  return nullptr;
3258  }
3259  public:
3260 
3261  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3262  private:
3263  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3264  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3266  }
3267 
3268  public:
3269 
3270  // nested types ----------------------------------------------------
3271 
3272  // accessors -------------------------------------------------------
3273 
3274  enum : int {
3277  };
3278  // repeated int32 f_direct = 1;
3279  int f_direct_size() const;
3280  private:
3281  int _internal_f_direct_size() const;
3282  public:
3283  void clear_f_direct();
3284  private:
3285  ::PROTOBUF_NAMESPACE_ID::int32 _internal_f_direct(int index) const;
3286  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3287  _internal_f_direct() const;
3288  void _internal_add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
3289  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3290  _internal_mutable_f_direct();
3291  public:
3292  ::PROTOBUF_NAMESPACE_ID::int32 f_direct(int index) const;
3293  void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3294  void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value);
3295  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3296  f_direct() const;
3297  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3298  mutable_f_direct();
3299 
3300  // repeated int32 f_inverse = 2;
3301  int f_inverse_size() const;
3302  private:
3303  int _internal_f_inverse_size() const;
3304  public:
3305  void clear_f_inverse();
3306  private:
3307  ::PROTOBUF_NAMESPACE_ID::int32 _internal_f_inverse(int index) const;
3308  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3309  _internal_f_inverse() const;
3310  void _internal_add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value);
3311  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3312  _internal_mutable_f_inverse();
3313  public:
3314  ::PROTOBUF_NAMESPACE_ID::int32 f_inverse(int index) const;
3315  void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3316  void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value);
3317  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3318  f_inverse() const;
3319  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3321 
3322  // @@protoc_insertion_point(class_scope:operations_research.sat.InverseConstraintProto)
3323  private:
3324  class _Internal;
3325 
3326  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3327  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_direct_;
3328  mutable std::atomic<int> _f_direct_cached_byte_size_;
3329  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > f_inverse_;
3330  mutable std::atomic<int> _f_inverse_cached_byte_size_;
3331  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3332  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3333 };
3334 // -------------------------------------------------------------------
3335 
3337  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.AutomatonConstraintProto) */ {
3338  public:
3340  virtual ~AutomatonConstraintProto();
3341 
3345  *this = ::std::move(from);
3346  }
3347 
3349  CopyFrom(from);
3350  return *this;
3351  }
3353  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3354  if (this != &from) InternalSwap(&from);
3355  } else {
3356  CopyFrom(from);
3357  }
3358  return *this;
3359  }
3360 
3361  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3362  return GetDescriptor();
3363  }
3364  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3365  return GetMetadataStatic().descriptor;
3366  }
3367  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3368  return GetMetadataStatic().reflection;
3369  }
3371 
3372  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3374  return reinterpret_cast<const AutomatonConstraintProto*>(
3376  }
3377  static constexpr int kIndexInFileMessages =
3378  18;
3379 
3381  a.Swap(&b);
3382  }
3383  inline void Swap(AutomatonConstraintProto* other) {
3384  if (other == this) return;
3385  InternalSwap(other);
3386  }
3387 
3388  // implements Message ----------------------------------------------
3389 
3390  inline AutomatonConstraintProto* New() const final {
3391  return CreateMaybeMessage<AutomatonConstraintProto>(nullptr);
3392  }
3393 
3394  AutomatonConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3395  return CreateMaybeMessage<AutomatonConstraintProto>(arena);
3396  }
3397  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3398  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3399  void CopyFrom(const AutomatonConstraintProto& from);
3400  void MergeFrom(const AutomatonConstraintProto& from);
3401  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3402  bool IsInitialized() const final;
3403 
3404  size_t ByteSizeLong() const final;
3405  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3406  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3407  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3408  int GetCachedSize() const final { return _cached_size_.Get(); }
3409 
3410  private:
3411  inline void SharedCtor();
3412  inline void SharedDtor();
3413  void SetCachedSize(int size) const final;
3414  void InternalSwap(AutomatonConstraintProto* other);
3415  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3416  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3417  return "operations_research.sat.AutomatonConstraintProto";
3418  }
3419  private:
3420  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3421  return nullptr;
3422  }
3423  inline void* MaybeArenaPtr() const {
3424  return nullptr;
3425  }
3426  public:
3427 
3428  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3429  private:
3430  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3431  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3433  }
3434 
3435  public:
3436 
3437  // nested types ----------------------------------------------------
3438 
3439  // accessors -------------------------------------------------------
3440 
3441  enum : int {
3448  };
3449  // repeated int64 final_states = 3;
3450  int final_states_size() const;
3451  private:
3452  int _internal_final_states_size() const;
3453  public:
3454  void clear_final_states();
3455  private:
3456  ::PROTOBUF_NAMESPACE_ID::int64 _internal_final_states(int index) const;
3457  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3458  _internal_final_states() const;
3459  void _internal_add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value);
3460  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3461  _internal_mutable_final_states();
3462  public:
3463  ::PROTOBUF_NAMESPACE_ID::int64 final_states(int index) const;
3464  void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3465  void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value);
3466  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3467  final_states() const;
3468  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3470 
3471  // repeated int64 transition_tail = 4;
3472  int transition_tail_size() const;
3473  private:
3474  int _internal_transition_tail_size() const;
3475  public:
3476  void clear_transition_tail();
3477  private:
3478  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_tail(int index) const;
3479  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3480  _internal_transition_tail() const;
3481  void _internal_add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value);
3482  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3483  _internal_mutable_transition_tail();
3484  public:
3485  ::PROTOBUF_NAMESPACE_ID::int64 transition_tail(int index) const;
3486  void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3487  void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value);
3488  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3489  transition_tail() const;
3490  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3492 
3493  // repeated int64 transition_head = 5;
3494  int transition_head_size() const;
3495  private:
3496  int _internal_transition_head_size() const;
3497  public:
3498  void clear_transition_head();
3499  private:
3500  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_head(int index) const;
3501  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3502  _internal_transition_head() const;
3503  void _internal_add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value);
3504  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3505  _internal_mutable_transition_head();
3506  public:
3507  ::PROTOBUF_NAMESPACE_ID::int64 transition_head(int index) const;
3508  void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3509  void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value);
3510  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3511  transition_head() const;
3512  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3514 
3515  // repeated int64 transition_label = 6;
3516  int transition_label_size() const;
3517  private:
3518  int _internal_transition_label_size() const;
3519  public:
3520  void clear_transition_label();
3521  private:
3522  ::PROTOBUF_NAMESPACE_ID::int64 _internal_transition_label(int index) const;
3523  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3524  _internal_transition_label() const;
3525  void _internal_add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value);
3526  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3527  _internal_mutable_transition_label();
3528  public:
3529  ::PROTOBUF_NAMESPACE_ID::int64 transition_label(int index) const;
3530  void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
3531  void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value);
3532  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
3533  transition_label() const;
3534  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
3536 
3537  // repeated int32 vars = 7;
3538  int vars_size() const;
3539  private:
3540  int _internal_vars_size() const;
3541  public:
3542  void clear_vars();
3543  private:
3544  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
3545  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3546  _internal_vars() const;
3547  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3548  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3549  _internal_mutable_vars();
3550  public:
3551  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
3552  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3553  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
3554  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3555  vars() const;
3556  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3557  mutable_vars();
3558 
3559  // int64 starting_state = 2;
3560  void clear_starting_state();
3561  ::PROTOBUF_NAMESPACE_ID::int64 starting_state() const;
3562  void set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value);
3563  private:
3564  ::PROTOBUF_NAMESPACE_ID::int64 _internal_starting_state() const;
3565  void _internal_set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value);
3566  public:
3567 
3568  // @@protoc_insertion_point(class_scope:operations_research.sat.AutomatonConstraintProto)
3569  private:
3570  class _Internal;
3571 
3572  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
3573  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > final_states_;
3574  mutable std::atomic<int> _final_states_cached_byte_size_;
3575  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_tail_;
3576  mutable std::atomic<int> _transition_tail_cached_byte_size_;
3577  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_head_;
3578  mutable std::atomic<int> _transition_head_cached_byte_size_;
3579  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > transition_label_;
3580  mutable std::atomic<int> _transition_label_cached_byte_size_;
3581  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
3582  mutable std::atomic<int> _vars_cached_byte_size_;
3583  ::PROTOBUF_NAMESPACE_ID::int64 starting_state_;
3584  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
3585  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
3586 };
3587 // -------------------------------------------------------------------
3588 
3590  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.ConstraintProto) */ {
3591  public:
3592  ConstraintProto();
3593  virtual ~ConstraintProto();
3594 
3595  ConstraintProto(const ConstraintProto& from);
3597  : ConstraintProto() {
3598  *this = ::std::move(from);
3599  }
3600 
3602  CopyFrom(from);
3603  return *this;
3604  }
3605  inline ConstraintProto& operator=(ConstraintProto&& from) noexcept {
3606  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
3607  if (this != &from) InternalSwap(&from);
3608  } else {
3609  CopyFrom(from);
3610  }
3611  return *this;
3612  }
3613 
3614  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
3615  return GetDescriptor();
3616  }
3617  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
3618  return GetMetadataStatic().descriptor;
3619  }
3620  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
3621  return GetMetadataStatic().reflection;
3622  }
3623  static const ConstraintProto& default_instance();
3624 
3626  kBoolOr = 3,
3630  kIntDiv = 7,
3631  kIntMod = 8,
3632  kIntMax = 9,
3633  kLinMax = 27,
3634  kIntMin = 10,
3635  kLinMin = 28,
3636  kIntProd = 11,
3637  kLinear = 12,
3638  kAllDiff = 13,
3639  kElement = 14,
3640  kCircuit = 15,
3641  kRoutes = 23,
3643  kTable = 16,
3645  kInverse = 18,
3652  };
3653 
3654  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
3656  return reinterpret_cast<const ConstraintProto*>(
3658  }
3659  static constexpr int kIndexInFileMessages =
3660  19;
3661 
3662  friend void swap(ConstraintProto& a, ConstraintProto& b) {
3663  a.Swap(&b);
3664  }
3665  inline void Swap(ConstraintProto* other) {
3666  if (other == this) return;
3667  InternalSwap(other);
3668  }
3669 
3670  // implements Message ----------------------------------------------
3671 
3672  inline ConstraintProto* New() const final {
3673  return CreateMaybeMessage<ConstraintProto>(nullptr);
3674  }
3675 
3676  ConstraintProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
3677  return CreateMaybeMessage<ConstraintProto>(arena);
3678  }
3679  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3680  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
3681  void CopyFrom(const ConstraintProto& from);
3682  void MergeFrom(const ConstraintProto& from);
3683  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
3684  bool IsInitialized() const final;
3685 
3686  size_t ByteSizeLong() const final;
3687  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
3688  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
3689  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
3690  int GetCachedSize() const final { return _cached_size_.Get(); }
3691 
3692  private:
3693  inline void SharedCtor();
3694  inline void SharedDtor();
3695  void SetCachedSize(int size) const final;
3696  void InternalSwap(ConstraintProto* other);
3697  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
3698  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
3699  return "operations_research.sat.ConstraintProto";
3700  }
3701  private:
3702  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
3703  return nullptr;
3704  }
3705  inline void* MaybeArenaPtr() const {
3706  return nullptr;
3707  }
3708  public:
3709 
3710  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
3711  private:
3712  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
3713  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
3715  }
3716 
3717  public:
3718 
3719  // nested types ----------------------------------------------------
3720 
3721  // accessors -------------------------------------------------------
3722 
3723  enum : int {
3751  };
3752  // repeated int32 enforcement_literal = 2;
3753  int enforcement_literal_size() const;
3754  private:
3755  int _internal_enforcement_literal_size() const;
3756  public:
3758  private:
3759  ::PROTOBUF_NAMESPACE_ID::int32 _internal_enforcement_literal(int index) const;
3760  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3761  _internal_enforcement_literal() const;
3762  void _internal_add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value);
3763  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3764  _internal_mutable_enforcement_literal();
3765  public:
3766  ::PROTOBUF_NAMESPACE_ID::int32 enforcement_literal(int index) const;
3767  void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
3768  void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value);
3769  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
3770  enforcement_literal() const;
3771  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
3773 
3774  // string name = 1;
3775  void clear_name();
3776  const std::string& name() const;
3777  void set_name(const std::string& value);
3778  void set_name(std::string&& value);
3779  void set_name(const char* value);
3780  void set_name(const char* value, size_t size);
3781  std::string* mutable_name();
3782  std::string* release_name();
3783  void set_allocated_name(std::string* name);
3784  private:
3785  const std::string& _internal_name() const;
3786  void _internal_set_name(const std::string& value);
3787  std::string* _internal_mutable_name();
3788  public:
3789 
3790  // .operations_research.sat.BoolArgumentProto bool_or = 3;
3791  bool has_bool_or() const;
3792  private:
3793  bool _internal_has_bool_or() const;
3794  public:
3795  void clear_bool_or();
3796  const ::operations_research::sat::BoolArgumentProto& bool_or() const;
3800  private:
3801  const ::operations_research::sat::BoolArgumentProto& _internal_bool_or() const;
3802  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_or();
3803  public:
3804 
3805  // .operations_research.sat.BoolArgumentProto bool_and = 4;
3806  bool has_bool_and() const;
3807  private:
3808  bool _internal_has_bool_and() const;
3809  public:
3810  void clear_bool_and();
3811  const ::operations_research::sat::BoolArgumentProto& bool_and() const;
3815  private:
3816  const ::operations_research::sat::BoolArgumentProto& _internal_bool_and() const;
3817  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_and();
3818  public:
3819 
3820  // .operations_research.sat.BoolArgumentProto at_most_one = 26;
3821  bool has_at_most_one() const;
3822  private:
3823  bool _internal_has_at_most_one() const;
3824  public:
3825  void clear_at_most_one();
3826  const ::operations_research::sat::BoolArgumentProto& at_most_one() const;
3830  private:
3831  const ::operations_research::sat::BoolArgumentProto& _internal_at_most_one() const;
3832  ::operations_research::sat::BoolArgumentProto* _internal_mutable_at_most_one();
3833  public:
3834 
3835  // .operations_research.sat.BoolArgumentProto bool_xor = 5;
3836  bool has_bool_xor() const;
3837  private:
3838  bool _internal_has_bool_xor() const;
3839  public:
3840  void clear_bool_xor();
3841  const ::operations_research::sat::BoolArgumentProto& bool_xor() const;
3845  private:
3846  const ::operations_research::sat::BoolArgumentProto& _internal_bool_xor() const;
3847  ::operations_research::sat::BoolArgumentProto* _internal_mutable_bool_xor();
3848  public:
3849 
3850  // .operations_research.sat.IntegerArgumentProto int_div = 7;
3851  bool has_int_div() const;
3852  private:
3853  bool _internal_has_int_div() const;
3854  public:
3855  void clear_int_div();
3856  const ::operations_research::sat::IntegerArgumentProto& int_div() const;
3860  private:
3861  const ::operations_research::sat::IntegerArgumentProto& _internal_int_div() const;
3862  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_div();
3863  public:
3864 
3865  // .operations_research.sat.IntegerArgumentProto int_mod = 8;
3866  bool has_int_mod() const;
3867  private:
3868  bool _internal_has_int_mod() const;
3869  public:
3870  void clear_int_mod();
3871  const ::operations_research::sat::IntegerArgumentProto& int_mod() const;
3875  private:
3876  const ::operations_research::sat::IntegerArgumentProto& _internal_int_mod() const;
3877  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_mod();
3878  public:
3879 
3880  // .operations_research.sat.IntegerArgumentProto int_max = 9;
3881  bool has_int_max() const;
3882  private:
3883  bool _internal_has_int_max() const;
3884  public:
3885  void clear_int_max();
3886  const ::operations_research::sat::IntegerArgumentProto& int_max() const;
3890  private:
3891  const ::operations_research::sat::IntegerArgumentProto& _internal_int_max() const;
3892  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_max();
3893  public:
3894 
3895  // .operations_research.sat.LinearArgumentProto lin_max = 27;
3896  bool has_lin_max() const;
3897  private:
3898  bool _internal_has_lin_max() const;
3899  public:
3900  void clear_lin_max();
3901  const ::operations_research::sat::LinearArgumentProto& lin_max() const;
3905  private:
3906  const ::operations_research::sat::LinearArgumentProto& _internal_lin_max() const;
3907  ::operations_research::sat::LinearArgumentProto* _internal_mutable_lin_max();
3908  public:
3909 
3910  // .operations_research.sat.IntegerArgumentProto int_min = 10;
3911  bool has_int_min() const;
3912  private:
3913  bool _internal_has_int_min() const;
3914  public:
3915  void clear_int_min();
3916  const ::operations_research::sat::IntegerArgumentProto& int_min() const;
3920  private:
3921  const ::operations_research::sat::IntegerArgumentProto& _internal_int_min() const;
3922  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_min();
3923  public:
3924 
3925  // .operations_research.sat.LinearArgumentProto lin_min = 28;
3926  bool has_lin_min() const;
3927  private:
3928  bool _internal_has_lin_min() const;
3929  public:
3930  void clear_lin_min();
3931  const ::operations_research::sat::LinearArgumentProto& lin_min() const;
3935  private:
3936  const ::operations_research::sat::LinearArgumentProto& _internal_lin_min() const;
3937  ::operations_research::sat::LinearArgumentProto* _internal_mutable_lin_min();
3938  public:
3939 
3940  // .operations_research.sat.IntegerArgumentProto int_prod = 11;
3941  bool has_int_prod() const;
3942  private:
3943  bool _internal_has_int_prod() const;
3944  public:
3945  void clear_int_prod();
3946  const ::operations_research::sat::IntegerArgumentProto& int_prod() const;
3950  private:
3951  const ::operations_research::sat::IntegerArgumentProto& _internal_int_prod() const;
3952  ::operations_research::sat::IntegerArgumentProto* _internal_mutable_int_prod();
3953  public:
3954 
3955  // .operations_research.sat.LinearConstraintProto linear = 12;
3956  bool has_linear() const;
3957  private:
3958  bool _internal_has_linear() const;
3959  public:
3960  void clear_linear();
3961  const ::operations_research::sat::LinearConstraintProto& linear() const;
3965  private:
3966  const ::operations_research::sat::LinearConstraintProto& _internal_linear() const;
3967  ::operations_research::sat::LinearConstraintProto* _internal_mutable_linear();
3968  public:
3969 
3970  // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
3971  bool has_all_diff() const;
3972  private:
3973  bool _internal_has_all_diff() const;
3974  public:
3975  void clear_all_diff();
3976  const ::operations_research::sat::AllDifferentConstraintProto& all_diff() const;
3980  private:
3981  const ::operations_research::sat::AllDifferentConstraintProto& _internal_all_diff() const;
3982  ::operations_research::sat::AllDifferentConstraintProto* _internal_mutable_all_diff();
3983  public:
3984 
3985  // .operations_research.sat.ElementConstraintProto element = 14;
3986  bool has_element() const;
3987  private:
3988  bool _internal_has_element() const;
3989  public:
3990  void clear_element();
3991  const ::operations_research::sat::ElementConstraintProto& element() const;
3995  private:
3996  const ::operations_research::sat::ElementConstraintProto& _internal_element() const;
3997  ::operations_research::sat::ElementConstraintProto* _internal_mutable_element();
3998  public:
3999 
4000  // .operations_research.sat.CircuitConstraintProto circuit = 15;
4001  bool has_circuit() const;
4002  private:
4003  bool _internal_has_circuit() const;
4004  public:
4005  void clear_circuit();
4006  const ::operations_research::sat::CircuitConstraintProto& circuit() const;
4010  private:
4011  const ::operations_research::sat::CircuitConstraintProto& _internal_circuit() const;
4012  ::operations_research::sat::CircuitConstraintProto* _internal_mutable_circuit();
4013  public:
4014 
4015  // .operations_research.sat.RoutesConstraintProto routes = 23;
4016  bool has_routes() const;
4017  private:
4018  bool _internal_has_routes() const;
4019  public:
4020  void clear_routes();
4021  const ::operations_research::sat::RoutesConstraintProto& routes() const;
4025  private:
4026  const ::operations_research::sat::RoutesConstraintProto& _internal_routes() const;
4027  ::operations_research::sat::RoutesConstraintProto* _internal_mutable_routes();
4028  public:
4029 
4030  // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
4031  bool has_circuit_covering() const;
4032  private:
4033  bool _internal_has_circuit_covering() const;
4034  public:
4035  void clear_circuit_covering();
4036  const ::operations_research::sat::CircuitCoveringConstraintProto& circuit_covering() const;
4040  private:
4041  const ::operations_research::sat::CircuitCoveringConstraintProto& _internal_circuit_covering() const;
4042  ::operations_research::sat::CircuitCoveringConstraintProto* _internal_mutable_circuit_covering();
4043  public:
4044 
4045  // .operations_research.sat.TableConstraintProto table = 16;
4046  bool has_table() const;
4047  private:
4048  bool _internal_has_table() const;
4049  public:
4050  void clear_table();
4051  const ::operations_research::sat::TableConstraintProto& table() const;
4055  private:
4056  const ::operations_research::sat::TableConstraintProto& _internal_table() const;
4057  ::operations_research::sat::TableConstraintProto* _internal_mutable_table();
4058  public:
4059 
4060  // .operations_research.sat.AutomatonConstraintProto automaton = 17;
4061  bool has_automaton() const;
4062  private:
4063  bool _internal_has_automaton() const;
4064  public:
4065  void clear_automaton();
4066  const ::operations_research::sat::AutomatonConstraintProto& automaton() const;
4070  private:
4071  const ::operations_research::sat::AutomatonConstraintProto& _internal_automaton() const;
4072  ::operations_research::sat::AutomatonConstraintProto* _internal_mutable_automaton();
4073  public:
4074 
4075  // .operations_research.sat.InverseConstraintProto inverse = 18;
4076  bool has_inverse() const;
4077  private:
4078  bool _internal_has_inverse() const;
4079  public:
4080  void clear_inverse();
4081  const ::operations_research::sat::InverseConstraintProto& inverse() const;
4085  private:
4086  const ::operations_research::sat::InverseConstraintProto& _internal_inverse() const;
4087  ::operations_research::sat::InverseConstraintProto* _internal_mutable_inverse();
4088  public:
4089 
4090  // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
4091  bool has_reservoir() const;
4092  private:
4093  bool _internal_has_reservoir() const;
4094  public:
4095  void clear_reservoir();
4096  const ::operations_research::sat::ReservoirConstraintProto& reservoir() const;
4100  private:
4101  const ::operations_research::sat::ReservoirConstraintProto& _internal_reservoir() const;
4102  ::operations_research::sat::ReservoirConstraintProto* _internal_mutable_reservoir();
4103  public:
4104 
4105  // .operations_research.sat.IntervalConstraintProto interval = 19;
4106  bool has_interval() const;
4107  private:
4108  bool _internal_has_interval() const;
4109  public:
4110  void clear_interval();
4111  const ::operations_research::sat::IntervalConstraintProto& interval() const;
4115  private:
4116  const ::operations_research::sat::IntervalConstraintProto& _internal_interval() const;
4117  ::operations_research::sat::IntervalConstraintProto* _internal_mutable_interval();
4118  public:
4119 
4120  // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
4121  bool has_no_overlap() const;
4122  private:
4123  bool _internal_has_no_overlap() const;
4124  public:
4125  void clear_no_overlap();
4126  const ::operations_research::sat::NoOverlapConstraintProto& no_overlap() const;
4130  private:
4131  const ::operations_research::sat::NoOverlapConstraintProto& _internal_no_overlap() const;
4132  ::operations_research::sat::NoOverlapConstraintProto* _internal_mutable_no_overlap();
4133  public:
4134 
4135  // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
4136  bool has_no_overlap_2d() const;
4137  private:
4138  bool _internal_has_no_overlap_2d() const;
4139  public:
4140  void clear_no_overlap_2d();
4141  const ::operations_research::sat::NoOverlap2DConstraintProto& no_overlap_2d() const;
4145  private:
4146  const ::operations_research::sat::NoOverlap2DConstraintProto& _internal_no_overlap_2d() const;
4147  ::operations_research::sat::NoOverlap2DConstraintProto* _internal_mutable_no_overlap_2d();
4148  public:
4149 
4150  // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
4151  bool has_cumulative() const;
4152  private:
4153  bool _internal_has_cumulative() const;
4154  public:
4155  void clear_cumulative();
4156  const ::operations_research::sat::CumulativeConstraintProto& cumulative() const;
4160  private:
4161  const ::operations_research::sat::CumulativeConstraintProto& _internal_cumulative() const;
4162  ::operations_research::sat::CumulativeConstraintProto* _internal_mutable_cumulative();
4163  public:
4164 
4165  void clear_constraint();
4167  // @@protoc_insertion_point(class_scope:operations_research.sat.ConstraintProto)
4168  private:
4169  class _Internal;
4170  void set_has_bool_or();
4171  void set_has_bool_and();
4172  void set_has_at_most_one();
4173  void set_has_bool_xor();
4174  void set_has_int_div();
4175  void set_has_int_mod();
4176  void set_has_int_max();
4177  void set_has_lin_max();
4178  void set_has_int_min();
4179  void set_has_lin_min();
4180  void set_has_int_prod();
4181  void set_has_linear();
4182  void set_has_all_diff();
4183  void set_has_element();
4184  void set_has_circuit();
4185  void set_has_routes();
4186  void set_has_circuit_covering();
4187  void set_has_table();
4188  void set_has_automaton();
4189  void set_has_inverse();
4190  void set_has_reservoir();
4191  void set_has_interval();
4192  void set_has_no_overlap();
4193  void set_has_no_overlap_2d();
4194  void set_has_cumulative();
4195 
4196  inline bool has_constraint() const;
4197  inline void clear_has_constraint();
4198 
4199  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4200  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > enforcement_literal_;
4201  mutable std::atomic<int> _enforcement_literal_cached_byte_size_;
4202  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
4203  union ConstraintUnion {
4204  ConstraintUnion() {}
4230  } constraint_;
4231  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4232  ::PROTOBUF_NAMESPACE_ID::uint32 _oneof_case_[1];
4233 
4234  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4235 };
4236 // -------------------------------------------------------------------
4237 
4239  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpObjectiveProto) */ {
4240  public:
4241  CpObjectiveProto();
4242  virtual ~CpObjectiveProto();
4243 
4244  CpObjectiveProto(const CpObjectiveProto& from);
4246  : CpObjectiveProto() {
4247  *this = ::std::move(from);
4248  }
4249 
4251  CopyFrom(from);
4252  return *this;
4253  }
4254  inline CpObjectiveProto& operator=(CpObjectiveProto&& from) noexcept {
4255  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4256  if (this != &from) InternalSwap(&from);
4257  } else {
4258  CopyFrom(from);
4259  }
4260  return *this;
4261  }
4262 
4263  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4264  return GetDescriptor();
4265  }
4266  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4267  return GetMetadataStatic().descriptor;
4268  }
4269  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4270  return GetMetadataStatic().reflection;
4271  }
4272  static const CpObjectiveProto& default_instance();
4273 
4274  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4276  return reinterpret_cast<const CpObjectiveProto*>(
4278  }
4279  static constexpr int kIndexInFileMessages =
4280  20;
4281 
4283  a.Swap(&b);
4284  }
4285  inline void Swap(CpObjectiveProto* other) {
4286  if (other == this) return;
4287  InternalSwap(other);
4288  }
4289 
4290  // implements Message ----------------------------------------------
4291 
4292  inline CpObjectiveProto* New() const final {
4293  return CreateMaybeMessage<CpObjectiveProto>(nullptr);
4294  }
4295 
4296  CpObjectiveProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4297  return CreateMaybeMessage<CpObjectiveProto>(arena);
4298  }
4299  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4300  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4301  void CopyFrom(const CpObjectiveProto& from);
4302  void MergeFrom(const CpObjectiveProto& from);
4303  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4304  bool IsInitialized() const final;
4305 
4306  size_t ByteSizeLong() const final;
4307  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4308  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4309  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4310  int GetCachedSize() const final { return _cached_size_.Get(); }
4311 
4312  private:
4313  inline void SharedCtor();
4314  inline void SharedDtor();
4315  void SetCachedSize(int size) const final;
4316  void InternalSwap(CpObjectiveProto* other);
4317  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4318  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4319  return "operations_research.sat.CpObjectiveProto";
4320  }
4321  private:
4322  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4323  return nullptr;
4324  }
4325  inline void* MaybeArenaPtr() const {
4326  return nullptr;
4327  }
4328  public:
4329 
4330  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4331  private:
4332  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4333  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4335  }
4336 
4337  public:
4338 
4339  // nested types ----------------------------------------------------
4340 
4341  // accessors -------------------------------------------------------
4342 
4343  enum : int {
4349  };
4350  // repeated int32 vars = 1;
4351  int vars_size() const;
4352  private:
4353  int _internal_vars_size() const;
4354  public:
4355  void clear_vars();
4356  private:
4357  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
4358  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4359  _internal_vars() const;
4360  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4361  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4362  _internal_mutable_vars();
4363  public:
4364  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
4365  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4366  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4367  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4368  vars() const;
4369  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4370  mutable_vars();
4371 
4372  // repeated int64 coeffs = 4;
4373  int coeffs_size() const;
4374  private:
4375  int _internal_coeffs_size() const;
4376  public:
4377  void clear_coeffs();
4378  private:
4379  ::PROTOBUF_NAMESPACE_ID::int64 _internal_coeffs(int index) const;
4380  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4381  _internal_coeffs() const;
4382  void _internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
4383  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4384  _internal_mutable_coeffs();
4385  public:
4386  ::PROTOBUF_NAMESPACE_ID::int64 coeffs(int index) const;
4387  void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4388  void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value);
4389  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4390  coeffs() const;
4391  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4392  mutable_coeffs();
4393 
4394  // repeated int64 domain = 5;
4395  int domain_size() const;
4396  private:
4397  int _internal_domain_size() const;
4398  public:
4399  void clear_domain();
4400  private:
4401  ::PROTOBUF_NAMESPACE_ID::int64 _internal_domain(int index) const;
4402  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4403  _internal_domain() const;
4404  void _internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
4405  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4406  _internal_mutable_domain();
4407  public:
4408  ::PROTOBUF_NAMESPACE_ID::int64 domain(int index) const;
4409  void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
4410  void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value);
4411  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
4412  domain() const;
4413  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
4414  mutable_domain();
4415 
4416  // double offset = 2;
4417  void clear_offset();
4418  double offset() const;
4419  void set_offset(double value);
4420  private:
4421  double _internal_offset() const;
4422  void _internal_set_offset(double value);
4423  public:
4424 
4425  // double scaling_factor = 3;
4426  void clear_scaling_factor();
4427  double scaling_factor() const;
4428  void set_scaling_factor(double value);
4429  private:
4430  double _internal_scaling_factor() const;
4431  void _internal_set_scaling_factor(double value);
4432  public:
4433 
4434  // @@protoc_insertion_point(class_scope:operations_research.sat.CpObjectiveProto)
4435  private:
4436  class _Internal;
4437 
4438  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4439  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
4440  mutable std::atomic<int> _vars_cached_byte_size_;
4441  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > coeffs_;
4442  mutable std::atomic<int> _coeffs_cached_byte_size_;
4443  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > domain_;
4444  mutable std::atomic<int> _domain_cached_byte_size_;
4445  double offset_;
4446  double scaling_factor_;
4447  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4448  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4449 };
4450 // -------------------------------------------------------------------
4451 
4453  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto.AffineTransformation) */ {
4454  public:
4457 
4461  *this = ::std::move(from);
4462  }
4463 
4465  CopyFrom(from);
4466  return *this;
4467  }
4469  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4470  if (this != &from) InternalSwap(&from);
4471  } else {
4472  CopyFrom(from);
4473  }
4474  return *this;
4475  }
4476 
4477  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4478  return GetDescriptor();
4479  }
4480  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4481  return GetMetadataStatic().descriptor;
4482  }
4483  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4484  return GetMetadataStatic().reflection;
4485  }
4487 
4488  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4490  return reinterpret_cast<const DecisionStrategyProto_AffineTransformation*>(
4492  }
4493  static constexpr int kIndexInFileMessages =
4494  21;
4495 
4497  a.Swap(&b);
4498  }
4500  if (other == this) return;
4501  InternalSwap(other);
4502  }
4503 
4504  // implements Message ----------------------------------------------
4505 
4507  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(nullptr);
4508  }
4509 
4510  DecisionStrategyProto_AffineTransformation* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4511  return CreateMaybeMessage<DecisionStrategyProto_AffineTransformation>(arena);
4512  }
4513  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4514  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4517  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4518  bool IsInitialized() const final;
4519 
4520  size_t ByteSizeLong() const final;
4521  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4522  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4523  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4524  int GetCachedSize() const final { return _cached_size_.Get(); }
4525 
4526  private:
4527  inline void SharedCtor();
4528  inline void SharedDtor();
4529  void SetCachedSize(int size) const final;
4530  void InternalSwap(DecisionStrategyProto_AffineTransformation* other);
4531  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4532  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4533  return "operations_research.sat.DecisionStrategyProto.AffineTransformation";
4534  }
4535  private:
4536  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4537  return nullptr;
4538  }
4539  inline void* MaybeArenaPtr() const {
4540  return nullptr;
4541  }
4542  public:
4543 
4544  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4545  private:
4546  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4547  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4549  }
4550 
4551  public:
4552 
4553  // nested types ----------------------------------------------------
4554 
4555  // accessors -------------------------------------------------------
4556 
4557  enum : int {
4561  };
4562  // int64 offset = 2;
4563  void clear_offset();
4564  ::PROTOBUF_NAMESPACE_ID::int64 offset() const;
4565  void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
4566  private:
4567  ::PROTOBUF_NAMESPACE_ID::int64 _internal_offset() const;
4568  void _internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value);
4569  public:
4570 
4571  // int64 positive_coeff = 3;
4572  void clear_positive_coeff();
4573  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const;
4574  void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value);
4575  private:
4576  ::PROTOBUF_NAMESPACE_ID::int64 _internal_positive_coeff() const;
4577  void _internal_set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value);
4578  public:
4579 
4580  // int32 var = 1;
4581  void clear_var();
4582  ::PROTOBUF_NAMESPACE_ID::int32 var() const;
4583  void set_var(::PROTOBUF_NAMESPACE_ID::int32 value);
4584  private:
4585  ::PROTOBUF_NAMESPACE_ID::int32 _internal_var() const;
4586  void _internal_set_var(::PROTOBUF_NAMESPACE_ID::int32 value);
4587  public:
4588 
4589  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto.AffineTransformation)
4590  private:
4591  class _Internal;
4592 
4593  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4594  ::PROTOBUF_NAMESPACE_ID::int64 offset_;
4595  ::PROTOBUF_NAMESPACE_ID::int64 positive_coeff_;
4596  ::PROTOBUF_NAMESPACE_ID::int32 var_;
4597  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4598  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4599 };
4600 // -------------------------------------------------------------------
4601 
4603  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.DecisionStrategyProto) */ {
4604  public:
4606  virtual ~DecisionStrategyProto();
4607 
4610  : DecisionStrategyProto() {
4611  *this = ::std::move(from);
4612  }
4613 
4615  CopyFrom(from);
4616  return *this;
4617  }
4619  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4620  if (this != &from) InternalSwap(&from);
4621  } else {
4622  CopyFrom(from);
4623  }
4624  return *this;
4625  }
4626 
4627  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4628  return GetDescriptor();
4629  }
4630  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4631  return GetMetadataStatic().descriptor;
4632  }
4633  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4634  return GetMetadataStatic().reflection;
4635  }
4636  static const DecisionStrategyProto& default_instance();
4637 
4638  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4640  return reinterpret_cast<const DecisionStrategyProto*>(
4642  }
4643  static constexpr int kIndexInFileMessages =
4644  22;
4645 
4647  a.Swap(&b);
4648  }
4649  inline void Swap(DecisionStrategyProto* other) {
4650  if (other == this) return;
4651  InternalSwap(other);
4652  }
4653 
4654  // implements Message ----------------------------------------------
4655 
4656  inline DecisionStrategyProto* New() const final {
4657  return CreateMaybeMessage<DecisionStrategyProto>(nullptr);
4658  }
4659 
4660  DecisionStrategyProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4661  return CreateMaybeMessage<DecisionStrategyProto>(arena);
4662  }
4663  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4664  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4665  void CopyFrom(const DecisionStrategyProto& from);
4666  void MergeFrom(const DecisionStrategyProto& from);
4667  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4668  bool IsInitialized() const final;
4669 
4670  size_t ByteSizeLong() const final;
4671  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4672  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4673  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4674  int GetCachedSize() const final { return _cached_size_.Get(); }
4675 
4676  private:
4677  inline void SharedCtor();
4678  inline void SharedDtor();
4679  void SetCachedSize(int size) const final;
4680  void InternalSwap(DecisionStrategyProto* other);
4681  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4682  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4683  return "operations_research.sat.DecisionStrategyProto";
4684  }
4685  private:
4686  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4687  return nullptr;
4688  }
4689  inline void* MaybeArenaPtr() const {
4690  return nullptr;
4691  }
4692  public:
4693 
4694  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4695  private:
4696  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4697  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4699  }
4700 
4701  public:
4702 
4703  // nested types ----------------------------------------------------
4704 
4706 
4718  static inline bool VariableSelectionStrategy_IsValid(int value) {
4720  }
4727  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
4730  }
4731  template<typename T>
4732  static inline const std::string& VariableSelectionStrategy_Name(T enum_t_value) {
4733  static_assert(::std::is_same<T, VariableSelectionStrategy>::value ||
4734  ::std::is_integral<T>::value,
4735  "Incorrect type passed to function VariableSelectionStrategy_Name.");
4737  }
4738  static inline bool VariableSelectionStrategy_Parse(const std::string& name,
4739  VariableSelectionStrategy* value) {
4741  }
4742 
4754  static inline bool DomainReductionStrategy_IsValid(int value) {
4756  }
4761  static constexpr int DomainReductionStrategy_ARRAYSIZE =
4763  static inline const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor*
4766  }
4767  template<typename T>
4768  static inline const std::string& DomainReductionStrategy_Name(T enum_t_value) {
4769  static_assert(::std::is_same<T, DomainReductionStrategy>::value ||
4770  ::std::is_integral<T>::value,
4771  "Incorrect type passed to function DomainReductionStrategy_Name.");
4773  }
4774  static inline bool DomainReductionStrategy_Parse(const std::string& name,
4775  DomainReductionStrategy* value) {
4777  }
4778 
4779  // accessors -------------------------------------------------------
4780 
4781  enum : int {
4786  };
4787  // repeated int32 variables = 1;
4788  int variables_size() const;
4789  private:
4790  int _internal_variables_size() const;
4791  public:
4792  void clear_variables();
4793  private:
4794  ::PROTOBUF_NAMESPACE_ID::int32 _internal_variables(int index) const;
4795  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4796  _internal_variables() const;
4797  void _internal_add_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
4798  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4799  _internal_mutable_variables();
4800  public:
4801  ::PROTOBUF_NAMESPACE_ID::int32 variables(int index) const;
4802  void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4803  void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value);
4804  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4805  variables() const;
4806  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4808 
4809  // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
4810  int transformations_size() const;
4811  private:
4812  int _internal_transformations_size() const;
4813  public:
4814  void clear_transformations();
4816  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
4818  private:
4819  const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& _internal_transformations(int index) const;
4821  public:
4822  const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& transformations(int index) const;
4824  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
4825  transformations() const;
4826 
4827  // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
4831  private:
4832  ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy _internal_variable_selection_strategy() const;
4833  void _internal_set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value);
4834  public:
4835 
4836  // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
4840  private:
4841  ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy _internal_domain_reduction_strategy() const;
4842  void _internal_set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value);
4843  public:
4844 
4845  // @@protoc_insertion_point(class_scope:operations_research.sat.DecisionStrategyProto)
4846  private:
4847  class _Internal;
4848 
4849  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
4850  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > variables_;
4851  mutable std::atomic<int> _variables_cached_byte_size_;
4852  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > transformations_;
4853  int variable_selection_strategy_;
4854  int domain_reduction_strategy_;
4855  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
4856  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
4857 };
4858 // -------------------------------------------------------------------
4859 
4861  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.PartialVariableAssignment) */ {
4862  public:
4864  virtual ~PartialVariableAssignment();
4865 
4869  *this = ::std::move(from);
4870  }
4871 
4873  CopyFrom(from);
4874  return *this;
4875  }
4877  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
4878  if (this != &from) InternalSwap(&from);
4879  } else {
4880  CopyFrom(from);
4881  }
4882  return *this;
4883  }
4884 
4885  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
4886  return GetDescriptor();
4887  }
4888  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
4889  return GetMetadataStatic().descriptor;
4890  }
4891  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
4892  return GetMetadataStatic().reflection;
4893  }
4895 
4896  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
4898  return reinterpret_cast<const PartialVariableAssignment*>(
4900  }
4901  static constexpr int kIndexInFileMessages =
4902  23;
4903 
4905  a.Swap(&b);
4906  }
4907  inline void Swap(PartialVariableAssignment* other) {
4908  if (other == this) return;
4909  InternalSwap(other);
4910  }
4911 
4912  // implements Message ----------------------------------------------
4913 
4914  inline PartialVariableAssignment* New() const final {
4915  return CreateMaybeMessage<PartialVariableAssignment>(nullptr);
4916  }
4917 
4918  PartialVariableAssignment* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
4919  return CreateMaybeMessage<PartialVariableAssignment>(arena);
4920  }
4921  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4922  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
4923  void CopyFrom(const PartialVariableAssignment& from);
4924  void MergeFrom(const PartialVariableAssignment& from);
4925  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
4926  bool IsInitialized() const final;
4927 
4928  size_t ByteSizeLong() const final;
4929  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
4930  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
4931  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
4932  int GetCachedSize() const final { return _cached_size_.Get(); }
4933 
4934  private:
4935  inline void SharedCtor();
4936  inline void SharedDtor();
4937  void SetCachedSize(int size) const final;
4938  void InternalSwap(PartialVariableAssignment* other);
4939  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
4940  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
4941  return "operations_research.sat.PartialVariableAssignment";
4942  }
4943  private:
4944  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
4945  return nullptr;
4946  }
4947  inline void* MaybeArenaPtr() const {
4948  return nullptr;
4949  }
4950  public:
4951 
4952  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
4953  private:
4954  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
4955  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
4957  }
4958 
4959  public:
4960 
4961  // nested types ----------------------------------------------------
4962 
4963  // accessors -------------------------------------------------------
4964 
4965  enum : int {
4968  };
4969  // repeated int32 vars = 1;
4970  int vars_size() const;
4971  private:
4972  int _internal_vars_size() const;
4973  public:
4974  void clear_vars();
4975  private:
4976  ::PROTOBUF_NAMESPACE_ID::int32 _internal_vars(int index) const;
4977  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4978  _internal_vars() const;
4979  void _internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4980  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4981  _internal_mutable_vars();
4982  public:
4983  ::PROTOBUF_NAMESPACE_ID::int32 vars(int index) const;
4984  void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
4985  void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value);
4986  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
4987  vars() const;
4988  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
4989  mutable_vars();
4990 
4991  // repeated int64 values = 2;
4992  int values_size() const;
4993  private:
4994  int _internal_values_size() const;
4995  public:
4996  void clear_values();
4997  private:
4998  ::PROTOBUF_NAMESPACE_ID::int64 _internal_values(int index) const;
4999  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5000  _internal_values() const;
5001  void _internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
5002  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5003  _internal_mutable_values();
5004  public:
5005  ::PROTOBUF_NAMESPACE_ID::int64 values(int index) const;
5006  void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5007  void add_values(::PROTOBUF_NAMESPACE_ID::int64 value);
5008  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5009  values() const;
5010  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5011  mutable_values();
5012 
5013  // @@protoc_insertion_point(class_scope:operations_research.sat.PartialVariableAssignment)
5014  private:
5015  class _Internal;
5016 
5017  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5018  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > vars_;
5019  mutable std::atomic<int> _vars_cached_byte_size_;
5020  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > values_;
5021  mutable std::atomic<int> _values_cached_byte_size_;
5022  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5023  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5024 };
5025 // -------------------------------------------------------------------
5026 
5028  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpModelProto) */ {
5029  public:
5030  CpModelProto();
5031  virtual ~CpModelProto();
5032 
5033  CpModelProto(const CpModelProto& from);
5034  CpModelProto(CpModelProto&& from) noexcept
5035  : CpModelProto() {
5036  *this = ::std::move(from);
5037  }
5038 
5039  inline CpModelProto& operator=(const CpModelProto& from) {
5040  CopyFrom(from);
5041  return *this;
5042  }
5043  inline CpModelProto& operator=(CpModelProto&& from) noexcept {
5044  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
5045  if (this != &from) InternalSwap(&from);
5046  } else {
5047  CopyFrom(from);
5048  }
5049  return *this;
5050  }
5051 
5052  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
5053  return GetDescriptor();
5054  }
5055  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
5056  return GetMetadataStatic().descriptor;
5057  }
5058  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
5059  return GetMetadataStatic().reflection;
5060  }
5061  static const CpModelProto& default_instance();
5062 
5063  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
5064  static inline const CpModelProto* internal_default_instance() {
5065  return reinterpret_cast<const CpModelProto*>(
5067  }
5068  static constexpr int kIndexInFileMessages =
5069  24;
5070 
5071  friend void swap(CpModelProto& a, CpModelProto& b) {
5072  a.Swap(&b);
5073  }
5074  inline void Swap(CpModelProto* other) {
5075  if (other == this) return;
5076  InternalSwap(other);
5077  }
5078 
5079  // implements Message ----------------------------------------------
5080 
5081  inline CpModelProto* New() const final {
5082  return CreateMaybeMessage<CpModelProto>(nullptr);
5083  }
5084 
5085  CpModelProto* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
5086  return CreateMaybeMessage<CpModelProto>(arena);
5087  }
5088  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5089  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5090  void CopyFrom(const CpModelProto& from);
5091  void MergeFrom(const CpModelProto& from);
5092  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
5093  bool IsInitialized() const final;
5094 
5095  size_t ByteSizeLong() const final;
5096  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
5097  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
5098  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
5099  int GetCachedSize() const final { return _cached_size_.Get(); }
5100 
5101  private:
5102  inline void SharedCtor();
5103  inline void SharedDtor();
5104  void SetCachedSize(int size) const final;
5105  void InternalSwap(CpModelProto* other);
5106  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
5107  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
5108  return "operations_research.sat.CpModelProto";
5109  }
5110  private:
5111  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
5112  return nullptr;
5113  }
5114  inline void* MaybeArenaPtr() const {
5115  return nullptr;
5116  }
5117  public:
5118 
5119  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
5120  private:
5121  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
5122  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
5124  }
5125 
5126  public:
5127 
5128  // nested types ----------------------------------------------------
5129 
5130  // accessors -------------------------------------------------------
5131 
5132  enum : int {
5140  };
5141  // repeated .operations_research.sat.IntegerVariableProto variables = 2;
5142  int variables_size() const;
5143  private:
5144  int _internal_variables_size() const;
5145  public:
5146  void clear_variables();
5148  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
5150  private:
5151  const ::operations_research::sat::IntegerVariableProto& _internal_variables(int index) const;
5152  ::operations_research::sat::IntegerVariableProto* _internal_add_variables();
5153  public:
5154  const ::operations_research::sat::IntegerVariableProto& variables(int index) const;
5156  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
5157  variables() const;
5158 
5159  // repeated .operations_research.sat.ConstraintProto constraints = 3;
5160  int constraints_size() const;
5161  private:
5162  int _internal_constraints_size() const;
5163  public:
5164  void clear_constraints();
5166  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
5168  private:
5169  const ::operations_research::sat::ConstraintProto& _internal_constraints(int index) const;
5170  ::operations_research::sat::ConstraintProto* _internal_add_constraints();
5171  public:
5172  const ::operations_research::sat::ConstraintProto& constraints(int index) const;
5174  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
5175  constraints() const;
5176 
5177  // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
5178  int search_strategy_size() const;
5179  private:
5180  int _internal_search_strategy_size() const;
5181  public:
5182  void clear_search_strategy();
5184  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
5186  private:
5187  const ::operations_research::sat::DecisionStrategyProto& _internal_search_strategy(int index) const;
5188  ::operations_research::sat::DecisionStrategyProto* _internal_add_search_strategy();
5189  public:
5190  const ::operations_research::sat::DecisionStrategyProto& search_strategy(int index) const;
5192  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
5193  search_strategy() const;
5194 
5195  // repeated int32 assumptions = 7;
5196  int assumptions_size() const;
5197  private:
5198  int _internal_assumptions_size() const;
5199  public:
5200  void clear_assumptions();
5201  private:
5202  ::PROTOBUF_NAMESPACE_ID::int32 _internal_assumptions(int index) const;
5203  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5204  _internal_assumptions() const;
5205  void _internal_add_assumptions(::PROTOBUF_NAMESPACE_ID::int32 value);
5206  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5207  _internal_mutable_assumptions();
5208  public:
5209  ::PROTOBUF_NAMESPACE_ID::int32 assumptions(int index) const;
5210  void set_assumptions(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
5211  void add_assumptions(::PROTOBUF_NAMESPACE_ID::int32 value);
5212  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5213  assumptions() const;
5214  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5216 
5217  // string name = 1;
5218  void clear_name();
5219  const std::string& name() const;
5220  void set_name(const std::string& value);
5221  void set_name(std::string&& value);
5222  void set_name(const char* value);
5223  void set_name(const char* value, size_t size);
5224  std::string* mutable_name();
5225  std::string* release_name();
5226  void set_allocated_name(std::string* name);
5227  private:
5228  const std::string& _internal_name() const;
5229  void _internal_set_name(const std::string& value);
5230  std::string* _internal_mutable_name();
5231  public:
5232 
5233  // .operations_research.sat.CpObjectiveProto objective = 4;
5234  bool has_objective() const;
5235  private:
5236  bool _internal_has_objective() const;
5237  public:
5238  void clear_objective();
5239  const ::operations_research::sat::CpObjectiveProto& objective() const;
5243  private:
5244  const ::operations_research::sat::CpObjectiveProto& _internal_objective() const;
5245  ::operations_research::sat::CpObjectiveProto* _internal_mutable_objective();
5246  public:
5247 
5248  // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
5249  bool has_solution_hint() const;
5250  private:
5251  bool _internal_has_solution_hint() const;
5252  public:
5253  void clear_solution_hint();
5254  const ::operations_research::sat::PartialVariableAssignment& solution_hint() const;
5258  private:
5259  const ::operations_research::sat::PartialVariableAssignment& _internal_solution_hint() const;
5260  ::operations_research::sat::PartialVariableAssignment* _internal_mutable_solution_hint();
5261  public:
5262 
5263  // @@protoc_insertion_point(class_scope:operations_research.sat.CpModelProto)
5264  private:
5265  class _Internal;
5266 
5267  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5268  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > variables_;
5269  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > constraints_;
5270  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > search_strategy_;
5271  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > assumptions_;
5272  mutable std::atomic<int> _assumptions_cached_byte_size_;
5273  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr name_;
5276  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5277  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5278 };
5279 // -------------------------------------------------------------------
5280 
5282  public ::PROTOBUF_NAMESPACE_ID::Message /* @@protoc_insertion_point(class_definition:operations_research.sat.CpSolverResponse) */ {
5283  public:
5284  CpSolverResponse();
5285  virtual ~CpSolverResponse();
5286 
5287  CpSolverResponse(const CpSolverResponse& from);
5289  : CpSolverResponse() {
5290  *this = ::std::move(from);
5291  }
5292 
5294  CopyFrom(from);
5295  return *this;
5296  }
5297  inline CpSolverResponse& operator=(CpSolverResponse&& from) noexcept {
5298  if (GetArenaNoVirtual() == from.GetArenaNoVirtual()) {
5299  if (this != &from) InternalSwap(&from);
5300  } else {
5301  CopyFrom(from);
5302  }
5303  return *this;
5304  }
5305 
5306  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* descriptor() {
5307  return GetDescriptor();
5308  }
5309  static const ::PROTOBUF_NAMESPACE_ID::Descriptor* GetDescriptor() {
5310  return GetMetadataStatic().descriptor;
5311  }
5312  static const ::PROTOBUF_NAMESPACE_ID::Reflection* GetReflection() {
5313  return GetMetadataStatic().reflection;
5314  }
5315  static const CpSolverResponse& default_instance();
5316 
5317  static void InitAsDefaultInstance(); // FOR INTERNAL USE ONLY
5319  return reinterpret_cast<const CpSolverResponse*>(
5321  }
5322  static constexpr int kIndexInFileMessages =
5323  25;
5324 
5326  a.Swap(&b);
5327  }
5328  inline void Swap(CpSolverResponse* other) {
5329  if (other == this) return;
5330  InternalSwap(other);
5331  }
5332 
5333  // implements Message ----------------------------------------------
5334 
5335  inline CpSolverResponse* New() const final {
5336  return CreateMaybeMessage<CpSolverResponse>(nullptr);
5337  }
5338 
5339  CpSolverResponse* New(::PROTOBUF_NAMESPACE_ID::Arena* arena) const final {
5340  return CreateMaybeMessage<CpSolverResponse>(arena);
5341  }
5342  void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5343  void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message& from) final;
5344  void CopyFrom(const CpSolverResponse& from);
5345  void MergeFrom(const CpSolverResponse& from);
5346  PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final;
5347  bool IsInitialized() const final;
5348 
5349  size_t ByteSizeLong() const final;
5350  const char* _InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) final;
5351  ::PROTOBUF_NAMESPACE_ID::uint8* _InternalSerialize(
5352  ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const final;
5353  int GetCachedSize() const final { return _cached_size_.Get(); }
5354 
5355  private:
5356  inline void SharedCtor();
5357  inline void SharedDtor();
5358  void SetCachedSize(int size) const final;
5359  void InternalSwap(CpSolverResponse* other);
5360  friend class ::PROTOBUF_NAMESPACE_ID::internal::AnyMetadata;
5361  static ::PROTOBUF_NAMESPACE_ID::StringPiece FullMessageName() {
5362  return "operations_research.sat.CpSolverResponse";
5363  }
5364  private:
5365  inline ::PROTOBUF_NAMESPACE_ID::Arena* GetArenaNoVirtual() const {
5366  return nullptr;
5367  }
5368  inline void* MaybeArenaPtr() const {
5369  return nullptr;
5370  }
5371  public:
5372 
5373  ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final;
5374  private:
5375  static ::PROTOBUF_NAMESPACE_ID::Metadata GetMetadataStatic() {
5376  ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&::descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto);
5378  }
5379 
5380  public:
5381 
5382  // nested types ----------------------------------------------------
5383 
5384  // accessors -------------------------------------------------------
5385 
5386  enum : int {
5406  };
5407  // repeated int64 solution = 2;
5408  int solution_size() const;
5409  private:
5410  int _internal_solution_size() const;
5411  public:
5412  void clear_solution();
5413  private:
5414  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution(int index) const;
5415  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5416  _internal_solution() const;
5417  void _internal_add_solution(::PROTOBUF_NAMESPACE_ID::int64 value);
5418  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5419  _internal_mutable_solution();
5420  public:
5421  ::PROTOBUF_NAMESPACE_ID::int64 solution(int index) const;
5422  void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5423  void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value);
5424  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5425  solution() const;
5426  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5427  mutable_solution();
5428 
5429  // repeated int64 solution_lower_bounds = 18;
5430  int solution_lower_bounds_size() const;
5431  private:
5432  int _internal_solution_lower_bounds_size() const;
5433  public:
5435  private:
5436  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution_lower_bounds(int index) const;
5437  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5438  _internal_solution_lower_bounds() const;
5439  void _internal_add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5440  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5441  _internal_mutable_solution_lower_bounds();
5442  public:
5443  ::PROTOBUF_NAMESPACE_ID::int64 solution_lower_bounds(int index) const;
5444  void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5445  void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5446  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5447  solution_lower_bounds() const;
5448  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5450 
5451  // repeated int64 solution_upper_bounds = 19;
5452  int solution_upper_bounds_size() const;
5453  private:
5454  int _internal_solution_upper_bounds_size() const;
5455  public:
5457  private:
5458  ::PROTOBUF_NAMESPACE_ID::int64 _internal_solution_upper_bounds(int index) const;
5459  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5460  _internal_solution_upper_bounds() const;
5461  void _internal_add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5462  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5463  _internal_mutable_solution_upper_bounds();
5464  public:
5465  ::PROTOBUF_NAMESPACE_ID::int64 solution_upper_bounds(int index) const;
5466  void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value);
5467  void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value);
5468  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5469  solution_upper_bounds() const;
5470  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5472 
5473  // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
5474  int tightened_variables_size() const;
5475  private:
5476  int _internal_tightened_variables_size() const;
5477  public:
5480  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
5482  private:
5483  const ::operations_research::sat::IntegerVariableProto& _internal_tightened_variables(int index) const;
5484  ::operations_research::sat::IntegerVariableProto* _internal_add_tightened_variables();
5485  public:
5486  const ::operations_research::sat::IntegerVariableProto& tightened_variables(int index) const;
5488  const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
5489  tightened_variables() const;
5490 
5491  // repeated int32 sufficient_assumptions_for_infeasibility = 23;
5493  private:
5494  int _internal_sufficient_assumptions_for_infeasibility_size() const;
5495  public:
5497  private:
5498  ::PROTOBUF_NAMESPACE_ID::int32 _internal_sufficient_assumptions_for_infeasibility(int index) const;
5499  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5500  _internal_sufficient_assumptions_for_infeasibility() const;
5501  void _internal_add_sufficient_assumptions_for_infeasibility(::PROTOBUF_NAMESPACE_ID::int32 value);
5502  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5503  _internal_mutable_sufficient_assumptions_for_infeasibility();
5504  public:
5505  ::PROTOBUF_NAMESPACE_ID::int32 sufficient_assumptions_for_infeasibility(int index) const;
5506  void set_sufficient_assumptions_for_infeasibility(int index, ::PROTOBUF_NAMESPACE_ID::int32 value);
5507  void add_sufficient_assumptions_for_infeasibility(::PROTOBUF_NAMESPACE_ID::int32 value);
5508  const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5510  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5512 
5513  // string solution_info = 20;
5514  void clear_solution_info();
5515  const std::string& solution_info() const;
5516  void set_solution_info(const std::string& value);
5517  void set_solution_info(std::string&& value);
5518  void set_solution_info(const char* value);
5519  void set_solution_info(const char* value, size_t size);
5520  std::string* mutable_solution_info();
5521  std::string* release_solution_info();
5522  void set_allocated_solution_info(std::string* solution_info);
5523  private:
5524  const std::string& _internal_solution_info() const;
5525  void _internal_set_solution_info(const std::string& value);
5526  std::string* _internal_mutable_solution_info();
5527  public:
5528 
5529  // double objective_value = 3;
5530  void clear_objective_value();
5531  double objective_value() const;
5532  void set_objective_value(double value);
5533  private:
5534  double _internal_objective_value() const;
5535  void _internal_set_objective_value(double value);
5536  public:
5537 
5538  // .operations_research.sat.CpSolverStatus status = 1;
5539  void clear_status();
5542  private:
5543  ::operations_research::sat::CpSolverStatus _internal_status() const;
5544  void _internal_set_status(::operations_research::sat::CpSolverStatus value);
5545  public:
5546 
5547  // bool all_solutions_were_found = 5;
5549  bool all_solutions_were_found() const;
5550  void set_all_solutions_were_found(bool value);
5551  private:
5552  bool _internal_all_solutions_were_found() const;
5553  void _internal_set_all_solutions_were_found(bool value);
5554  public:
5555 
5556  // double best_objective_bound = 4;
5558  double best_objective_bound() const;
5559  void set_best_objective_bound(double value);
5560  private:
5561  double _internal_best_objective_bound() const;
5562  void _internal_set_best_objective_bound(double value);
5563  public:
5564 
5565  // int64 num_booleans = 10;
5566  void clear_num_booleans();
5567  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const;
5568  void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value);
5569  private:
5570  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_booleans() const;
5571  void _internal_set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value);
5572  public:
5573 
5574  // int64 num_conflicts = 11;
5575  void clear_num_conflicts();
5576  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const;
5577  void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
5578  private:
5579  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_conflicts() const;
5580  void _internal_set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value);
5581  public:
5582 
5583  // int64 num_branches = 12;
5584  void clear_num_branches();
5585  ::PROTOBUF_NAMESPACE_ID::int64 num_branches() const;
5586  void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value);
5587  private:
5588  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_branches() const;
5589  void _internal_set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value);
5590  public:
5591 
5592  // int64 num_binary_propagations = 13;
5594  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const;
5595  void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5596  private:
5597  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_binary_propagations() const;
5598  void _internal_set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5599  public:
5600 
5601  // int64 num_integer_propagations = 14;
5603  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const;
5604  void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5605  private:
5606  ::PROTOBUF_NAMESPACE_ID::int64 _internal_num_integer_propagations() const;
5607  void _internal_set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value);
5608  public:
5609 
5610  // double wall_time = 15;
5611  void clear_wall_time();
5612  double wall_time() const;
5613  void set_wall_time(double value);
5614  private:
5615  double _internal_wall_time() const;
5616  void _internal_set_wall_time(double value);
5617  public:
5618 
5619  // double user_time = 16;
5620  void clear_user_time();
5621  double user_time() const;
5622  void set_user_time(double value);
5623  private:
5624  double _internal_user_time() const;
5625  void _internal_set_user_time(double value);
5626  public:
5627 
5628  // double deterministic_time = 17;
5629  void clear_deterministic_time();
5630  double deterministic_time() const;
5631  void set_deterministic_time(double value);
5632  private:
5633  double _internal_deterministic_time() const;
5634  void _internal_set_deterministic_time(double value);
5635  public:
5636 
5637  // double primal_integral = 22;
5638  void clear_primal_integral();
5639  double primal_integral() const;
5640  void set_primal_integral(double value);
5641  private:
5642  double _internal_primal_integral() const;
5643  void _internal_set_primal_integral(double value);
5644  public:
5645 
5646  // @@protoc_insertion_point(class_scope:operations_research.sat.CpSolverResponse)
5647  private:
5648  class _Internal;
5649 
5650  ::PROTOBUF_NAMESPACE_ID::internal::InternalMetadataWithArena _internal_metadata_;
5651  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_;
5652  mutable std::atomic<int> _solution_cached_byte_size_;
5653  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_lower_bounds_;
5654  mutable std::atomic<int> _solution_lower_bounds_cached_byte_size_;
5655  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > solution_upper_bounds_;
5656  mutable std::atomic<int> _solution_upper_bounds_cached_byte_size_;
5657  ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > tightened_variables_;
5658  ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > sufficient_assumptions_for_infeasibility_;
5659  mutable std::atomic<int> _sufficient_assumptions_for_infeasibility_cached_byte_size_;
5660  ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr solution_info_;
5661  double objective_value_;
5662  int status_;
5663  bool all_solutions_were_found_;
5664  double best_objective_bound_;
5665  ::PROTOBUF_NAMESPACE_ID::int64 num_booleans_;
5666  ::PROTOBUF_NAMESPACE_ID::int64 num_conflicts_;
5667  ::PROTOBUF_NAMESPACE_ID::int64 num_branches_;
5668  ::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations_;
5669  ::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations_;
5670  double wall_time_;
5671  double user_time_;
5672  double deterministic_time_;
5673  double primal_integral_;
5674  mutable ::PROTOBUF_NAMESPACE_ID::internal::CachedSize _cached_size_;
5675  friend struct ::TableStruct_ortools_2fsat_2fcp_5fmodel_2eproto;
5676 };
5677 // ===================================================================
5678 
5679 
5680 // ===================================================================
5681 
5682 #ifdef __GNUC__
5683  #pragma GCC diagnostic push
5684  #pragma GCC diagnostic ignored "-Wstrict-aliasing"
5685 #endif // __GNUC__
5686 // IntegerVariableProto
5687 
5688 // string name = 1;
5690  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5691 }
5692 inline const std::string& IntegerVariableProto::name() const {
5693  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.name)
5694  return _internal_name();
5695 }
5696 inline void IntegerVariableProto::set_name(const std::string& value) {
5697  _internal_set_name(value);
5698  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.name)
5699 }
5700 inline std::string* IntegerVariableProto::mutable_name() {
5701  // @@protoc_insertion_point(field_mutable:operations_research.sat.IntegerVariableProto.name)
5702  return _internal_mutable_name();
5703 }
5704 inline const std::string& IntegerVariableProto::_internal_name() const {
5705  return name_.GetNoArena();
5706 }
5707 inline void IntegerVariableProto::_internal_set_name(const std::string& value) {
5708 
5709  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
5710 }
5711 inline void IntegerVariableProto::set_name(std::string&& value) {
5712 
5713  name_.SetNoArena(
5714  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
5715  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.IntegerVariableProto.name)
5716 }
5717 inline void IntegerVariableProto::set_name(const char* value) {
5718  GOOGLE_DCHECK(value != nullptr);
5719 
5720  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
5721  // @@protoc_insertion_point(field_set_char:operations_research.sat.IntegerVariableProto.name)
5722 }
5723 inline void IntegerVariableProto::set_name(const char* value, size_t size) {
5724 
5725  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5726  ::std::string(reinterpret_cast<const char*>(value), size));
5727  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.IntegerVariableProto.name)
5728 }
5729 inline std::string* IntegerVariableProto::_internal_mutable_name() {
5730 
5731  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5732 }
5733 inline std::string* IntegerVariableProto::release_name() {
5734  // @@protoc_insertion_point(field_release:operations_research.sat.IntegerVariableProto.name)
5735 
5736  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5737 }
5738 inline void IntegerVariableProto::set_allocated_name(std::string* name) {
5739  if (name != nullptr) {
5740 
5741  } else {
5742 
5743  }
5744  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
5745  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.IntegerVariableProto.name)
5746 }
5747 
5748 // repeated int64 domain = 2;
5749 inline int IntegerVariableProto::_internal_domain_size() const {
5750  return domain_.size();
5751 }
5753  return _internal_domain_size();
5754 }
5756  domain_.Clear();
5757 }
5758 inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerVariableProto::_internal_domain(int index) const {
5759  return domain_.Get(index);
5760 }
5761 inline ::PROTOBUF_NAMESPACE_ID::int64 IntegerVariableProto::domain(int index) const {
5762  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerVariableProto.domain)
5763  return _internal_domain(index);
5764 }
5765 inline void IntegerVariableProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
5766  domain_.Set(index, value);
5767  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerVariableProto.domain)
5768 }
5769 inline void IntegerVariableProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
5770  domain_.Add(value);
5771 }
5772 inline void IntegerVariableProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
5773  _internal_add_domain(value);
5774  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerVariableProto.domain)
5775 }
5776 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5777 IntegerVariableProto::_internal_domain() const {
5778  return domain_;
5779 }
5780 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
5782  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerVariableProto.domain)
5783  return _internal_domain();
5784 }
5785 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5786 IntegerVariableProto::_internal_mutable_domain() {
5787  return &domain_;
5788 }
5789 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
5791  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerVariableProto.domain)
5792  return _internal_mutable_domain();
5793 }
5794 
5795 // -------------------------------------------------------------------
5796 
5797 // BoolArgumentProto
5798 
5799 // repeated int32 literals = 1;
5800 inline int BoolArgumentProto::_internal_literals_size() const {
5801  return literals_.size();
5802 }
5804  return _internal_literals_size();
5805 }
5807  literals_.Clear();
5808 }
5809 inline ::PROTOBUF_NAMESPACE_ID::int32 BoolArgumentProto::_internal_literals(int index) const {
5810  return literals_.Get(index);
5811 }
5812 inline ::PROTOBUF_NAMESPACE_ID::int32 BoolArgumentProto::literals(int index) const {
5813  // @@protoc_insertion_point(field_get:operations_research.sat.BoolArgumentProto.literals)
5814  return _internal_literals(index);
5815 }
5816 inline void BoolArgumentProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5817  literals_.Set(index, value);
5818  // @@protoc_insertion_point(field_set:operations_research.sat.BoolArgumentProto.literals)
5819 }
5820 inline void BoolArgumentProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5821  literals_.Add(value);
5822 }
5823 inline void BoolArgumentProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
5824  _internal_add_literals(value);
5825  // @@protoc_insertion_point(field_add:operations_research.sat.BoolArgumentProto.literals)
5826 }
5827 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5828 BoolArgumentProto::_internal_literals() const {
5829  return literals_;
5830 }
5831 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5833  // @@protoc_insertion_point(field_list:operations_research.sat.BoolArgumentProto.literals)
5834  return _internal_literals();
5835 }
5836 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5837 BoolArgumentProto::_internal_mutable_literals() {
5838  return &literals_;
5839 }
5840 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5842  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.BoolArgumentProto.literals)
5843  return _internal_mutable_literals();
5844 }
5845 
5846 // -------------------------------------------------------------------
5847 
5848 // IntegerArgumentProto
5849 
5850 // int32 target = 1;
5852  target_ = 0;
5853 }
5854 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::_internal_target() const {
5855  return target_;
5856 }
5857 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::target() const {
5858  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.target)
5859  return _internal_target();
5860 }
5861 inline void IntegerArgumentProto::_internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
5862 
5863  target_ = value;
5864 }
5865 inline void IntegerArgumentProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
5866  _internal_set_target(value);
5867  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.target)
5868 }
5869 
5870 // repeated int32 vars = 2;
5871 inline int IntegerArgumentProto::_internal_vars_size() const {
5872  return vars_.size();
5873 }
5875  return _internal_vars_size();
5876 }
5878  vars_.Clear();
5879 }
5880 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::_internal_vars(int index) const {
5881  return vars_.Get(index);
5882 }
5883 inline ::PROTOBUF_NAMESPACE_ID::int32 IntegerArgumentProto::vars(int index) const {
5884  // @@protoc_insertion_point(field_get:operations_research.sat.IntegerArgumentProto.vars)
5885  return _internal_vars(index);
5886 }
5887 inline void IntegerArgumentProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5888  vars_.Set(index, value);
5889  // @@protoc_insertion_point(field_set:operations_research.sat.IntegerArgumentProto.vars)
5890 }
5891 inline void IntegerArgumentProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5892  vars_.Add(value);
5893 }
5894 inline void IntegerArgumentProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5895  _internal_add_vars(value);
5896  // @@protoc_insertion_point(field_add:operations_research.sat.IntegerArgumentProto.vars)
5897 }
5898 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5899 IntegerArgumentProto::_internal_vars() const {
5900  return vars_;
5901 }
5902 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5904  // @@protoc_insertion_point(field_list:operations_research.sat.IntegerArgumentProto.vars)
5905  return _internal_vars();
5906 }
5907 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5908 IntegerArgumentProto::_internal_mutable_vars() {
5909  return &vars_;
5910 }
5911 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5913  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.IntegerArgumentProto.vars)
5914  return _internal_mutable_vars();
5915 }
5916 
5917 // -------------------------------------------------------------------
5918 
5919 // LinearExpressionProto
5920 
5921 // repeated int32 vars = 1;
5922 inline int LinearExpressionProto::_internal_vars_size() const {
5923  return vars_.size();
5924 }
5926  return _internal_vars_size();
5927 }
5929  vars_.Clear();
5930 }
5931 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::_internal_vars(int index) const {
5932  return vars_.Get(index);
5933 }
5934 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::vars(int index) const {
5935  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.vars)
5936  return _internal_vars(index);
5937 }
5938 inline void LinearExpressionProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5939  vars_.Set(index, value);
5940  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.vars)
5941 }
5942 inline void LinearExpressionProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5943  vars_.Add(value);
5944 }
5945 inline void LinearExpressionProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
5946  _internal_add_vars(value);
5947  // @@protoc_insertion_point(field_add:operations_research.sat.LinearExpressionProto.vars)
5948 }
5949 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5950 LinearExpressionProto::_internal_vars() const {
5951  return vars_;
5952 }
5953 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5955  // @@protoc_insertion_point(field_list:operations_research.sat.LinearExpressionProto.vars)
5956  return _internal_vars();
5957 }
5958 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5959 LinearExpressionProto::_internal_mutable_vars() {
5960  return &vars_;
5961 }
5962 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
5964  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearExpressionProto.vars)
5965  return _internal_mutable_vars();
5966 }
5967 
5968 // repeated int32 coeffs = 2;
5969 inline int LinearExpressionProto::_internal_coeffs_size() const {
5970  return coeffs_.size();
5971 }
5973  return _internal_coeffs_size();
5974 }
5976  coeffs_.Clear();
5977 }
5978 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::_internal_coeffs(int index) const {
5979  return coeffs_.Get(index);
5980 }
5981 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearExpressionProto::coeffs(int index) const {
5982  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.coeffs)
5983  return _internal_coeffs(index);
5984 }
5985 inline void LinearExpressionProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
5986  coeffs_.Set(index, value);
5987  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.coeffs)
5988 }
5989 inline void LinearExpressionProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
5990  coeffs_.Add(value);
5991 }
5992 inline void LinearExpressionProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value) {
5993  _internal_add_coeffs(value);
5994  // @@protoc_insertion_point(field_add:operations_research.sat.LinearExpressionProto.coeffs)
5995 }
5996 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
5997 LinearExpressionProto::_internal_coeffs() const {
5998  return coeffs_;
5999 }
6000 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6002  // @@protoc_insertion_point(field_list:operations_research.sat.LinearExpressionProto.coeffs)
6003  return _internal_coeffs();
6004 }
6005 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6006 LinearExpressionProto::_internal_mutable_coeffs() {
6007  return &coeffs_;
6008 }
6009 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6011  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearExpressionProto.coeffs)
6012  return _internal_mutable_coeffs();
6013 }
6014 
6015 // int64 offset = 3;
6017  offset_ = PROTOBUF_LONGLONG(0);
6018 }
6019 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearExpressionProto::_internal_offset() const {
6020  return offset_;
6021 }
6022 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearExpressionProto::offset() const {
6023  // @@protoc_insertion_point(field_get:operations_research.sat.LinearExpressionProto.offset)
6024  return _internal_offset();
6025 }
6026 inline void LinearExpressionProto::_internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
6027 
6028  offset_ = value;
6029 }
6030 inline void LinearExpressionProto::set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
6031  _internal_set_offset(value);
6032  // @@protoc_insertion_point(field_set:operations_research.sat.LinearExpressionProto.offset)
6033 }
6034 
6035 // -------------------------------------------------------------------
6036 
6037 // LinearArgumentProto
6038 
6039 // .operations_research.sat.LinearExpressionProto target = 1;
6040 inline bool LinearArgumentProto::_internal_has_target() const {
6041  return this != internal_default_instance() && target_ != nullptr;
6042 }
6043 inline bool LinearArgumentProto::has_target() const {
6044  return _internal_has_target();
6045 }
6047  if (GetArenaNoVirtual() == nullptr && target_ != nullptr) {
6048  delete target_;
6049  }
6050  target_ = nullptr;
6051 }
6052 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::_internal_target() const {
6053  const ::operations_research::sat::LinearExpressionProto* p = target_;
6054  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::LinearExpressionProto*>(
6056 }
6057 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::target() const {
6058  // @@protoc_insertion_point(field_get:operations_research.sat.LinearArgumentProto.target)
6059  return _internal_target();
6060 }
6061 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::release_target() {
6062  // @@protoc_insertion_point(field_release:operations_research.sat.LinearArgumentProto.target)
6063 
6065  target_ = nullptr;
6066  return temp;
6067 }
6068 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::_internal_mutable_target() {
6069 
6070  if (target_ == nullptr) {
6071  auto* p = CreateMaybeMessage<::operations_research::sat::LinearExpressionProto>(GetArenaNoVirtual());
6072  target_ = p;
6073  }
6074  return target_;
6075 }
6076 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::mutable_target() {
6077  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearArgumentProto.target)
6078  return _internal_mutable_target();
6079 }
6081  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
6082  if (message_arena == nullptr) {
6083  delete target_;
6084  }
6085  if (target) {
6086  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
6087  if (message_arena != submessage_arena) {
6088  target = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
6089  message_arena, target, submessage_arena);
6090  }
6091 
6092  } else {
6093 
6094  }
6095  target_ = target;
6096  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.LinearArgumentProto.target)
6097 }
6098 
6099 // repeated .operations_research.sat.LinearExpressionProto exprs = 2;
6100 inline int LinearArgumentProto::_internal_exprs_size() const {
6101  return exprs_.size();
6102 }
6104  return _internal_exprs_size();
6105 }
6107  exprs_.Clear();
6108 }
6109 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::mutable_exprs(int index) {
6110  // @@protoc_insertion_point(field_mutable:operations_research.sat.LinearArgumentProto.exprs)
6111  return exprs_.Mutable(index);
6112 }
6113 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >*
6115  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearArgumentProto.exprs)
6116  return &exprs_;
6117 }
6118 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::_internal_exprs(int index) const {
6119  return exprs_.Get(index);
6120 }
6121 inline const ::operations_research::sat::LinearExpressionProto& LinearArgumentProto::exprs(int index) const {
6122  // @@protoc_insertion_point(field_get:operations_research.sat.LinearArgumentProto.exprs)
6123  return _internal_exprs(index);
6124 }
6125 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::_internal_add_exprs() {
6126  return exprs_.Add();
6127 }
6128 inline ::operations_research::sat::LinearExpressionProto* LinearArgumentProto::add_exprs() {
6129  // @@protoc_insertion_point(field_add:operations_research.sat.LinearArgumentProto.exprs)
6130  return _internal_add_exprs();
6131 }
6132 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto >&
6134  // @@protoc_insertion_point(field_list:operations_research.sat.LinearArgumentProto.exprs)
6135  return exprs_;
6136 }
6137 
6138 // -------------------------------------------------------------------
6139 
6140 // AllDifferentConstraintProto
6141 
6142 // repeated int32 vars = 1;
6143 inline int AllDifferentConstraintProto::_internal_vars_size() const {
6144  return vars_.size();
6145 }
6147  return _internal_vars_size();
6148 }
6150  vars_.Clear();
6151 }
6152 inline ::PROTOBUF_NAMESPACE_ID::int32 AllDifferentConstraintProto::_internal_vars(int index) const {
6153  return vars_.Get(index);
6154 }
6155 inline ::PROTOBUF_NAMESPACE_ID::int32 AllDifferentConstraintProto::vars(int index) const {
6156  // @@protoc_insertion_point(field_get:operations_research.sat.AllDifferentConstraintProto.vars)
6157  return _internal_vars(index);
6158 }
6159 inline void AllDifferentConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6160  vars_.Set(index, value);
6161  // @@protoc_insertion_point(field_set:operations_research.sat.AllDifferentConstraintProto.vars)
6162 }
6163 inline void AllDifferentConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6164  vars_.Add(value);
6165 }
6166 inline void AllDifferentConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6167  _internal_add_vars(value);
6168  // @@protoc_insertion_point(field_add:operations_research.sat.AllDifferentConstraintProto.vars)
6169 }
6170 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6171 AllDifferentConstraintProto::_internal_vars() const {
6172  return vars_;
6173 }
6174 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6176  // @@protoc_insertion_point(field_list:operations_research.sat.AllDifferentConstraintProto.vars)
6177  return _internal_vars();
6178 }
6179 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6180 AllDifferentConstraintProto::_internal_mutable_vars() {
6181  return &vars_;
6182 }
6183 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6185  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AllDifferentConstraintProto.vars)
6186  return _internal_mutable_vars();
6187 }
6188 
6189 // -------------------------------------------------------------------
6190 
6191 // LinearConstraintProto
6192 
6193 // repeated int32 vars = 1;
6194 inline int LinearConstraintProto::_internal_vars_size() const {
6195  return vars_.size();
6196 }
6198  return _internal_vars_size();
6199 }
6201  vars_.Clear();
6202 }
6203 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearConstraintProto::_internal_vars(int index) const {
6204  return vars_.Get(index);
6205 }
6206 inline ::PROTOBUF_NAMESPACE_ID::int32 LinearConstraintProto::vars(int index) const {
6207  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.vars)
6208  return _internal_vars(index);
6209 }
6210 inline void LinearConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6211  vars_.Set(index, value);
6212  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.vars)
6213 }
6214 inline void LinearConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6215  vars_.Add(value);
6216 }
6217 inline void LinearConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6218  _internal_add_vars(value);
6219  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.vars)
6220 }
6221 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6222 LinearConstraintProto::_internal_vars() const {
6223  return vars_;
6224 }
6225 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6227  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.vars)
6228  return _internal_vars();
6229 }
6230 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6231 LinearConstraintProto::_internal_mutable_vars() {
6232  return &vars_;
6233 }
6234 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6236  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.vars)
6237  return _internal_mutable_vars();
6238 }
6239 
6240 // repeated int64 coeffs = 2;
6241 inline int LinearConstraintProto::_internal_coeffs_size() const {
6242  return coeffs_.size();
6243 }
6245  return _internal_coeffs_size();
6246 }
6248  coeffs_.Clear();
6249 }
6250 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::_internal_coeffs(int index) const {
6251  return coeffs_.Get(index);
6252 }
6253 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::coeffs(int index) const {
6254  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.coeffs)
6255  return _internal_coeffs(index);
6256 }
6257 inline void LinearConstraintProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6258  coeffs_.Set(index, value);
6259  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.coeffs)
6260 }
6261 inline void LinearConstraintProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
6262  coeffs_.Add(value);
6263 }
6264 inline void LinearConstraintProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
6265  _internal_add_coeffs(value);
6266  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.coeffs)
6267 }
6268 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6269 LinearConstraintProto::_internal_coeffs() const {
6270  return coeffs_;
6271 }
6272 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6274  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.coeffs)
6275  return _internal_coeffs();
6276 }
6277 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6278 LinearConstraintProto::_internal_mutable_coeffs() {
6279  return &coeffs_;
6280 }
6281 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6283  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.coeffs)
6284  return _internal_mutable_coeffs();
6285 }
6286 
6287 // repeated int64 domain = 3;
6288 inline int LinearConstraintProto::_internal_domain_size() const {
6289  return domain_.size();
6290 }
6292  return _internal_domain_size();
6293 }
6295  domain_.Clear();
6296 }
6297 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::_internal_domain(int index) const {
6298  return domain_.Get(index);
6299 }
6300 inline ::PROTOBUF_NAMESPACE_ID::int64 LinearConstraintProto::domain(int index) const {
6301  // @@protoc_insertion_point(field_get:operations_research.sat.LinearConstraintProto.domain)
6302  return _internal_domain(index);
6303 }
6304 inline void LinearConstraintProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6305  domain_.Set(index, value);
6306  // @@protoc_insertion_point(field_set:operations_research.sat.LinearConstraintProto.domain)
6307 }
6308 inline void LinearConstraintProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
6309  domain_.Add(value);
6310 }
6311 inline void LinearConstraintProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
6312  _internal_add_domain(value);
6313  // @@protoc_insertion_point(field_add:operations_research.sat.LinearConstraintProto.domain)
6314 }
6315 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6316 LinearConstraintProto::_internal_domain() const {
6317  return domain_;
6318 }
6319 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6321  // @@protoc_insertion_point(field_list:operations_research.sat.LinearConstraintProto.domain)
6322  return _internal_domain();
6323 }
6324 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6325 LinearConstraintProto::_internal_mutable_domain() {
6326  return &domain_;
6327 }
6328 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6330  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.LinearConstraintProto.domain)
6331  return _internal_mutable_domain();
6332 }
6333 
6334 // -------------------------------------------------------------------
6335 
6336 // ElementConstraintProto
6337 
6338 // int32 index = 1;
6340  index_ = 0;
6341 }
6342 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_index() const {
6343  return index_;
6344 }
6345 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::index() const {
6346  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.index)
6347  return _internal_index();
6348 }
6349 inline void ElementConstraintProto::_internal_set_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
6350 
6351  index_ = value;
6352 }
6353 inline void ElementConstraintProto::set_index(::PROTOBUF_NAMESPACE_ID::int32 value) {
6354  _internal_set_index(value);
6355  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.index)
6356 }
6357 
6358 // int32 target = 2;
6360  target_ = 0;
6361 }
6362 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_target() const {
6363  return target_;
6364 }
6365 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::target() const {
6366  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.target)
6367  return _internal_target();
6368 }
6369 inline void ElementConstraintProto::_internal_set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6370 
6371  target_ = value;
6372 }
6373 inline void ElementConstraintProto::set_target(::PROTOBUF_NAMESPACE_ID::int32 value) {
6374  _internal_set_target(value);
6375  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.target)
6376 }
6377 
6378 // repeated int32 vars = 3;
6379 inline int ElementConstraintProto::_internal_vars_size() const {
6380  return vars_.size();
6381 }
6383  return _internal_vars_size();
6384 }
6386  vars_.Clear();
6387 }
6388 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::_internal_vars(int index) const {
6389  return vars_.Get(index);
6390 }
6391 inline ::PROTOBUF_NAMESPACE_ID::int32 ElementConstraintProto::vars(int index) const {
6392  // @@protoc_insertion_point(field_get:operations_research.sat.ElementConstraintProto.vars)
6393  return _internal_vars(index);
6394 }
6395 inline void ElementConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6396  vars_.Set(index, value);
6397  // @@protoc_insertion_point(field_set:operations_research.sat.ElementConstraintProto.vars)
6398 }
6399 inline void ElementConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6400  vars_.Add(value);
6401 }
6402 inline void ElementConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
6403  _internal_add_vars(value);
6404  // @@protoc_insertion_point(field_add:operations_research.sat.ElementConstraintProto.vars)
6405 }
6406 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6407 ElementConstraintProto::_internal_vars() const {
6408  return vars_;
6409 }
6410 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6412  // @@protoc_insertion_point(field_list:operations_research.sat.ElementConstraintProto.vars)
6413  return _internal_vars();
6414 }
6415 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6416 ElementConstraintProto::_internal_mutable_vars() {
6417  return &vars_;
6418 }
6419 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6421  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ElementConstraintProto.vars)
6422  return _internal_mutable_vars();
6423 }
6424 
6425 // -------------------------------------------------------------------
6426 
6427 // IntervalConstraintProto
6428 
6429 // int32 start = 1;
6431  start_ = 0;
6432 }
6433 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_start() const {
6434  return start_;
6435 }
6436 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::start() const {
6437  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.start)
6438  return _internal_start();
6439 }
6440 inline void IntervalConstraintProto::_internal_set_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
6441 
6442  start_ = value;
6443 }
6444 inline void IntervalConstraintProto::set_start(::PROTOBUF_NAMESPACE_ID::int32 value) {
6445  _internal_set_start(value);
6446  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.start)
6447 }
6448 
6449 // int32 end = 2;
6451  end_ = 0;
6452 }
6453 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_end() const {
6454  return end_;
6455 }
6456 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::end() const {
6457  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.end)
6458  return _internal_end();
6459 }
6460 inline void IntervalConstraintProto::_internal_set_end(::PROTOBUF_NAMESPACE_ID::int32 value) {
6461 
6462  end_ = value;
6463 }
6464 inline void IntervalConstraintProto::set_end(::PROTOBUF_NAMESPACE_ID::int32 value) {
6465  _internal_set_end(value);
6466  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.end)
6467 }
6468 
6469 // int32 size = 3;
6471  size_ = 0;
6472 }
6473 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::_internal_size() const {
6474  return size_;
6475 }
6476 inline ::PROTOBUF_NAMESPACE_ID::int32 IntervalConstraintProto::size() const {
6477  // @@protoc_insertion_point(field_get:operations_research.sat.IntervalConstraintProto.size)
6478  return _internal_size();
6479 }
6480 inline void IntervalConstraintProto::_internal_set_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6481 
6482  size_ = value;
6483 }
6484 inline void IntervalConstraintProto::set_size(::PROTOBUF_NAMESPACE_ID::int32 value) {
6485  _internal_set_size(value);
6486  // @@protoc_insertion_point(field_set:operations_research.sat.IntervalConstraintProto.size)
6487 }
6488 
6489 // -------------------------------------------------------------------
6490 
6491 // NoOverlapConstraintProto
6492 
6493 // repeated int32 intervals = 1;
6494 inline int NoOverlapConstraintProto::_internal_intervals_size() const {
6495  return intervals_.size();
6496 }
6498  return _internal_intervals_size();
6499 }
6501  intervals_.Clear();
6502 }
6503 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlapConstraintProto::_internal_intervals(int index) const {
6504  return intervals_.Get(index);
6505 }
6506 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlapConstraintProto::intervals(int index) const {
6507  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlapConstraintProto.intervals)
6508  return _internal_intervals(index);
6509 }
6510 inline void NoOverlapConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6511  intervals_.Set(index, value);
6512  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlapConstraintProto.intervals)
6513 }
6514 inline void NoOverlapConstraintProto::_internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6515  intervals_.Add(value);
6516 }
6517 inline void NoOverlapConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6518  _internal_add_intervals(value);
6519  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlapConstraintProto.intervals)
6520 }
6521 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6522 NoOverlapConstraintProto::_internal_intervals() const {
6523  return intervals_;
6524 }
6525 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6527  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlapConstraintProto.intervals)
6528  return _internal_intervals();
6529 }
6530 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6531 NoOverlapConstraintProto::_internal_mutable_intervals() {
6532  return &intervals_;
6533 }
6534 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6536  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlapConstraintProto.intervals)
6537  return _internal_mutable_intervals();
6538 }
6539 
6540 // -------------------------------------------------------------------
6541 
6542 // NoOverlap2DConstraintProto
6543 
6544 // repeated int32 x_intervals = 1;
6545 inline int NoOverlap2DConstraintProto::_internal_x_intervals_size() const {
6546  return x_intervals_.size();
6547 }
6549  return _internal_x_intervals_size();
6550 }
6552  x_intervals_.Clear();
6553 }
6554 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::_internal_x_intervals(int index) const {
6555  return x_intervals_.Get(index);
6556 }
6557 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::x_intervals(int index) const {
6558  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6559  return _internal_x_intervals(index);
6560 }
6561 inline void NoOverlap2DConstraintProto::set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6562  x_intervals_.Set(index, value);
6563  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6564 }
6565 inline void NoOverlap2DConstraintProto::_internal_add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6566  x_intervals_.Add(value);
6567 }
6568 inline void NoOverlap2DConstraintProto::add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6569  _internal_add_x_intervals(value);
6570  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6571 }
6572 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6573 NoOverlap2DConstraintProto::_internal_x_intervals() const {
6574  return x_intervals_;
6575 }
6576 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6578  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6579  return _internal_x_intervals();
6580 }
6581 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6582 NoOverlap2DConstraintProto::_internal_mutable_x_intervals() {
6583  return &x_intervals_;
6584 }
6585 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6587  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.x_intervals)
6588  return _internal_mutable_x_intervals();
6589 }
6590 
6591 // repeated int32 y_intervals = 2;
6592 inline int NoOverlap2DConstraintProto::_internal_y_intervals_size() const {
6593  return y_intervals_.size();
6594 }
6596  return _internal_y_intervals_size();
6597 }
6599  y_intervals_.Clear();
6600 }
6601 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::_internal_y_intervals(int index) const {
6602  return y_intervals_.Get(index);
6603 }
6604 inline ::PROTOBUF_NAMESPACE_ID::int32 NoOverlap2DConstraintProto::y_intervals(int index) const {
6605  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6606  return _internal_y_intervals(index);
6607 }
6608 inline void NoOverlap2DConstraintProto::set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6609  y_intervals_.Set(index, value);
6610  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6611 }
6612 inline void NoOverlap2DConstraintProto::_internal_add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6613  y_intervals_.Add(value);
6614 }
6615 inline void NoOverlap2DConstraintProto::add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6616  _internal_add_y_intervals(value);
6617  // @@protoc_insertion_point(field_add:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6618 }
6619 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6620 NoOverlap2DConstraintProto::_internal_y_intervals() const {
6621  return y_intervals_;
6622 }
6623 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6625  // @@protoc_insertion_point(field_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6626  return _internal_y_intervals();
6627 }
6628 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6629 NoOverlap2DConstraintProto::_internal_mutable_y_intervals() {
6630  return &y_intervals_;
6631 }
6632 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6634  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.NoOverlap2DConstraintProto.y_intervals)
6635  return _internal_mutable_y_intervals();
6636 }
6637 
6638 // bool boxes_with_null_area_can_overlap = 3;
6640  boxes_with_null_area_can_overlap_ = false;
6641 }
6642 inline bool NoOverlap2DConstraintProto::_internal_boxes_with_null_area_can_overlap() const {
6643  return boxes_with_null_area_can_overlap_;
6644 }
6646  // @@protoc_insertion_point(field_get:operations_research.sat.NoOverlap2DConstraintProto.boxes_with_null_area_can_overlap)
6647  return _internal_boxes_with_null_area_can_overlap();
6648 }
6649 inline void NoOverlap2DConstraintProto::_internal_set_boxes_with_null_area_can_overlap(bool value) {
6650 
6651  boxes_with_null_area_can_overlap_ = value;
6652 }
6654  _internal_set_boxes_with_null_area_can_overlap(value);
6655  // @@protoc_insertion_point(field_set:operations_research.sat.NoOverlap2DConstraintProto.boxes_with_null_area_can_overlap)
6656 }
6657 
6658 // -------------------------------------------------------------------
6659 
6660 // CumulativeConstraintProto
6661 
6662 // int32 capacity = 1;
6664  capacity_ = 0;
6665 }
6666 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_capacity() const {
6667  return capacity_;
6668 }
6669 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::capacity() const {
6670  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.capacity)
6671  return _internal_capacity();
6672 }
6673 inline void CumulativeConstraintProto::_internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value) {
6674 
6675  capacity_ = value;
6676 }
6677 inline void CumulativeConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value) {
6678  _internal_set_capacity(value);
6679  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.capacity)
6680 }
6681 
6682 // repeated int32 intervals = 2;
6683 inline int CumulativeConstraintProto::_internal_intervals_size() const {
6684  return intervals_.size();
6685 }
6687  return _internal_intervals_size();
6688 }
6690  intervals_.Clear();
6691 }
6692 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_intervals(int index) const {
6693  return intervals_.Get(index);
6694 }
6695 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::intervals(int index) const {
6696  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.intervals)
6697  return _internal_intervals(index);
6698 }
6699 inline void CumulativeConstraintProto::set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6700  intervals_.Set(index, value);
6701  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.intervals)
6702 }
6703 inline void CumulativeConstraintProto::_internal_add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6704  intervals_.Add(value);
6705 }
6706 inline void CumulativeConstraintProto::add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value) {
6707  _internal_add_intervals(value);
6708  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.intervals)
6709 }
6710 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6711 CumulativeConstraintProto::_internal_intervals() const {
6712  return intervals_;
6713 }
6714 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6716  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.intervals)
6717  return _internal_intervals();
6718 }
6719 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6720 CumulativeConstraintProto::_internal_mutable_intervals() {
6721  return &intervals_;
6722 }
6723 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6725  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.intervals)
6726  return _internal_mutable_intervals();
6727 }
6728 
6729 // repeated int32 demands = 3;
6730 inline int CumulativeConstraintProto::_internal_demands_size() const {
6731  return demands_.size();
6732 }
6734  return _internal_demands_size();
6735 }
6737  demands_.Clear();
6738 }
6739 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::_internal_demands(int index) const {
6740  return demands_.Get(index);
6741 }
6742 inline ::PROTOBUF_NAMESPACE_ID::int32 CumulativeConstraintProto::demands(int index) const {
6743  // @@protoc_insertion_point(field_get:operations_research.sat.CumulativeConstraintProto.demands)
6744  return _internal_demands(index);
6745 }
6746 inline void CumulativeConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6747  demands_.Set(index, value);
6748  // @@protoc_insertion_point(field_set:operations_research.sat.CumulativeConstraintProto.demands)
6749 }
6750 inline void CumulativeConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
6751  demands_.Add(value);
6752 }
6753 inline void CumulativeConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
6754  _internal_add_demands(value);
6755  // @@protoc_insertion_point(field_add:operations_research.sat.CumulativeConstraintProto.demands)
6756 }
6757 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6758 CumulativeConstraintProto::_internal_demands() const {
6759  return demands_;
6760 }
6761 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6763  // @@protoc_insertion_point(field_list:operations_research.sat.CumulativeConstraintProto.demands)
6764  return _internal_demands();
6765 }
6766 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6767 CumulativeConstraintProto::_internal_mutable_demands() {
6768  return &demands_;
6769 }
6770 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6772  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CumulativeConstraintProto.demands)
6773  return _internal_mutable_demands();
6774 }
6775 
6776 // -------------------------------------------------------------------
6777 
6778 // ReservoirConstraintProto
6779 
6780 // int64 min_level = 1;
6782  min_level_ = PROTOBUF_LONGLONG(0);
6783 }
6784 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_min_level() const {
6785  return min_level_;
6786 }
6787 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::min_level() const {
6788  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.min_level)
6789  return _internal_min_level();
6790 }
6791 inline void ReservoirConstraintProto::_internal_set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6792 
6793  min_level_ = value;
6794 }
6795 inline void ReservoirConstraintProto::set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6796  _internal_set_min_level(value);
6797  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.min_level)
6798 }
6799 
6800 // int64 max_level = 2;
6802  max_level_ = PROTOBUF_LONGLONG(0);
6803 }
6804 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_max_level() const {
6805  return max_level_;
6806 }
6807 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::max_level() const {
6808  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.max_level)
6809  return _internal_max_level();
6810 }
6811 inline void ReservoirConstraintProto::_internal_set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6812 
6813  max_level_ = value;
6814 }
6815 inline void ReservoirConstraintProto::set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value) {
6816  _internal_set_max_level(value);
6817  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.max_level)
6818 }
6819 
6820 // repeated int32 times = 3;
6821 inline int ReservoirConstraintProto::_internal_times_size() const {
6822  return times_.size();
6823 }
6825  return _internal_times_size();
6826 }
6828  times_.Clear();
6829 }
6830 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::_internal_times(int index) const {
6831  return times_.Get(index);
6832 }
6833 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::times(int index) const {
6834  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.times)
6835  return _internal_times(index);
6836 }
6837 inline void ReservoirConstraintProto::set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6838  times_.Set(index, value);
6839  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.times)
6840 }
6841 inline void ReservoirConstraintProto::_internal_add_times(::PROTOBUF_NAMESPACE_ID::int32 value) {
6842  times_.Add(value);
6843 }
6844 inline void ReservoirConstraintProto::add_times(::PROTOBUF_NAMESPACE_ID::int32 value) {
6845  _internal_add_times(value);
6846  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.times)
6847 }
6848 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6849 ReservoirConstraintProto::_internal_times() const {
6850  return times_;
6851 }
6852 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6854  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.times)
6855  return _internal_times();
6856 }
6857 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6858 ReservoirConstraintProto::_internal_mutable_times() {
6859  return &times_;
6860 }
6861 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6863  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.times)
6864  return _internal_mutable_times();
6865 }
6866 
6867 // repeated int64 demands = 4;
6868 inline int ReservoirConstraintProto::_internal_demands_size() const {
6869  return demands_.size();
6870 }
6872  return _internal_demands_size();
6873 }
6875  demands_.Clear();
6876 }
6877 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::_internal_demands(int index) const {
6878  return demands_.Get(index);
6879 }
6880 inline ::PROTOBUF_NAMESPACE_ID::int64 ReservoirConstraintProto::demands(int index) const {
6881  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.demands)
6882  return _internal_demands(index);
6883 }
6884 inline void ReservoirConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
6885  demands_.Set(index, value);
6886  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.demands)
6887 }
6888 inline void ReservoirConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int64 value) {
6889  demands_.Add(value);
6890 }
6891 inline void ReservoirConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int64 value) {
6892  _internal_add_demands(value);
6893  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.demands)
6894 }
6895 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6896 ReservoirConstraintProto::_internal_demands() const {
6897  return demands_;
6898 }
6899 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
6901  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.demands)
6902  return _internal_demands();
6903 }
6904 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6905 ReservoirConstraintProto::_internal_mutable_demands() {
6906  return &demands_;
6907 }
6908 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
6910  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.demands)
6911  return _internal_mutable_demands();
6912 }
6913 
6914 // repeated int32 actives = 5;
6915 inline int ReservoirConstraintProto::_internal_actives_size() const {
6916  return actives_.size();
6917 }
6919  return _internal_actives_size();
6920 }
6922  actives_.Clear();
6923 }
6924 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::_internal_actives(int index) const {
6925  return actives_.Get(index);
6926 }
6927 inline ::PROTOBUF_NAMESPACE_ID::int32 ReservoirConstraintProto::actives(int index) const {
6928  // @@protoc_insertion_point(field_get:operations_research.sat.ReservoirConstraintProto.actives)
6929  return _internal_actives(index);
6930 }
6931 inline void ReservoirConstraintProto::set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6932  actives_.Set(index, value);
6933  // @@protoc_insertion_point(field_set:operations_research.sat.ReservoirConstraintProto.actives)
6934 }
6935 inline void ReservoirConstraintProto::_internal_add_actives(::PROTOBUF_NAMESPACE_ID::int32 value) {
6936  actives_.Add(value);
6937 }
6938 inline void ReservoirConstraintProto::add_actives(::PROTOBUF_NAMESPACE_ID::int32 value) {
6939  _internal_add_actives(value);
6940  // @@protoc_insertion_point(field_add:operations_research.sat.ReservoirConstraintProto.actives)
6941 }
6942 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6943 ReservoirConstraintProto::_internal_actives() const {
6944  return actives_;
6945 }
6946 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6948  // @@protoc_insertion_point(field_list:operations_research.sat.ReservoirConstraintProto.actives)
6949  return _internal_actives();
6950 }
6951 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6952 ReservoirConstraintProto::_internal_mutable_actives() {
6953  return &actives_;
6954 }
6955 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
6957  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ReservoirConstraintProto.actives)
6958  return _internal_mutable_actives();
6959 }
6960 
6961 // -------------------------------------------------------------------
6962 
6963 // CircuitConstraintProto
6964 
6965 // repeated int32 tails = 3;
6966 inline int CircuitConstraintProto::_internal_tails_size() const {
6967  return tails_.size();
6968 }
6970  return _internal_tails_size();
6971 }
6973  tails_.Clear();
6974 }
6975 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_tails(int index) const {
6976  return tails_.Get(index);
6977 }
6978 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::tails(int index) const {
6979  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.tails)
6980  return _internal_tails(index);
6981 }
6982 inline void CircuitConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
6983  tails_.Set(index, value);
6984  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.tails)
6985 }
6986 inline void CircuitConstraintProto::_internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
6987  tails_.Add(value);
6988 }
6989 inline void CircuitConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
6990  _internal_add_tails(value);
6991  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.tails)
6992 }
6993 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6994 CircuitConstraintProto::_internal_tails() const {
6995  return tails_;
6996 }
6997 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
6999  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.tails)
7000  return _internal_tails();
7001 }
7002 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7003 CircuitConstraintProto::_internal_mutable_tails() {
7004  return &tails_;
7005 }
7006 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7008  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.tails)
7009  return _internal_mutable_tails();
7010 }
7011 
7012 // repeated int32 heads = 4;
7013 inline int CircuitConstraintProto::_internal_heads_size() const {
7014  return heads_.size();
7015 }
7017  return _internal_heads_size();
7018 }
7020  heads_.Clear();
7021 }
7022 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_heads(int index) const {
7023  return heads_.Get(index);
7024 }
7025 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::heads(int index) const {
7026  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.heads)
7027  return _internal_heads(index);
7028 }
7029 inline void CircuitConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7030  heads_.Set(index, value);
7031  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.heads)
7032 }
7033 inline void CircuitConstraintProto::_internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7034  heads_.Add(value);
7035 }
7036 inline void CircuitConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7037  _internal_add_heads(value);
7038  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.heads)
7039 }
7040 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7041 CircuitConstraintProto::_internal_heads() const {
7042  return heads_;
7043 }
7044 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7046  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.heads)
7047  return _internal_heads();
7048 }
7049 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7050 CircuitConstraintProto::_internal_mutable_heads() {
7051  return &heads_;
7052 }
7053 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7055  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.heads)
7056  return _internal_mutable_heads();
7057 }
7058 
7059 // repeated int32 literals = 5;
7060 inline int CircuitConstraintProto::_internal_literals_size() const {
7061  return literals_.size();
7062 }
7064  return _internal_literals_size();
7065 }
7067  literals_.Clear();
7068 }
7069 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::_internal_literals(int index) const {
7070  return literals_.Get(index);
7071 }
7072 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitConstraintProto::literals(int index) const {
7073  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitConstraintProto.literals)
7074  return _internal_literals(index);
7075 }
7076 inline void CircuitConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7077  literals_.Set(index, value);
7078  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitConstraintProto.literals)
7079 }
7080 inline void CircuitConstraintProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7081  literals_.Add(value);
7082 }
7083 inline void CircuitConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7084  _internal_add_literals(value);
7085  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitConstraintProto.literals)
7086 }
7087 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7088 CircuitConstraintProto::_internal_literals() const {
7089  return literals_;
7090 }
7091 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7093  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitConstraintProto.literals)
7094  return _internal_literals();
7095 }
7096 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7097 CircuitConstraintProto::_internal_mutable_literals() {
7098  return &literals_;
7099 }
7100 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7102  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitConstraintProto.literals)
7103  return _internal_mutable_literals();
7104 }
7105 
7106 // -------------------------------------------------------------------
7107 
7108 // RoutesConstraintProto
7109 
7110 // repeated int32 tails = 1;
7111 inline int RoutesConstraintProto::_internal_tails_size() const {
7112  return tails_.size();
7113 }
7115  return _internal_tails_size();
7116 }
7118  tails_.Clear();
7119 }
7120 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_tails(int index) const {
7121  return tails_.Get(index);
7122 }
7123 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::tails(int index) const {
7124  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.tails)
7125  return _internal_tails(index);
7126 }
7127 inline void RoutesConstraintProto::set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7128  tails_.Set(index, value);
7129  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.tails)
7130 }
7131 inline void RoutesConstraintProto::_internal_add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
7132  tails_.Add(value);
7133 }
7134 inline void RoutesConstraintProto::add_tails(::PROTOBUF_NAMESPACE_ID::int32 value) {
7135  _internal_add_tails(value);
7136  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.tails)
7137 }
7138 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7139 RoutesConstraintProto::_internal_tails() const {
7140  return tails_;
7141 }
7142 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7144  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.tails)
7145  return _internal_tails();
7146 }
7147 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7148 RoutesConstraintProto::_internal_mutable_tails() {
7149  return &tails_;
7150 }
7151 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7153  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.tails)
7154  return _internal_mutable_tails();
7155 }
7156 
7157 // repeated int32 heads = 2;
7158 inline int RoutesConstraintProto::_internal_heads_size() const {
7159  return heads_.size();
7160 }
7162  return _internal_heads_size();
7163 }
7165  heads_.Clear();
7166 }
7167 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_heads(int index) const {
7168  return heads_.Get(index);
7169 }
7170 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::heads(int index) const {
7171  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.heads)
7172  return _internal_heads(index);
7173 }
7174 inline void RoutesConstraintProto::set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7175  heads_.Set(index, value);
7176  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.heads)
7177 }
7178 inline void RoutesConstraintProto::_internal_add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7179  heads_.Add(value);
7180 }
7181 inline void RoutesConstraintProto::add_heads(::PROTOBUF_NAMESPACE_ID::int32 value) {
7182  _internal_add_heads(value);
7183  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.heads)
7184 }
7185 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7186 RoutesConstraintProto::_internal_heads() const {
7187  return heads_;
7188 }
7189 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7191  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.heads)
7192  return _internal_heads();
7193 }
7194 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7195 RoutesConstraintProto::_internal_mutable_heads() {
7196  return &heads_;
7197 }
7198 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7200  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.heads)
7201  return _internal_mutable_heads();
7202 }
7203 
7204 // repeated int32 literals = 3;
7205 inline int RoutesConstraintProto::_internal_literals_size() const {
7206  return literals_.size();
7207 }
7209  return _internal_literals_size();
7210 }
7212  literals_.Clear();
7213 }
7214 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_literals(int index) const {
7215  return literals_.Get(index);
7216 }
7217 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::literals(int index) const {
7218  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.literals)
7219  return _internal_literals(index);
7220 }
7221 inline void RoutesConstraintProto::set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7222  literals_.Set(index, value);
7223  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.literals)
7224 }
7225 inline void RoutesConstraintProto::_internal_add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7226  literals_.Add(value);
7227 }
7228 inline void RoutesConstraintProto::add_literals(::PROTOBUF_NAMESPACE_ID::int32 value) {
7229  _internal_add_literals(value);
7230  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.literals)
7231 }
7232 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7233 RoutesConstraintProto::_internal_literals() const {
7234  return literals_;
7235 }
7236 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7238  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.literals)
7239  return _internal_literals();
7240 }
7241 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7242 RoutesConstraintProto::_internal_mutable_literals() {
7243  return &literals_;
7244 }
7245 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7247  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.literals)
7248  return _internal_mutable_literals();
7249 }
7250 
7251 // repeated int32 demands = 4;
7252 inline int RoutesConstraintProto::_internal_demands_size() const {
7253  return demands_.size();
7254 }
7256  return _internal_demands_size();
7257 }
7259  demands_.Clear();
7260 }
7261 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::_internal_demands(int index) const {
7262  return demands_.Get(index);
7263 }
7264 inline ::PROTOBUF_NAMESPACE_ID::int32 RoutesConstraintProto::demands(int index) const {
7265  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.demands)
7266  return _internal_demands(index);
7267 }
7268 inline void RoutesConstraintProto::set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7269  demands_.Set(index, value);
7270  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.demands)
7271 }
7272 inline void RoutesConstraintProto::_internal_add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
7273  demands_.Add(value);
7274 }
7275 inline void RoutesConstraintProto::add_demands(::PROTOBUF_NAMESPACE_ID::int32 value) {
7276  _internal_add_demands(value);
7277  // @@protoc_insertion_point(field_add:operations_research.sat.RoutesConstraintProto.demands)
7278 }
7279 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7280 RoutesConstraintProto::_internal_demands() const {
7281  return demands_;
7282 }
7283 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7285  // @@protoc_insertion_point(field_list:operations_research.sat.RoutesConstraintProto.demands)
7286  return _internal_demands();
7287 }
7288 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7289 RoutesConstraintProto::_internal_mutable_demands() {
7290  return &demands_;
7291 }
7292 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7294  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.RoutesConstraintProto.demands)
7295  return _internal_mutable_demands();
7296 }
7297 
7298 // int64 capacity = 5;
7300  capacity_ = PROTOBUF_LONGLONG(0);
7301 }
7302 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutesConstraintProto::_internal_capacity() const {
7303  return capacity_;
7304 }
7305 inline ::PROTOBUF_NAMESPACE_ID::int64 RoutesConstraintProto::capacity() const {
7306  // @@protoc_insertion_point(field_get:operations_research.sat.RoutesConstraintProto.capacity)
7307  return _internal_capacity();
7308 }
7309 inline void RoutesConstraintProto::_internal_set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
7310 
7311  capacity_ = value;
7312 }
7313 inline void RoutesConstraintProto::set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value) {
7314  _internal_set_capacity(value);
7315  // @@protoc_insertion_point(field_set:operations_research.sat.RoutesConstraintProto.capacity)
7316 }
7317 
7318 // -------------------------------------------------------------------
7319 
7320 // CircuitCoveringConstraintProto
7321 
7322 // repeated int32 nexts = 1;
7323 inline int CircuitCoveringConstraintProto::_internal_nexts_size() const {
7324  return nexts_.size();
7325 }
7327  return _internal_nexts_size();
7328 }
7330  nexts_.Clear();
7331 }
7332 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitCoveringConstraintProto::_internal_nexts(int index) const {
7333  return nexts_.Get(index);
7334 }
7335 inline ::PROTOBUF_NAMESPACE_ID::int32 CircuitCoveringConstraintProto::nexts(int index) const {
7336  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7337  return _internal_nexts(index);
7338 }
7339 inline void CircuitCoveringConstraintProto::set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7340  nexts_.Set(index, value);
7341  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7342 }
7343 inline void CircuitCoveringConstraintProto::_internal_add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7344  nexts_.Add(value);
7345 }
7346 inline void CircuitCoveringConstraintProto::add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value) {
7347  _internal_add_nexts(value);
7348  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7349 }
7350 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7351 CircuitCoveringConstraintProto::_internal_nexts() const {
7352  return nexts_;
7353 }
7354 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7356  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7357  return _internal_nexts();
7358 }
7359 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7360 CircuitCoveringConstraintProto::_internal_mutable_nexts() {
7361  return &nexts_;
7362 }
7363 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7365  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.nexts)
7366  return _internal_mutable_nexts();
7367 }
7368 
7369 // repeated int64 distinguished_nodes = 2;
7370 inline int CircuitCoveringConstraintProto::_internal_distinguished_nodes_size() const {
7371  return distinguished_nodes_.size();
7372 }
7374  return _internal_distinguished_nodes_size();
7375 }
7377  distinguished_nodes_.Clear();
7378 }
7379 inline ::PROTOBUF_NAMESPACE_ID::int64 CircuitCoveringConstraintProto::_internal_distinguished_nodes(int index) const {
7380  return distinguished_nodes_.Get(index);
7381 }
7382 inline ::PROTOBUF_NAMESPACE_ID::int64 CircuitCoveringConstraintProto::distinguished_nodes(int index) const {
7383  // @@protoc_insertion_point(field_get:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7384  return _internal_distinguished_nodes(index);
7385 }
7386 inline void CircuitCoveringConstraintProto::set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7387  distinguished_nodes_.Set(index, value);
7388  // @@protoc_insertion_point(field_set:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7389 }
7390 inline void CircuitCoveringConstraintProto::_internal_add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
7391  distinguished_nodes_.Add(value);
7392 }
7393 inline void CircuitCoveringConstraintProto::add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value) {
7394  _internal_add_distinguished_nodes(value);
7395  // @@protoc_insertion_point(field_add:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7396 }
7397 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7398 CircuitCoveringConstraintProto::_internal_distinguished_nodes() const {
7399  return distinguished_nodes_;
7400 }
7401 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7403  // @@protoc_insertion_point(field_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7404  return _internal_distinguished_nodes();
7405 }
7406 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7407 CircuitCoveringConstraintProto::_internal_mutable_distinguished_nodes() {
7408  return &distinguished_nodes_;
7409 }
7410 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7412  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CircuitCoveringConstraintProto.distinguished_nodes)
7413  return _internal_mutable_distinguished_nodes();
7414 }
7415 
7416 // -------------------------------------------------------------------
7417 
7418 // TableConstraintProto
7419 
7420 // repeated int32 vars = 1;
7421 inline int TableConstraintProto::_internal_vars_size() const {
7422  return vars_.size();
7423 }
7425  return _internal_vars_size();
7426 }
7428  vars_.Clear();
7429 }
7430 inline ::PROTOBUF_NAMESPACE_ID::int32 TableConstraintProto::_internal_vars(int index) const {
7431  return vars_.Get(index);
7432 }
7433 inline ::PROTOBUF_NAMESPACE_ID::int32 TableConstraintProto::vars(int index) const {
7434  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.vars)
7435  return _internal_vars(index);
7436 }
7437 inline void TableConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7438  vars_.Set(index, value);
7439  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.vars)
7440 }
7441 inline void TableConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7442  vars_.Add(value);
7443 }
7444 inline void TableConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7445  _internal_add_vars(value);
7446  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.vars)
7447 }
7448 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7449 TableConstraintProto::_internal_vars() const {
7450  return vars_;
7451 }
7452 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7454  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.vars)
7455  return _internal_vars();
7456 }
7457 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7458 TableConstraintProto::_internal_mutable_vars() {
7459  return &vars_;
7460 }
7461 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7463  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.vars)
7464  return _internal_mutable_vars();
7465 }
7466 
7467 // repeated int64 values = 2;
7468 inline int TableConstraintProto::_internal_values_size() const {
7469  return values_.size();
7470 }
7472  return _internal_values_size();
7473 }
7475  values_.Clear();
7476 }
7477 inline ::PROTOBUF_NAMESPACE_ID::int64 TableConstraintProto::_internal_values(int index) const {
7478  return values_.Get(index);
7479 }
7480 inline ::PROTOBUF_NAMESPACE_ID::int64 TableConstraintProto::values(int index) const {
7481  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.values)
7482  return _internal_values(index);
7483 }
7484 inline void TableConstraintProto::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7485  values_.Set(index, value);
7486  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.values)
7487 }
7488 inline void TableConstraintProto::_internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
7489  values_.Add(value);
7490 }
7491 inline void TableConstraintProto::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
7492  _internal_add_values(value);
7493  // @@protoc_insertion_point(field_add:operations_research.sat.TableConstraintProto.values)
7494 }
7495 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7496 TableConstraintProto::_internal_values() const {
7497  return values_;
7498 }
7499 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7501  // @@protoc_insertion_point(field_list:operations_research.sat.TableConstraintProto.values)
7502  return _internal_values();
7503 }
7504 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7505 TableConstraintProto::_internal_mutable_values() {
7506  return &values_;
7507 }
7508 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7510  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.TableConstraintProto.values)
7511  return _internal_mutable_values();
7512 }
7513 
7514 // bool negated = 3;
7516  negated_ = false;
7517 }
7518 inline bool TableConstraintProto::_internal_negated() const {
7519  return negated_;
7520 }
7521 inline bool TableConstraintProto::negated() const {
7522  // @@protoc_insertion_point(field_get:operations_research.sat.TableConstraintProto.negated)
7523  return _internal_negated();
7524 }
7525 inline void TableConstraintProto::_internal_set_negated(bool value) {
7526 
7527  negated_ = value;
7528 }
7529 inline void TableConstraintProto::set_negated(bool value) {
7530  _internal_set_negated(value);
7531  // @@protoc_insertion_point(field_set:operations_research.sat.TableConstraintProto.negated)
7532 }
7533 
7534 // -------------------------------------------------------------------
7535 
7536 // InverseConstraintProto
7537 
7538 // repeated int32 f_direct = 1;
7539 inline int InverseConstraintProto::_internal_f_direct_size() const {
7540  return f_direct_.size();
7541 }
7543  return _internal_f_direct_size();
7544 }
7546  f_direct_.Clear();
7547 }
7548 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::_internal_f_direct(int index) const {
7549  return f_direct_.Get(index);
7550 }
7551 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_direct(int index) const {
7552  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_direct)
7553  return _internal_f_direct(index);
7554 }
7555 inline void InverseConstraintProto::set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7556  f_direct_.Set(index, value);
7557  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_direct)
7558 }
7559 inline void InverseConstraintProto::_internal_add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
7560  f_direct_.Add(value);
7561 }
7562 inline void InverseConstraintProto::add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value) {
7563  _internal_add_f_direct(value);
7564  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_direct)
7565 }
7566 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7567 InverseConstraintProto::_internal_f_direct() const {
7568  return f_direct_;
7569 }
7570 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7572  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_direct)
7573  return _internal_f_direct();
7574 }
7575 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7576 InverseConstraintProto::_internal_mutable_f_direct() {
7577  return &f_direct_;
7578 }
7579 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7581  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_direct)
7582  return _internal_mutable_f_direct();
7583 }
7584 
7585 // repeated int32 f_inverse = 2;
7586 inline int InverseConstraintProto::_internal_f_inverse_size() const {
7587  return f_inverse_.size();
7588 }
7590  return _internal_f_inverse_size();
7591 }
7593  f_inverse_.Clear();
7594 }
7595 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::_internal_f_inverse(int index) const {
7596  return f_inverse_.Get(index);
7597 }
7598 inline ::PROTOBUF_NAMESPACE_ID::int32 InverseConstraintProto::f_inverse(int index) const {
7599  // @@protoc_insertion_point(field_get:operations_research.sat.InverseConstraintProto.f_inverse)
7600  return _internal_f_inverse(index);
7601 }
7602 inline void InverseConstraintProto::set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7603  f_inverse_.Set(index, value);
7604  // @@protoc_insertion_point(field_set:operations_research.sat.InverseConstraintProto.f_inverse)
7605 }
7606 inline void InverseConstraintProto::_internal_add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value) {
7607  f_inverse_.Add(value);
7608 }
7609 inline void InverseConstraintProto::add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value) {
7610  _internal_add_f_inverse(value);
7611  // @@protoc_insertion_point(field_add:operations_research.sat.InverseConstraintProto.f_inverse)
7612 }
7613 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7614 InverseConstraintProto::_internal_f_inverse() const {
7615  return f_inverse_;
7616 }
7617 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7619  // @@protoc_insertion_point(field_list:operations_research.sat.InverseConstraintProto.f_inverse)
7620  return _internal_f_inverse();
7621 }
7622 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7623 InverseConstraintProto::_internal_mutable_f_inverse() {
7624  return &f_inverse_;
7625 }
7626 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7628  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.InverseConstraintProto.f_inverse)
7629  return _internal_mutable_f_inverse();
7630 }
7631 
7632 // -------------------------------------------------------------------
7633 
7634 // AutomatonConstraintProto
7635 
7636 // int64 starting_state = 2;
7638  starting_state_ = PROTOBUF_LONGLONG(0);
7639 }
7640 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_starting_state() const {
7641  return starting_state_;
7642 }
7643 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::starting_state() const {
7644  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.starting_state)
7645  return _internal_starting_state();
7646 }
7647 inline void AutomatonConstraintProto::_internal_set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value) {
7648 
7649  starting_state_ = value;
7650 }
7651 inline void AutomatonConstraintProto::set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value) {
7652  _internal_set_starting_state(value);
7653  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.starting_state)
7654 }
7655 
7656 // repeated int64 final_states = 3;
7657 inline int AutomatonConstraintProto::_internal_final_states_size() const {
7658  return final_states_.size();
7659 }
7661  return _internal_final_states_size();
7662 }
7664  final_states_.Clear();
7665 }
7666 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_final_states(int index) const {
7667  return final_states_.Get(index);
7668 }
7669 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::final_states(int index) const {
7670  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.final_states)
7671  return _internal_final_states(index);
7672 }
7673 inline void AutomatonConstraintProto::set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7674  final_states_.Set(index, value);
7675  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.final_states)
7676 }
7677 inline void AutomatonConstraintProto::_internal_add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value) {
7678  final_states_.Add(value);
7679 }
7680 inline void AutomatonConstraintProto::add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value) {
7681  _internal_add_final_states(value);
7682  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.final_states)
7683 }
7684 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7685 AutomatonConstraintProto::_internal_final_states() const {
7686  return final_states_;
7687 }
7688 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7690  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.final_states)
7691  return _internal_final_states();
7692 }
7693 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7694 AutomatonConstraintProto::_internal_mutable_final_states() {
7695  return &final_states_;
7696 }
7697 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7699  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.final_states)
7700  return _internal_mutable_final_states();
7701 }
7702 
7703 // repeated int64 transition_tail = 4;
7704 inline int AutomatonConstraintProto::_internal_transition_tail_size() const {
7705  return transition_tail_.size();
7706 }
7708  return _internal_transition_tail_size();
7709 }
7711  transition_tail_.Clear();
7712 }
7713 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_tail(int index) const {
7714  return transition_tail_.Get(index);
7715 }
7716 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_tail(int index) const {
7717  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_tail)
7718  return _internal_transition_tail(index);
7719 }
7720 inline void AutomatonConstraintProto::set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7721  transition_tail_.Set(index, value);
7722  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_tail)
7723 }
7724 inline void AutomatonConstraintProto::_internal_add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value) {
7725  transition_tail_.Add(value);
7726 }
7727 inline void AutomatonConstraintProto::add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value) {
7728  _internal_add_transition_tail(value);
7729  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_tail)
7730 }
7731 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7732 AutomatonConstraintProto::_internal_transition_tail() const {
7733  return transition_tail_;
7734 }
7735 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7737  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
7738  return _internal_transition_tail();
7739 }
7740 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7741 AutomatonConstraintProto::_internal_mutable_transition_tail() {
7742  return &transition_tail_;
7743 }
7744 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7746  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_tail)
7747  return _internal_mutable_transition_tail();
7748 }
7749 
7750 // repeated int64 transition_head = 5;
7751 inline int AutomatonConstraintProto::_internal_transition_head_size() const {
7752  return transition_head_.size();
7753 }
7755  return _internal_transition_head_size();
7756 }
7758  transition_head_.Clear();
7759 }
7760 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_head(int index) const {
7761  return transition_head_.Get(index);
7762 }
7763 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_head(int index) const {
7764  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_head)
7765  return _internal_transition_head(index);
7766 }
7767 inline void AutomatonConstraintProto::set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7768  transition_head_.Set(index, value);
7769  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_head)
7770 }
7771 inline void AutomatonConstraintProto::_internal_add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value) {
7772  transition_head_.Add(value);
7773 }
7774 inline void AutomatonConstraintProto::add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value) {
7775  _internal_add_transition_head(value);
7776  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_head)
7777 }
7778 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7779 AutomatonConstraintProto::_internal_transition_head() const {
7780  return transition_head_;
7781 }
7782 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7784  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_head)
7785  return _internal_transition_head();
7786 }
7787 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7788 AutomatonConstraintProto::_internal_mutable_transition_head() {
7789  return &transition_head_;
7790 }
7791 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7793  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_head)
7794  return _internal_mutable_transition_head();
7795 }
7796 
7797 // repeated int64 transition_label = 6;
7798 inline int AutomatonConstraintProto::_internal_transition_label_size() const {
7799  return transition_label_.size();
7800 }
7802  return _internal_transition_label_size();
7803 }
7805  transition_label_.Clear();
7806 }
7807 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::_internal_transition_label(int index) const {
7808  return transition_label_.Get(index);
7809 }
7810 inline ::PROTOBUF_NAMESPACE_ID::int64 AutomatonConstraintProto::transition_label(int index) const {
7811  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.transition_label)
7812  return _internal_transition_label(index);
7813 }
7814 inline void AutomatonConstraintProto::set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
7815  transition_label_.Set(index, value);
7816  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.transition_label)
7817 }
7818 inline void AutomatonConstraintProto::_internal_add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value) {
7819  transition_label_.Add(value);
7820 }
7821 inline void AutomatonConstraintProto::add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value) {
7822  _internal_add_transition_label(value);
7823  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.transition_label)
7824 }
7825 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7826 AutomatonConstraintProto::_internal_transition_label() const {
7827  return transition_label_;
7828 }
7829 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
7831  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.transition_label)
7832  return _internal_transition_label();
7833 }
7834 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7835 AutomatonConstraintProto::_internal_mutable_transition_label() {
7836  return &transition_label_;
7837 }
7838 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
7840  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.transition_label)
7841  return _internal_mutable_transition_label();
7842 }
7843 
7844 // repeated int32 vars = 7;
7845 inline int AutomatonConstraintProto::_internal_vars_size() const {
7846  return vars_.size();
7847 }
7849  return _internal_vars_size();
7850 }
7852  vars_.Clear();
7853 }
7854 inline ::PROTOBUF_NAMESPACE_ID::int32 AutomatonConstraintProto::_internal_vars(int index) const {
7855  return vars_.Get(index);
7856 }
7857 inline ::PROTOBUF_NAMESPACE_ID::int32 AutomatonConstraintProto::vars(int index) const {
7858  // @@protoc_insertion_point(field_get:operations_research.sat.AutomatonConstraintProto.vars)
7859  return _internal_vars(index);
7860 }
7861 inline void AutomatonConstraintProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7862  vars_.Set(index, value);
7863  // @@protoc_insertion_point(field_set:operations_research.sat.AutomatonConstraintProto.vars)
7864 }
7865 inline void AutomatonConstraintProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7866  vars_.Add(value);
7867 }
7868 inline void AutomatonConstraintProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
7869  _internal_add_vars(value);
7870  // @@protoc_insertion_point(field_add:operations_research.sat.AutomatonConstraintProto.vars)
7871 }
7872 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7873 AutomatonConstraintProto::_internal_vars() const {
7874  return vars_;
7875 }
7876 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7878  // @@protoc_insertion_point(field_list:operations_research.sat.AutomatonConstraintProto.vars)
7879  return _internal_vars();
7880 }
7881 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7882 AutomatonConstraintProto::_internal_mutable_vars() {
7883  return &vars_;
7884 }
7885 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7887  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.AutomatonConstraintProto.vars)
7888  return _internal_mutable_vars();
7889 }
7890 
7891 // -------------------------------------------------------------------
7892 
7893 // ConstraintProto
7894 
7895 // string name = 1;
7897  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7898 }
7899 inline const std::string& ConstraintProto::name() const {
7900  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.name)
7901  return _internal_name();
7902 }
7903 inline void ConstraintProto::set_name(const std::string& value) {
7904  _internal_set_name(value);
7905  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.name)
7906 }
7907 inline std::string* ConstraintProto::mutable_name() {
7908  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.name)
7909  return _internal_mutable_name();
7910 }
7911 inline const std::string& ConstraintProto::_internal_name() const {
7912  return name_.GetNoArena();
7913 }
7914 inline void ConstraintProto::_internal_set_name(const std::string& value) {
7915 
7916  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
7917 }
7918 inline void ConstraintProto::set_name(std::string&& value) {
7919 
7920  name_.SetNoArena(
7921  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
7922  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.ConstraintProto.name)
7923 }
7924 inline void ConstraintProto::set_name(const char* value) {
7925  GOOGLE_DCHECK(value != nullptr);
7926 
7927  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
7928  // @@protoc_insertion_point(field_set_char:operations_research.sat.ConstraintProto.name)
7929 }
7930 inline void ConstraintProto::set_name(const char* value, size_t size) {
7931 
7932  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7933  ::std::string(reinterpret_cast<const char*>(value), size));
7934  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.ConstraintProto.name)
7935 }
7936 inline std::string* ConstraintProto::_internal_mutable_name() {
7937 
7938  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7939 }
7940 inline std::string* ConstraintProto::release_name() {
7941  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.name)
7942 
7943  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7944 }
7945 inline void ConstraintProto::set_allocated_name(std::string* name) {
7946  if (name != nullptr) {
7947 
7948  } else {
7949 
7950  }
7951  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
7952  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.ConstraintProto.name)
7953 }
7954 
7955 // repeated int32 enforcement_literal = 2;
7956 inline int ConstraintProto::_internal_enforcement_literal_size() const {
7957  return enforcement_literal_.size();
7958 }
7960  return _internal_enforcement_literal_size();
7961 }
7963  enforcement_literal_.Clear();
7964 }
7965 inline ::PROTOBUF_NAMESPACE_ID::int32 ConstraintProto::_internal_enforcement_literal(int index) const {
7966  return enforcement_literal_.Get(index);
7967 }
7968 inline ::PROTOBUF_NAMESPACE_ID::int32 ConstraintProto::enforcement_literal(int index) const {
7969  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.enforcement_literal)
7970  return _internal_enforcement_literal(index);
7971 }
7972 inline void ConstraintProto::set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
7973  enforcement_literal_.Set(index, value);
7974  // @@protoc_insertion_point(field_set:operations_research.sat.ConstraintProto.enforcement_literal)
7975 }
7976 inline void ConstraintProto::_internal_add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value) {
7977  enforcement_literal_.Add(value);
7978 }
7979 inline void ConstraintProto::add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value) {
7980  _internal_add_enforcement_literal(value);
7981  // @@protoc_insertion_point(field_add:operations_research.sat.ConstraintProto.enforcement_literal)
7982 }
7983 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7984 ConstraintProto::_internal_enforcement_literal() const {
7985  return enforcement_literal_;
7986 }
7987 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
7989  // @@protoc_insertion_point(field_list:operations_research.sat.ConstraintProto.enforcement_literal)
7990  return _internal_enforcement_literal();
7991 }
7992 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7993 ConstraintProto::_internal_mutable_enforcement_literal() {
7994  return &enforcement_literal_;
7995 }
7996 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
7998  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.ConstraintProto.enforcement_literal)
7999  return _internal_mutable_enforcement_literal();
8000 }
8001 
8002 // .operations_research.sat.BoolArgumentProto bool_or = 3;
8003 inline bool ConstraintProto::_internal_has_bool_or() const {
8004  return constraint_case() == kBoolOr;
8005 }
8006 inline bool ConstraintProto::has_bool_or() const {
8007  return _internal_has_bool_or();
8008 }
8009 inline void ConstraintProto::set_has_bool_or() {
8010  _oneof_case_[0] = kBoolOr;
8011 }
8013  if (_internal_has_bool_or()) {
8014  delete constraint_.bool_or_;
8015  clear_has_constraint();
8016  }
8017 }
8018 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_or() {
8019  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_or)
8020  if (_internal_has_bool_or()) {
8021  clear_has_constraint();
8022  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_or_;
8023  constraint_.bool_or_ = nullptr;
8024  return temp;
8025  } else {
8026  return nullptr;
8027  }
8028 }
8029 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_or() const {
8030  return _internal_has_bool_or()
8031  ? *constraint_.bool_or_
8032  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
8033 }
8034 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_or() const {
8035  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_or)
8036  return _internal_bool_or();
8037 }
8038 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_or() {
8039  if (!_internal_has_bool_or()) {
8040  clear_constraint();
8041  set_has_bool_or();
8042  constraint_.bool_or_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8043  GetArenaNoVirtual());
8044  }
8045  return constraint_.bool_or_;
8046 }
8047 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_or() {
8048  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_or)
8049  return _internal_mutable_bool_or();
8050 }
8051 
8052 // .operations_research.sat.BoolArgumentProto bool_and = 4;
8053 inline bool ConstraintProto::_internal_has_bool_and() const {
8054  return constraint_case() == kBoolAnd;
8055 }
8056 inline bool ConstraintProto::has_bool_and() const {
8057  return _internal_has_bool_and();
8058 }
8059 inline void ConstraintProto::set_has_bool_and() {
8060  _oneof_case_[0] = kBoolAnd;
8061 }
8063  if (_internal_has_bool_and()) {
8064  delete constraint_.bool_and_;
8065  clear_has_constraint();
8066  }
8067 }
8068 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_and() {
8069  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_and)
8070  if (_internal_has_bool_and()) {
8071  clear_has_constraint();
8072  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_and_;
8073  constraint_.bool_and_ = nullptr;
8074  return temp;
8075  } else {
8076  return nullptr;
8077  }
8078 }
8079 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_and() const {
8080  return _internal_has_bool_and()
8081  ? *constraint_.bool_and_
8082  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
8083 }
8084 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_and() const {
8085  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_and)
8086  return _internal_bool_and();
8087 }
8088 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_and() {
8089  if (!_internal_has_bool_and()) {
8090  clear_constraint();
8091  set_has_bool_and();
8092  constraint_.bool_and_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8093  GetArenaNoVirtual());
8094  }
8095  return constraint_.bool_and_;
8096 }
8097 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_and() {
8098  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_and)
8099  return _internal_mutable_bool_and();
8100 }
8101 
8102 // .operations_research.sat.BoolArgumentProto at_most_one = 26;
8103 inline bool ConstraintProto::_internal_has_at_most_one() const {
8104  return constraint_case() == kAtMostOne;
8105 }
8107  return _internal_has_at_most_one();
8108 }
8109 inline void ConstraintProto::set_has_at_most_one() {
8110  _oneof_case_[0] = kAtMostOne;
8111 }
8113  if (_internal_has_at_most_one()) {
8114  delete constraint_.at_most_one_;
8115  clear_has_constraint();
8116  }
8117 }
8118 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_at_most_one() {
8119  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.at_most_one)
8120  if (_internal_has_at_most_one()) {
8121  clear_has_constraint();
8122  ::operations_research::sat::BoolArgumentProto* temp = constraint_.at_most_one_;
8123  constraint_.at_most_one_ = nullptr;
8124  return temp;
8125  } else {
8126  return nullptr;
8127  }
8128 }
8129 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_at_most_one() const {
8130  return _internal_has_at_most_one()
8131  ? *constraint_.at_most_one_
8132  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
8133 }
8134 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::at_most_one() const {
8135  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.at_most_one)
8136  return _internal_at_most_one();
8137 }
8138 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_at_most_one() {
8139  if (!_internal_has_at_most_one()) {
8140  clear_constraint();
8141  set_has_at_most_one();
8142  constraint_.at_most_one_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8143  GetArenaNoVirtual());
8144  }
8145  return constraint_.at_most_one_;
8146 }
8147 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_at_most_one() {
8148  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.at_most_one)
8149  return _internal_mutable_at_most_one();
8150 }
8151 
8152 // .operations_research.sat.BoolArgumentProto bool_xor = 5;
8153 inline bool ConstraintProto::_internal_has_bool_xor() const {
8154  return constraint_case() == kBoolXor;
8155 }
8156 inline bool ConstraintProto::has_bool_xor() const {
8157  return _internal_has_bool_xor();
8158 }
8159 inline void ConstraintProto::set_has_bool_xor() {
8160  _oneof_case_[0] = kBoolXor;
8161 }
8163  if (_internal_has_bool_xor()) {
8164  delete constraint_.bool_xor_;
8165  clear_has_constraint();
8166  }
8167 }
8168 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::release_bool_xor() {
8169  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.bool_xor)
8170  if (_internal_has_bool_xor()) {
8171  clear_has_constraint();
8172  ::operations_research::sat::BoolArgumentProto* temp = constraint_.bool_xor_;
8173  constraint_.bool_xor_ = nullptr;
8174  return temp;
8175  } else {
8176  return nullptr;
8177  }
8178 }
8179 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::_internal_bool_xor() const {
8180  return _internal_has_bool_xor()
8181  ? *constraint_.bool_xor_
8182  : *reinterpret_cast< ::operations_research::sat::BoolArgumentProto*>(&::operations_research::sat::_BoolArgumentProto_default_instance_);
8183 }
8184 inline const ::operations_research::sat::BoolArgumentProto& ConstraintProto::bool_xor() const {
8185  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.bool_xor)
8186  return _internal_bool_xor();
8187 }
8188 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::_internal_mutable_bool_xor() {
8189  if (!_internal_has_bool_xor()) {
8190  clear_constraint();
8191  set_has_bool_xor();
8192  constraint_.bool_xor_ = CreateMaybeMessage< ::operations_research::sat::BoolArgumentProto >(
8193  GetArenaNoVirtual());
8194  }
8195  return constraint_.bool_xor_;
8196 }
8197 inline ::operations_research::sat::BoolArgumentProto* ConstraintProto::mutable_bool_xor() {
8198  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.bool_xor)
8199  return _internal_mutable_bool_xor();
8200 }
8201 
8202 // .operations_research.sat.IntegerArgumentProto int_div = 7;
8203 inline bool ConstraintProto::_internal_has_int_div() const {
8204  return constraint_case() == kIntDiv;
8205 }
8206 inline bool ConstraintProto::has_int_div() const {
8207  return _internal_has_int_div();
8208 }
8209 inline void ConstraintProto::set_has_int_div() {
8210  _oneof_case_[0] = kIntDiv;
8211 }
8213  if (_internal_has_int_div()) {
8214  delete constraint_.int_div_;
8215  clear_has_constraint();
8216  }
8217 }
8218 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_div() {
8219  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_div)
8220  if (_internal_has_int_div()) {
8221  clear_has_constraint();
8222  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_div_;
8223  constraint_.int_div_ = nullptr;
8224  return temp;
8225  } else {
8226  return nullptr;
8227  }
8228 }
8229 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_div() const {
8230  return _internal_has_int_div()
8231  ? *constraint_.int_div_
8232  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
8233 }
8234 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_div() const {
8235  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_div)
8236  return _internal_int_div();
8237 }
8238 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_div() {
8239  if (!_internal_has_int_div()) {
8240  clear_constraint();
8241  set_has_int_div();
8242  constraint_.int_div_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8243  GetArenaNoVirtual());
8244  }
8245  return constraint_.int_div_;
8246 }
8247 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_div() {
8248  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_div)
8249  return _internal_mutable_int_div();
8250 }
8251 
8252 // .operations_research.sat.IntegerArgumentProto int_mod = 8;
8253 inline bool ConstraintProto::_internal_has_int_mod() const {
8254  return constraint_case() == kIntMod;
8255 }
8256 inline bool ConstraintProto::has_int_mod() const {
8257  return _internal_has_int_mod();
8258 }
8259 inline void ConstraintProto::set_has_int_mod() {
8260  _oneof_case_[0] = kIntMod;
8261 }
8263  if (_internal_has_int_mod()) {
8264  delete constraint_.int_mod_;
8265  clear_has_constraint();
8266  }
8267 }
8268 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_mod() {
8269  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_mod)
8270  if (_internal_has_int_mod()) {
8271  clear_has_constraint();
8272  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_mod_;
8273  constraint_.int_mod_ = nullptr;
8274  return temp;
8275  } else {
8276  return nullptr;
8277  }
8278 }
8279 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_mod() const {
8280  return _internal_has_int_mod()
8281  ? *constraint_.int_mod_
8282  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
8283 }
8284 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_mod() const {
8285  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_mod)
8286  return _internal_int_mod();
8287 }
8288 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_mod() {
8289  if (!_internal_has_int_mod()) {
8290  clear_constraint();
8291  set_has_int_mod();
8292  constraint_.int_mod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8293  GetArenaNoVirtual());
8294  }
8295  return constraint_.int_mod_;
8296 }
8297 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_mod() {
8298  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_mod)
8299  return _internal_mutable_int_mod();
8300 }
8301 
8302 // .operations_research.sat.IntegerArgumentProto int_max = 9;
8303 inline bool ConstraintProto::_internal_has_int_max() const {
8304  return constraint_case() == kIntMax;
8305 }
8306 inline bool ConstraintProto::has_int_max() const {
8307  return _internal_has_int_max();
8308 }
8309 inline void ConstraintProto::set_has_int_max() {
8310  _oneof_case_[0] = kIntMax;
8311 }
8313  if (_internal_has_int_max()) {
8314  delete constraint_.int_max_;
8315  clear_has_constraint();
8316  }
8317 }
8318 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_max() {
8319  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_max)
8320  if (_internal_has_int_max()) {
8321  clear_has_constraint();
8322  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_max_;
8323  constraint_.int_max_ = nullptr;
8324  return temp;
8325  } else {
8326  return nullptr;
8327  }
8328 }
8329 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_max() const {
8330  return _internal_has_int_max()
8331  ? *constraint_.int_max_
8332  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
8333 }
8334 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_max() const {
8335  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_max)
8336  return _internal_int_max();
8337 }
8338 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_max() {
8339  if (!_internal_has_int_max()) {
8340  clear_constraint();
8341  set_has_int_max();
8342  constraint_.int_max_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8343  GetArenaNoVirtual());
8344  }
8345  return constraint_.int_max_;
8346 }
8347 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_max() {
8348  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_max)
8349  return _internal_mutable_int_max();
8350 }
8351 
8352 // .operations_research.sat.LinearArgumentProto lin_max = 27;
8353 inline bool ConstraintProto::_internal_has_lin_max() const {
8354  return constraint_case() == kLinMax;
8355 }
8356 inline bool ConstraintProto::has_lin_max() const {
8357  return _internal_has_lin_max();
8358 }
8359 inline void ConstraintProto::set_has_lin_max() {
8360  _oneof_case_[0] = kLinMax;
8361 }
8363  if (_internal_has_lin_max()) {
8364  delete constraint_.lin_max_;
8365  clear_has_constraint();
8366  }
8367 }
8368 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::release_lin_max() {
8369  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.lin_max)
8370  if (_internal_has_lin_max()) {
8371  clear_has_constraint();
8372  ::operations_research::sat::LinearArgumentProto* temp = constraint_.lin_max_;
8373  constraint_.lin_max_ = nullptr;
8374  return temp;
8375  } else {
8376  return nullptr;
8377  }
8378 }
8379 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::_internal_lin_max() const {
8380  return _internal_has_lin_max()
8381  ? *constraint_.lin_max_
8382  : *reinterpret_cast< ::operations_research::sat::LinearArgumentProto*>(&::operations_research::sat::_LinearArgumentProto_default_instance_);
8383 }
8384 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::lin_max() const {
8385  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.lin_max)
8386  return _internal_lin_max();
8387 }
8388 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::_internal_mutable_lin_max() {
8389  if (!_internal_has_lin_max()) {
8390  clear_constraint();
8391  set_has_lin_max();
8392  constraint_.lin_max_ = CreateMaybeMessage< ::operations_research::sat::LinearArgumentProto >(
8393  GetArenaNoVirtual());
8394  }
8395  return constraint_.lin_max_;
8396 }
8397 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::mutable_lin_max() {
8398  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.lin_max)
8399  return _internal_mutable_lin_max();
8400 }
8401 
8402 // .operations_research.sat.IntegerArgumentProto int_min = 10;
8403 inline bool ConstraintProto::_internal_has_int_min() const {
8404  return constraint_case() == kIntMin;
8405 }
8406 inline bool ConstraintProto::has_int_min() const {
8407  return _internal_has_int_min();
8408 }
8409 inline void ConstraintProto::set_has_int_min() {
8410  _oneof_case_[0] = kIntMin;
8411 }
8413  if (_internal_has_int_min()) {
8414  delete constraint_.int_min_;
8415  clear_has_constraint();
8416  }
8417 }
8418 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_min() {
8419  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_min)
8420  if (_internal_has_int_min()) {
8421  clear_has_constraint();
8422  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_min_;
8423  constraint_.int_min_ = nullptr;
8424  return temp;
8425  } else {
8426  return nullptr;
8427  }
8428 }
8429 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_min() const {
8430  return _internal_has_int_min()
8431  ? *constraint_.int_min_
8432  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
8433 }
8434 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_min() const {
8435  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_min)
8436  return _internal_int_min();
8437 }
8438 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_min() {
8439  if (!_internal_has_int_min()) {
8440  clear_constraint();
8441  set_has_int_min();
8442  constraint_.int_min_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8443  GetArenaNoVirtual());
8444  }
8445  return constraint_.int_min_;
8446 }
8447 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_min() {
8448  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_min)
8449  return _internal_mutable_int_min();
8450 }
8451 
8452 // .operations_research.sat.LinearArgumentProto lin_min = 28;
8453 inline bool ConstraintProto::_internal_has_lin_min() const {
8454  return constraint_case() == kLinMin;
8455 }
8456 inline bool ConstraintProto::has_lin_min() const {
8457  return _internal_has_lin_min();
8458 }
8459 inline void ConstraintProto::set_has_lin_min() {
8460  _oneof_case_[0] = kLinMin;
8461 }
8463  if (_internal_has_lin_min()) {
8464  delete constraint_.lin_min_;
8465  clear_has_constraint();
8466  }
8467 }
8468 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::release_lin_min() {
8469  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.lin_min)
8470  if (_internal_has_lin_min()) {
8471  clear_has_constraint();
8472  ::operations_research::sat::LinearArgumentProto* temp = constraint_.lin_min_;
8473  constraint_.lin_min_ = nullptr;
8474  return temp;
8475  } else {
8476  return nullptr;
8477  }
8478 }
8479 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::_internal_lin_min() const {
8480  return _internal_has_lin_min()
8481  ? *constraint_.lin_min_
8482  : *reinterpret_cast< ::operations_research::sat::LinearArgumentProto*>(&::operations_research::sat::_LinearArgumentProto_default_instance_);
8483 }
8484 inline const ::operations_research::sat::LinearArgumentProto& ConstraintProto::lin_min() const {
8485  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.lin_min)
8486  return _internal_lin_min();
8487 }
8488 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::_internal_mutable_lin_min() {
8489  if (!_internal_has_lin_min()) {
8490  clear_constraint();
8491  set_has_lin_min();
8492  constraint_.lin_min_ = CreateMaybeMessage< ::operations_research::sat::LinearArgumentProto >(
8493  GetArenaNoVirtual());
8494  }
8495  return constraint_.lin_min_;
8496 }
8497 inline ::operations_research::sat::LinearArgumentProto* ConstraintProto::mutable_lin_min() {
8498  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.lin_min)
8499  return _internal_mutable_lin_min();
8500 }
8501 
8502 // .operations_research.sat.IntegerArgumentProto int_prod = 11;
8503 inline bool ConstraintProto::_internal_has_int_prod() const {
8504  return constraint_case() == kIntProd;
8505 }
8506 inline bool ConstraintProto::has_int_prod() const {
8507  return _internal_has_int_prod();
8508 }
8509 inline void ConstraintProto::set_has_int_prod() {
8510  _oneof_case_[0] = kIntProd;
8511 }
8513  if (_internal_has_int_prod()) {
8514  delete constraint_.int_prod_;
8515  clear_has_constraint();
8516  }
8517 }
8518 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::release_int_prod() {
8519  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.int_prod)
8520  if (_internal_has_int_prod()) {
8521  clear_has_constraint();
8522  ::operations_research::sat::IntegerArgumentProto* temp = constraint_.int_prod_;
8523  constraint_.int_prod_ = nullptr;
8524  return temp;
8525  } else {
8526  return nullptr;
8527  }
8528 }
8529 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::_internal_int_prod() const {
8530  return _internal_has_int_prod()
8531  ? *constraint_.int_prod_
8532  : *reinterpret_cast< ::operations_research::sat::IntegerArgumentProto*>(&::operations_research::sat::_IntegerArgumentProto_default_instance_);
8533 }
8534 inline const ::operations_research::sat::IntegerArgumentProto& ConstraintProto::int_prod() const {
8535  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.int_prod)
8536  return _internal_int_prod();
8537 }
8538 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::_internal_mutable_int_prod() {
8539  if (!_internal_has_int_prod()) {
8540  clear_constraint();
8541  set_has_int_prod();
8542  constraint_.int_prod_ = CreateMaybeMessage< ::operations_research::sat::IntegerArgumentProto >(
8543  GetArenaNoVirtual());
8544  }
8545  return constraint_.int_prod_;
8546 }
8547 inline ::operations_research::sat::IntegerArgumentProto* ConstraintProto::mutable_int_prod() {
8548  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.int_prod)
8549  return _internal_mutable_int_prod();
8550 }
8551 
8552 // .operations_research.sat.LinearConstraintProto linear = 12;
8553 inline bool ConstraintProto::_internal_has_linear() const {
8554  return constraint_case() == kLinear;
8555 }
8556 inline bool ConstraintProto::has_linear() const {
8557  return _internal_has_linear();
8558 }
8559 inline void ConstraintProto::set_has_linear() {
8560  _oneof_case_[0] = kLinear;
8561 }
8563  if (_internal_has_linear()) {
8564  delete constraint_.linear_;
8565  clear_has_constraint();
8566  }
8567 }
8568 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::release_linear() {
8569  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.linear)
8570  if (_internal_has_linear()) {
8571  clear_has_constraint();
8572  ::operations_research::sat::LinearConstraintProto* temp = constraint_.linear_;
8573  constraint_.linear_ = nullptr;
8574  return temp;
8575  } else {
8576  return nullptr;
8577  }
8578 }
8579 inline const ::operations_research::sat::LinearConstraintProto& ConstraintProto::_internal_linear() const {
8580  return _internal_has_linear()
8581  ? *constraint_.linear_
8582  : *reinterpret_cast< ::operations_research::sat::LinearConstraintProto*>(&::operations_research::sat::_LinearConstraintProto_default_instance_);
8583 }
8584 inline const ::operations_research::sat::LinearConstraintProto& ConstraintProto::linear() const {
8585  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.linear)
8586  return _internal_linear();
8587 }
8588 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::_internal_mutable_linear() {
8589  if (!_internal_has_linear()) {
8590  clear_constraint();
8591  set_has_linear();
8592  constraint_.linear_ = CreateMaybeMessage< ::operations_research::sat::LinearConstraintProto >(
8593  GetArenaNoVirtual());
8594  }
8595  return constraint_.linear_;
8596 }
8597 inline ::operations_research::sat::LinearConstraintProto* ConstraintProto::mutable_linear() {
8598  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.linear)
8599  return _internal_mutable_linear();
8600 }
8601 
8602 // .operations_research.sat.AllDifferentConstraintProto all_diff = 13;
8603 inline bool ConstraintProto::_internal_has_all_diff() const {
8604  return constraint_case() == kAllDiff;
8605 }
8606 inline bool ConstraintProto::has_all_diff() const {
8607  return _internal_has_all_diff();
8608 }
8609 inline void ConstraintProto::set_has_all_diff() {
8610  _oneof_case_[0] = kAllDiff;
8611 }
8613  if (_internal_has_all_diff()) {
8614  delete constraint_.all_diff_;
8615  clear_has_constraint();
8616  }
8617 }
8618 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::release_all_diff() {
8619  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.all_diff)
8620  if (_internal_has_all_diff()) {
8621  clear_has_constraint();
8622  ::operations_research::sat::AllDifferentConstraintProto* temp = constraint_.all_diff_;
8623  constraint_.all_diff_ = nullptr;
8624  return temp;
8625  } else {
8626  return nullptr;
8627  }
8628 }
8629 inline const ::operations_research::sat::AllDifferentConstraintProto& ConstraintProto::_internal_all_diff() const {
8630  return _internal_has_all_diff()
8631  ? *constraint_.all_diff_
8632  : *reinterpret_cast< ::operations_research::sat::AllDifferentConstraintProto*>(&::operations_research::sat::_AllDifferentConstraintProto_default_instance_);
8633 }
8634 inline const ::operations_research::sat::AllDifferentConstraintProto& ConstraintProto::all_diff() const {
8635  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.all_diff)
8636  return _internal_all_diff();
8637 }
8638 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::_internal_mutable_all_diff() {
8639  if (!_internal_has_all_diff()) {
8640  clear_constraint();
8641  set_has_all_diff();
8642  constraint_.all_diff_ = CreateMaybeMessage< ::operations_research::sat::AllDifferentConstraintProto >(
8643  GetArenaNoVirtual());
8644  }
8645  return constraint_.all_diff_;
8646 }
8647 inline ::operations_research::sat::AllDifferentConstraintProto* ConstraintProto::mutable_all_diff() {
8648  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.all_diff)
8649  return _internal_mutable_all_diff();
8650 }
8651 
8652 // .operations_research.sat.ElementConstraintProto element = 14;
8653 inline bool ConstraintProto::_internal_has_element() const {
8654  return constraint_case() == kElement;
8655 }
8656 inline bool ConstraintProto::has_element() const {
8657  return _internal_has_element();
8658 }
8659 inline void ConstraintProto::set_has_element() {
8660  _oneof_case_[0] = kElement;
8661 }
8663  if (_internal_has_element()) {
8664  delete constraint_.element_;
8665  clear_has_constraint();
8666  }
8667 }
8668 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::release_element() {
8669  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.element)
8670  if (_internal_has_element()) {
8671  clear_has_constraint();
8672  ::operations_research::sat::ElementConstraintProto* temp = constraint_.element_;
8673  constraint_.element_ = nullptr;
8674  return temp;
8675  } else {
8676  return nullptr;
8677  }
8678 }
8679 inline const ::operations_research::sat::ElementConstraintProto& ConstraintProto::_internal_element() const {
8680  return _internal_has_element()
8681  ? *constraint_.element_
8682  : *reinterpret_cast< ::operations_research::sat::ElementConstraintProto*>(&::operations_research::sat::_ElementConstraintProto_default_instance_);
8683 }
8684 inline const ::operations_research::sat::ElementConstraintProto& ConstraintProto::element() const {
8685  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.element)
8686  return _internal_element();
8687 }
8688 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::_internal_mutable_element() {
8689  if (!_internal_has_element()) {
8690  clear_constraint();
8691  set_has_element();
8692  constraint_.element_ = CreateMaybeMessage< ::operations_research::sat::ElementConstraintProto >(
8693  GetArenaNoVirtual());
8694  }
8695  return constraint_.element_;
8696 }
8697 inline ::operations_research::sat::ElementConstraintProto* ConstraintProto::mutable_element() {
8698  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.element)
8699  return _internal_mutable_element();
8700 }
8701 
8702 // .operations_research.sat.CircuitConstraintProto circuit = 15;
8703 inline bool ConstraintProto::_internal_has_circuit() const {
8704  return constraint_case() == kCircuit;
8705 }
8706 inline bool ConstraintProto::has_circuit() const {
8707  return _internal_has_circuit();
8708 }
8709 inline void ConstraintProto::set_has_circuit() {
8710  _oneof_case_[0] = kCircuit;
8711 }
8713  if (_internal_has_circuit()) {
8714  delete constraint_.circuit_;
8715  clear_has_constraint();
8716  }
8717 }
8718 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::release_circuit() {
8719  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit)
8720  if (_internal_has_circuit()) {
8721  clear_has_constraint();
8722  ::operations_research::sat::CircuitConstraintProto* temp = constraint_.circuit_;
8723  constraint_.circuit_ = nullptr;
8724  return temp;
8725  } else {
8726  return nullptr;
8727  }
8728 }
8729 inline const ::operations_research::sat::CircuitConstraintProto& ConstraintProto::_internal_circuit() const {
8730  return _internal_has_circuit()
8731  ? *constraint_.circuit_
8732  : *reinterpret_cast< ::operations_research::sat::CircuitConstraintProto*>(&::operations_research::sat::_CircuitConstraintProto_default_instance_);
8733 }
8734 inline const ::operations_research::sat::CircuitConstraintProto& ConstraintProto::circuit() const {
8735  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit)
8736  return _internal_circuit();
8737 }
8738 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::_internal_mutable_circuit() {
8739  if (!_internal_has_circuit()) {
8740  clear_constraint();
8741  set_has_circuit();
8742  constraint_.circuit_ = CreateMaybeMessage< ::operations_research::sat::CircuitConstraintProto >(
8743  GetArenaNoVirtual());
8744  }
8745  return constraint_.circuit_;
8746 }
8747 inline ::operations_research::sat::CircuitConstraintProto* ConstraintProto::mutable_circuit() {
8748  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit)
8749  return _internal_mutable_circuit();
8750 }
8751 
8752 // .operations_research.sat.RoutesConstraintProto routes = 23;
8753 inline bool ConstraintProto::_internal_has_routes() const {
8754  return constraint_case() == kRoutes;
8755 }
8756 inline bool ConstraintProto::has_routes() const {
8757  return _internal_has_routes();
8758 }
8759 inline void ConstraintProto::set_has_routes() {
8760  _oneof_case_[0] = kRoutes;
8761 }
8763  if (_internal_has_routes()) {
8764  delete constraint_.routes_;
8765  clear_has_constraint();
8766  }
8767 }
8768 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::release_routes() {
8769  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.routes)
8770  if (_internal_has_routes()) {
8771  clear_has_constraint();
8772  ::operations_research::sat::RoutesConstraintProto* temp = constraint_.routes_;
8773  constraint_.routes_ = nullptr;
8774  return temp;
8775  } else {
8776  return nullptr;
8777  }
8778 }
8779 inline const ::operations_research::sat::RoutesConstraintProto& ConstraintProto::_internal_routes() const {
8780  return _internal_has_routes()
8781  ? *constraint_.routes_
8782  : *reinterpret_cast< ::operations_research::sat::RoutesConstraintProto*>(&::operations_research::sat::_RoutesConstraintProto_default_instance_);
8783 }
8784 inline const ::operations_research::sat::RoutesConstraintProto& ConstraintProto::routes() const {
8785  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.routes)
8786  return _internal_routes();
8787 }
8788 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::_internal_mutable_routes() {
8789  if (!_internal_has_routes()) {
8790  clear_constraint();
8791  set_has_routes();
8792  constraint_.routes_ = CreateMaybeMessage< ::operations_research::sat::RoutesConstraintProto >(
8793  GetArenaNoVirtual());
8794  }
8795  return constraint_.routes_;
8796 }
8797 inline ::operations_research::sat::RoutesConstraintProto* ConstraintProto::mutable_routes() {
8798  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.routes)
8799  return _internal_mutable_routes();
8800 }
8801 
8802 // .operations_research.sat.CircuitCoveringConstraintProto circuit_covering = 25;
8803 inline bool ConstraintProto::_internal_has_circuit_covering() const {
8804  return constraint_case() == kCircuitCovering;
8805 }
8807  return _internal_has_circuit_covering();
8808 }
8809 inline void ConstraintProto::set_has_circuit_covering() {
8810  _oneof_case_[0] = kCircuitCovering;
8811 }
8813  if (_internal_has_circuit_covering()) {
8814  delete constraint_.circuit_covering_;
8815  clear_has_constraint();
8816  }
8817 }
8818 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::release_circuit_covering() {
8819  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.circuit_covering)
8820  if (_internal_has_circuit_covering()) {
8821  clear_has_constraint();
8822  ::operations_research::sat::CircuitCoveringConstraintProto* temp = constraint_.circuit_covering_;
8823  constraint_.circuit_covering_ = nullptr;
8824  return temp;
8825  } else {
8826  return nullptr;
8827  }
8828 }
8829 inline const ::operations_research::sat::CircuitCoveringConstraintProto& ConstraintProto::_internal_circuit_covering() const {
8830  return _internal_has_circuit_covering()
8831  ? *constraint_.circuit_covering_
8832  : *reinterpret_cast< ::operations_research::sat::CircuitCoveringConstraintProto*>(&::operations_research::sat::_CircuitCoveringConstraintProto_default_instance_);
8833 }
8834 inline const ::operations_research::sat::CircuitCoveringConstraintProto& ConstraintProto::circuit_covering() const {
8835  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.circuit_covering)
8836  return _internal_circuit_covering();
8837 }
8838 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::_internal_mutable_circuit_covering() {
8839  if (!_internal_has_circuit_covering()) {
8840  clear_constraint();
8841  set_has_circuit_covering();
8842  constraint_.circuit_covering_ = CreateMaybeMessage< ::operations_research::sat::CircuitCoveringConstraintProto >(
8843  GetArenaNoVirtual());
8844  }
8845  return constraint_.circuit_covering_;
8846 }
8847 inline ::operations_research::sat::CircuitCoveringConstraintProto* ConstraintProto::mutable_circuit_covering() {
8848  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.circuit_covering)
8849  return _internal_mutable_circuit_covering();
8850 }
8851 
8852 // .operations_research.sat.TableConstraintProto table = 16;
8853 inline bool ConstraintProto::_internal_has_table() const {
8854  return constraint_case() == kTable;
8855 }
8856 inline bool ConstraintProto::has_table() const {
8857  return _internal_has_table();
8858 }
8859 inline void ConstraintProto::set_has_table() {
8860  _oneof_case_[0] = kTable;
8861 }
8863  if (_internal_has_table()) {
8864  delete constraint_.table_;
8865  clear_has_constraint();
8866  }
8867 }
8868 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::release_table() {
8869  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.table)
8870  if (_internal_has_table()) {
8871  clear_has_constraint();
8872  ::operations_research::sat::TableConstraintProto* temp = constraint_.table_;
8873  constraint_.table_ = nullptr;
8874  return temp;
8875  } else {
8876  return nullptr;
8877  }
8878 }
8879 inline const ::operations_research::sat::TableConstraintProto& ConstraintProto::_internal_table() const {
8880  return _internal_has_table()
8881  ? *constraint_.table_
8882  : *reinterpret_cast< ::operations_research::sat::TableConstraintProto*>(&::operations_research::sat::_TableConstraintProto_default_instance_);
8883 }
8884 inline const ::operations_research::sat::TableConstraintProto& ConstraintProto::table() const {
8885  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.table)
8886  return _internal_table();
8887 }
8888 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::_internal_mutable_table() {
8889  if (!_internal_has_table()) {
8890  clear_constraint();
8891  set_has_table();
8892  constraint_.table_ = CreateMaybeMessage< ::operations_research::sat::TableConstraintProto >(
8893  GetArenaNoVirtual());
8894  }
8895  return constraint_.table_;
8896 }
8897 inline ::operations_research::sat::TableConstraintProto* ConstraintProto::mutable_table() {
8898  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.table)
8899  return _internal_mutable_table();
8900 }
8901 
8902 // .operations_research.sat.AutomatonConstraintProto automaton = 17;
8903 inline bool ConstraintProto::_internal_has_automaton() const {
8904  return constraint_case() == kAutomaton;
8905 }
8906 inline bool ConstraintProto::has_automaton() const {
8907  return _internal_has_automaton();
8908 }
8909 inline void ConstraintProto::set_has_automaton() {
8910  _oneof_case_[0] = kAutomaton;
8911 }
8913  if (_internal_has_automaton()) {
8914  delete constraint_.automaton_;
8915  clear_has_constraint();
8916  }
8917 }
8918 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::release_automaton() {
8919  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.automaton)
8920  if (_internal_has_automaton()) {
8921  clear_has_constraint();
8922  ::operations_research::sat::AutomatonConstraintProto* temp = constraint_.automaton_;
8923  constraint_.automaton_ = nullptr;
8924  return temp;
8925  } else {
8926  return nullptr;
8927  }
8928 }
8929 inline const ::operations_research::sat::AutomatonConstraintProto& ConstraintProto::_internal_automaton() const {
8930  return _internal_has_automaton()
8931  ? *constraint_.automaton_
8932  : *reinterpret_cast< ::operations_research::sat::AutomatonConstraintProto*>(&::operations_research::sat::_AutomatonConstraintProto_default_instance_);
8933 }
8934 inline const ::operations_research::sat::AutomatonConstraintProto& ConstraintProto::automaton() const {
8935  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.automaton)
8936  return _internal_automaton();
8937 }
8938 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::_internal_mutable_automaton() {
8939  if (!_internal_has_automaton()) {
8940  clear_constraint();
8941  set_has_automaton();
8942  constraint_.automaton_ = CreateMaybeMessage< ::operations_research::sat::AutomatonConstraintProto >(
8943  GetArenaNoVirtual());
8944  }
8945  return constraint_.automaton_;
8946 }
8947 inline ::operations_research::sat::AutomatonConstraintProto* ConstraintProto::mutable_automaton() {
8948  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.automaton)
8949  return _internal_mutable_automaton();
8950 }
8951 
8952 // .operations_research.sat.InverseConstraintProto inverse = 18;
8953 inline bool ConstraintProto::_internal_has_inverse() const {
8954  return constraint_case() == kInverse;
8955 }
8956 inline bool ConstraintProto::has_inverse() const {
8957  return _internal_has_inverse();
8958 }
8959 inline void ConstraintProto::set_has_inverse() {
8960  _oneof_case_[0] = kInverse;
8961 }
8963  if (_internal_has_inverse()) {
8964  delete constraint_.inverse_;
8965  clear_has_constraint();
8966  }
8967 }
8968 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::release_inverse() {
8969  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.inverse)
8970  if (_internal_has_inverse()) {
8971  clear_has_constraint();
8972  ::operations_research::sat::InverseConstraintProto* temp = constraint_.inverse_;
8973  constraint_.inverse_ = nullptr;
8974  return temp;
8975  } else {
8976  return nullptr;
8977  }
8978 }
8979 inline const ::operations_research::sat::InverseConstraintProto& ConstraintProto::_internal_inverse() const {
8980  return _internal_has_inverse()
8981  ? *constraint_.inverse_
8982  : *reinterpret_cast< ::operations_research::sat::InverseConstraintProto*>(&::operations_research::sat::_InverseConstraintProto_default_instance_);
8983 }
8984 inline const ::operations_research::sat::InverseConstraintProto& ConstraintProto::inverse() const {
8985  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.inverse)
8986  return _internal_inverse();
8987 }
8988 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::_internal_mutable_inverse() {
8989  if (!_internal_has_inverse()) {
8990  clear_constraint();
8991  set_has_inverse();
8992  constraint_.inverse_ = CreateMaybeMessage< ::operations_research::sat::InverseConstraintProto >(
8993  GetArenaNoVirtual());
8994  }
8995  return constraint_.inverse_;
8996 }
8997 inline ::operations_research::sat::InverseConstraintProto* ConstraintProto::mutable_inverse() {
8998  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.inverse)
8999  return _internal_mutable_inverse();
9000 }
9001 
9002 // .operations_research.sat.ReservoirConstraintProto reservoir = 24;
9003 inline bool ConstraintProto::_internal_has_reservoir() const {
9004  return constraint_case() == kReservoir;
9005 }
9006 inline bool ConstraintProto::has_reservoir() const {
9007  return _internal_has_reservoir();
9008 }
9009 inline void ConstraintProto::set_has_reservoir() {
9010  _oneof_case_[0] = kReservoir;
9011 }
9013  if (_internal_has_reservoir()) {
9014  delete constraint_.reservoir_;
9015  clear_has_constraint();
9016  }
9017 }
9018 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::release_reservoir() {
9019  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.reservoir)
9020  if (_internal_has_reservoir()) {
9021  clear_has_constraint();
9022  ::operations_research::sat::ReservoirConstraintProto* temp = constraint_.reservoir_;
9023  constraint_.reservoir_ = nullptr;
9024  return temp;
9025  } else {
9026  return nullptr;
9027  }
9028 }
9029 inline const ::operations_research::sat::ReservoirConstraintProto& ConstraintProto::_internal_reservoir() const {
9030  return _internal_has_reservoir()
9031  ? *constraint_.reservoir_
9032  : *reinterpret_cast< ::operations_research::sat::ReservoirConstraintProto*>(&::operations_research::sat::_ReservoirConstraintProto_default_instance_);
9033 }
9034 inline const ::operations_research::sat::ReservoirConstraintProto& ConstraintProto::reservoir() const {
9035  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.reservoir)
9036  return _internal_reservoir();
9037 }
9038 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::_internal_mutable_reservoir() {
9039  if (!_internal_has_reservoir()) {
9040  clear_constraint();
9041  set_has_reservoir();
9042  constraint_.reservoir_ = CreateMaybeMessage< ::operations_research::sat::ReservoirConstraintProto >(
9043  GetArenaNoVirtual());
9044  }
9045  return constraint_.reservoir_;
9046 }
9047 inline ::operations_research::sat::ReservoirConstraintProto* ConstraintProto::mutable_reservoir() {
9048  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.reservoir)
9049  return _internal_mutable_reservoir();
9050 }
9051 
9052 // .operations_research.sat.IntervalConstraintProto interval = 19;
9053 inline bool ConstraintProto::_internal_has_interval() const {
9054  return constraint_case() == kInterval;
9055 }
9056 inline bool ConstraintProto::has_interval() const {
9057  return _internal_has_interval();
9058 }
9059 inline void ConstraintProto::set_has_interval() {
9060  _oneof_case_[0] = kInterval;
9061 }
9063  if (_internal_has_interval()) {
9064  delete constraint_.interval_;
9065  clear_has_constraint();
9066  }
9067 }
9068 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::release_interval() {
9069  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.interval)
9070  if (_internal_has_interval()) {
9071  clear_has_constraint();
9072  ::operations_research::sat::IntervalConstraintProto* temp = constraint_.interval_;
9073  constraint_.interval_ = nullptr;
9074  return temp;
9075  } else {
9076  return nullptr;
9077  }
9078 }
9079 inline const ::operations_research::sat::IntervalConstraintProto& ConstraintProto::_internal_interval() const {
9080  return _internal_has_interval()
9081  ? *constraint_.interval_
9082  : *reinterpret_cast< ::operations_research::sat::IntervalConstraintProto*>(&::operations_research::sat::_IntervalConstraintProto_default_instance_);
9083 }
9084 inline const ::operations_research::sat::IntervalConstraintProto& ConstraintProto::interval() const {
9085  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.interval)
9086  return _internal_interval();
9087 }
9088 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::_internal_mutable_interval() {
9089  if (!_internal_has_interval()) {
9090  clear_constraint();
9091  set_has_interval();
9092  constraint_.interval_ = CreateMaybeMessage< ::operations_research::sat::IntervalConstraintProto >(
9093  GetArenaNoVirtual());
9094  }
9095  return constraint_.interval_;
9096 }
9097 inline ::operations_research::sat::IntervalConstraintProto* ConstraintProto::mutable_interval() {
9098  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.interval)
9099  return _internal_mutable_interval();
9100 }
9101 
9102 // .operations_research.sat.NoOverlapConstraintProto no_overlap = 20;
9103 inline bool ConstraintProto::_internal_has_no_overlap() const {
9104  return constraint_case() == kNoOverlap;
9105 }
9106 inline bool ConstraintProto::has_no_overlap() const {
9107  return _internal_has_no_overlap();
9108 }
9109 inline void ConstraintProto::set_has_no_overlap() {
9110  _oneof_case_[0] = kNoOverlap;
9111 }
9113  if (_internal_has_no_overlap()) {
9114  delete constraint_.no_overlap_;
9115  clear_has_constraint();
9116  }
9117 }
9118 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::release_no_overlap() {
9119  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap)
9120  if (_internal_has_no_overlap()) {
9121  clear_has_constraint();
9122  ::operations_research::sat::NoOverlapConstraintProto* temp = constraint_.no_overlap_;
9123  constraint_.no_overlap_ = nullptr;
9124  return temp;
9125  } else {
9126  return nullptr;
9127  }
9128 }
9129 inline const ::operations_research::sat::NoOverlapConstraintProto& ConstraintProto::_internal_no_overlap() const {
9130  return _internal_has_no_overlap()
9131  ? *constraint_.no_overlap_
9132  : *reinterpret_cast< ::operations_research::sat::NoOverlapConstraintProto*>(&::operations_research::sat::_NoOverlapConstraintProto_default_instance_);
9133 }
9134 inline const ::operations_research::sat::NoOverlapConstraintProto& ConstraintProto::no_overlap() const {
9135  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap)
9136  return _internal_no_overlap();
9137 }
9138 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::_internal_mutable_no_overlap() {
9139  if (!_internal_has_no_overlap()) {
9140  clear_constraint();
9141  set_has_no_overlap();
9142  constraint_.no_overlap_ = CreateMaybeMessage< ::operations_research::sat::NoOverlapConstraintProto >(
9143  GetArenaNoVirtual());
9144  }
9145  return constraint_.no_overlap_;
9146 }
9147 inline ::operations_research::sat::NoOverlapConstraintProto* ConstraintProto::mutable_no_overlap() {
9148  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap)
9149  return _internal_mutable_no_overlap();
9150 }
9151 
9152 // .operations_research.sat.NoOverlap2DConstraintProto no_overlap_2d = 21;
9153 inline bool ConstraintProto::_internal_has_no_overlap_2d() const {
9154  return constraint_case() == kNoOverlap2D;
9155 }
9157  return _internal_has_no_overlap_2d();
9158 }
9159 inline void ConstraintProto::set_has_no_overlap_2d() {
9160  _oneof_case_[0] = kNoOverlap2D;
9161 }
9163  if (_internal_has_no_overlap_2d()) {
9164  delete constraint_.no_overlap_2d_;
9165  clear_has_constraint();
9166  }
9167 }
9168 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::release_no_overlap_2d() {
9169  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.no_overlap_2d)
9170  if (_internal_has_no_overlap_2d()) {
9171  clear_has_constraint();
9172  ::operations_research::sat::NoOverlap2DConstraintProto* temp = constraint_.no_overlap_2d_;
9173  constraint_.no_overlap_2d_ = nullptr;
9174  return temp;
9175  } else {
9176  return nullptr;
9177  }
9178 }
9179 inline const ::operations_research::sat::NoOverlap2DConstraintProto& ConstraintProto::_internal_no_overlap_2d() const {
9180  return _internal_has_no_overlap_2d()
9181  ? *constraint_.no_overlap_2d_
9182  : *reinterpret_cast< ::operations_research::sat::NoOverlap2DConstraintProto*>(&::operations_research::sat::_NoOverlap2DConstraintProto_default_instance_);
9183 }
9184 inline const ::operations_research::sat::NoOverlap2DConstraintProto& ConstraintProto::no_overlap_2d() const {
9185  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.no_overlap_2d)
9186  return _internal_no_overlap_2d();
9187 }
9188 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::_internal_mutable_no_overlap_2d() {
9189  if (!_internal_has_no_overlap_2d()) {
9190  clear_constraint();
9191  set_has_no_overlap_2d();
9192  constraint_.no_overlap_2d_ = CreateMaybeMessage< ::operations_research::sat::NoOverlap2DConstraintProto >(
9193  GetArenaNoVirtual());
9194  }
9195  return constraint_.no_overlap_2d_;
9196 }
9197 inline ::operations_research::sat::NoOverlap2DConstraintProto* ConstraintProto::mutable_no_overlap_2d() {
9198  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.no_overlap_2d)
9199  return _internal_mutable_no_overlap_2d();
9200 }
9201 
9202 // .operations_research.sat.CumulativeConstraintProto cumulative = 22;
9203 inline bool ConstraintProto::_internal_has_cumulative() const {
9204  return constraint_case() == kCumulative;
9205 }
9206 inline bool ConstraintProto::has_cumulative() const {
9207  return _internal_has_cumulative();
9208 }
9209 inline void ConstraintProto::set_has_cumulative() {
9210  _oneof_case_[0] = kCumulative;
9211 }
9213  if (_internal_has_cumulative()) {
9214  delete constraint_.cumulative_;
9215  clear_has_constraint();
9216  }
9217 }
9218 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::release_cumulative() {
9219  // @@protoc_insertion_point(field_release:operations_research.sat.ConstraintProto.cumulative)
9220  if (_internal_has_cumulative()) {
9221  clear_has_constraint();
9222  ::operations_research::sat::CumulativeConstraintProto* temp = constraint_.cumulative_;
9223  constraint_.cumulative_ = nullptr;
9224  return temp;
9225  } else {
9226  return nullptr;
9227  }
9228 }
9229 inline const ::operations_research::sat::CumulativeConstraintProto& ConstraintProto::_internal_cumulative() const {
9230  return _internal_has_cumulative()
9231  ? *constraint_.cumulative_
9232  : *reinterpret_cast< ::operations_research::sat::CumulativeConstraintProto*>(&::operations_research::sat::_CumulativeConstraintProto_default_instance_);
9233 }
9234 inline const ::operations_research::sat::CumulativeConstraintProto& ConstraintProto::cumulative() const {
9235  // @@protoc_insertion_point(field_get:operations_research.sat.ConstraintProto.cumulative)
9236  return _internal_cumulative();
9237 }
9238 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::_internal_mutable_cumulative() {
9239  if (!_internal_has_cumulative()) {
9240  clear_constraint();
9241  set_has_cumulative();
9242  constraint_.cumulative_ = CreateMaybeMessage< ::operations_research::sat::CumulativeConstraintProto >(
9243  GetArenaNoVirtual());
9244  }
9245  return constraint_.cumulative_;
9246 }
9247 inline ::operations_research::sat::CumulativeConstraintProto* ConstraintProto::mutable_cumulative() {
9248  // @@protoc_insertion_point(field_mutable:operations_research.sat.ConstraintProto.cumulative)
9249  return _internal_mutable_cumulative();
9250 }
9251 
9252 inline bool ConstraintProto::has_constraint() const {
9253  return constraint_case() != CONSTRAINT_NOT_SET;
9254 }
9255 inline void ConstraintProto::clear_has_constraint() {
9256  _oneof_case_[0] = CONSTRAINT_NOT_SET;
9257 }
9259  return ConstraintProto::ConstraintCase(_oneof_case_[0]);
9260 }
9261 // -------------------------------------------------------------------
9262 
9263 // CpObjectiveProto
9264 
9265 // repeated int32 vars = 1;
9266 inline int CpObjectiveProto::_internal_vars_size() const {
9267  return vars_.size();
9268 }
9269 inline int CpObjectiveProto::vars_size() const {
9270  return _internal_vars_size();
9271 }
9273  vars_.Clear();
9274 }
9275 inline ::PROTOBUF_NAMESPACE_ID::int32 CpObjectiveProto::_internal_vars(int index) const {
9276  return vars_.Get(index);
9277 }
9278 inline ::PROTOBUF_NAMESPACE_ID::int32 CpObjectiveProto::vars(int index) const {
9279  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.vars)
9280  return _internal_vars(index);
9281 }
9282 inline void CpObjectiveProto::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9283  vars_.Set(index, value);
9284  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.vars)
9285 }
9286 inline void CpObjectiveProto::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9287  vars_.Add(value);
9288 }
9289 inline void CpObjectiveProto::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9290  _internal_add_vars(value);
9291  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.vars)
9292 }
9293 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9294 CpObjectiveProto::_internal_vars() const {
9295  return vars_;
9296 }
9297 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9299  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.vars)
9300  return _internal_vars();
9301 }
9302 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9303 CpObjectiveProto::_internal_mutable_vars() {
9304  return &vars_;
9305 }
9306 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9308  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.vars)
9309  return _internal_mutable_vars();
9310 }
9311 
9312 // repeated int64 coeffs = 4;
9313 inline int CpObjectiveProto::_internal_coeffs_size() const {
9314  return coeffs_.size();
9315 }
9316 inline int CpObjectiveProto::coeffs_size() const {
9317  return _internal_coeffs_size();
9318 }
9320  coeffs_.Clear();
9321 }
9322 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::_internal_coeffs(int index) const {
9323  return coeffs_.Get(index);
9324 }
9325 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::coeffs(int index) const {
9326  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.coeffs)
9327  return _internal_coeffs(index);
9328 }
9329 inline void CpObjectiveProto::set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9330  coeffs_.Set(index, value);
9331  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.coeffs)
9332 }
9333 inline void CpObjectiveProto::_internal_add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
9334  coeffs_.Add(value);
9335 }
9336 inline void CpObjectiveProto::add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value) {
9337  _internal_add_coeffs(value);
9338  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.coeffs)
9339 }
9340 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9341 CpObjectiveProto::_internal_coeffs() const {
9342  return coeffs_;
9343 }
9344 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9346  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.coeffs)
9347  return _internal_coeffs();
9348 }
9349 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9350 CpObjectiveProto::_internal_mutable_coeffs() {
9351  return &coeffs_;
9352 }
9353 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9355  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.coeffs)
9356  return _internal_mutable_coeffs();
9357 }
9358 
9359 // double offset = 2;
9361  offset_ = 0;
9362 }
9363 inline double CpObjectiveProto::_internal_offset() const {
9364  return offset_;
9365 }
9366 inline double CpObjectiveProto::offset() const {
9367  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.offset)
9368  return _internal_offset();
9369 }
9370 inline void CpObjectiveProto::_internal_set_offset(double value) {
9371 
9372  offset_ = value;
9373 }
9374 inline void CpObjectiveProto::set_offset(double value) {
9375  _internal_set_offset(value);
9376  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.offset)
9377 }
9378 
9379 // double scaling_factor = 3;
9381  scaling_factor_ = 0;
9382 }
9383 inline double CpObjectiveProto::_internal_scaling_factor() const {
9384  return scaling_factor_;
9385 }
9386 inline double CpObjectiveProto::scaling_factor() const {
9387  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.scaling_factor)
9388  return _internal_scaling_factor();
9389 }
9390 inline void CpObjectiveProto::_internal_set_scaling_factor(double value) {
9391 
9392  scaling_factor_ = value;
9393 }
9394 inline void CpObjectiveProto::set_scaling_factor(double value) {
9395  _internal_set_scaling_factor(value);
9396  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.scaling_factor)
9397 }
9398 
9399 // repeated int64 domain = 5;
9400 inline int CpObjectiveProto::_internal_domain_size() const {
9401  return domain_.size();
9402 }
9403 inline int CpObjectiveProto::domain_size() const {
9404  return _internal_domain_size();
9405 }
9407  domain_.Clear();
9408 }
9409 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::_internal_domain(int index) const {
9410  return domain_.Get(index);
9411 }
9412 inline ::PROTOBUF_NAMESPACE_ID::int64 CpObjectiveProto::domain(int index) const {
9413  // @@protoc_insertion_point(field_get:operations_research.sat.CpObjectiveProto.domain)
9414  return _internal_domain(index);
9415 }
9416 inline void CpObjectiveProto::set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9417  domain_.Set(index, value);
9418  // @@protoc_insertion_point(field_set:operations_research.sat.CpObjectiveProto.domain)
9419 }
9420 inline void CpObjectiveProto::_internal_add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
9421  domain_.Add(value);
9422 }
9423 inline void CpObjectiveProto::add_domain(::PROTOBUF_NAMESPACE_ID::int64 value) {
9424  _internal_add_domain(value);
9425  // @@protoc_insertion_point(field_add:operations_research.sat.CpObjectiveProto.domain)
9426 }
9427 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9428 CpObjectiveProto::_internal_domain() const {
9429  return domain_;
9430 }
9431 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9433  // @@protoc_insertion_point(field_list:operations_research.sat.CpObjectiveProto.domain)
9434  return _internal_domain();
9435 }
9436 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9437 CpObjectiveProto::_internal_mutable_domain() {
9438  return &domain_;
9439 }
9440 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9442  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpObjectiveProto.domain)
9443  return _internal_mutable_domain();
9444 }
9445 
9446 // -------------------------------------------------------------------
9447 
9448 // DecisionStrategyProto_AffineTransformation
9449 
9450 // int32 var = 1;
9452  var_ = 0;
9453 }
9454 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto_AffineTransformation::_internal_var() const {
9455  return var_;
9456 }
9457 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto_AffineTransformation::var() const {
9458  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
9459  return _internal_var();
9460 }
9461 inline void DecisionStrategyProto_AffineTransformation::_internal_set_var(::PROTOBUF_NAMESPACE_ID::int32 value) {
9462 
9463  var_ = value;
9464 }
9465 inline void DecisionStrategyProto_AffineTransformation::set_var(::PROTOBUF_NAMESPACE_ID::int32 value) {
9466  _internal_set_var(value);
9467  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.var)
9468 }
9469 
9470 // int64 offset = 2;
9472  offset_ = PROTOBUF_LONGLONG(0);
9473 }
9474 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::_internal_offset() const {
9475  return offset_;
9476 }
9477 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::offset() const {
9478  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
9479  return _internal_offset();
9480 }
9481 inline void DecisionStrategyProto_AffineTransformation::_internal_set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
9482 
9483  offset_ = value;
9484 }
9485 inline void DecisionStrategyProto_AffineTransformation::set_offset(::PROTOBUF_NAMESPACE_ID::int64 value) {
9486  _internal_set_offset(value);
9487  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.offset)
9488 }
9489 
9490 // int64 positive_coeff = 3;
9492  positive_coeff_ = PROTOBUF_LONGLONG(0);
9493 }
9494 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::_internal_positive_coeff() const {
9495  return positive_coeff_;
9496 }
9497 inline ::PROTOBUF_NAMESPACE_ID::int64 DecisionStrategyProto_AffineTransformation::positive_coeff() const {
9498  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
9499  return _internal_positive_coeff();
9500 }
9501 inline void DecisionStrategyProto_AffineTransformation::_internal_set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value) {
9502 
9503  positive_coeff_ = value;
9504 }
9505 inline void DecisionStrategyProto_AffineTransformation::set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value) {
9506  _internal_set_positive_coeff(value);
9507  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.AffineTransformation.positive_coeff)
9508 }
9509 
9510 // -------------------------------------------------------------------
9511 
9512 // DecisionStrategyProto
9513 
9514 // repeated int32 variables = 1;
9515 inline int DecisionStrategyProto::_internal_variables_size() const {
9516  return variables_.size();
9517 }
9519  return _internal_variables_size();
9520 }
9522  variables_.Clear();
9523 }
9524 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto::_internal_variables(int index) const {
9525  return variables_.Get(index);
9526 }
9527 inline ::PROTOBUF_NAMESPACE_ID::int32 DecisionStrategyProto::variables(int index) const {
9528  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variables)
9529  return _internal_variables(index);
9530 }
9531 inline void DecisionStrategyProto::set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9532  variables_.Set(index, value);
9533  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variables)
9534 }
9535 inline void DecisionStrategyProto::_internal_add_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
9536  variables_.Add(value);
9537 }
9538 inline void DecisionStrategyProto::add_variables(::PROTOBUF_NAMESPACE_ID::int32 value) {
9539  _internal_add_variables(value);
9540  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.variables)
9541 }
9542 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9543 DecisionStrategyProto::_internal_variables() const {
9544  return variables_;
9545 }
9546 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9548  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.variables)
9549  return _internal_variables();
9550 }
9551 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9552 DecisionStrategyProto::_internal_mutable_variables() {
9553  return &variables_;
9554 }
9555 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9557  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.variables)
9558  return _internal_mutable_variables();
9559 }
9560 
9561 // .operations_research.sat.DecisionStrategyProto.VariableSelectionStrategy variable_selection_strategy = 2;
9563  variable_selection_strategy_ = 0;
9564 }
9565 inline ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto::_internal_variable_selection_strategy() const {
9566  return static_cast< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy >(variable_selection_strategy_);
9567 }
9569  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
9570  return _internal_variable_selection_strategy();
9571 }
9572 inline void DecisionStrategyProto::_internal_set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value) {
9573 
9574  variable_selection_strategy_ = value;
9575 }
9577  _internal_set_variable_selection_strategy(value);
9578  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.variable_selection_strategy)
9579 }
9580 
9581 // .operations_research.sat.DecisionStrategyProto.DomainReductionStrategy domain_reduction_strategy = 3;
9583  domain_reduction_strategy_ = 0;
9584 }
9585 inline ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto::_internal_domain_reduction_strategy() const {
9586  return static_cast< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy >(domain_reduction_strategy_);
9587 }
9589  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
9590  return _internal_domain_reduction_strategy();
9591 }
9592 inline void DecisionStrategyProto::_internal_set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value) {
9593 
9594  domain_reduction_strategy_ = value;
9595 }
9597  _internal_set_domain_reduction_strategy(value);
9598  // @@protoc_insertion_point(field_set:operations_research.sat.DecisionStrategyProto.domain_reduction_strategy)
9599 }
9600 
9601 // repeated .operations_research.sat.DecisionStrategyProto.AffineTransformation transformations = 4;
9602 inline int DecisionStrategyProto::_internal_transformations_size() const {
9603  return transformations_.size();
9604 }
9606  return _internal_transformations_size();
9607 }
9609  transformations_.Clear();
9610 }
9611 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::mutable_transformations(int index) {
9612  // @@protoc_insertion_point(field_mutable:operations_research.sat.DecisionStrategyProto.transformations)
9613  return transformations_.Mutable(index);
9614 }
9615 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >*
9617  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.DecisionStrategyProto.transformations)
9618  return &transformations_;
9619 }
9620 inline const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& DecisionStrategyProto::_internal_transformations(int index) const {
9621  return transformations_.Get(index);
9622 }
9623 inline const ::operations_research::sat::DecisionStrategyProto_AffineTransformation& DecisionStrategyProto::transformations(int index) const {
9624  // @@protoc_insertion_point(field_get:operations_research.sat.DecisionStrategyProto.transformations)
9625  return _internal_transformations(index);
9626 }
9627 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::_internal_add_transformations() {
9628  return transformations_.Add();
9629 }
9630 inline ::operations_research::sat::DecisionStrategyProto_AffineTransformation* DecisionStrategyProto::add_transformations() {
9631  // @@protoc_insertion_point(field_add:operations_research.sat.DecisionStrategyProto.transformations)
9632  return _internal_add_transformations();
9633 }
9634 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation >&
9636  // @@protoc_insertion_point(field_list:operations_research.sat.DecisionStrategyProto.transformations)
9637  return transformations_;
9638 }
9639 
9640 // -------------------------------------------------------------------
9641 
9642 // PartialVariableAssignment
9643 
9644 // repeated int32 vars = 1;
9645 inline int PartialVariableAssignment::_internal_vars_size() const {
9646  return vars_.size();
9647 }
9649  return _internal_vars_size();
9650 }
9652  vars_.Clear();
9653 }
9654 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::_internal_vars(int index) const {
9655  return vars_.Get(index);
9656 }
9657 inline ::PROTOBUF_NAMESPACE_ID::int32 PartialVariableAssignment::vars(int index) const {
9658  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.vars)
9659  return _internal_vars(index);
9660 }
9661 inline void PartialVariableAssignment::set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
9662  vars_.Set(index, value);
9663  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.vars)
9664 }
9665 inline void PartialVariableAssignment::_internal_add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9666  vars_.Add(value);
9667 }
9668 inline void PartialVariableAssignment::add_vars(::PROTOBUF_NAMESPACE_ID::int32 value) {
9669  _internal_add_vars(value);
9670  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.vars)
9671 }
9672 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9673 PartialVariableAssignment::_internal_vars() const {
9674  return vars_;
9675 }
9676 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
9678  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.vars)
9679  return _internal_vars();
9680 }
9681 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9682 PartialVariableAssignment::_internal_mutable_vars() {
9683  return &vars_;
9684 }
9685 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
9687  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.vars)
9688  return _internal_mutable_vars();
9689 }
9690 
9691 // repeated int64 values = 2;
9692 inline int PartialVariableAssignment::_internal_values_size() const {
9693  return values_.size();
9694 }
9696  return _internal_values_size();
9697 }
9699  values_.Clear();
9700 }
9701 inline ::PROTOBUF_NAMESPACE_ID::int64 PartialVariableAssignment::_internal_values(int index) const {
9702  return values_.Get(index);
9703 }
9704 inline ::PROTOBUF_NAMESPACE_ID::int64 PartialVariableAssignment::values(int index) const {
9705  // @@protoc_insertion_point(field_get:operations_research.sat.PartialVariableAssignment.values)
9706  return _internal_values(index);
9707 }
9708 inline void PartialVariableAssignment::set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
9709  values_.Set(index, value);
9710  // @@protoc_insertion_point(field_set:operations_research.sat.PartialVariableAssignment.values)
9711 }
9712 inline void PartialVariableAssignment::_internal_add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
9713  values_.Add(value);
9714 }
9715 inline void PartialVariableAssignment::add_values(::PROTOBUF_NAMESPACE_ID::int64 value) {
9716  _internal_add_values(value);
9717  // @@protoc_insertion_point(field_add:operations_research.sat.PartialVariableAssignment.values)
9718 }
9719 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9720 PartialVariableAssignment::_internal_values() const {
9721  return values_;
9722 }
9723 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
9725  // @@protoc_insertion_point(field_list:operations_research.sat.PartialVariableAssignment.values)
9726  return _internal_values();
9727 }
9728 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9729 PartialVariableAssignment::_internal_mutable_values() {
9730  return &values_;
9731 }
9732 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
9734  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.PartialVariableAssignment.values)
9735  return _internal_mutable_values();
9736 }
9737 
9738 // -------------------------------------------------------------------
9739 
9740 // CpModelProto
9741 
9742 // string name = 1;
9744  name_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9745 }
9746 inline const std::string& CpModelProto::name() const {
9747  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.name)
9748  return _internal_name();
9749 }
9750 inline void CpModelProto::set_name(const std::string& value) {
9751  _internal_set_name(value);
9752  // @@protoc_insertion_point(field_set:operations_research.sat.CpModelProto.name)
9753 }
9754 inline std::string* CpModelProto::mutable_name() {
9755  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.name)
9756  return _internal_mutable_name();
9757 }
9758 inline const std::string& CpModelProto::_internal_name() const {
9759  return name_.GetNoArena();
9760 }
9761 inline void CpModelProto::_internal_set_name(const std::string& value) {
9762 
9763  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
9764 }
9765 inline void CpModelProto::set_name(std::string&& value) {
9766 
9767  name_.SetNoArena(
9768  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
9769  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpModelProto.name)
9770 }
9771 inline void CpModelProto::set_name(const char* value) {
9772  GOOGLE_DCHECK(value != nullptr);
9773 
9774  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
9775  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpModelProto.name)
9776 }
9777 inline void CpModelProto::set_name(const char* value, size_t size) {
9778 
9779  name_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
9780  ::std::string(reinterpret_cast<const char*>(value), size));
9781  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpModelProto.name)
9782 }
9783 inline std::string* CpModelProto::_internal_mutable_name() {
9784 
9785  return name_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9786 }
9787 inline std::string* CpModelProto::release_name() {
9788  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.name)
9789 
9790  return name_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
9791 }
9792 inline void CpModelProto::set_allocated_name(std::string* name) {
9793  if (name != nullptr) {
9794 
9795  } else {
9796 
9797  }
9798  name_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), name);
9799  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.name)
9800 }
9801 
9802 // repeated .operations_research.sat.IntegerVariableProto variables = 2;
9803 inline int CpModelProto::_internal_variables_size() const {
9804  return variables_.size();
9805 }
9806 inline int CpModelProto::variables_size() const {
9807  return _internal_variables_size();
9808 }
9810  variables_.Clear();
9811 }
9812 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::mutable_variables(int index) {
9813  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.variables)
9814  return variables_.Mutable(index);
9815 }
9816 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
9818  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.variables)
9819  return &variables_;
9820 }
9821 inline const ::operations_research::sat::IntegerVariableProto& CpModelProto::_internal_variables(int index) const {
9822  return variables_.Get(index);
9823 }
9824 inline const ::operations_research::sat::IntegerVariableProto& CpModelProto::variables(int index) const {
9825  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.variables)
9826  return _internal_variables(index);
9827 }
9828 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::_internal_add_variables() {
9829  return variables_.Add();
9830 }
9831 inline ::operations_research::sat::IntegerVariableProto* CpModelProto::add_variables() {
9832  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.variables)
9833  return _internal_add_variables();
9834 }
9835 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
9837  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.variables)
9838  return variables_;
9839 }
9840 
9841 // repeated .operations_research.sat.ConstraintProto constraints = 3;
9842 inline int CpModelProto::_internal_constraints_size() const {
9843  return constraints_.size();
9844 }
9846  return _internal_constraints_size();
9847 }
9849  constraints_.Clear();
9850 }
9851 inline ::operations_research::sat::ConstraintProto* CpModelProto::mutable_constraints(int index) {
9852  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.constraints)
9853  return constraints_.Mutable(index);
9854 }
9855 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >*
9857  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.constraints)
9858  return &constraints_;
9859 }
9860 inline const ::operations_research::sat::ConstraintProto& CpModelProto::_internal_constraints(int index) const {
9861  return constraints_.Get(index);
9862 }
9863 inline const ::operations_research::sat::ConstraintProto& CpModelProto::constraints(int index) const {
9864  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.constraints)
9865  return _internal_constraints(index);
9866 }
9867 inline ::operations_research::sat::ConstraintProto* CpModelProto::_internal_add_constraints() {
9868  return constraints_.Add();
9869 }
9870 inline ::operations_research::sat::ConstraintProto* CpModelProto::add_constraints() {
9871  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.constraints)
9872  return _internal_add_constraints();
9873 }
9874 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto >&
9876  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.constraints)
9877  return constraints_;
9878 }
9879 
9880 // .operations_research.sat.CpObjectiveProto objective = 4;
9881 inline bool CpModelProto::_internal_has_objective() const {
9882  return this != internal_default_instance() && objective_ != nullptr;
9883 }
9884 inline bool CpModelProto::has_objective() const {
9885  return _internal_has_objective();
9886 }
9888  if (GetArenaNoVirtual() == nullptr && objective_ != nullptr) {
9889  delete objective_;
9890  }
9891  objective_ = nullptr;
9892 }
9893 inline const ::operations_research::sat::CpObjectiveProto& CpModelProto::_internal_objective() const {
9894  const ::operations_research::sat::CpObjectiveProto* p = objective_;
9895  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::CpObjectiveProto*>(
9897 }
9898 inline const ::operations_research::sat::CpObjectiveProto& CpModelProto::objective() const {
9899  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.objective)
9900  return _internal_objective();
9901 }
9902 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::release_objective() {
9903  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.objective)
9904 
9906  objective_ = nullptr;
9907  return temp;
9908 }
9909 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::_internal_mutable_objective() {
9910 
9911  if (objective_ == nullptr) {
9912  auto* p = CreateMaybeMessage<::operations_research::sat::CpObjectiveProto>(GetArenaNoVirtual());
9913  objective_ = p;
9914  }
9915  return objective_;
9916 }
9917 inline ::operations_research::sat::CpObjectiveProto* CpModelProto::mutable_objective() {
9918  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.objective)
9919  return _internal_mutable_objective();
9920 }
9922  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
9923  if (message_arena == nullptr) {
9924  delete objective_;
9925  }
9926  if (objective) {
9927  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
9928  if (message_arena != submessage_arena) {
9929  objective = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
9930  message_arena, objective, submessage_arena);
9931  }
9932 
9933  } else {
9934 
9935  }
9936  objective_ = objective;
9937  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.objective)
9938 }
9939 
9940 // repeated .operations_research.sat.DecisionStrategyProto search_strategy = 5;
9941 inline int CpModelProto::_internal_search_strategy_size() const {
9942  return search_strategy_.size();
9943 }
9945  return _internal_search_strategy_size();
9946 }
9948  search_strategy_.Clear();
9949 }
9950 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::mutable_search_strategy(int index) {
9951  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.search_strategy)
9952  return search_strategy_.Mutable(index);
9953 }
9954 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >*
9956  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.search_strategy)
9957  return &search_strategy_;
9958 }
9959 inline const ::operations_research::sat::DecisionStrategyProto& CpModelProto::_internal_search_strategy(int index) const {
9960  return search_strategy_.Get(index);
9961 }
9962 inline const ::operations_research::sat::DecisionStrategyProto& CpModelProto::search_strategy(int index) const {
9963  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.search_strategy)
9964  return _internal_search_strategy(index);
9965 }
9966 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::_internal_add_search_strategy() {
9967  return search_strategy_.Add();
9968 }
9969 inline ::operations_research::sat::DecisionStrategyProto* CpModelProto::add_search_strategy() {
9970  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.search_strategy)
9971  return _internal_add_search_strategy();
9972 }
9973 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto >&
9975  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.search_strategy)
9976  return search_strategy_;
9977 }
9978 
9979 // .operations_research.sat.PartialVariableAssignment solution_hint = 6;
9980 inline bool CpModelProto::_internal_has_solution_hint() const {
9981  return this != internal_default_instance() && solution_hint_ != nullptr;
9982 }
9983 inline bool CpModelProto::has_solution_hint() const {
9984  return _internal_has_solution_hint();
9985 }
9987  if (GetArenaNoVirtual() == nullptr && solution_hint_ != nullptr) {
9988  delete solution_hint_;
9989  }
9990  solution_hint_ = nullptr;
9991 }
9992 inline const ::operations_research::sat::PartialVariableAssignment& CpModelProto::_internal_solution_hint() const {
9993  const ::operations_research::sat::PartialVariableAssignment* p = solution_hint_;
9994  return p != nullptr ? *p : *reinterpret_cast<const ::operations_research::sat::PartialVariableAssignment*>(
9996 }
9997 inline const ::operations_research::sat::PartialVariableAssignment& CpModelProto::solution_hint() const {
9998  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.solution_hint)
9999  return _internal_solution_hint();
10000 }
10001 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::release_solution_hint() {
10002  // @@protoc_insertion_point(field_release:operations_research.sat.CpModelProto.solution_hint)
10003 
10005  solution_hint_ = nullptr;
10006  return temp;
10007 }
10008 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::_internal_mutable_solution_hint() {
10009 
10010  if (solution_hint_ == nullptr) {
10011  auto* p = CreateMaybeMessage<::operations_research::sat::PartialVariableAssignment>(GetArenaNoVirtual());
10012  solution_hint_ = p;
10013  }
10014  return solution_hint_;
10015 }
10016 inline ::operations_research::sat::PartialVariableAssignment* CpModelProto::mutable_solution_hint() {
10017  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpModelProto.solution_hint)
10018  return _internal_mutable_solution_hint();
10019 }
10021  ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaNoVirtual();
10022  if (message_arena == nullptr) {
10023  delete solution_hint_;
10024  }
10025  if (solution_hint) {
10026  ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena = nullptr;
10027  if (message_arena != submessage_arena) {
10028  solution_hint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
10029  message_arena, solution_hint, submessage_arena);
10030  }
10031 
10032  } else {
10033 
10034  }
10035  solution_hint_ = solution_hint;
10036  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpModelProto.solution_hint)
10037 }
10038 
10039 // repeated int32 assumptions = 7;
10040 inline int CpModelProto::_internal_assumptions_size() const {
10041  return assumptions_.size();
10042 }
10044  return _internal_assumptions_size();
10045 }
10047  assumptions_.Clear();
10048 }
10049 inline ::PROTOBUF_NAMESPACE_ID::int32 CpModelProto::_internal_assumptions(int index) const {
10050  return assumptions_.Get(index);
10051 }
10052 inline ::PROTOBUF_NAMESPACE_ID::int32 CpModelProto::assumptions(int index) const {
10053  // @@protoc_insertion_point(field_get:operations_research.sat.CpModelProto.assumptions)
10054  return _internal_assumptions(index);
10055 }
10056 inline void CpModelProto::set_assumptions(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
10057  assumptions_.Set(index, value);
10058  // @@protoc_insertion_point(field_set:operations_research.sat.CpModelProto.assumptions)
10059 }
10060 inline void CpModelProto::_internal_add_assumptions(::PROTOBUF_NAMESPACE_ID::int32 value) {
10061  assumptions_.Add(value);
10062 }
10063 inline void CpModelProto::add_assumptions(::PROTOBUF_NAMESPACE_ID::int32 value) {
10064  _internal_add_assumptions(value);
10065  // @@protoc_insertion_point(field_add:operations_research.sat.CpModelProto.assumptions)
10066 }
10067 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
10068 CpModelProto::_internal_assumptions() const {
10069  return assumptions_;
10070 }
10071 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
10073  // @@protoc_insertion_point(field_list:operations_research.sat.CpModelProto.assumptions)
10074  return _internal_assumptions();
10075 }
10076 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
10077 CpModelProto::_internal_mutable_assumptions() {
10078  return &assumptions_;
10079 }
10080 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
10082  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpModelProto.assumptions)
10083  return _internal_mutable_assumptions();
10084 }
10085 
10086 // -------------------------------------------------------------------
10087 
10088 // CpSolverResponse
10089 
10090 // .operations_research.sat.CpSolverStatus status = 1;
10092  status_ = 0;
10093 }
10094 inline ::operations_research::sat::CpSolverStatus CpSolverResponse::_internal_status() const {
10095  return static_cast< ::operations_research::sat::CpSolverStatus >(status_);
10096 }
10098  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.status)
10099  return _internal_status();
10100 }
10101 inline void CpSolverResponse::_internal_set_status(::operations_research::sat::CpSolverStatus value) {
10102 
10103  status_ = value;
10104 }
10106  _internal_set_status(value);
10107  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.status)
10108 }
10109 
10110 // repeated int64 solution = 2;
10111 inline int CpSolverResponse::_internal_solution_size() const {
10112  return solution_.size();
10113 }
10115  return _internal_solution_size();
10116 }
10118  solution_.Clear();
10119 }
10120 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution(int index) const {
10121  return solution_.Get(index);
10122 }
10123 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution(int index) const {
10124  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution)
10125  return _internal_solution(index);
10126 }
10127 inline void CpSolverResponse::set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10128  solution_.Set(index, value);
10129  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution)
10130 }
10131 inline void CpSolverResponse::_internal_add_solution(::PROTOBUF_NAMESPACE_ID::int64 value) {
10132  solution_.Add(value);
10133 }
10134 inline void CpSolverResponse::add_solution(::PROTOBUF_NAMESPACE_ID::int64 value) {
10135  _internal_add_solution(value);
10136  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution)
10137 }
10138 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10139 CpSolverResponse::_internal_solution() const {
10140  return solution_;
10141 }
10142 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10144  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution)
10145  return _internal_solution();
10146 }
10147 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10148 CpSolverResponse::_internal_mutable_solution() {
10149  return &solution_;
10150 }
10151 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10153  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution)
10154  return _internal_mutable_solution();
10155 }
10156 
10157 // double objective_value = 3;
10159  objective_value_ = 0;
10160 }
10161 inline double CpSolverResponse::_internal_objective_value() const {
10162  return objective_value_;
10163 }
10164 inline double CpSolverResponse::objective_value() const {
10165  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.objective_value)
10166  return _internal_objective_value();
10167 }
10168 inline void CpSolverResponse::_internal_set_objective_value(double value) {
10169 
10170  objective_value_ = value;
10171 }
10172 inline void CpSolverResponse::set_objective_value(double value) {
10173  _internal_set_objective_value(value);
10174  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.objective_value)
10175 }
10176 
10177 // double best_objective_bound = 4;
10179  best_objective_bound_ = 0;
10180 }
10181 inline double CpSolverResponse::_internal_best_objective_bound() const {
10182  return best_objective_bound_;
10183 }
10185  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.best_objective_bound)
10186  return _internal_best_objective_bound();
10187 }
10188 inline void CpSolverResponse::_internal_set_best_objective_bound(double value) {
10189 
10190  best_objective_bound_ = value;
10191 }
10193  _internal_set_best_objective_bound(value);
10194  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.best_objective_bound)
10195 }
10196 
10197 // repeated int64 solution_lower_bounds = 18;
10198 inline int CpSolverResponse::_internal_solution_lower_bounds_size() const {
10199  return solution_lower_bounds_.size();
10200 }
10202  return _internal_solution_lower_bounds_size();
10203 }
10205  solution_lower_bounds_.Clear();
10206 }
10207 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution_lower_bounds(int index) const {
10208  return solution_lower_bounds_.Get(index);
10209 }
10210 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_lower_bounds(int index) const {
10211  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10212  return _internal_solution_lower_bounds(index);
10213 }
10214 inline void CpSolverResponse::set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10215  solution_lower_bounds_.Set(index, value);
10216  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10217 }
10218 inline void CpSolverResponse::_internal_add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10219  solution_lower_bounds_.Add(value);
10220 }
10221 inline void CpSolverResponse::add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10222  _internal_add_solution_lower_bounds(value);
10223  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10224 }
10225 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10226 CpSolverResponse::_internal_solution_lower_bounds() const {
10227  return solution_lower_bounds_;
10228 }
10229 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10231  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10232  return _internal_solution_lower_bounds();
10233 }
10234 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10235 CpSolverResponse::_internal_mutable_solution_lower_bounds() {
10236  return &solution_lower_bounds_;
10237 }
10238 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10240  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_lower_bounds)
10241  return _internal_mutable_solution_lower_bounds();
10242 }
10243 
10244 // repeated int64 solution_upper_bounds = 19;
10245 inline int CpSolverResponse::_internal_solution_upper_bounds_size() const {
10246  return solution_upper_bounds_.size();
10247 }
10249  return _internal_solution_upper_bounds_size();
10250 }
10252  solution_upper_bounds_.Clear();
10253 }
10254 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_solution_upper_bounds(int index) const {
10255  return solution_upper_bounds_.Get(index);
10256 }
10257 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::solution_upper_bounds(int index) const {
10258  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10259  return _internal_solution_upper_bounds(index);
10260 }
10261 inline void CpSolverResponse::set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value) {
10262  solution_upper_bounds_.Set(index, value);
10263  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10264 }
10265 inline void CpSolverResponse::_internal_add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10266  solution_upper_bounds_.Add(value);
10267 }
10268 inline void CpSolverResponse::add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value) {
10269  _internal_add_solution_upper_bounds(value);
10270  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10271 }
10272 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10273 CpSolverResponse::_internal_solution_upper_bounds() const {
10274  return solution_upper_bounds_;
10275 }
10276 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >&
10278  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10279  return _internal_solution_upper_bounds();
10280 }
10281 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10282 CpSolverResponse::_internal_mutable_solution_upper_bounds() {
10283  return &solution_upper_bounds_;
10284 }
10285 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 >*
10287  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.solution_upper_bounds)
10288  return _internal_mutable_solution_upper_bounds();
10289 }
10290 
10291 // repeated .operations_research.sat.IntegerVariableProto tightened_variables = 21;
10292 inline int CpSolverResponse::_internal_tightened_variables_size() const {
10293  return tightened_variables_.size();
10294 }
10296  return _internal_tightened_variables_size();
10297 }
10299  tightened_variables_.Clear();
10300 }
10301 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::mutable_tightened_variables(int index) {
10302  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.tightened_variables)
10303  return tightened_variables_.Mutable(index);
10304 }
10305 inline ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >*
10307  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.tightened_variables)
10308  return &tightened_variables_;
10309 }
10310 inline const ::operations_research::sat::IntegerVariableProto& CpSolverResponse::_internal_tightened_variables(int index) const {
10311  return tightened_variables_.Get(index);
10312 }
10313 inline const ::operations_research::sat::IntegerVariableProto& CpSolverResponse::tightened_variables(int index) const {
10314  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.tightened_variables)
10315  return _internal_tightened_variables(index);
10316 }
10317 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::_internal_add_tightened_variables() {
10318  return tightened_variables_.Add();
10319 }
10320 inline ::operations_research::sat::IntegerVariableProto* CpSolverResponse::add_tightened_variables() {
10321  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.tightened_variables)
10322  return _internal_add_tightened_variables();
10323 }
10324 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto >&
10326  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.tightened_variables)
10327  return tightened_variables_;
10328 }
10329 
10330 // repeated int32 sufficient_assumptions_for_infeasibility = 23;
10331 inline int CpSolverResponse::_internal_sufficient_assumptions_for_infeasibility_size() const {
10332  return sufficient_assumptions_for_infeasibility_.size();
10333 }
10335  return _internal_sufficient_assumptions_for_infeasibility_size();
10336 }
10338  sufficient_assumptions_for_infeasibility_.Clear();
10339 }
10340 inline ::PROTOBUF_NAMESPACE_ID::int32 CpSolverResponse::_internal_sufficient_assumptions_for_infeasibility(int index) const {
10341  return sufficient_assumptions_for_infeasibility_.Get(index);
10342 }
10343 inline ::PROTOBUF_NAMESPACE_ID::int32 CpSolverResponse::sufficient_assumptions_for_infeasibility(int index) const {
10344  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.sufficient_assumptions_for_infeasibility)
10345  return _internal_sufficient_assumptions_for_infeasibility(index);
10346 }
10347 inline void CpSolverResponse::set_sufficient_assumptions_for_infeasibility(int index, ::PROTOBUF_NAMESPACE_ID::int32 value) {
10348  sufficient_assumptions_for_infeasibility_.Set(index, value);
10349  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.sufficient_assumptions_for_infeasibility)
10350 }
10351 inline void CpSolverResponse::_internal_add_sufficient_assumptions_for_infeasibility(::PROTOBUF_NAMESPACE_ID::int32 value) {
10352  sufficient_assumptions_for_infeasibility_.Add(value);
10353 }
10354 inline void CpSolverResponse::add_sufficient_assumptions_for_infeasibility(::PROTOBUF_NAMESPACE_ID::int32 value) {
10355  _internal_add_sufficient_assumptions_for_infeasibility(value);
10356  // @@protoc_insertion_point(field_add:operations_research.sat.CpSolverResponse.sufficient_assumptions_for_infeasibility)
10357 }
10358 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
10359 CpSolverResponse::_internal_sufficient_assumptions_for_infeasibility() const {
10360  return sufficient_assumptions_for_infeasibility_;
10361 }
10362 inline const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >&
10364  // @@protoc_insertion_point(field_list:operations_research.sat.CpSolverResponse.sufficient_assumptions_for_infeasibility)
10365  return _internal_sufficient_assumptions_for_infeasibility();
10366 }
10367 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
10368 CpSolverResponse::_internal_mutable_sufficient_assumptions_for_infeasibility() {
10369  return &sufficient_assumptions_for_infeasibility_;
10370 }
10371 inline ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 >*
10373  // @@protoc_insertion_point(field_mutable_list:operations_research.sat.CpSolverResponse.sufficient_assumptions_for_infeasibility)
10374  return _internal_mutable_sufficient_assumptions_for_infeasibility();
10375 }
10376 
10377 // bool all_solutions_were_found = 5;
10379  all_solutions_were_found_ = false;
10380 }
10381 inline bool CpSolverResponse::_internal_all_solutions_were_found() const {
10382  return all_solutions_were_found_;
10383 }
10385  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.all_solutions_were_found)
10386  return _internal_all_solutions_were_found();
10387 }
10388 inline void CpSolverResponse::_internal_set_all_solutions_were_found(bool value) {
10389 
10390  all_solutions_were_found_ = value;
10391 }
10393  _internal_set_all_solutions_were_found(value);
10394  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.all_solutions_were_found)
10395 }
10396 
10397 // int64 num_booleans = 10;
10399  num_booleans_ = PROTOBUF_LONGLONG(0);
10400 }
10401 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_booleans() const {
10402  return num_booleans_;
10403 }
10404 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_booleans() const {
10405  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_booleans)
10406  return _internal_num_booleans();
10407 }
10408 inline void CpSolverResponse::_internal_set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value) {
10409 
10410  num_booleans_ = value;
10411 }
10412 inline void CpSolverResponse::set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value) {
10413  _internal_set_num_booleans(value);
10414  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_booleans)
10415 }
10416 
10417 // int64 num_conflicts = 11;
10419  num_conflicts_ = PROTOBUF_LONGLONG(0);
10420 }
10421 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_conflicts() const {
10422  return num_conflicts_;
10423 }
10424 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_conflicts() const {
10425  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_conflicts)
10426  return _internal_num_conflicts();
10427 }
10428 inline void CpSolverResponse::_internal_set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
10429 
10430  num_conflicts_ = value;
10431 }
10432 inline void CpSolverResponse::set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value) {
10433  _internal_set_num_conflicts(value);
10434  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_conflicts)
10435 }
10436 
10437 // int64 num_branches = 12;
10439  num_branches_ = PROTOBUF_LONGLONG(0);
10440 }
10441 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_branches() const {
10442  return num_branches_;
10443 }
10444 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_branches() const {
10445  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_branches)
10446  return _internal_num_branches();
10447 }
10448 inline void CpSolverResponse::_internal_set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value) {
10449 
10450  num_branches_ = value;
10451 }
10452 inline void CpSolverResponse::set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value) {
10453  _internal_set_num_branches(value);
10454  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_branches)
10455 }
10456 
10457 // int64 num_binary_propagations = 13;
10459  num_binary_propagations_ = PROTOBUF_LONGLONG(0);
10460 }
10461 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_binary_propagations() const {
10462  return num_binary_propagations_;
10463 }
10464 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_binary_propagations() const {
10465  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_binary_propagations)
10466  return _internal_num_binary_propagations();
10467 }
10468 inline void CpSolverResponse::_internal_set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10469 
10470  num_binary_propagations_ = value;
10471 }
10472 inline void CpSolverResponse::set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10473  _internal_set_num_binary_propagations(value);
10474  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_binary_propagations)
10475 }
10476 
10477 // int64 num_integer_propagations = 14;
10479  num_integer_propagations_ = PROTOBUF_LONGLONG(0);
10480 }
10481 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::_internal_num_integer_propagations() const {
10482  return num_integer_propagations_;
10483 }
10484 inline ::PROTOBUF_NAMESPACE_ID::int64 CpSolverResponse::num_integer_propagations() const {
10485  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.num_integer_propagations)
10486  return _internal_num_integer_propagations();
10487 }
10488 inline void CpSolverResponse::_internal_set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10489 
10490  num_integer_propagations_ = value;
10491 }
10492 inline void CpSolverResponse::set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value) {
10493  _internal_set_num_integer_propagations(value);
10494  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.num_integer_propagations)
10495 }
10496 
10497 // double wall_time = 15;
10499  wall_time_ = 0;
10500 }
10501 inline double CpSolverResponse::_internal_wall_time() const {
10502  return wall_time_;
10503 }
10504 inline double CpSolverResponse::wall_time() const {
10505  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.wall_time)
10506  return _internal_wall_time();
10507 }
10508 inline void CpSolverResponse::_internal_set_wall_time(double value) {
10509 
10510  wall_time_ = value;
10511 }
10512 inline void CpSolverResponse::set_wall_time(double value) {
10513  _internal_set_wall_time(value);
10514  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.wall_time)
10515 }
10516 
10517 // double user_time = 16;
10519  user_time_ = 0;
10520 }
10521 inline double CpSolverResponse::_internal_user_time() const {
10522  return user_time_;
10523 }
10524 inline double CpSolverResponse::user_time() const {
10525  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.user_time)
10526  return _internal_user_time();
10527 }
10528 inline void CpSolverResponse::_internal_set_user_time(double value) {
10529 
10530  user_time_ = value;
10531 }
10532 inline void CpSolverResponse::set_user_time(double value) {
10533  _internal_set_user_time(value);
10534  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.user_time)
10535 }
10536 
10537 // double deterministic_time = 17;
10539  deterministic_time_ = 0;
10540 }
10541 inline double CpSolverResponse::_internal_deterministic_time() const {
10542  return deterministic_time_;
10543 }
10545  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.deterministic_time)
10546  return _internal_deterministic_time();
10547 }
10548 inline void CpSolverResponse::_internal_set_deterministic_time(double value) {
10549 
10550  deterministic_time_ = value;
10551 }
10552 inline void CpSolverResponse::set_deterministic_time(double value) {
10553  _internal_set_deterministic_time(value);
10554  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.deterministic_time)
10555 }
10556 
10557 // double primal_integral = 22;
10559  primal_integral_ = 0;
10560 }
10561 inline double CpSolverResponse::_internal_primal_integral() const {
10562  return primal_integral_;
10563 }
10564 inline double CpSolverResponse::primal_integral() const {
10565  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.primal_integral)
10566  return _internal_primal_integral();
10567 }
10568 inline void CpSolverResponse::_internal_set_primal_integral(double value) {
10569 
10570  primal_integral_ = value;
10571 }
10572 inline void CpSolverResponse::set_primal_integral(double value) {
10573  _internal_set_primal_integral(value);
10574  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.primal_integral)
10575 }
10576 
10577 // string solution_info = 20;
10579  solution_info_.ClearToEmptyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10580 }
10581 inline const std::string& CpSolverResponse::solution_info() const {
10582  // @@protoc_insertion_point(field_get:operations_research.sat.CpSolverResponse.solution_info)
10583  return _internal_solution_info();
10584 }
10585 inline void CpSolverResponse::set_solution_info(const std::string& value) {
10586  _internal_set_solution_info(value);
10587  // @@protoc_insertion_point(field_set:operations_research.sat.CpSolverResponse.solution_info)
10588 }
10590  // @@protoc_insertion_point(field_mutable:operations_research.sat.CpSolverResponse.solution_info)
10591  return _internal_mutable_solution_info();
10592 }
10593 inline const std::string& CpSolverResponse::_internal_solution_info() const {
10594  return solution_info_.GetNoArena();
10595 }
10596 inline void CpSolverResponse::_internal_set_solution_info(const std::string& value) {
10597 
10598  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), value);
10599 }
10600 inline void CpSolverResponse::set_solution_info(std::string&& value) {
10601 
10602  solution_info_.SetNoArena(
10603  &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::move(value));
10604  // @@protoc_insertion_point(field_set_rvalue:operations_research.sat.CpSolverResponse.solution_info)
10605 }
10606 inline void CpSolverResponse::set_solution_info(const char* value) {
10607  GOOGLE_DCHECK(value != nullptr);
10608 
10609  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), ::std::string(value));
10610  // @@protoc_insertion_point(field_set_char:operations_research.sat.CpSolverResponse.solution_info)
10611 }
10612 inline void CpSolverResponse::set_solution_info(const char* value, size_t size) {
10613 
10614  solution_info_.SetNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
10615  ::std::string(reinterpret_cast<const char*>(value), size));
10616  // @@protoc_insertion_point(field_set_pointer:operations_research.sat.CpSolverResponse.solution_info)
10617 }
10618 inline std::string* CpSolverResponse::_internal_mutable_solution_info() {
10619 
10620  return solution_info_.MutableNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10621 }
10623  // @@protoc_insertion_point(field_release:operations_research.sat.CpSolverResponse.solution_info)
10624 
10625  return solution_info_.ReleaseNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
10626 }
10627 inline void CpSolverResponse::set_allocated_solution_info(std::string* solution_info) {
10628  if (solution_info != nullptr) {
10629 
10630  } else {
10631 
10632  }
10633  solution_info_.SetAllocatedNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(), solution_info);
10634  // @@protoc_insertion_point(field_set_allocated:operations_research.sat.CpSolverResponse.solution_info)
10635 }
10636 
10637 #ifdef __GNUC__
10638  #pragma GCC diagnostic pop
10639 #endif // __GNUC__
10640 // -------------------------------------------------------------------
10641 
10642 // -------------------------------------------------------------------
10643 
10644 // -------------------------------------------------------------------
10645 
10646 // -------------------------------------------------------------------
10647 
10648 // -------------------------------------------------------------------
10649 
10650 // -------------------------------------------------------------------
10651 
10652 // -------------------------------------------------------------------
10653 
10654 // -------------------------------------------------------------------
10655 
10656 // -------------------------------------------------------------------
10657 
10658 // -------------------------------------------------------------------
10659 
10660 // -------------------------------------------------------------------
10661 
10662 // -------------------------------------------------------------------
10663 
10664 // -------------------------------------------------------------------
10665 
10666 // -------------------------------------------------------------------
10667 
10668 // -------------------------------------------------------------------
10669 
10670 // -------------------------------------------------------------------
10671 
10672 // -------------------------------------------------------------------
10673 
10674 // -------------------------------------------------------------------
10675 
10676 // -------------------------------------------------------------------
10677 
10678 // -------------------------------------------------------------------
10679 
10680 // -------------------------------------------------------------------
10681 
10682 // -------------------------------------------------------------------
10683 
10684 // -------------------------------------------------------------------
10685 
10686 // -------------------------------------------------------------------
10687 
10688 // -------------------------------------------------------------------
10689 
10690 
10691 // @@protoc_insertion_point(namespace_scope)
10692 
10693 } // namespace sat
10694 } // namespace operations_research
10695 
10696 PROTOBUF_NAMESPACE_OPEN
10697 
10698 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy> : ::std::true_type {};
10699 template <>
10700 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy>() {
10702 }
10703 template <> struct is_proto_enum< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy> : ::std::true_type {};
10704 template <>
10705 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy>() {
10707 }
10708 template <> struct is_proto_enum< ::operations_research::sat::CpSolverStatus> : ::std::true_type {};
10709 template <>
10710 inline const EnumDescriptor* GetEnumDescriptor< ::operations_research::sat::CpSolverStatus>() {
10712 }
10713 
10714 PROTOBUF_NAMESPACE_CLOSE
10715 
10716 // @@protoc_insertion_point(global_scope)
10717 
10718 #include <google/protobuf/port_undef.inc>
10719 #endif // GOOGLE_PROTOBUF_INCLUDED_GOOGLE_PROTOBUF_INCLUDED_ortools_2fsat_2fcp_5fmodel_2eproto
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CumulativeConstraintProto & operator=(const CumulativeConstraintProto &from)
Definition: cp_model.pb.h:2024
const std::string & CpSolverStatus_Name(T enum_t_value)
Definition: cp_model.pb.h:243
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_starting_state(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7651
void set_allocated_no_overlap_2d(::operations_research::sat::NoOverlap2DConstraintProto *no_overlap_2d)
void set_allocated_element(::operations_research::sat::ElementConstraintProto *element)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1211
void clear_transformations()
Definition: cp_model.pb.h:9608
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:7886
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::IntegerArgumentProto * release_int_prod()
Definition: cp_model.pb.h:8518
::operations_research::sat::CpObjectiveProto * mutable_objective()
Definition: cp_model.pb.h:9917
Definition: cp_model.pb.h:178
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & assumptions() const
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:6724
Definition: cp_model.pb.h:2296
std::string * release_name()
Definition: cp_model.pb.h:9787
static bool DomainReductionStrategy_IsValid(int value)
Definition: cp_model.pb.h:4754
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: cp_model.pb.h:2704
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3016
void set_allocated_int_max(::operations_research::sat::IntegerArgumentProto *int_max)
static const ReservoirConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > & variables() const
Definition: cp_model.pb.h:9836
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:7945
void clear_status()
void clear_all_diff()
Definition: cp_model.pb.h:8612
ReservoirConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2248
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & final_states() const
Definition: cp_model.pb.h:7689
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3019
LinearExpressionProto * New() const final
Definition: cp_model.pb.h:766
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:5857
void set_all_solutions_were_found(bool value)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: cp_model.pb.h:5398
virtual ~IntervalConstraintProto()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_enforcement_literal()
Definition: cp_model.pb.h:7997
int GetCachedSize() const final
Definition: cp_model.pb.h:1258
Definition: cp_model.pb.h:3749
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static void InitAsDefaultInstance()
LinearExpressionProto & operator=(const LinearExpressionProto &from)
Definition: cp_model.pb.h:724
Definition: cp_model.pb.h:4559
std::string * release_name()
Definition: cp_model.pb.h:5733
static void InitAsDefaultInstance()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4348
Definition: cp_model.pb.h:4347
virtual ~LinearConstraintProto()
const ::operations_research::sat::IntegerArgumentProto & int_mod() const
Definition: cp_model.pb.h:8284
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6304
Definition: cp_model.pb.h:1542
void clear_num_integer_propagations()
static bool DomainReductionStrategy_Parse(const std::string &name, DomainReductionStrategy *value)
Definition: cp_model.pb.h:4774
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3197
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_lower_bounds() const
const ::operations_research::sat::BoolArgumentProto & bool_or() const
Definition: cp_model.pb.h:8034
void clear_linear()
Definition: cp_model.pb.h:8562
void clear_name()
Definition: cp_model.pb.h:9743
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1072
int actives_size() const
Definition: cp_model.pb.h:6918
static void InitAsDefaultInstance()
void clear_final_states()
Definition: cp_model.pb.h:7663
bool DecisionStrategyProto_VariableSelectionStrategy_Parse(const std::string &name, DecisionStrategyProto_VariableSelectionStrategy *value)
Definition: cp_model.pb.h:194
static constexpr DomainReductionStrategy SELECT_MAX_VALUE
Definition: cp_model.pb.h:4746
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > * mutable_constraints()
Definition: cp_model.pb.h:9856
Definition: cp_model.pb.h:2298
ElementConstraintProto & operator=(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1394
LinearConstraintProto * New() const final
Definition: cp_model.pb.h:1240
BoolArgumentProto()
DecisionStrategyProto_AffineTransformationDefaultTypeInternal _DecisionStrategyProto_AffineTransformation_default_instance_
::PROTOBUF_NAMESPACE_ID::int32 size() const
Definition: cp_model.pb.h:6476
int enforcement_literal_size() const
Definition: cp_model.pb.h:7959
void Swap(InverseConstraintProto *other)
Definition: cp_model.pb.h:3216
static void InitAsDefaultInstance()
int vars_size() const
Definition: cp_model.pb.h:9648
LinearExpressionProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:770
friend void swap(LinearArgumentProto &a, LinearArgumentProto &b)
Definition: cp_model.pb.h:934
Definition: cp_model.pb.h:230
void clear_solution_upper_bounds()
IntegerVariableProto * New() const final
Definition: cp_model.pb.h:311
static void InitAsDefaultInstance()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:7054
void clear_y_intervals()
Definition: cp_model.pb.h:6598
void set_end(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6464
virtual ~CpObjectiveProto()
Definition: cp_model.pb.h:2702
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static void InitAsDefaultInstance()
int coeffs_size() const
Definition: cp_model.pb.h:5972
int solution_lower_bounds_size() const
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool has_lin_max() const
Definition: cp_model.pb.h:8356
void clear_literals()
Definition: cp_model.pb.h:7211
void set_allocated_interval(::operations_research::sat::IntervalConstraintProto *interval)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2849
InverseConstraintProtoDefaultTypeInternal _InverseConstraintProto_default_instance_
CircuitConstraintProto()
void Swap(AllDifferentConstraintProto *other)
Definition: cp_model.pb.h:1091
::operations_research::sat::PartialVariableAssignment * release_solution_hint()
static const CpObjectiveProto * internal_default_instance()
Definition: cp_model.pb.h:4275
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:9307
CpObjectiveProto(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:4245
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_VariableSelectionStrategy_descriptor()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3364
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_lower_bounds()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_size()
Definition: cp_model.pb.h:6470
friend void swap(CumulativeConstraintProto &a, CumulativeConstraintProto &b)
Definition: cp_model.pb.h:2056
NoOverlapConstraintProto * New() const final
Definition: cp_model.pb.h:1746
Definition: cp_model.pb.h:712
void clear_target()
Definition: cp_model.pb.h:5851
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_x_intervals()
Definition: cp_model.pb.h:6586
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
Definition: cp_model.pb.h:2012
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7029
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7127
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6746
LinearExpressionProto(LinearExpressionProto &&from) noexcept
Definition: cp_model.pb.h:719
bool has_int_prod() const
Definition: cp_model.pb.h:8506
const ::operations_research::sat::CircuitCoveringConstraintProto & circuit_covering() const
Definition: cp_model.pb.h:8834
Definition: cp_model.pb.h:3336
void clear_transition_label()
Definition: cp_model.pb.h:7804
int GetCachedSize() const final
Definition: cp_model.pb.h:1764
BoolArgumentProto & operator=(const BoolArgumentProto &from)
Definition: cp_model.pb.h:429
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:9686
Definition: cp_model.pb.h:3725
NoOverlapConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1750
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & x_intervals() const
Definition: cp_model.pb.h:6577
::operations_research::sat::RoutesConstraintProto * mutable_routes()
Definition: cp_model.pb.h:8797
Definition: cp_model.pb.h:3748
bool has_all_diff() const
Definition: cp_model.pb.h:8606
void clear_int_min()
Definition: cp_model.pb.h:8412
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:172
bool IsInitialized() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1573
bool IsInitialized() const final
void set_allocated_reservoir(::operations_research::sat::ReservoirConstraintProto *reservoir)
CpSolverResponse & operator=(const CpSolverResponse &from)
Definition: cp_model.pb.h:5293
bool IsInitialized() const final
void add_y_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6615
Definition: cp_model.pb.h:5397
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:3442
const ::operations_research::sat::NoOverlap2DConstraintProto & no_overlap_2d() const
Definition: cp_model.pb.h:9184
int assumptions_size() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static void InitAsDefaultInstance()
void clear_heads()
Definition: cp_model.pb.h:7164
int domain_size() const
Definition: cp_model.pb.h:6291
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
int values_size() const
Definition: cp_model.pb.h:7471
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:5841
Definition: cp_model.pb.h:3733
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > & exprs() const
Definition: cp_model.pb.h:6133
void clear_offset()
Definition: cp_model.pb.h:6016
static const ElementConstraintProto & default_instance()
int heads_size() const
Definition: cp_model.pb.h:7016
Definition: cp_model.pb.h:3276
PartialVariableAssignment()
::operations_research::sat::CircuitCoveringConstraintProto * mutable_circuit_covering()
Definition: cp_model.pb.h:8847
CircuitConstraintProto(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2411
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::ElementConstraintProto * release_element()
Definition: cp_model.pb.h:8668
void clear_index()
Definition: cp_model.pb.h:6339
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto * New() const final
Definition: cp_model.pb.h:1596
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:5738
AllDifferentConstraintProto * New() const final
Definition: cp_model.pb.h:1098
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:9298
AutomatonConstraintProto & operator=(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3352
bool has_cumulative() const
Definition: cp_model.pb.h:9206
void clear_positive_coeff()
Definition: cp_model.pb.h:9491
Definition: cp_model.pb.h:3631
int solution_size() const
RoutesConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2654
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6510
static constexpr DomainReductionStrategy DomainReductionStrategy_MIN
Definition: cp_model.pb.h:4757
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
double deterministic_time() const
static const CpSolverResponse & default_instance()
bool has_circuit_covering() const
Definition: cp_model.pb.h:8806
static bool VariableSelectionStrategy_IsValid(int value)
Definition: cp_model.pb.h:4718
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3377
ElementConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1436
size_t ByteSizeLong() const final
void Swap(IntegerArgumentProto *other)
Definition: cp_model.pb.h:606
int tails_size() const
Definition: cp_model.pb.h:7114
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:7152
Definition: cp_model.pb.h:3650
void set_allocated_at_most_one(::operations_research::sat::BoolArgumentProto *at_most_one)
void set_target(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5865
AutomatonConstraintProto * New() const final
Definition: cp_model.pb.h:3390
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4266
Definition: cp_model.pb.h:818
PartialVariableAssignment & operator=(const PartialVariableAssignment &from)
Definition: cp_model.pb.h:4872
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4483
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9289
Definition: cp_model.pb.h:3644
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void add_demands(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6891
PartialVariableAssignment & operator=(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:4876
int final_states_size() const
Definition: cp_model.pb.h:7660
LinearConstraintProtoDefaultTypeInternal _LinearConstraintProto_default_instance_
PartialVariableAssignment * New() const final
Definition: cp_model.pb.h:4914
void clear_tails()
Definition: cp_model.pb.h:7117
Definition: cp_model.pb.h:1940
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
bool has_bool_and() const
Definition: cp_model.pb.h:8056
void add_transition_head(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7774
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6411
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:6762
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:3731
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2053
DecisionStrategyProto * New() const final
Definition: cp_model.pb.h:4656
Definition: cp_model.pb.h:890
int vars_size() const
Definition: cp_model.pb.h:6382
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy variable_selection_strategy() const
Definition: cp_model.pb.h:9568
static const LinearConstraintProto & default_instance()
TableConstraintProto & operator=(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3007
DecisionStrategyProto_DomainReductionStrategy
Definition: cp_model.pb.h:199
void clear_heads()
Definition: cp_model.pb.h:7019
NoOverlap2DConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1892
static constexpr int VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:4725
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void Swap(CpModelProto *other)
Definition: cp_model.pb.h:5074
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_tails(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6982
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > & search_strategy() const
Definition: cp_model.pb.h:9974
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::IntegerArgumentProto * mutable_int_mod()
Definition: cp_model.pb.h:8297
CircuitCoveringConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2882
void clear_f_inverse()
Definition: cp_model.pb.h:7592
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void add_distinguished_nodes(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7393
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void Swap(CircuitCoveringConstraintProto *other)
Definition: cp_model.pb.h:2871
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:5391
void clear_values()
Definition: cp_model.pb.h:9698
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3210
double primal_integral() const
Definition: cp_model.pb.h:2119
ReservoirConstraintProto()
int coeffs_size() const
Definition: cp_model.pb.h:9316
int GetCachedSize() const final
Definition: cp_model.pb.h:489
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_label() const
Definition: cp_model.pb.h:7830
static constexpr VariableSelectionStrategy CHOOSE_MAX_DOMAIN_SIZE
Definition: cp_model.pb.h:4716
void clear_bool_and()
Definition: cp_model.pb.h:8062
Definition: cp_model.pb.h:229
::operations_research::sat::ReservoirConstraintProto * mutable_reservoir()
Definition: cp_model.pb.h:9047
static const LinearExpressionProto * internal_default_instance()
Definition: cp_model.pb.h:749
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > & tightened_variables() const
Definition: cp_model.pb.h:3640
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int intervals_size() const
Definition: cp_model.pb.h:6497
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:8406
Definition: cp_model.pb.h:1485
::operations_research::sat::BoolArgumentProto * release_bool_xor()
Definition: cp_model.pb.h:8168
void clear_automaton()
Definition: cp_model.pb.h:8912
::operations_research::sat::LinearArgumentProto * release_lin_min()
Definition: cp_model.pb.h:8468
LinearArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:948
::operations_research::sat::IntervalConstraintProto * release_interval()
Definition: cp_model.pb.h:9068
int exprs_size() const
Definition: cp_model.pb.h:6103
RoutesConstraintProto & operator=(const RoutesConstraintProto &from)
Definition: cp_model.pb.h:2608
std::string * mutable_name()
Definition: cp_model.pb.h:5700
bool boxes_with_null_area_can_overlap() const
Definition: cp_model.pb.h:6645
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int32 index() const
Definition: cp_model.pb.h:6345
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1723
NoOverlap2DConstraintProto & operator=(const NoOverlap2DConstraintProto &from)
Definition: cp_model.pb.h:1846
int GetCachedSize() const final
Definition: cp_model.pb.h:3408
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1865
int solution_upper_bounds_size() const
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: cp_model.pb.h:3633
void set_allocated_linear(::operations_research::sat::LinearConstraintProto *linear)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static constexpr VariableSelectionStrategy CHOOSE_HIGHEST_MAX
Definition: cp_model.pb.h:4712
static void InitAsDefaultInstance()
void set_allocated_int_prod(::operations_research::sat::IntegerArgumentProto *int_prod)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:442
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6264
Definition: cp_model.pb.h:1378
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7181
Definition: cp_model.pb.h:2297
BoolArgumentProto & operator=(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:433
friend void swap(AllDifferentConstraintProto &a, AllDifferentConstraintProto &b)
Definition: cp_model.pb.h:1088
Definition: cp_model.pb.h:3632
::PROTOBUF_NAMESPACE_ID::int32 var() const
Definition: cp_model.pb.h:9457
AutomatonConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3022
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6989
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * CpSolverStatus_descriptor()
static const CpModelProto & default_instance()
Definition: cp_model.pb.h:3750
Definition: cp_model.pb.h:5396
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2445
::operations_research::sat::CumulativeConstraintProto * mutable_cumulative()
Definition: cp_model.pb.h:9247
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
RoutesConstraintProto & operator=(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2612
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4279
Definition: cp_model.pb.h:2404
Definition: cp_model.pb.h:3745
DecisionStrategyProto_AffineTransformation & operator=(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:4468
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:9733
::PROTOBUF_NAMESPACE_ID::int32 capacity() const
Definition: cp_model.pb.h:6669
bool has_int_mod() const
Definition: cp_model.pb.h:8256
const ::operations_research::sat::LinearArgumentProto & lin_min() const
Definition: cp_model.pb.h:8484
void set_num_conflicts(::PROTOBUF_NAMESPACE_ID::int64 value)
CircuitCoveringConstraintProto(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2831
void set_boxes_with_null_area_can_overlap(bool value)
Definition: cp_model.pb.h:6653
static const CircuitConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2441
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:1692
void set_solution_info(const std::string &value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:753
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::LinearExpressionProto > * mutable_exprs()
Definition: cp_model.pb.h:6114
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5938
void Swap(LinearConstraintProto *other)
Definition: cp_model.pb.h:1233
CircuitCoveringConstraintProto & operator=(const CircuitCoveringConstraintProto &from)
Definition: cp_model.pb.h:2836
void clear_num_booleans()
void set_allocated_all_diff(::operations_research::sat::AllDifferentConstraintProto *all_diff)
virtual ~NoOverlap2DConstraintProto()
CpObjectiveProto()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:298
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:7246
LinearConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1244
const ::operations_research::sat::TableConstraintProto & table() const
Definition: cp_model.pb.h:8884
::operations_research::sat::LinearArgumentProto * mutable_lin_max()
Definition: cp_model.pb.h:8397
static void InitAsDefaultInstance()
bool has_objective() const
Definition: cp_model.pb.h:9884
void add_f_direct(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7562
bool CpSolverStatus_IsValid(int value)
friend void swap(NoOverlap2DConstraintProto &a, NoOverlap2DConstraintProto &b)
Definition: cp_model.pb.h:1878
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_assumptions()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
int GetCachedSize() const final
Definition: cp_model.pb.h:4524
const ::operations_research::sat::AllDifferentConstraintProto & all_diff() const
Definition: cp_model.pb.h:8634
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:5068
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::int64 positive_coeff() const
Definition: cp_model.pb.h:9497
CpModelProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:5085
ConstraintCase
Definition: cp_model.pb.h:3625
virtual ~CpSolverResponse()
CpSolverResponse & operator=(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:5297
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void clear_best_objective_bound()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_label()
Definition: cp_model.pb.h:7839
void clear_target()
Definition: cp_model.pb.h:6046
void clear_all_solutions_were_found()
Definition: cp_model.pb.h:3729
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:740
AllDifferentConstraintProtoDefaultTypeInternal _AllDifferentConstraintProto_default_instance_
void set_transition_tail(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7720
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:5903
int GetCachedSize() const final
Definition: cp_model.pb.h:4310
Definition: cp_model.pb.h:3626
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1217
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::operations_research::sat::IntegerArgumentProto & int_div() const
Definition: cp_model.pb.h:8234
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
BoolArgumentProto(BoolArgumentProto &&from) noexcept
Definition: cp_model.pb.h:424
int GetCachedSize() const final
Definition: cp_model.pb.h:1116
Definition: cp_model.pb.h:3097
::operations_research::sat::BoolArgumentProto * mutable_bool_and()
Definition: cp_model.pb.h:8097
bool IsInitialized() const final
AllDifferentConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1102
Definition: cp_model.pb.h:5390
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1583
void set_allocated_target(::operations_research::sat::LinearExpressionProto *target)
Definition: cp_model.pb.h:6080
size_t ByteSizeLong() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & y_intervals() const
Definition: cp_model.pb.h:6624
Definition: cp_model.pb.h:3648
CpSolverResponse(CpSolverResponse &&from) noexcept
Definition: cp_model.pb.h:5288
const ::operations_research::sat::PartialVariableAssignment & solution_hint() const
Definition: cp_model.pb.h:9997
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:743
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5887
size_t ByteSizeLong() const final
int demands_size() const
Definition: cp_model.pb.h:6733
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4263
Definition: cp_model.pb.h:3726
friend void swap(NoOverlapConstraintProto &a, NoOverlapConstraintProto &b)
Definition: cp_model.pb.h:1736
static const IntervalConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1579
int tightened_variables_size() const
int GetCachedSize() const final
Definition: cp_model.pb.h:1906
NoOverlap2DConstraintProtoDefaultTypeInternal _NoOverlap2DConstraintProto_default_instance_
bool has_lin_min() const
Definition: cp_model.pb.h:8456
Definition: cp_model.pb.h:5403
void clear_circuit_covering()
Definition: cp_model.pb.h:8812
const ::operations_research::sat::LinearArgumentProto & lin_max() const
Definition: cp_model.pb.h:8384
void clear_domain_reduction_strategy()
Definition: cp_model.pb.h:9582
void clear_intervals()
Definition: cp_model.pb.h:6689
static const IntegerVariableProto * internal_default_instance()
Definition: cp_model.pb.h:294
void set_capacity(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6677
void clear_num_binary_propagations()
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2637
bool has_bool_xor() const
Definition: cp_model.pb.h:8156
Definition: cp_model.h:52
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9668
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & demands() const
Definition: cp_model.pb.h:6900
CpModelProto * New() const final
Definition: cp_model.pb.h:5081
bool IsInitialized() const final
static const InverseConstraintProto & default_instance()
friend void swap(DecisionStrategyProto_AffineTransformation &a, DecisionStrategyProto_AffineTransformation &b)
Definition: cp_model.pb.h:4496
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_allocated_inverse(::operations_research::sat::InverseConstraintProto *inverse)
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9416
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:6715
void Swap(CumulativeConstraintProto *other)
Definition: cp_model.pb.h:2059
bool IsInitialized() const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:5954
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_distinguished_nodes()
Definition: cp_model.pb.h:7411
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
IntegerArgumentProto & operator=(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:575
CpModelProto & operator=(const CpModelProto &from)
Definition: cp_model.pb.h:5039
NoOverlap2DConstraintProto * New() const final
Definition: cp_model.pb.h:1888
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:7462
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6311
bool IsInitialized() const final
void clear_variables()
Definition: cp_model.pb.h:9809
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:590
static const IntegerArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:596
virtual ~BoolArgumentProto()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:5306
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:7143
int GetCachedSize() const final
Definition: cp_model.pb.h:962
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:4558
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1085
virtual ~DecisionStrategyProto_AffineTransformation()
static void InitAsDefaultInstance()
void clear_name()
Definition: cp_model.pb.h:5689
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const ReservoirConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2227
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
ReservoirConstraintProto & operator=(const ReservoirConstraintProto &from)
Definition: cp_model.pb.h:2202
NoOverlap2DConstraintProto()
int GetCachedSize() const final
Definition: cp_model.pb.h:1614
static const CumulativeConstraintProto & default_instance()
Definition: cp_model.pb.h:666
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_tails()
Definition: cp_model.pb.h:7007
IntegerVariableProto(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:264
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution()
LinearExpressionProtoDefaultTypeInternal _LinearExpressionProto_default_instance_
void clear_solution_lower_bounds()
int tails_size() const
Definition: cp_model.pb.h:6969
int variables_size() const
Definition: cp_model.pb.h:9806
ReservoirConstraintProtoDefaultTypeInternal _ReservoirConstraintProto_default_instance_
static const AllDifferentConstraintProto & default_instance()
::operations_research::sat::NoOverlapConstraintProto * release_no_overlap()
Definition: cp_model.pb.h:9118
Definition: cp_model.pb.h:205
Definition: cp_model.pb.h:3736
void set_allocated_cumulative(::operations_research::sat::CumulativeConstraintProto *cumulative)
void set_allocated_circuit(::operations_research::sat::CircuitConstraintProto *circuit)
::PROTOBUF_NAMESPACE_ID::int64 offset() const
Definition: cp_model.pb.h:9477
Definition: cp_model.pb.h:233
Definition: cp_model.pb.h:228
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const PartialVariableAssignment * internal_default_instance()
Definition: cp_model.pb.h:4897
Definition: cp_model.pb.h:3642
void set_start(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6444
ElementConstraintProto(ElementConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1385
Definition: cp_model.pb.h:4783
void clear_offset()
Definition: cp_model.pb.h:9360
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_min_level()
Definition: cp_model.pb.h:6781
::operations_research::sat::BoolArgumentProto * release_bool_or()
Definition: cp_model.pb.h:8018
bool CpSolverStatus_Parse(const std::string &name, CpSolverStatus *value)
Definition: cp_model.pb.h:250
bool IsInitialized() const final
void clear_vars()
Definition: cp_model.pb.h:6149
static void InitAsDefaultInstance()
ElementConstraintProto & operator=(const ElementConstraintProto &from)
Definition: cp_model.pb.h:1390
ConstraintProtoDefaultTypeInternal _ConstraintProto_default_instance_
Definition: cp_model.pb.h:3744
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
friend void swap(CpModelProto &a, CpModelProto &b)
Definition: cp_model.pb.h:5071
void set_objective_value(double value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4901
Definition: cp_model.pb.h:2511
void set_nexts(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7339
void clear_vars()
Definition: cp_model.pb.h:7427
void clear_vars()
Definition: cp_model.pb.h:9272
::operations_research::sat::LinearConstraintProto * release_linear()
Definition: cp_model.pb.h:8568
static const RoutesConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2633
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::operations_research::sat::CircuitCoveringConstraintProto * release_circuit_covering()
Definition: cp_model.pb.h:8818
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_tail()
Definition: cp_model.pb.h:7745
static constexpr DomainReductionStrategy SELECT_MEDIAN_VALUE
Definition: cp_model.pb.h:4752
static const PartialVariableAssignment & default_instance()
static const std::string & DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:4768
int values_size() const
Definition: cp_model.pb.h:9695
int GetCachedSize() const final
Definition: cp_model.pb.h:2896
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7484
CumulativeConstraintProto()
Definition: cp_model.pb.h:2120
const std::string & DecisionStrategyProto_DomainReductionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:215
bool has_solution_hint() const
Definition: cp_model.pb.h:9983
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
CircuitConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2462
static constexpr DomainReductionStrategy DomainReductionStrategy_MAX
Definition: cp_model.pb.h:4759
void set_target(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6373
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6420
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_transition_head()
Definition: cp_model.pb.h:7792
Definition: cp_model.pb.h:2510
int GetCachedSize() const final
Definition: cp_model.pb.h:3063
void set_name(const std::string &value)
Definition: cp_model.pb.h:7903
Definition: cp_model.pb.h:3445
IntegerArgumentProto & operator=(const IntegerArgumentProto &from)
Definition: cp_model.pb.h:571
Definition: cp_model.pb.h:1293
CircuitCoveringConstraintProto & operator=(CircuitCoveringConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2840
Definition: cp_model.pb.h:5135
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1403
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: cp_model.pb.h:3639
int coeffs_size() const
Definition: cp_model.pb.h:6244
CpSolverResponse * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:5339
void add_tails(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7134
::operations_research::sat::RoutesConstraintProto * release_routes()
Definition: cp_model.pb.h:8768
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_variables(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9538
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & intervals() const
Definition: cp_model.pb.h:6526
void clear_vars()
Definition: cp_model.pb.h:5877
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3620
void Swap(IntegerVariableProto *other)
Definition: cp_model.pb.h:304
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1717
int x_intervals_size() const
Definition: cp_model.pb.h:6548
bool has_no_overlap_2d() const
Definition: cp_model.pb.h:9156
size_t ByteSizeLong() const final
static const NoOverlap2DConstraintProto & default_instance()
Definition: cp_model.pb.h:3637
DecisionStrategyProto()
int y_intervals_size() const
Definition: cp_model.pb.h:6595
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:445
size_t ByteSizeLong() const final
size_t ByteSizeLong() const final
void clear_vars()
Definition: cp_model.pb.h:9651
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_int_mod()
Definition: cp_model.pb.h:8262
void clear_variable_selection_strategy()
Definition: cp_model.pb.h:9562
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
TableConstraintProto * New() const final
Definition: cp_model.pb.h:3045
void set_values(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9708
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & variables() const
Definition: cp_model.pb.h:9547
::operations_research::sat::LinearConstraintProto * mutable_linear()
Definition: cp_model.pb.h:8597
int vars_size() const
Definition: cp_model.pb.h:6197
void set_allocated_circuit_covering(::operations_research::sat::CircuitCoveringConstraintProto *circuit_covering)
virtual ~LinearExpressionProto()
ReservoirConstraintProto * New() const final
Definition: cp_model.pb.h:2244
void set_assumptions(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
void clear_solution_info()
TableConstraintProto(TableConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2998
void clear_name()
Definition: cp_model.pb.h:7896
InverseConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3227
ElementConstraintProto()
int transformations_size() const
Definition: cp_model.pb.h:9605
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto > * mutable_search_strategy()
Definition: cp_model.pb.h:9955
bool IsInitialized() const final
static const InverseConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3206
friend void swap(BoolArgumentProto &a, BoolArgumentProto &b)
Definition: cp_model.pb.h:461
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MIN
Definition: cp_model.pb.h:209
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:6771
void clear_lin_max()
Definition: cp_model.pb.h:8362
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:7500
void set_allocated_solution_hint(::operations_research::sat::PartialVariableAssignment *solution_hint)
void clear_boxes_with_null_area_can_overlap()
Definition: cp_model.pb.h:6639
size_t ByteSizeLong() const final
::operations_research::sat::TableConstraintProto * mutable_table()
Definition: cp_model.pb.h:8897
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_actives()
Definition: cp_model.pb.h:6956
void clear_coeffs()
Definition: cp_model.pb.h:6247
::operations_research::sat::NoOverlapConstraintProto * mutable_no_overlap()
Definition: cp_model.pb.h:9147
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:7453
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:6329
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
friend void swap(ConstraintProto &a, ConstraintProto &b)
Definition: cp_model.pb.h:3662
size_t ByteSizeLong() const final
CpModelProto(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:5034
Definition: cp_model.pb.h:3628
static void InitAsDefaultInstance()
ConstraintProto * New() const final
Definition: cp_model.pb.h:3672
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9715
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6395
Definition: cp_model.pb.h:176
void clear_num_conflicts()
LinearArgumentProto()
IntegerArgumentProto()
const ::operations_research::sat::InverseConstraintProto & inverse() const
Definition: cp_model.pb.h:8984
Definition: cp_model.pb.h:201
CircuitConstraintProto & operator=(CircuitConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2420
static void InitAsDefaultInstance()
static const AutomatonConstraintProto & default_instance()
ConstraintCase constraint_case() const
Definition: cp_model.pb.h:9258
bool has_element() const
Definition: cp_model.pb.h:8656
RoutesConstraintProto(RoutesConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2603
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:2596
int demands_size() const
Definition: cp_model.pb.h:6871
std::string * mutable_solution_info()
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6884
InverseConstraintProto(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3176
CpSolverResponse * New() const final
Definition: cp_model.pb.h:5335
static constexpr DomainReductionStrategy SELECT_LOWER_HALF
Definition: cp_model.pb.h:4748
IntegerArgumentProtoDefaultTypeInternal _IntegerArgumentProto_default_instance_
bool IsInitialized() const final
bool IsInitialized() const final
void clear_table()
Definition: cp_model.pb.h:8862
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1567
void add_transition_label(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7821
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_tightened_variables()
DecisionStrategyProtoDefaultTypeInternal _DecisionStrategyProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4891
void add_transition_tail(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7727
friend void swap(ElementConstraintProto &a, ElementConstraintProto &b)
Definition: cp_model.pb.h:1422
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:631
Definition: cp_model.pb.h:3589
virtual ~ElementConstraintProto()
RoutesConstraintProto()
friend void swap(LinearConstraintProto &a, LinearConstraintProto &b)
Definition: cp_model.pb.h:1230
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
double best_objective_bound() const
bool has_automaton() const
Definition: cp_model.pb.h:8906
int f_direct_size() const
Definition: cp_model.pb.h:7542
void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6030
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
ConstraintProto()
void set_deterministic_time(double value)
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2231
Definition: cp_model.pb.h:3734
void Swap(RoutesConstraintProto *other)
Definition: cp_model.pb.h:2643
CircuitConstraintProto & operator=(const CircuitConstraintProto &from)
Definition: cp_model.pb.h:2416
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:4721
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:584
int vars_size() const
Definition: cp_model.pb.h:7848
int GetCachedSize() const final
Definition: cp_model.pb.h:784
Definition: cp_model.pb.h:231
void add_final_states(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7680
static void InitAsDefaultInstance()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_demands()
Definition: cp_model.pb.h:7258
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:5387
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & times() const
Definition: cp_model.pb.h:6853
void add_solution(::PROTOBUF_NAMESPACE_ID::int64 value)
static const NoOverlapConstraintProto & default_instance()
RoutesConstraintProtoDefaultTypeInternal _RoutesConstraintProto_default_instance_
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4885
static const TableConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & enforcement_literal() const
Definition: cp_model.pb.h:7988
constexpr DecisionStrategyProto_DomainReductionStrategy DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_MAX
Definition: cp_model.pb.h:210
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void clear_f_direct()
Definition: cp_model.pb.h:7545
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_sufficient_assumptions_for_infeasibility()
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7083
Definition: cp_model.pb.h:364
void clear_solution_hint()
Definition: cp_model.pb.h:9986
static constexpr int DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:4761
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:288
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1875
::operations_research::sat::IntegerArgumentProto * mutable_int_prod()
Definition: cp_model.pb.h:8547
Definition: cp_model.pb.h:5137
DecisionStrategyProto_AffineTransformation(DecisionStrategyProto_AffineTransformation &&from) noexcept
Definition: cp_model.pb.h:4459
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & nexts() const
Definition: cp_model.pb.h:7355
constexpr int DecisionStrategyProto_DomainReductionStrategy_DomainReductionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:211
void set_solution_upper_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
size_t ByteSizeLong() const final
void add_times(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6844
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
AllDifferentConstraintProto()
::operations_research::sat::PartialVariableAssignment * mutable_solution_hint()
int variables_size() const
Definition: cp_model.pb.h:9518
::operations_research::sat::IntegerVariableProto * add_variables()
Definition: cp_model.pb.h:9831
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
int GetCachedSize() const final
Definition: cp_model.pb.h:3241
const std::string & solution_info() const
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution_upper_bounds() const
static const LinearExpressionProto & default_instance()
bool has_routes() const
Definition: cp_model.pb.h:8756
void clear_scaling_factor()
Definition: cp_model.pb.h:9380
::operations_research::sat::ElementConstraintProto * mutable_element()
Definition: cp_model.pb.h:8697
static const DecisionStrategyProto * internal_default_instance()
Definition: cp_model.pb.h:4639
void set_transition_label(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7814
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
InverseConstraintProto & operator=(InverseConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3185
bool has_reservoir() const
Definition: cp_model.pb.h:9006
::PROTOBUF_NAMESPACE_ID::int64 num_integer_propagations() const
DecisionStrategyProto_VariableSelectionStrategy
Definition: cp_model.pb.h:171
void clear_nexts()
Definition: cp_model.pb.h:7329
static void InitAsDefaultInstance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1720
CumulativeConstraintProto & operator=(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2028
bool all_solutions_were_found() const
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1075
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:7877
LinearConstraintProto & operator=(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1202
ConstraintProto(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3596
std::string * mutable_name()
Definition: cp_model.pb.h:7907
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_status(::operations_research::sat::CpSolverStatus value)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
::operations_research::sat::LinearExpressionProto * release_target()
Definition: cp_model.pb.h:6061
Definition: cp_model.pb.h:5027
NoOverlapConstraintProto & operator=(const NoOverlapConstraintProto &from)
Definition: cp_model.pb.h:1704
bool has_bool_or() const
Definition: cp_model.pb.h:8006
void clear_target()
Definition: cp_model.pb.h:6359
int GetCachedSize() const final
Definition: cp_model.pb.h:3690
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4888
size_t ByteSizeLong() const final
void set_x_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6561
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:3617
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void clear_element()
Definition: cp_model.pb.h:8662
::operations_research::sat::AutomatonConstraintProto * mutable_automaton()
Definition: cp_model.pb.h:8947
Definition: cp_model.pb.h:819
bool has_circuit() const
Definition: cp_model.pb.h:8706
Definition: cp_model.pb.h:4860
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
Definition: cp_model.pb.h:1150
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7228
virtual ~AllDifferentConstraintProto()
Definition: cp_model.pb.h:2705
void clear_variables()
Definition: cp_model.pb.h:9521
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_variables()
Definition: cp_model.pb.h:9556
::operations_research::sat::DecisionStrategyProto_AffineTransformation * add_transformations()
Definition: cp_model.pb.h:9630
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:915
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
BoolArgumentProto * New() const final
Definition: cp_model.pb.h:471
void set_allocated_routes(::operations_research::sat::RoutesConstraintProto *routes)
LinearArgumentProto & operator=(const LinearArgumentProto &from)
Definition: cp_model.pb.h:902
double user_time() const
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6257
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_domain_reduction_strategy(::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy value)
Definition: cp_model.pb.h:9596
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_allocated_int_mod(::operations_research::sat::IntegerArgumentProto *int_mod)
static constexpr VariableSelectionStrategy CHOOSE_FIRST
Definition: cp_model.pb.h:4708
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:9354
::operations_research::sat::InverseConstraintProto * release_inverse()
Definition: cp_model.pb.h:8968
static const CumulativeConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2049
static const CpObjectiveProto & default_instance()
const ::operations_research::sat::IntervalConstraintProto & interval() const
Definition: cp_model.pb.h:9084
void set_f_inverse(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7602
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void clear_domain()
Definition: cp_model.pb.h:9406
::operations_research::sat::BoolArgumentProto * release_bool_and()
Definition: cp_model.pb.h:8068
::operations_research::sat::IntegerArgumentProto * release_int_div()
Definition: cp_model.pb.h:8218
static constexpr VariableSelectionStrategy CHOOSE_MIN_DOMAIN_SIZE
Definition: cp_model.pb.h:4714
int nexts_size() const
Definition: cp_model.pb.h:7326
ElementConstraintProto * New() const final
Definition: cp_model.pb.h:1432
void clear_exprs()
Definition: cp_model.pb.h:6106
Definition: cp_model.pb.h:4602
::operations_research::sat::IntegerArgumentProto * mutable_int_min()
Definition: cp_model.pb.h:8447
LinearExpressionProto()
Definition: cp_model.pb.h:1942
std::string * release_solution_info()
DecisionStrategyProto_AffineTransformation * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4510
TableConstraintProto & operator=(const TableConstraintProto &from)
Definition: cp_model.pb.h:3003
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5992
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:285
static const LinearConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1223
void add_enforcement_literal(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7979
Definition: cp_model.pb.h:3747
int GetCachedSize() const final
Definition: cp_model.pb.h:329
Definition: cp_model.pb.h:206
void set_offset(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9485
void clear_vars()
Definition: cp_model.pb.h:6200
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1406
::PROTOBUF_NAMESPACE_ID::int64 num_binary_propagations() const
PartialVariableAssignment * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4918
::PROTOBUF_NAMESPACE_ID::int64 capacity() const
Definition: cp_model.pb.h:7305
DecisionStrategyProto & operator=(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:4618
::operations_research::sat::LinearExpressionProto * add_exprs()
Definition: cp_model.pb.h:6128
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3200
::operations_research::sat::CircuitConstraintProto * mutable_circuit()
Definition: cp_model.pb.h:8747
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_inverse()
Definition: cp_model.pb.h:7627
virtual ~NoOverlapConstraintProto()
Definition: cp_model.pb.h:5395
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void add_solution_upper_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
void clear_tightened_variables()
void Swap(TableConstraintProto *other)
Definition: cp_model.pb.h:3038
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:1409
Definition: cp_model.pb.h:4785
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
Definition: cp_model.pb.h:55
Definition: cp_model.pb.h:3737
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::operations_research::sat::DecisionStrategyProto * add_search_strategy()
Definition: cp_model.pb.h:9969
Definition: cp_model.pb.h:3730
bool IsInitialized() const final
size_t ByteSizeLong() const final
void add_literals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5823
Definition: cp_model.pb.h:3098
int search_strategy_size() const
Definition: cp_model.pb.h:9944
CircuitCoveringConstraintProto()
Definition: cp_model.pb.h:3742
static const CpSolverResponse * internal_default_instance()
Definition: cp_model.pb.h:5318
Definition: cp_model.pb.h:177
static const CircuitCoveringConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:2861
void set_num_branches(::PROTOBUF_NAMESPACE_ID::int64 value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const std::string & name() const
Definition: cp_model.pb.h:7899
bool has_int_max() const
Definition: cp_model.pb.h:8306
void clear_end()
Definition: cp_model.pb.h:6450
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_f_direct()
Definition: cp_model.pb.h:7580
void Swap(AutomatonConstraintProto *other)
Definition: cp_model.pb.h:3383
void set_max_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6815
Definition: cp_model.pb.h:417
void set_domain(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5765
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::ConstraintProto > & constraints() const
Definition: cp_model.pb.h:9875
static const CpModelProto * internal_default_instance()
Definition: cp_model.pb.h:5064
int constraints_size() const
Definition: cp_model.pb.h:9845
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5985
Definition: cp_model.pb.h:3630
static const RoutesConstraintProto & default_instance()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:7045
int literals_size() const
Definition: cp_model.pb.h:7208
bool IsInitialized() const final
bool IsInitialized() const final
void clear_max_level()
Definition: cp_model.pb.h:6801
void Swap(LinearArgumentProto *other)
Definition: cp_model.pb.h:937
void set_min_level(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:6795
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & heads() const
Definition: cp_model.pb.h:7190
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~IntegerArgumentProto()
void clear_constraints()
Definition: cp_model.pb.h:9848
DecisionStrategyProto_AffineTransformation * New() const final
Definition: cp_model.pb.h:4506
static const DecisionStrategyProto & default_instance()
static void InitAsDefaultInstance()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9661
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
Definition: cp_model.pb.h:3447
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntervalConstraintProto()
Definition: cp_model.pb.h:1044
void set_final_states(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7673
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:921
void clear_capacity()
Definition: cp_model.pb.h:7299
CpObjectiveProto * New() const final
Definition: cp_model.pb.h:4292
Definition: cp_model.pb.h:257
Definition: cp_model.pb.h:3629
friend void swap(LinearExpressionProto &a, LinearExpressionProto &b)
Definition: cp_model.pb.h:756
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void Swap(DecisionStrategyProto_AffineTransformation *other)
Definition: cp_model.pb.h:4499
bool IsInitialized() const final
friend void swap(CircuitCoveringConstraintProto &a, CircuitCoveringConstraintProto &b)
Definition: cp_model.pb.h:2868
::operations_research::sat::AllDifferentConstraintProto * release_all_diff()
Definition: cp_model.pb.h:8618
ElementConstraintProtoDefaultTypeInternal _ElementConstraintProto_default_instance_
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5894
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4633
void clear_transition_head()
Definition: cp_model.pb.h:7757
const ::operations_research::sat::BoolArgumentProto & bool_and() const
Definition: cp_model.pb.h:8084
void set_allocated_table(::operations_research::sat::TableConstraintProto *table)
void set_demands(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7268
static constexpr DomainReductionStrategy SELECT_MIN_VALUE
Definition: cp_model.pb.h:4744
Definition: cp_model.pb.h:232
void set_solution_lower_bounds(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
int vars_size() const
Definition: cp_model.pb.h:7424
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2432
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1733
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1419
void clear_starting_state()
Definition: cp_model.pb.h:7637
virtual ~TableConstraintProto()
Definition: cp_model.pb.h:4782
Definition: cp_model.pb.h:3732
static const ::PROTOBUF_NAMESPACE_ID::internal::FieldMetadata field_metadata[]
Definition: cp_model.pb.h:53
friend void swap(AutomatonConstraintProto &a, AutomatonConstraintProto &b)
Definition: cp_model.pb.h:3380
Definition: cp_model.pb.h:4238
int GetCachedSize() const final
Definition: cp_model.pb.h:5099
Definition: cp_model.pb.h:202
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:6273
Definition: cp_model.pb.h:200
::PROTOBUF_NAMESPACE_ID::int64 num_booleans() const
static const ConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3655
void Swap(ElementConstraintProto *other)
Definition: cp_model.pb.h:1425
const ::operations_research::sat::CpObjectiveProto & objective() const
Definition: cp_model.pb.h:9898
DecisionStrategyProto_VariableSelectionStrategy VariableSelectionStrategy
Definition: cp_model.pb.h:4707
void clear_vars()
Definition: cp_model.pb.h:5928
Definition: cp_model.pb.h:5281
Definition: cp_model.pb.h:5388
void set_size(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6484
void clear_distinguished_nodes()
Definition: cp_model.pb.h:7376
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:3727
void Swap(CpObjectiveProto *other)
Definition: cp_model.pb.h:4285
::PROTOBUF_NAMESPACE_ID::int32 target() const
Definition: cp_model.pb.h:6365
Definition: cp_model.pb.h:3627
bool IsInitialized() const final
void set_negated(bool value)
Definition: cp_model.pb.h:7529
void clear_bool_or()
Definition: cp_model.pb.h:8012
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7868
ConstraintProto & operator=(const ConstraintProto &from)
Definition: cp_model.pb.h:3601
InverseConstraintProto * New() const final
Definition: cp_model.pb.h:3223
int intervals_size() const
Definition: cp_model.pb.h:6686
const ::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::DecisionStrategyProto_AffineTransformation > & transformations() const
Definition: cp_model.pb.h:9635
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9282
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_lin_max(::operations_research::sat::LinearArgumentProto *lin_max)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4480
::operations_research::sat::IntegerArgumentProto * mutable_int_max()
Definition: cp_model.pb.h:8347
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2218
NoOverlap2DConstraintProto(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1841
::PROTOBUF_NAMESPACE_ID::int64 max_level() const
Definition: cp_model.pb.h:6807
Definition: cp_model.pb.h:46
const std::string & name() const
Definition: cp_model.pb.h:5692
CpSolverStatus
Definition: cp_model.pb.h:227
PartialVariableAssignment(PartialVariableAssignment &&from) noexcept
Definition: cp_model.pb.h:4867
DecisionStrategyProto & operator=(const DecisionStrategyProto &from)
Definition: cp_model.pb.h:4614
Definition: cp_model.pb.h:3275
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3194
void Swap(NoOverlapConstraintProto *other)
Definition: cp_model.pb.h:1739
Definition: cp_model.pb.h:1798
IntegerVariableProto & operator=(const IntegerVariableProto &from)
Definition: cp_model.pb.h:269
void set_name(const std::string &value)
Definition: cp_model.pb.h:9750
bool IsInitialized() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_heads()
Definition: cp_model.pb.h:7199
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
int GetCachedSize() const final
Definition: cp_model.pb.h:1450
IntegerVariableProtoDefaultTypeInternal _IntegerVariableProto_default_instance_
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:665
BoolArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:475
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_inverse() const
Definition: cp_model.pb.h:7618
virtual ~CpModelProto()
::operations_research::sat::LinearArgumentProto * mutable_lin_min()
Definition: cp_model.pb.h:8497
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & solution() const
static const TableConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3028
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2855
const ::operations_research::sat::IntegerArgumentProto & int_max() const
Definition: cp_model.pb.h:8334
virtual ~InverseConstraintProto()
void clear_solution()
Definition: cp_model.pb.h:2512
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const std::string & DecisionStrategyProto_VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:187
void Swap(BoolArgumentProto *other)
Definition: cp_model.pb.h:464
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & demands() const
Definition: cp_model.pb.h:7284
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
Definition: cp_model.pb.h:174
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6235
void add_nexts(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7346
void add_actives(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6938
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:6909
static void InitAsDefaultInstance()
void set_scaling_factor(double value)
Definition: cp_model.pb.h:9394
Definition: cp_model.pb.h:3740
Definition: cp_model.pb.h:5400
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:2865
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_coeffs()
Definition: cp_model.pb.h:6282
static void InitAsDefaultInstance()
void clear_user_time()
::operations_research::sat::AutomatonConstraintProto * release_automaton()
Definition: cp_model.pb.h:8918
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2fsat_2fcp_5fmodel_2eproto
LinearConstraintProto()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:3367
const ::operations_research::sat::LinearExpressionProto & target() const
Definition: cp_model.pb.h:6057
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & distinguished_nodes() const
Definition: cp_model.pb.h:7402
Definition: cp_model.pb.h:2931
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4643
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:3643
void clear_offset()
Definition: cp_model.pb.h:9471
::operations_research::sat::CumulativeConstraintProto * release_cumulative()
Definition: cp_model.pb.h:9218
size_t ByteSizeLong() const final
static const ElementConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1415
Definition: cp_model.pb.h:363
CpSolverResponse()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
virtual ~ReservoirConstraintProto()
Definition: cp_model.pb.h:1294
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void set_allocated_automaton(::operations_research::sat::AutomatonConstraintProto *automaton)
::operations_research::sat::BoolArgumentProto * mutable_at_most_one()
Definition: cp_model.pb.h:8147
Definition: cp_model.pb.h:3739
void clear_actives()
Definition: cp_model.pb.h:6921
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_tail() const
Definition: cp_model.pb.h:7736
LinearConstraintProto(LinearConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1193
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:918
int vars_size() const
Definition: cp_model.pb.h:5874
int transition_head_size() const
Definition: cp_model.pb.h:7754
::operations_research::sat::IntegerArgumentProto * release_int_min()
Definition: cp_model.pb.h:8418
ConstraintProto & operator=(ConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3605
void add_values(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7491
Definition: cp_model.pb.h:5399
Definition: cp_model.pb.h:1648
friend void swap(RoutesConstraintProto &a, RoutesConstraintProto &b)
Definition: cp_model.pb.h:2640
Definition: cp_model.pb.h:820
void set_transition_head(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7767
Definition: cp_model.pb.h:4346
NoOverlapConstraintProto & operator=(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1708
LinearArgumentProto * New() const final
Definition: cp_model.pb.h:944
int distinguished_nodes_size() const
Definition: cp_model.pb.h:7373
Definition: cp_model.pb.h:3645
Definition: cp_model.pb.h:3728
Definition: cp_model.pb.h:1649
void set_coeffs(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9329
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
size_t ByteSizeLong() const final
::operations_research::sat::IntegerArgumentProto * release_int_mod()
Definition: cp_model.pb.h:8268
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:282
CpModelProtoDefaultTypeInternal _CpModelProto_default_instance_
virtual ~PartialVariableAssignment()
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const BoolArgumentProto & default_instance()
Definition: cp_model.pb.h:996
LinearExpressionProto & operator=(LinearExpressionProto &&from) noexcept
Definition: cp_model.pb.h:728
int domain_size() const
Definition: cp_model.pb.h:5752
void clear_objective_value()
void clear_circuit()
Definition: cp_model.pb.h:8712
void set_variable_selection_strategy(::operations_research::sat::DecisionStrategyProto_VariableSelectionStrategy value)
Definition: cp_model.pb.h:9576
bool IsInitialized() const final
void clear_no_overlap()
Definition: cp_model.pb.h:9112
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:5055
int GetCachedSize() const final
Definition: cp_model.pb.h:2476
void set_y_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6608
void set_name(const std::string &value)
Definition: cp_model.pb.h:5696
Definition: cp_model.pb.h:3651
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & coeffs() const
Definition: cp_model.pb.h:6001
int GetCachedSize() const final
Definition: cp_model.pb.h:4932
Definition: cp_model.pb.h:173
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const LinearArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:927
void Swap(NoOverlap2DConstraintProto *other)
Definition: cp_model.pb.h:1881
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(ReservoirConstraintProto &a, ReservoirConstraintProto &b)
Definition: cp_model.pb.h:2234
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5945
constexpr CpSolverStatus CpSolverStatus_MAX
Definition: cp_model.pb.h:238
int GetCachedSize() const final
Definition: cp_model.pb.h:4674
Definition: cp_model.pb.h:3724
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & values() const
Definition: cp_model.pb.h:9724
Definition: cp_model.pb.h:175
ConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3676
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
double objective_value() const
static const DecisionStrategyProto_AffineTransformation & default_instance()
void set_num_integer_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
AutomatonConstraintProtoDefaultTypeInternal _AutomatonConstraintProto_default_instance_
Definition: cp_model.pb.h:2706
int literals_size() const
Definition: cp_model.pb.h:5803
::operations_research::sat::CircuitConstraintProto * release_circuit()
Definition: cp_model.pb.h:8718
Definition: cp_model.pb.h:997
::PROTOBUF_NAMESPACE_ID::int64 starting_state() const
Definition: cp_model.pb.h:7643
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::int64 num_conflicts() const
virtual ~CircuitConstraintProto()
void clear_reservoir()
Definition: cp_model.pb.h:9012
bool has_target() const
Definition: cp_model.pb.h:6043
Definition: cp_model.pb.h:4560
double scaling_factor() const
Definition: cp_model.pb.h:9386
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static bool VariableSelectionStrategy_Parse(const std::string &name, VariableSelectionStrategy *value)
Definition: cp_model.pb.h:4738
virtual ~CircuitCoveringConstraintProto()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6159
NoOverlap2DConstraintProto & operator=(NoOverlap2DConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1850
IntegerVariableProto()
int vars_size() const
Definition: cp_model.pb.h:6146
void set_best_objective_bound(double value)
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
IntegerArgumentProto * New() const final
Definition: cp_model.pb.h:613
int f_inverse_size() const
Definition: cp_model.pb.h:7589
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & sufficient_assumptions_for_infeasibility() const
friend void swap(CpSolverResponse &a, CpSolverResponse &b)
Definition: cp_model.pb.h:5325
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
constexpr CpSolverStatus CpSolverStatus_MIN
Definition: cp_model.pb.h:237
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:448
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_values()
Definition: cp_model.pb.h:7509
const std::string & name() const
Definition: cp_model.pb.h:9746
Definition: cp_model.pb.h:3169
void set_var(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9465
static const AutomatonConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:3373
Definition: cp_model.pb.h:2930
void clear_search_strategy()
Definition: cp_model.pb.h:9947
void clear_inverse()
Definition: cp_model.pb.h:8962
void clear_int_max()
Definition: cp_model.pb.h:8312
size_t ByteSizeLong() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2037
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:4493
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DomainReductionStrategy_descriptor()
Definition: cp_model.pb.h:4764
void clear_objective()
Definition: cp_model.pb.h:9887
void set_f_direct(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7555
Definition: cp_model.pb.h:3446
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & actives() const
Definition: cp_model.pb.h:6947
static const ::PROTOBUF_NAMESPACE_ID::internal::SerializationTable serialization_table[]
Definition: cp_model.pb.h:54
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1214
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6753
Definition: cp_model.pb.h:5139
CpModelProto()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:5816
Definition: cp_model.pb.h:3649
void add_sufficient_assumptions_for_infeasibility(::PROTOBUF_NAMESPACE_ID::int32 value)
static void InitAsDefaultInstance()
AllDifferentConstraintProto & operator=(const AllDifferentConstraintProto &from)
Definition: cp_model.pb.h:1056
InverseConstraintProto & operator=(const InverseConstraintProto &from)
Definition: cp_model.pb.h:3181
static const DecisionStrategyProto_AffineTransformation * internal_default_instance()
Definition: cp_model.pb.h:4489
const ::operations_research::sat::AutomatonConstraintProto & automaton() const
Definition: cp_model.pb.h:8934
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_solution_upper_bounds()
::operations_research::sat::LinearExpressionProto * mutable_target()
Definition: cp_model.pb.h:6076
Definition: cp_model.pb.h:1484
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2627
size_t ByteSizeLong() const final
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CpObjectiveProtoDefaultTypeInternal _CpObjectiveProto_default_instance_
void clear_assumptions()
void Swap(DecisionStrategyProto *other)
Definition: cp_model.pb.h:4649
void clear_enforcement_literal()
Definition: cp_model.pb.h:7962
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1862
void clear_domain()
Definition: cp_model.pb.h:5755
static void InitAsDefaultInstance()
DecisionStrategyProto_DomainReductionStrategy DomainReductionStrategy
Definition: cp_model.pb.h:4743
Definition: cp_model.pb.h:3738
int domain_size() const
Definition: cp_model.pb.h:9403
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void clear_wall_time()
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6226
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const BoolArgumentProto * internal_default_instance()
Definition: cp_model.pb.h:454
Definition: cp_model.pb.h:2703
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3032
::operations_research::sat::BoolArgumentProto * release_at_most_one()
Definition: cp_model.pb.h:8118
bool IsInitialized() const final
IntervalConstraintProto(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1549
static constexpr VariableSelectionStrategy CHOOSE_LOWEST_MIN
Definition: cp_model.pb.h:4710
friend void swap(CircuitConstraintProto &a, CircuitConstraintProto &b)
Definition: cp_model.pb.h:2448
static const AllDifferentConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1081
Definition: cp_model.pb.h:3636
static const NoOverlapConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1729
Definition: cp_model.pb.h:2190
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:5322
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3614
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:931
int GetCachedSize() const final
Definition: cp_model.pb.h:2084
void set_allocated_solution_info(std::string *solution_info)
Definition: cp_model.pb.h:4452
bool IsInitialized() const final
::operations_research::sat::BoolArgumentProto * mutable_bool_or()
Definition: cp_model.pb.h:8047
int heads_size() const
Definition: cp_model.pb.h:7161
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4627
Definition: cp_model.pb.h:234
bool has_no_overlap() const
Definition: cp_model.pb.h:9106
bool IsInitialized() const final
Definition: cp_model.pb.h:4784
::operations_research::sat::TableConstraintProto * release_table()
Definition: cp_model.pb.h:8868
Definition: cp_model.pb.h:3746
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6706
Definition: cp_model.pb.h:1486
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MIN
Definition: cp_model.pb.h:181
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:5790
size_t ByteSizeLong() const final
void add_assumptions(::PROTOBUF_NAMESPACE_ID::int32 value)
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:9616
const ::operations_research::sat::CumulativeConstraintProto & cumulative() const
Definition: cp_model.pb.h:9234
void clear_cumulative()
Definition: cp_model.pb.h:9212
RoutesConstraintProto * New() const final
Definition: cp_model.pb.h:2650
double wall_time() const
::operations_research::sat::LinearArgumentProto * release_lin_max()
Definition: cp_model.pb.h:8368
void set_index(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6353
Definition: cp_model.pb.h:3638
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:6320
void clear_x_intervals()
Definition: cp_model.pb.h:6551
CpObjectiveProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4296
void clear_num_branches()
::operations_research::sat::IntegerVariableProto * add_tightened_variables()
int vars_size() const
Definition: cp_model.pb.h:5925
void clear_literals()
Definition: cp_model.pb.h:7066
static constexpr VariableSelectionStrategy VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:4723
constexpr DecisionStrategyProto_VariableSelectionStrategy DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_MAX
Definition: cp_model.pb.h:182
::PROTOBUF_NAMESPACE_ID::int32 start() const
Definition: cp_model.pb.h:6436
Definition: cp_model.pb.h:2300
CircuitCoveringConstraintProto * New() const final
Definition: cp_model.pb.h:2878
::operations_research::sat::IntervalConstraintProto * mutable_interval()
Definition: cp_model.pb.h:9097
virtual ~IntegerVariableProto()
BoolArgumentProtoDefaultTypeInternal _BoolArgumentProto_default_instance_
Definition: cp_model.pb.h:5138
Definition: cp_model.pb.h:3646
int sufficient_assumptions_for_infeasibility_size() const
::operations_research::sat::ReservoirConstraintProto * release_reservoir()
Definition: cp_model.pb.h:9018
void set_allocated_bool_xor(::operations_research::sat::BoolArgumentProto *bool_xor)
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_final_states()
Definition: cp_model.pb.h:7698
const ::operations_research::sat::IntegerArgumentProto & int_prod() const
Definition: cp_model.pb.h:8534
DecisionStrategyProto_AffineTransformation AffineTransformation
Definition: cp_model.pb.h:4705
void clear_constraint()
void set_allocated_objective(::operations_research::sat::CpObjectiveProto *objective)
Definition: cp_model.pb.h:9921
DecisionStrategyProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:4660
NoOverlapConstraintProto(NoOverlapConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1699
const ::operations_research::sat::NoOverlapConstraintProto & no_overlap() const
Definition: cp_model.pb.h:9134
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & transition_head() const
Definition: cp_model.pb.h:7783
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:5781
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9423
IntegerVariableProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:315
void clear_coeffs()
Definition: cp_model.pb.h:9319
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1859
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6402
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5912
static const IntegerVariableProto & default_instance()
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:1069
DecisionStrategyProto_AffineTransformation & operator=(const DecisionStrategyProto_AffineTransformation &from)
Definition: cp_model.pb.h:4464
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:9677
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7437
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:600
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2435
static const ConstraintProto & default_instance()
::PROTOBUF_NAMESPACE_ID::int64 offset() const
Definition: cp_model.pb.h:6022
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_demands()
Definition: cp_model.pb.h:7293
const ::operations_research::sat::IntegerArgumentProto & int_min() const
Definition: cp_model.pb.h:8434
Definition: cp_model.pb.h:5402
constexpr int DecisionStrategyProto_VariableSelectionStrategy_VariableSelectionStrategy_ARRAYSIZE
Definition: cp_model.pb.h:183
void set_times(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6837
int vars_size() const
Definition: cp_model.pb.h:9269
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & vars() const
Definition: cp_model.pb.h:6175
Definition: cp_model.pb.h:5136
Definition: cp_model.pb.h:5392
void set_enforcement_literal(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7972
IntervalConstraintProto & operator=(IntervalConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1558
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:587
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:4269
bool has_int_div() const
Definition: cp_model.pb.h:8206
void add_domain(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:5772
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:5963
bool has_linear() const
Definition: cp_model.pb.h:8556
IntegerVariableProto & operator=(IntegerVariableProto &&from) noexcept
Definition: cp_model.pb.h:273
static const std::string & VariableSelectionStrategy_Name(T enum_t_value)
Definition: cp_model.pb.h:4732
void clear_int_prod()
Definition: cp_model.pb.h:8512
Definition: cp_model.pb.h:1292
static const ::PROTOBUF_NAMESPACE_ID::internal::ParseTableField entries[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
bool negated() const
Definition: cp_model.pb.h:7521
bool DecisionStrategyProto_VariableSelectionStrategy_IsValid(int value)
::PROTOBUF_NAMESPACE_ID::int64 num_branches() const
Definition: cp_model.pb.h:3741
void add_demands(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7275
void set_actives(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6931
friend void swap(IntegerVariableProto &a, IntegerVariableProto &b)
Definition: cp_model.pb.h:301
Definition: cp_model.pb.h:3647
void clear_transition_tail()
Definition: cp_model.pb.h:7710
int demands_size() const
Definition: cp_model.pb.h:7255
void clear_start()
Definition: cp_model.pb.h:6430
void clear_demands()
Definition: cp_model.pb.h:6736
int literals_size() const
Definition: cp_model.pb.h:7063
Definition: cp_model.pb.h:1941
DecisionStrategyProto(DecisionStrategyProto &&from) noexcept
Definition: cp_model.pb.h:4609
Definition: cp_model.pb.h:4967
Definition: cp_model.pb.h:5389
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const CircuitCoveringConstraintProto & default_instance()
IntervalConstraintProtoDefaultTypeInternal _IntervalConstraintProto_default_instance_
size_t ByteSizeLong() const final
static void InitAsDefaultInstance()
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
CpObjectiveProto & operator=(CpObjectiveProto &&from) noexcept
Definition: cp_model.pb.h:4254
bool IsInitialized() const final
void set_sufficient_assumptions_for_infeasibility(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
size_t ByteSizeLong() const final
static const IntegerArgumentProto & default_instance()
void clear_bool_xor()
Definition: cp_model.pb.h:8162
TableConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3049
void clear_negated()
Definition: cp_model.pb.h:7515
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2852
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7076
void Swap(ReservoirConstraintProto *other)
Definition: cp_model.pb.h:2237
CpSolverResponseDefaultTypeInternal _CpSolverResponse_default_instance_
static const LinearArgumentProto & default_instance()
PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
bool IsInitialized() const final
Definition: cp_model.pb.h:3443
static void InitAsDefaultInstance()
IntervalConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:1600
void Swap(IntervalConstraintProto *other)
Definition: cp_model.pb.h:1589
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
LinearArgumentProtoDefaultTypeInternal _LinearArgumentProto_default_instance_
AutomatonConstraintProto & operator=(const AutomatonConstraintProto &from)
Definition: cp_model.pb.h:3348
void set_wall_time(double value)
NoOverlapConstraintProto()
int transition_label_size() const
Definition: cp_model.pb.h:7801
void set_num_binary_propagations(::PROTOBUF_NAMESPACE_ID::int64 value)
void clear_routes()
Definition: cp_model.pb.h:8762
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_num_booleans(::PROTOBUF_NAMESPACE_ID::int64 value)
::PROTOBUF_NAMESPACE_ID::RepeatedPtrField< ::operations_research::sat::IntegerVariableProto > * mutable_variables()
Definition: cp_model.pb.h:9817
Definition: cp_model.pb.h:4344
friend void swap(IntegerArgumentProto &a, IntegerArgumentProto &b)
Definition: cp_model.pb.h:603
void set_variables(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:9531
void Swap(LinearExpressionProto *other)
Definition: cp_model.pb.h:759
Definition: cp_model.pb.h:1834
const ::operations_research::sat::RoutesConstraintProto & routes() const
Definition: cp_model.pb.h:8784
::operations_research::sat::NoOverlap2DConstraintProto * mutable_no_overlap_2d()
Definition: cp_model.pb.h:9197
::PROTOBUF_NAMESPACE_ID::int32 end() const
Definition: cp_model.pb.h:6456
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2621
Definition: cp_model.pb.h:5133
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & tails() const
Definition: cp_model.pb.h:6998
void set_distinguished_nodes(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7386
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6210
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_nexts()
Definition: cp_model.pb.h:7364
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2429
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_y_intervals()
Definition: cp_model.pb.h:6633
CircuitConstraintProto * New() const final
Definition: cp_model.pb.h:2458
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2040
IntegerArgumentProto(IntegerArgumentProto &&from) noexcept
Definition: cp_model.pb.h:566
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:3361
Definition: cp_model.pb.h:5394
CpObjectiveProto & operator=(const CpObjectiveProto &from)
Definition: cp_model.pb.h:4250
Definition: cp_model.pb.h:5401
static constexpr DomainReductionStrategy SELECT_UPPER_HALF
Definition: cp_model.pb.h:4750
ReservoirConstraintProto(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2197
void set_capacity(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:7313
virtual ~AutomatonConstraintProto()
Definition: cp_model.pb.h:2118
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > * mutable_domain()
Definition: cp_model.pb.h:9441
CumulativeConstraintProto * New() const final
Definition: cp_model.pb.h:2066
void clear_literals()
Definition: cp_model.pb.h:5806
int GetCachedSize() const final
Definition: cp_model.pb.h:2668
void clear_no_overlap_2d()
Definition: cp_model.pb.h:9162
ReservoirConstraintProto & operator=(ReservoirConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2206
bool DecisionStrategyProto_DomainReductionStrategy_Parse(const std::string &name, DecisionStrategyProto_DomainReductionStrategy *value)
Definition: cp_model.pb.h:222
DecisionStrategyProto_AffineTransformation()
static const NoOverlap2DConstraintProto * internal_default_instance()
Definition: cp_model.pb.h:1871
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void add_coeffs(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9336
CumulativeConstraintProtoDefaultTypeInternal _CumulativeConstraintProto_default_instance_
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:5832
Definition: cp_model.pb.h:5405
Definition: cp_model.pb.h:2991
void Swap(CircuitConstraintProto *other)
Definition: cp_model.pb.h:2451
void add_solution_lower_bounds(::PROTOBUF_NAMESPACE_ID::int64 value)
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
Definition: cp_model.pb.h:5134
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * DecisionStrategyProto_DomainReductionStrategy_descriptor()
const ::operations_research::sat::BoolArgumentProto & bool_xor() const
Definition: cp_model.pb.h:8184
bool has_at_most_one() const
Definition: cp_model.pb.h:8106
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:1570
void set_user_time(double value)
Definition: cp_model.pb.h:2824
void clear_interval()
Definition: cp_model.pb.h:9062
Definition: cp_model.pb.h:559
const ::operations_research::sat::LinearConstraintProto & linear() const
Definition: cp_model.pb.h:8584
void clear_lin_min()
Definition: cp_model.pb.h:8462
void clear_sufficient_assumptions_for_infeasibility()
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2043
Definition: cp_model.pb.h:204
TableConstraintProto()
::operations_research::sat::NoOverlap2DConstraintProto * release_no_overlap_2d()
Definition: cp_model.pb.h:9168
::operations_research::sat::IntegerArgumentProto * release_int_max()
Definition: cp_model.pb.h:8318
::operations_research::sat::IntegerArgumentProto * mutable_int_div()
Definition: cp_model.pb.h:8247
::operations_research::sat::CpObjectiveProto * release_objective()
Definition: cp_model.pb.h:9902
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_literals()
Definition: cp_model.pb.h:7101
void clear_deterministic_time()
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6217
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & coeffs() const
Definition: cp_model.pb.h:9345
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
void set_allocated_bool_or(::operations_research::sat::BoolArgumentProto *bool_or)
Definition: cp_model.pb.h:3099
friend void swap(DecisionStrategyProto &a, DecisionStrategyProto &b)
Definition: cp_model.pb.h:4646
void clear_intervals()
Definition: cp_model.pb.h:6500
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:5058
const ::operations_research::sat::BoolArgumentProto & at_most_one() const
Definition: cp_model.pb.h:8134
virtual ~LinearArgumentProto()
void set_vars(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7861
int GetCachedSize() const final
Definition: cp_model.pb.h:2262
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
void add_f_inverse(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7609
void clear_int_div()
Definition: cp_model.pb.h:8212
void Swap(PartialVariableAssignment *other)
Definition: cp_model.pb.h:4907
void clear_times()
Definition: cp_model.pb.h:6827
bool has_inverse() const
Definition: cp_model.pb.h:8956
const ::operations_research::sat::ElementConstraintProto & element() const
Definition: cp_model.pb.h:8684
Definition: cp_model.pb.h:203
Definition: cp_model.pb.h:4966
void clear_at_most_one()
Definition: cp_model.pb.h:8112
void set_solution(int index, ::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:1186
bool IsInitialized() const final
static const IntervalConstraintProto & default_instance()
void set_allocated_lin_min(::operations_research::sat::LinearArgumentProto *lin_min)
void set_positive_coeff(::PROTOBUF_NAMESPACE_ID::int64 value)
Definition: cp_model.pb.h:9505
virtual ~CumulativeConstraintProto()
friend void swap(IntervalConstraintProto &a, IntervalConstraintProto &b)
Definition: cp_model.pb.h:1586
void clear_values()
Definition: cp_model.pb.h:7474
void set_allocated_int_div(::operations_research::sat::IntegerArgumentProto *int_div)
void set_allocated_int_min(::operations_research::sat::IntegerArgumentProto *int_min)
static const CircuitConstraintProto & default_instance()
LinearArgumentProto & operator=(LinearArgumentProto &&from) noexcept
Definition: cp_model.pb.h:906
void clear_vars()
Definition: cp_model.pb.h:7851
Definition: cp_model.pb.h:3735
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:4477
void clear_var()
Definition: cp_model.pb.h:9451
bool has_table() const
Definition: cp_model.pb.h:8856
Definition: cp_model.pb.h:1650
CpModelProto & operator=(CpModelProto &&from) noexcept
Definition: cp_model.pb.h:5043
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
CircuitCoveringConstraintProtoDefaultTypeInternal _CircuitCoveringConstraintProto_default_instance_
void clear_vars()
Definition: cp_model.pb.h:6385
IntegerArgumentProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:617
friend void swap(PartialVariableAssignment &a, PartialVariableAssignment &b)
Definition: cp_model.pb.h:4904
void add_heads(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7036
bool IsInitialized() const final
friend void swap(CpObjectiveProto &a, CpObjectiveProto &b)
Definition: cp_model.pb.h:4282
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6166
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:7092
AutomatonConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:3394
void set_offset(double value)
Definition: cp_model.pb.h:9374
Definition: cp_model.pb.h:3641
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & literals() const
Definition: cp_model.pb.h:7237
void clear_tails()
Definition: cp_model.pb.h:6972
void CopyFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:2221
std::string * release_name()
Definition: cp_model.pb.h:7940
void set_heads(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7174
size_t ByteSizeLong() const final
Definition: cp_model.pb.h:4345
void Swap(ConstraintProto *other)
Definition: cp_model.pb.h:3665
AutomatonConstraintProto(AutomatonConstraintProto &&from) noexcept
Definition: cp_model.pb.h:3343
void add_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6517
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:458
Definition: cp_model.pb.h:2299
LinearConstraintProto & operator=(const LinearConstraintProto &from)
Definition: cp_model.pb.h:1198
void add_x_intervals(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6568
void clear_coeffs()
Definition: cp_model.pb.h:5975
std::string * mutable_name()
Definition: cp_model.pb.h:9754
CumulativeConstraintProto * New(::PROTOBUF_NAMESPACE_ID::Arena *arena) const final
Definition: cp_model.pb.h:2070
::operations_research::sat::CpSolverStatus status() const
size_t ByteSizeLong() const final
int times_size() const
Definition: cp_model.pb.h:6824
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:5309
::PROTOBUF_NAMESPACE_ID::int64 min_level() const
Definition: cp_model.pb.h:6787
InverseConstraintProto()
Definition: cp_model.pb.h:3635
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_intervals()
Definition: cp_model.pb.h:6535
Definition: cp_model.pb.h:3743
int GetCachedSize() const final
Definition: cp_model.pb.h:5353
int transition_tail_size() const
Definition: cp_model.pb.h:7707
const ::operations_research::sat::CircuitConstraintProto & circuit() const
Definition: cp_model.pb.h:8734
void MergeFrom(const ::PROTOBUF_NAMESPACE_ID::Message &from) final
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:1227
void set_allocated_name(std::string *name)
Definition: cp_model.pb.h:9792
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
double offset() const
Definition: cp_model.pb.h:9366
const ::operations_research::sat::ReservoirConstraintProto & reservoir() const
Definition: cp_model.pb.h:9034
bool DecisionStrategyProto_DomainReductionStrategy_IsValid(int value)
IntervalConstraintProto & operator=(const IntervalConstraintProto &from)
Definition: cp_model.pb.h:1554
static constexpr int kIndexInFileMessages
Definition: cp_model.pb.h:3659
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::operations_research::sat::BoolArgumentProto * mutable_bool_xor()
Definition: cp_model.pb.h:8197
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int64 > & domain() const
Definition: cp_model.pb.h:9432
void clear_capacity()
Definition: cp_model.pb.h:6663
::operations_research::sat::AllDifferentConstraintProto * mutable_all_diff()
Definition: cp_model.pb.h:8647
Definition: cp_model.pb.h:5393
void set_primal_integral(double value)
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:2215
void Swap(CpSolverResponse *other)
Definition: cp_model.pb.h:5328
static const ::PROTOBUF_NAMESPACE_ID::Reflection * GetReflection()
Definition: cp_model.pb.h:5312
static void InitAsDefaultInstance()
void add_vars(::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7444
Definition: cp_model.pb.h:3634
const ::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > & f_direct() const
Definition: cp_model.pb.h:7571
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_times()
Definition: cp_model.pb.h:6862
static void InitAsDefaultInstance()
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(InverseConstraintProto &a, InverseConstraintProto &b)
Definition: cp_model.pb.h:3213
::operations_research::sat::DecisionStrategyProto_DomainReductionStrategy domain_reduction_strategy() const
Definition: cp_model.pb.h:9588
::operations_research::sat::InverseConstraintProto * mutable_inverse()
Definition: cp_model.pb.h:8997
AllDifferentConstraintProto(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1051
Definition: cp_model.pb.h:5404
Definition: cp_model.pb.h:3444
size_t ByteSizeLong() const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:2624
virtual ~DecisionStrategyProto()
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_vars()
Definition: cp_model.pb.h:6184
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:737
void set_intervals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:6699
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
CumulativeConstraintProto(CumulativeConstraintProto &&from) noexcept
Definition: cp_model.pb.h:2019
CircuitConstraintProtoDefaultTypeInternal _CircuitConstraintProto_default_instance_
constexpr int CpSolverStatus_ARRAYSIZE
Definition: cp_model.pb.h:239
AllDifferentConstraintProto & operator=(AllDifferentConstraintProto &&from) noexcept
Definition: cp_model.pb.h:1060
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * VariableSelectionStrategy_descriptor()
Definition: cp_model.pb.h:4728
void clear_domain()
Definition: cp_model.pb.h:6294
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
bool has_interval() const
Definition: cp_model.pb.h:9056
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * GetDescriptor()
Definition: cp_model.pb.h:4630
virtual ~ConstraintProto()
void clear_demands()
Definition: cp_model.pb.h:6874
::PROTOBUF_NAMESPACE_ID::RepeatedField< ::PROTOBUF_NAMESPACE_ID::int32 > * mutable_coeffs()
Definition: cp_model.pb.h:6010
void set_literals(int index, ::PROTOBUF_NAMESPACE_ID::int32 value)
Definition: cp_model.pb.h:7221
LinearArgumentProto(LinearArgumentProto &&from) noexcept
Definition: cp_model.pb.h:897
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static void InitAsDefaultInstance()
::operations_research::sat::ConstraintProto * add_constraints()
Definition: cp_model.pb.h:9870
static const ::PROTOBUF_NAMESPACE_ID::Descriptor * descriptor()
Definition: cp_model.pb.h:5052
void clear_primal_integral()
NoOverlapConstraintProtoDefaultTypeInternal _NoOverlapConstraintProto_default_instance_
bool IsInitialized() const final
friend void swap(TableConstraintProto &a, TableConstraintProto &b)
Definition: cp_model.pb.h:3035
Definition: cp_model.pb.h:523