Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
solution.pb.h
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// NO CHECKED-IN PROTOBUF GENCODE
3// source: ortools/math_opt/solution.proto
4// Protobuf C++ Version: 6.31.1
5
6#ifndef ortools_2fmath_5fopt_2fsolution_2eproto_2epb_2eh
7#define ortools_2fmath_5fopt_2fsolution_2eproto_2epb_2eh
8
9#include <limits>
10#include <string>
11#include <type_traits>
12#include <utility>
13
14#include "google/protobuf/runtime_version.h"
15#if PROTOBUF_VERSION != 6031001
16#error "Protobuf C++ gencode is built with an incompatible version of"
17#error "Protobuf C++ headers/runtime. See"
18#error "https://protobuf.dev/support/cross-version-runtime-guarantee/#cpp"
19#endif
20#include "google/protobuf/io/coded_stream.h"
21#include "google/protobuf/arena.h"
22#include "google/protobuf/arenastring.h"
23#include "google/protobuf/generated_message_tctable_decl.h"
24#include "google/protobuf/generated_message_util.h"
25#include "google/protobuf/metadata_lite.h"
26#include "google/protobuf/generated_message_reflection.h"
27#include "google/protobuf/message.h"
28#include "google/protobuf/message_lite.h"
29#include "google/protobuf/repeated_field.h" // IWYU pragma: export
30#include "google/protobuf/extension_set.h" // IWYU pragma: export
31#include "google/protobuf/map.h" // IWYU pragma: export
32#include "google/protobuf/map_type_handler.h" // IWYU pragma: export
33#include "google/protobuf/map_entry.h"
34#include "google/protobuf/map_field.h"
35#include "google/protobuf/generated_enum_reflection.h"
36#include "google/protobuf/unknown_field_set.h"
38// @@protoc_insertion_point(includes)
39
40// Must be included last.
41#include "google/protobuf/port_def.inc"
42
43#define PROTOBUF_INTERNAL_EXPORT_ortools_2fmath_5fopt_2fsolution_2eproto OR_PROTO_DLL
44
45namespace google {
46namespace protobuf {
47namespace internal {
48template <typename T>
49::absl::string_view GetAnyMessageName();
50} // namespace internal
51} // namespace protobuf
52} // namespace google
53
54// Internal implementation detail -- do not use these members.
56 static const ::uint32_t offsets[];
57};
58extern "C" {
59OR_PROTO_DLL extern const ::google::protobuf::internal::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolution_2eproto;
60} // extern "C"
61namespace operations_research {
62namespace math_opt {
63enum BasisStatusProto : int;
64OR_PROTO_DLL extern const uint32_t BasisStatusProto_internal_data_[];
65enum SolutionStatusProto : int;
66OR_PROTO_DLL extern const uint32_t SolutionStatusProto_internal_data_[];
67class BasisProto;
70OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull BasisProto_class_data_;
71class DualRayProto;
74OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualRayProto_class_data_;
78OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualSolutionProto_class_data_;
79class PrimalRayProto;
82OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalRayProto_class_data_;
86OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalSolutionProto_class_data_;
90OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse_class_data_;
91class SolutionProto;
94OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SolutionProto_class_data_;
98OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SparseBasisStatusVector_class_data_;
99} // namespace math_opt
100} // namespace operations_research
101namespace google {
102namespace protobuf {
103template <>
104internal::EnumTraitsT<::operations_research::math_opt::BasisStatusProto_internal_data_>
105 internal::EnumTraitsImpl::value<::operations_research::math_opt::BasisStatusProto>;
106template <>
107internal::EnumTraitsT<::operations_research::math_opt::SolutionStatusProto_internal_data_>
108 internal::EnumTraitsImpl::value<::operations_research::math_opt::SolutionStatusProto>;
109} // namespace protobuf
110} // namespace google
111
112namespace operations_research {
113namespace math_opt {
124
125OR_PROTO_DLL extern const uint32_t SolutionStatusProto_internal_data_[];
127 static_cast<SolutionStatusProto>(0);
129 static_cast<SolutionStatusProto>(3);
130inline bool SolutionStatusProto_IsValid(int value) {
131 return 0 <= value && value <= 3;
132}
133inline constexpr int SolutionStatusProto_ARRAYSIZE = 3 + 1;
134OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL SolutionStatusProto_descriptor();
135template <typename T>
136const ::std::string& SolutionStatusProto_Name(T value) {
137 static_assert(::std::is_same<T, SolutionStatusProto>::value ||
138 ::std::is_integral<T>::value,
139 "Incorrect type passed to SolutionStatusProto_Name().");
140 return SolutionStatusProto_Name(static_cast<SolutionStatusProto>(value));
141}
142template <>
143inline const ::std::string& SolutionStatusProto_Name(SolutionStatusProto value) {
144 return ::google::protobuf::internal::NameOfDenseEnum<SolutionStatusProto_descriptor, 0, 3>(
145 static_cast<int>(value));
146}
148 ::absl::string_view name, SolutionStatusProto* PROTOBUF_NONNULL value) {
149 return ::google::protobuf::internal::ParseNamedEnum<SolutionStatusProto>(SolutionStatusProto_descriptor(), name,
150 value);
151}
164
165OR_PROTO_DLL extern const uint32_t BasisStatusProto_internal_data_[];
167 static_cast<BasisStatusProto>(0);
169 static_cast<BasisStatusProto>(5);
170inline bool BasisStatusProto_IsValid(int value) {
171 return 0 <= value && value <= 5;
172}
173inline constexpr int BasisStatusProto_ARRAYSIZE = 5 + 1;
174OR_PROTO_DLL const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL BasisStatusProto_descriptor();
175template <typename T>
176const ::std::string& BasisStatusProto_Name(T value) {
177 static_assert(::std::is_same<T, BasisStatusProto>::value ||
178 ::std::is_integral<T>::value,
179 "Incorrect type passed to BasisStatusProto_Name().");
180 return BasisStatusProto_Name(static_cast<BasisStatusProto>(value));
181}
182template <>
183inline const ::std::string& BasisStatusProto_Name(BasisStatusProto value) {
184 return ::google::protobuf::internal::NameOfDenseEnum<BasisStatusProto_descriptor, 0, 5>(
185 static_cast<int>(value));
186}
188 ::absl::string_view name, BasisStatusProto* PROTOBUF_NONNULL value) {
189 return ::google::protobuf::internal::ParseNamedEnum<BasisStatusProto>(BasisStatusProto_descriptor(), name,
190 value);
191}
192
193// ===================================================================
194
195
196// -------------------------------------------------------------------
197
198class OR_PROTO_DLL SparseBasisStatusVector final : public ::google::protobuf::Message
199/* @@protoc_insertion_point(class_definition:operations_research.math_opt.SparseBasisStatusVector) */ {
200 public:
202 ~SparseBasisStatusVector() PROTOBUF_FINAL;
204#if defined(PROTOBUF_CUSTOM_VTABLE)
205 void operator delete(SparseBasisStatusVector* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
206 SharedDtor(*msg);
207 ::google::protobuf::internal::SizedDelete(msg, sizeof(SparseBasisStatusVector));
208 }
209#endif
210
211 template <typename = void>
212 explicit PROTOBUF_CONSTEXPR SparseBasisStatusVector(::google::protobuf::internal::ConstantInitialized);
213
216 : SparseBasisStatusVector(nullptr, ::std::move(from)) {}
219 return *this;
220 }
221 inline SparseBasisStatusVector& operator=(SparseBasisStatusVector&& from) noexcept {
222 if (this == &from) return *this;
223 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
224 InternalSwap(&from);
225 } else {
226 CopyFrom(from);
227 }
228 return *this;
229 }
230
231 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
232 ABSL_ATTRIBUTE_LIFETIME_BOUND {
233 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
234 }
235 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
236 ABSL_ATTRIBUTE_LIFETIME_BOUND {
237 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
238 }
239
240 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
241 return GetDescriptor();
243 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
244 return default_instance().GetMetadata().descriptor;
246 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
247 return default_instance().GetMetadata().reflection;
249 static const SparseBasisStatusVector& default_instance() {
250 return *reinterpret_cast<const SparseBasisStatusVector*>(
252 }
253 static constexpr int kIndexInFileMessages = 5;
254 friend void swap(SparseBasisStatusVector& a, SparseBasisStatusVector& b) { a.Swap(&b); }
255 inline void Swap(SparseBasisStatusVector* PROTOBUF_NONNULL other) {
256 if (other == this) return;
257 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
258 InternalSwap(other);
259 } else {
260 ::google::protobuf::internal::GenericSwap(this, other);
261 }
262 }
263 void UnsafeArenaSwap(SparseBasisStatusVector* PROTOBUF_NONNULL other) {
264 if (other == this) return;
265 ABSL_DCHECK(GetArena() == other->GetArena());
266 InternalSwap(other);
267 }
268
269 // implements Message ----------------------------------------------
270
271 SparseBasisStatusVector* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
272 return ::google::protobuf::Message::DefaultConstruct<SparseBasisStatusVector>(arena);
274 using ::google::protobuf::Message::CopyFrom;
275 void CopyFrom(const SparseBasisStatusVector& from);
276 using ::google::protobuf::Message::MergeFrom;
277 void MergeFrom(const SparseBasisStatusVector& from) { SparseBasisStatusVector::MergeImpl(*this, from); }
278
279 private:
280 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
281 const ::google::protobuf::MessageLite& from_msg);
282
283 public:
284 bool IsInitialized() const {
285 return true;
287 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
288 #if defined(PROTOBUF_CUSTOM_VTABLE)
289 private:
290 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
291 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
292 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
293 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
294
295 public:
296 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
297 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
298 ::uint8_t* PROTOBUF_NONNULL target,
299 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
300 return _InternalSerialize(*this, target, stream);
301 }
302 #else // PROTOBUF_CUSTOM_VTABLE
303 ::size_t ByteSizeLong() const final;
304 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
305 ::uint8_t* PROTOBUF_NONNULL target,
306 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
307 #endif // PROTOBUF_CUSTOM_VTABLE
308 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
309
310 private:
311 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
312 static void SharedDtor(MessageLite& self);
313 void InternalSwap(SparseBasisStatusVector* PROTOBUF_NONNULL other);
314 private:
315 template <typename T>
316 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
317 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.SparseBasisStatusVector"; }
318
319 protected:
320 explicit SparseBasisStatusVector(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
321 SparseBasisStatusVector(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SparseBasisStatusVector& from);
323 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SparseBasisStatusVector&& from) noexcept
325 *this = ::std::move(from);
326 }
327 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
328 static void* PROTOBUF_NONNULL PlacementNew_(
329 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
330 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
331 static constexpr auto InternalNewImpl_();
332
333 public:
334 static constexpr auto InternalGenerateClassData_();
335
336 ::google::protobuf::Metadata GetMetadata() const;
337 // nested types ----------------------------------------------------
338
339 // accessors -------------------------------------------------------
340 enum : int {
341 kIdsFieldNumber = 1,
342 kValuesFieldNumber = 2,
343 };
344 // repeated int64 ids = 1;
345 int ids_size() const;
346 private:
347 int _internal_ids_size() const;
348
349 public:
350 void clear_ids() ;
351 ::int64_t ids(int index) const;
352 void set_ids(int index, ::int64_t value);
353 void add_ids(::int64_t value);
354 const ::google::protobuf::RepeatedField<::int64_t>& ids() const;
355 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_ids();
356
357 private:
358 const ::google::protobuf::RepeatedField<::int64_t>& _internal_ids() const;
359 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_ids();
360
361 public:
362 // repeated .operations_research.math_opt.BasisStatusProto values = 2;
363 int values_size() const;
364 private:
365 int _internal_values_size() const;
366
367 public:
368 void clear_values() ;
369 public:
373 const ::google::protobuf::RepeatedField<int>& values() const;
374 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL mutable_values();
375
376 private:
377 const ::google::protobuf::RepeatedField<int>& _internal_values() const;
378 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_values();
379
380 public:
381 // @@protoc_insertion_point(class_scope:operations_research.math_opt.SparseBasisStatusVector)
382 private:
383 class _Internal;
384 friend class ::google::protobuf::internal::TcParser;
385 static const ::google::protobuf::internal::TcParseTable<1, 2,
386 0, 0,
387 2>
388 _table_;
389
390 friend class ::google::protobuf::MessageLite;
391 friend class ::google::protobuf::Arena;
392 template <typename T>
393 friend class ::google::protobuf::Arena::InternalHelper;
394 using InternalArenaConstructable_ = void;
395 using DestructorSkippable_ = void;
396 struct Impl_ {
397 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
398 inline explicit Impl_(
399 ::google::protobuf::internal::InternalVisibility visibility,
400 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
401 inline explicit Impl_(
402 ::google::protobuf::internal::InternalVisibility visibility,
403 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
404 const SparseBasisStatusVector& from_msg);
405 ::google::protobuf::RepeatedField<::int64_t> ids_;
406 ::google::protobuf::internal::CachedSize _ids_cached_byte_size_;
407 ::google::protobuf::RepeatedField<int> values_;
408 ::google::protobuf::internal::CachedSize _values_cached_byte_size_;
409 ::google::protobuf::internal::CachedSize _cached_size_;
410 PROTOBUF_TSAN_DECLARE_MEMBER
411 };
412 union { Impl_ _impl_; };
413 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
416OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SparseBasisStatusVector_class_data_;
417// -------------------------------------------------------------------
418
420 : public ::google::protobuf::internal::MapEntry<::int64_t, double,
421 ::google::protobuf::internal::WireFormatLite::TYPE_INT64,
422 ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE> {
423 public:
424 using SuperType =
425 ::google::protobuf::internal::MapEntry<::int64_t, double,
426 ::google::protobuf::internal::WireFormatLite::TYPE_INT64,
427 ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>;
429 template <typename = void>
430 explicit PROTOBUF_CONSTEXPR PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse(::google::protobuf::internal::ConstantInitialized);
431 explicit PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
432 static constexpr const void* PROTOBUF_NONNULL internal_default_instance() {
434 }
436
437 static constexpr auto InternalGenerateClassData_();
438
439 private:
440 friend class ::google::protobuf::MessageLite;
441 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
442
443 friend class ::google::protobuf::internal::TcParser;
444 static const ::google::protobuf::internal::TcParseTable<1, 2,
445 0, 0,
446 2>
447 _table_;
448
449 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
450 static void* PROTOBUF_NONNULL PlacementNew_(
451 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
452 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
453 static constexpr auto InternalNewImpl_();
454};
455OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse_class_data_;
456// -------------------------------------------------------------------
457
458class OR_PROTO_DLL PrimalSolutionProto final : public ::google::protobuf::Message
459/* @@protoc_insertion_point(class_definition:operations_research.math_opt.PrimalSolutionProto) */ {
460 public:
461 inline PrimalSolutionProto() : PrimalSolutionProto(nullptr) {}
462 ~PrimalSolutionProto() PROTOBUF_FINAL;
463
464#if defined(PROTOBUF_CUSTOM_VTABLE)
465 void operator delete(PrimalSolutionProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
466 SharedDtor(*msg);
467 ::google::protobuf::internal::SizedDelete(msg, sizeof(PrimalSolutionProto));
468 }
469#endif
470
471 template <typename = void>
472 explicit PROTOBUF_CONSTEXPR PrimalSolutionProto(::google::protobuf::internal::ConstantInitialized);
473
474 inline PrimalSolutionProto(const PrimalSolutionProto& from) : PrimalSolutionProto(nullptr, from) {}
475 inline PrimalSolutionProto(PrimalSolutionProto&& from) noexcept
476 : PrimalSolutionProto(nullptr, ::std::move(from)) {}
477 inline PrimalSolutionProto& operator=(const PrimalSolutionProto& from) {
478 CopyFrom(from);
479 return *this;
480 }
482 if (this == &from) return *this;
483 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
484 InternalSwap(&from);
485 } else {
486 CopyFrom(from);
487 }
488 return *this;
489 }
490
491 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
492 ABSL_ATTRIBUTE_LIFETIME_BOUND {
493 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
494 }
495 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
496 ABSL_ATTRIBUTE_LIFETIME_BOUND {
497 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
498 }
500 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
501 return GetDescriptor();
502 }
503 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
504 return default_instance().GetMetadata().descriptor;
505 }
506 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
507 return default_instance().GetMetadata().reflection;
508 }
509 static const PrimalSolutionProto& default_instance() {
510 return *reinterpret_cast<const PrimalSolutionProto*>(
512 }
513 static constexpr int kIndexInFileMessages = 1;
514 friend void swap(PrimalSolutionProto& a, PrimalSolutionProto& b) { a.Swap(&b); }
515 inline void Swap(PrimalSolutionProto* PROTOBUF_NONNULL other) {
516 if (other == this) return;
517 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
518 InternalSwap(other);
519 } else {
520 ::google::protobuf::internal::GenericSwap(this, other);
521 }
522 }
523 void UnsafeArenaSwap(PrimalSolutionProto* PROTOBUF_NONNULL other) {
524 if (other == this) return;
525 ABSL_DCHECK(GetArena() == other->GetArena());
526 InternalSwap(other);
528
529 // implements Message ----------------------------------------------
530
531 PrimalSolutionProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
532 return ::google::protobuf::Message::DefaultConstruct<PrimalSolutionProto>(arena);
533 }
534 using ::google::protobuf::Message::CopyFrom;
535 void CopyFrom(const PrimalSolutionProto& from);
536 using ::google::protobuf::Message::MergeFrom;
537 void MergeFrom(const PrimalSolutionProto& from) { PrimalSolutionProto::MergeImpl(*this, from); }
538
539 private:
540 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
541 const ::google::protobuf::MessageLite& from_msg);
542
543 public:
544 bool IsInitialized() const {
545 return true;
546 }
547 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
548 #if defined(PROTOBUF_CUSTOM_VTABLE)
549 private:
550 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
551 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
552 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
553 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
554
555 public:
556 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
557 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
558 ::uint8_t* PROTOBUF_NONNULL target,
559 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
560 return _InternalSerialize(*this, target, stream);
561 }
562 #else // PROTOBUF_CUSTOM_VTABLE
563 ::size_t ByteSizeLong() const final;
564 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
565 ::uint8_t* PROTOBUF_NONNULL target,
566 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
567 #endif // PROTOBUF_CUSTOM_VTABLE
568 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
569
570 private:
571 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
572 static void SharedDtor(MessageLite& self);
573 void InternalSwap(PrimalSolutionProto* PROTOBUF_NONNULL other);
574 private:
575 template <typename T>
576 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
577 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.PrimalSolutionProto"; }
578
579 protected:
580 explicit PrimalSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
581 PrimalSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PrimalSolutionProto& from);
583 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PrimalSolutionProto&& from) noexcept
584 : PrimalSolutionProto(arena) {
585 *this = ::std::move(from);
587 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
588 static void* PROTOBUF_NONNULL PlacementNew_(
589 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
590 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
591 static constexpr auto InternalNewImpl_();
592
593 public:
594 static constexpr auto InternalGenerateClassData_();
595
596 ::google::protobuf::Metadata GetMetadata() const;
597 // nested types ----------------------------------------------------
598
599 // accessors -------------------------------------------------------
600 enum : int {
601 kAuxiliaryObjectiveValuesFieldNumber = 4,
602 kVariableValuesFieldNumber = 1,
603 kObjectiveValueFieldNumber = 2,
604 kFeasibilityStatusFieldNumber = 3,
605 };
606 // map<int64, double> auxiliary_objective_values = 4;
608 private:
609 int _internal_auxiliary_objective_values_size() const;
610
611 public:
613 const ::google::protobuf::Map<::int64_t, double>& auxiliary_objective_values() const;
614 ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL mutable_auxiliary_objective_values();
615
616 private:
617 const ::google::protobuf::Map<::int64_t, double>& _internal_auxiliary_objective_values() const;
618 ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL _internal_mutable_auxiliary_objective_values();
619
620 public:
621 // .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
622 bool has_variable_values() const;
623 void clear_variable_values() ;
624 const ::operations_research::math_opt::SparseDoubleVectorProto& variable_values() const;
630
631 private:
632 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_variable_values() const;
633 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_variable_values();
634
635 public:
636 // double objective_value = 2;
637 void clear_objective_value() ;
638 double objective_value() const;
639 void set_objective_value(double value);
640
641 private:
642 double _internal_objective_value() const;
643 void _internal_set_objective_value(double value);
644
645 public:
646 // .operations_research.math_opt.SolutionStatusProto feasibility_status = 3;
650
651 private:
652 ::operations_research::math_opt::SolutionStatusProto _internal_feasibility_status() const;
653 void _internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value);
654
655 public:
656 // @@protoc_insertion_point(class_scope:operations_research.math_opt.PrimalSolutionProto)
657 private:
658 class _Internal;
659 friend class ::google::protobuf::internal::TcParser;
660 static const ::google::protobuf::internal::TcParseTable<2, 4,
661 2, 0,
662 2>
663 _table_;
664
665 friend class ::google::protobuf::MessageLite;
666 friend class ::google::protobuf::Arena;
667 template <typename T>
668 friend class ::google::protobuf::Arena::InternalHelper;
669 using InternalArenaConstructable_ = void;
670 using DestructorSkippable_ = void;
671 struct Impl_ {
672 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
673 inline explicit Impl_(
674 ::google::protobuf::internal::InternalVisibility visibility,
675 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
676 inline explicit Impl_(
677 ::google::protobuf::internal::InternalVisibility visibility,
678 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
679 const PrimalSolutionProto& from_msg);
680 ::google::protobuf::internal::HasBits<1> _has_bits_;
681 ::google::protobuf::internal::CachedSize _cached_size_;
682 ::google::protobuf::internal::MapField<PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse, ::int64_t, double,
683 ::google::protobuf::internal::WireFormatLite::TYPE_INT64,
684 ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>
685 auxiliary_objective_values_;
686 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE variable_values_;
687 double objective_value_;
688 int feasibility_status_;
689 PROTOBUF_TSAN_DECLARE_MEMBER
690 };
691 union { Impl_ _impl_; };
692 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
693};
694
695OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalSolutionProto_class_data_;
696// -------------------------------------------------------------------
697
698class OR_PROTO_DLL PrimalRayProto final : public ::google::protobuf::Message
699/* @@protoc_insertion_point(class_definition:operations_research.math_opt.PrimalRayProto) */ {
700 public:
701 inline PrimalRayProto() : PrimalRayProto(nullptr) {}
702 ~PrimalRayProto() PROTOBUF_FINAL;
704#if defined(PROTOBUF_CUSTOM_VTABLE)
705 void operator delete(PrimalRayProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
706 SharedDtor(*msg);
707 ::google::protobuf::internal::SizedDelete(msg, sizeof(PrimalRayProto));
708 }
709#endif
710
711 template <typename = void>
712 explicit PROTOBUF_CONSTEXPR PrimalRayProto(::google::protobuf::internal::ConstantInitialized);
713
714 inline PrimalRayProto(const PrimalRayProto& from) : PrimalRayProto(nullptr, from) {}
715 inline PrimalRayProto(PrimalRayProto&& from) noexcept
716 : PrimalRayProto(nullptr, ::std::move(from)) {}
718 CopyFrom(from);
719 return *this;
721 inline PrimalRayProto& operator=(PrimalRayProto&& from) noexcept {
722 if (this == &from) return *this;
723 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
724 InternalSwap(&from);
725 } else {
726 CopyFrom(from);
727 }
728 return *this;
729 }
730
731 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
732 ABSL_ATTRIBUTE_LIFETIME_BOUND {
733 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
734 }
735 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
736 ABSL_ATTRIBUTE_LIFETIME_BOUND {
737 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
738 }
739
740 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
741 return GetDescriptor();
742 }
743 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
744 return default_instance().GetMetadata().descriptor;
746 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
747 return default_instance().GetMetadata().reflection;
749 static const PrimalRayProto& default_instance() {
750 return *reinterpret_cast<const PrimalRayProto*>(
752 }
753 static constexpr int kIndexInFileMessages = 2;
754 friend void swap(PrimalRayProto& a, PrimalRayProto& b) { a.Swap(&b); }
755 inline void Swap(PrimalRayProto* PROTOBUF_NONNULL other) {
756 if (other == this) return;
757 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
758 InternalSwap(other);
759 } else {
760 ::google::protobuf::internal::GenericSwap(this, other);
761 }
762 }
763 void UnsafeArenaSwap(PrimalRayProto* PROTOBUF_NONNULL other) {
764 if (other == this) return;
765 ABSL_DCHECK(GetArena() == other->GetArena());
766 InternalSwap(other);
767 }
769 // implements Message ----------------------------------------------
770
771 PrimalRayProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
772 return ::google::protobuf::Message::DefaultConstruct<PrimalRayProto>(arena);
773 }
774 using ::google::protobuf::Message::CopyFrom;
775 void CopyFrom(const PrimalRayProto& from);
776 using ::google::protobuf::Message::MergeFrom;
777 void MergeFrom(const PrimalRayProto& from) { PrimalRayProto::MergeImpl(*this, from); }
778
779 private:
780 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
781 const ::google::protobuf::MessageLite& from_msg);
783 public:
784 bool IsInitialized() const {
785 return true;
786 }
787 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
788 #if defined(PROTOBUF_CUSTOM_VTABLE)
789 private:
790 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
791 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
792 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
793 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
794
795 public:
796 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
797 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
798 ::uint8_t* PROTOBUF_NONNULL target,
799 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
800 return _InternalSerialize(*this, target, stream);
801 }
802 #else // PROTOBUF_CUSTOM_VTABLE
803 ::size_t ByteSizeLong() const final;
804 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
805 ::uint8_t* PROTOBUF_NONNULL target,
806 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
807 #endif // PROTOBUF_CUSTOM_VTABLE
808 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
809
810 private:
811 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
812 static void SharedDtor(MessageLite& self);
813 void InternalSwap(PrimalRayProto* PROTOBUF_NONNULL other);
814 private:
815 template <typename T>
816 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
817 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.PrimalRayProto"; }
818
819 protected:
820 explicit PrimalRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
821 PrimalRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PrimalRayProto& from);
823 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PrimalRayProto&& from) noexcept
824 : PrimalRayProto(arena) {
825 *this = ::std::move(from);
826 }
827 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
828 static void* PROTOBUF_NONNULL PlacementNew_(
829 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
830 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
831 static constexpr auto InternalNewImpl_();
832
833 public:
834 static constexpr auto InternalGenerateClassData_();
835
836 ::google::protobuf::Metadata GetMetadata() const;
837 // nested types ----------------------------------------------------
838
839 // accessors -------------------------------------------------------
840 enum : int {
842 };
843 // .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
844 bool has_variable_values() const;
845 void clear_variable_values() ;
846 const ::operations_research::math_opt::SparseDoubleVectorProto& variable_values() const;
852
853 private:
854 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_variable_values() const;
855 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_variable_values();
856
857 public:
858 // @@protoc_insertion_point(class_scope:operations_research.math_opt.PrimalRayProto)
859 private:
860 class _Internal;
861 friend class ::google::protobuf::internal::TcParser;
862 static const ::google::protobuf::internal::TcParseTable<0, 1,
863 1, 0,
864 2>
865 _table_;
867 friend class ::google::protobuf::MessageLite;
868 friend class ::google::protobuf::Arena;
869 template <typename T>
870 friend class ::google::protobuf::Arena::InternalHelper;
871 using InternalArenaConstructable_ = void;
872 using DestructorSkippable_ = void;
873 struct Impl_ {
874 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
875 inline explicit Impl_(
876 ::google::protobuf::internal::InternalVisibility visibility,
877 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
878 inline explicit Impl_(
879 ::google::protobuf::internal::InternalVisibility visibility,
880 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
881 const PrimalRayProto& from_msg);
882 ::google::protobuf::internal::HasBits<1> _has_bits_;
883 ::google::protobuf::internal::CachedSize _cached_size_;
884 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE variable_values_;
885 PROTOBUF_TSAN_DECLARE_MEMBER
886 };
887 union { Impl_ _impl_; };
888 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
889};
890
891OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalRayProto_class_data_;
892// -------------------------------------------------------------------
894class OR_PROTO_DLL DualSolutionProto final : public ::google::protobuf::Message
895/* @@protoc_insertion_point(class_definition:operations_research.math_opt.DualSolutionProto) */ {
896 public:
897 inline DualSolutionProto() : DualSolutionProto(nullptr) {}
898 ~DualSolutionProto() PROTOBUF_FINAL;
899
900#if defined(PROTOBUF_CUSTOM_VTABLE)
901 void operator delete(DualSolutionProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
902 SharedDtor(*msg);
903 ::google::protobuf::internal::SizedDelete(msg, sizeof(DualSolutionProto));
904 }
905#endif
906
907 template <typename = void>
908 explicit PROTOBUF_CONSTEXPR DualSolutionProto(::google::protobuf::internal::ConstantInitialized);
909
910 inline DualSolutionProto(const DualSolutionProto& from) : DualSolutionProto(nullptr, from) {}
911 inline DualSolutionProto(DualSolutionProto&& from) noexcept
912 : DualSolutionProto(nullptr, ::std::move(from)) {}
913 inline DualSolutionProto& operator=(const DualSolutionProto& from) {
914 CopyFrom(from);
915 return *this;
918 if (this == &from) return *this;
919 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
920 InternalSwap(&from);
921 } else {
922 CopyFrom(from);
924 return *this;
925 }
926
927 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
928 ABSL_ATTRIBUTE_LIFETIME_BOUND {
929 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
930 }
931 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
932 ABSL_ATTRIBUTE_LIFETIME_BOUND {
933 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
934 }
935
936 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
938 }
939 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
940 return default_instance().GetMetadata().descriptor;
941 }
942 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
943 return default_instance().GetMetadata().reflection;
944 }
946 return *reinterpret_cast<const DualSolutionProto*>(
949 static constexpr int kIndexInFileMessages = 3;
950 friend void swap(DualSolutionProto& a, DualSolutionProto& b) { a.Swap(&b); }
951 inline void Swap(DualSolutionProto* PROTOBUF_NONNULL other) {
952 if (other == this) return;
953 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
954 InternalSwap(other);
955 } else {
956 ::google::protobuf::internal::GenericSwap(this, other);
958 }
959 void UnsafeArenaSwap(DualSolutionProto* PROTOBUF_NONNULL other) {
960 if (other == this) return;
961 ABSL_DCHECK(GetArena() == other->GetArena());
962 InternalSwap(other);
963 }
964
965 // implements Message ----------------------------------------------
966
967 DualSolutionProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
968 return ::google::protobuf::Message::DefaultConstruct<DualSolutionProto>(arena);
969 }
970 using ::google::protobuf::Message::CopyFrom;
971 void CopyFrom(const DualSolutionProto& from);
972 using ::google::protobuf::Message::MergeFrom;
973 void MergeFrom(const DualSolutionProto& from) { DualSolutionProto::MergeImpl(*this, from); }
974
975 private:
976 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
977 const ::google::protobuf::MessageLite& from_msg);
978
979 public:
980 bool IsInitialized() const {
981 return true;
982 }
983 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
984 #if defined(PROTOBUF_CUSTOM_VTABLE)
985 private:
986 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
987 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
988 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
989 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
990
991 public:
992 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
993 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
994 ::uint8_t* PROTOBUF_NONNULL target,
995 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
996 return _InternalSerialize(*this, target, stream);
997 }
998 #else // PROTOBUF_CUSTOM_VTABLE
999 ::size_t ByteSizeLong() const final;
1000 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1001 ::uint8_t* PROTOBUF_NONNULL target,
1002 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1003 #endif // PROTOBUF_CUSTOM_VTABLE
1004 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1005
1006 private:
1007 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1008 static void SharedDtor(MessageLite& self);
1009 void InternalSwap(DualSolutionProto* PROTOBUF_NONNULL other);
1010 private:
1011 template <typename T>
1012 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1013 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.DualSolutionProto"; }
1014
1015 protected:
1016 explicit DualSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1017 DualSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DualSolutionProto& from);
1019 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DualSolutionProto&& from) noexcept
1020 : DualSolutionProto(arena) {
1021 *this = ::std::move(from);
1022 }
1023 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1024 static void* PROTOBUF_NONNULL PlacementNew_(
1025 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1026 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1027 static constexpr auto InternalNewImpl_();
1028
1029 public:
1030 static constexpr auto InternalGenerateClassData_();
1031
1032 ::google::protobuf::Metadata GetMetadata() const;
1033 // nested types ----------------------------------------------------
1034
1035 // accessors -------------------------------------------------------
1036 enum : int {
1042 };
1043 // .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
1044 bool has_dual_values() const;
1046 const ::operations_research::math_opt::SparseDoubleVectorProto& dual_values() const;
1052
1053 private:
1054 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_dual_values() const;
1055 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_dual_values();
1056
1057 public:
1058 // .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
1059 bool has_reduced_costs() const;
1060 void clear_reduced_costs() ;
1061 const ::operations_research::math_opt::SparseDoubleVectorProto& reduced_costs() const;
1067
1068 private:
1069 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_reduced_costs() const;
1070 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_reduced_costs();
1071
1072 public:
1073 // .operations_research.math_opt.SparseDoubleVectorProto quadratic_dual_values = 5;
1074 bool has_quadratic_dual_values() const;
1076 const ::operations_research::math_opt::SparseDoubleVectorProto& quadratic_dual_values() const;
1082
1083 private:
1084 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_quadratic_dual_values() const;
1085 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_quadratic_dual_values();
1086
1087 public:
1088 // optional double objective_value = 3;
1089 bool has_objective_value() const;
1090 void clear_objective_value() ;
1091 double objective_value() const;
1092 void set_objective_value(double value);
1093
1094 private:
1095 double _internal_objective_value() const;
1096 void _internal_set_objective_value(double value);
1097
1098 public:
1099 // .operations_research.math_opt.SolutionStatusProto feasibility_status = 4;
1103
1104 private:
1105 ::operations_research::math_opt::SolutionStatusProto _internal_feasibility_status() const;
1106 void _internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value);
1107
1108 public:
1109 // @@protoc_insertion_point(class_scope:operations_research.math_opt.DualSolutionProto)
1110 private:
1111 class _Internal;
1112 friend class ::google::protobuf::internal::TcParser;
1113 static const ::google::protobuf::internal::TcParseTable<3, 5,
1114 3, 0,
1115 2>
1116 _table_;
1117
1118 friend class ::google::protobuf::MessageLite;
1119 friend class ::google::protobuf::Arena;
1120 template <typename T>
1121 friend class ::google::protobuf::Arena::InternalHelper;
1122 using InternalArenaConstructable_ = void;
1123 using DestructorSkippable_ = void;
1124 struct Impl_ {
1125 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1126 inline explicit Impl_(
1127 ::google::protobuf::internal::InternalVisibility visibility,
1128 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1129 inline explicit Impl_(
1130 ::google::protobuf::internal::InternalVisibility visibility,
1131 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1132 const DualSolutionProto& from_msg);
1133 ::google::protobuf::internal::HasBits<1> _has_bits_;
1134 ::google::protobuf::internal::CachedSize _cached_size_;
1135 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE dual_values_;
1136 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE reduced_costs_;
1137 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE quadratic_dual_values_;
1138 double objective_value_;
1139 int feasibility_status_;
1140 PROTOBUF_TSAN_DECLARE_MEMBER
1141 };
1142 union { Impl_ _impl_; };
1143 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1144};
1145
1146OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualSolutionProto_class_data_;
1147// -------------------------------------------------------------------
1149class OR_PROTO_DLL DualRayProto final : public ::google::protobuf::Message
1150/* @@protoc_insertion_point(class_definition:operations_research.math_opt.DualRayProto) */ {
1151 public:
1152 inline DualRayProto() : DualRayProto(nullptr) {}
1153 ~DualRayProto() PROTOBUF_FINAL;
1154
1155#if defined(PROTOBUF_CUSTOM_VTABLE)
1156 void operator delete(DualRayProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1157 SharedDtor(*msg);
1158 ::google::protobuf::internal::SizedDelete(msg, sizeof(DualRayProto));
1160#endif
1161
1162 template <typename = void>
1163 explicit PROTOBUF_CONSTEXPR DualRayProto(::google::protobuf::internal::ConstantInitialized);
1164
1165 inline DualRayProto(const DualRayProto& from) : DualRayProto(nullptr, from) {}
1166 inline DualRayProto(DualRayProto&& from) noexcept
1167 : DualRayProto(nullptr, ::std::move(from)) {}
1168 inline DualRayProto& operator=(const DualRayProto& from) {
1169 CopyFrom(from);
1170 return *this;
1171 }
1172 inline DualRayProto& operator=(DualRayProto&& from) noexcept {
1173 if (this == &from) return *this;
1174 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1175 InternalSwap(&from);
1176 } else {
1177 CopyFrom(from);
1178 }
1179 return *this;
1180 }
1181
1182 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1183 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1184 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1185 }
1186 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1187 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1188 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1190
1191 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1192 return GetDescriptor();
1194 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1195 return default_instance().GetMetadata().descriptor;
1196 }
1197 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1198 return default_instance().GetMetadata().reflection;
1199 }
1200 static const DualRayProto& default_instance() {
1201 return *reinterpret_cast<const DualRayProto*>(
1203 }
1204 static constexpr int kIndexInFileMessages = 4;
1205 friend void swap(DualRayProto& a, DualRayProto& b) { a.Swap(&b); }
1206 inline void Swap(DualRayProto* PROTOBUF_NONNULL other) {
1207 if (other == this) return;
1208 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1209 InternalSwap(other);
1210 } else {
1211 ::google::protobuf::internal::GenericSwap(this, other);
1214 void UnsafeArenaSwap(DualRayProto* PROTOBUF_NONNULL other) {
1215 if (other == this) return;
1216 ABSL_DCHECK(GetArena() == other->GetArena());
1217 InternalSwap(other);
1218 }
1219
1220 // implements Message ----------------------------------------------
1222 DualRayProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1223 return ::google::protobuf::Message::DefaultConstruct<DualRayProto>(arena);
1224 }
1225 using ::google::protobuf::Message::CopyFrom;
1226 void CopyFrom(const DualRayProto& from);
1227 using ::google::protobuf::Message::MergeFrom;
1228 void MergeFrom(const DualRayProto& from) { DualRayProto::MergeImpl(*this, from); }
1230 private:
1231 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1232 const ::google::protobuf::MessageLite& from_msg);
1233
1234 public:
1235 bool IsInitialized() const {
1236 return true;
1237 }
1238 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1239 #if defined(PROTOBUF_CUSTOM_VTABLE)
1240 private:
1241 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1242 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1243 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1244 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1245
1246 public:
1247 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1248 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1249 ::uint8_t* PROTOBUF_NONNULL target,
1250 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1251 return _InternalSerialize(*this, target, stream);
1252 }
1253 #else // PROTOBUF_CUSTOM_VTABLE
1254 ::size_t ByteSizeLong() const final;
1255 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1256 ::uint8_t* PROTOBUF_NONNULL target,
1257 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1258 #endif // PROTOBUF_CUSTOM_VTABLE
1259 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1260
1261 private:
1262 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1263 static void SharedDtor(MessageLite& self);
1264 void InternalSwap(DualRayProto* PROTOBUF_NONNULL other);
1265 private:
1266 template <typename T>
1267 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1268 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.DualRayProto"; }
1269
1270 protected:
1271 explicit DualRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1272 DualRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DualRayProto& from);
1274 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DualRayProto&& from) noexcept
1275 : DualRayProto(arena) {
1276 *this = ::std::move(from);
1277 }
1278 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1279 static void* PROTOBUF_NONNULL PlacementNew_(
1280 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1281 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1282 static constexpr auto InternalNewImpl_();
1283
1284 public:
1285 static constexpr auto InternalGenerateClassData_();
1286
1287 ::google::protobuf::Metadata GetMetadata() const;
1288 // nested types ----------------------------------------------------
1289
1290 // accessors -------------------------------------------------------
1291 enum : int {
1294 };
1295 // .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
1296 bool has_dual_values() const;
1297 void clear_dual_values() ;
1298 const ::operations_research::math_opt::SparseDoubleVectorProto& dual_values() const;
1304
1305 private:
1306 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_dual_values() const;
1307 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_dual_values();
1308
1309 public:
1310 // .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
1311 bool has_reduced_costs() const;
1312 void clear_reduced_costs() ;
1313 const ::operations_research::math_opt::SparseDoubleVectorProto& reduced_costs() const;
1319
1320 private:
1321 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_reduced_costs() const;
1322 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_reduced_costs();
1323
1324 public:
1325 // @@protoc_insertion_point(class_scope:operations_research.math_opt.DualRayProto)
1326 private:
1327 class _Internal;
1328 friend class ::google::protobuf::internal::TcParser;
1329 static const ::google::protobuf::internal::TcParseTable<1, 2,
1330 2, 0,
1331 2>
1332 _table_;
1333
1334 friend class ::google::protobuf::MessageLite;
1335 friend class ::google::protobuf::Arena;
1336 template <typename T>
1337 friend class ::google::protobuf::Arena::InternalHelper;
1338 using InternalArenaConstructable_ = void;
1339 using DestructorSkippable_ = void;
1340 struct Impl_ {
1341 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1342 inline explicit Impl_(
1343 ::google::protobuf::internal::InternalVisibility visibility,
1344 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1345 inline explicit Impl_(
1346 ::google::protobuf::internal::InternalVisibility visibility,
1347 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1348 const DualRayProto& from_msg);
1349 ::google::protobuf::internal::HasBits<1> _has_bits_;
1350 ::google::protobuf::internal::CachedSize _cached_size_;
1351 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE dual_values_;
1352 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE reduced_costs_;
1353 PROTOBUF_TSAN_DECLARE_MEMBER
1354 };
1355 union { Impl_ _impl_; };
1356 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1357};
1358
1359OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualRayProto_class_data_;
1360// -------------------------------------------------------------------
1361
1362class OR_PROTO_DLL BasisProto final : public ::google::protobuf::Message
1363/* @@protoc_insertion_point(class_definition:operations_research.math_opt.BasisProto) */ {
1364 public:
1365 inline BasisProto() : BasisProto(nullptr) {}
1366 ~BasisProto() PROTOBUF_FINAL;
1367
1368#if defined(PROTOBUF_CUSTOM_VTABLE)
1369 void operator delete(BasisProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1370 SharedDtor(*msg);
1371 ::google::protobuf::internal::SizedDelete(msg, sizeof(BasisProto));
1372 }
1373#endif
1374
1375 template <typename = void>
1376 explicit PROTOBUF_CONSTEXPR BasisProto(::google::protobuf::internal::ConstantInitialized);
1377
1378 inline BasisProto(const BasisProto& from) : BasisProto(nullptr, from) {}
1379 inline BasisProto(BasisProto&& from) noexcept
1380 : BasisProto(nullptr, ::std::move(from)) {}
1381 inline BasisProto& operator=(const BasisProto& from) {
1382 CopyFrom(from);
1383 return *this;
1385 inline BasisProto& operator=(BasisProto&& from) noexcept {
1386 if (this == &from) return *this;
1387 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1388 InternalSwap(&from);
1389 } else {
1390 CopyFrom(from);
1391 }
1392 return *this;
1394
1395 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1396 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1397 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1398 }
1399 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1400 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1401 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1402 }
1404 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1405 return GetDescriptor();
1406 }
1407 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1408 return default_instance().GetMetadata().descriptor;
1409 }
1410 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1411 return default_instance().GetMetadata().reflection;
1413 static const BasisProto& default_instance() {
1414 return *reinterpret_cast<const BasisProto*>(
1416 }
1417 static constexpr int kIndexInFileMessages = 6;
1418 friend void swap(BasisProto& a, BasisProto& b) { a.Swap(&b); }
1419 inline void Swap(BasisProto* PROTOBUF_NONNULL other) {
1420 if (other == this) return;
1421 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1422 InternalSwap(other);
1423 } else {
1424 ::google::protobuf::internal::GenericSwap(this, other);
1427 void UnsafeArenaSwap(BasisProto* PROTOBUF_NONNULL other) {
1428 if (other == this) return;
1429 ABSL_DCHECK(GetArena() == other->GetArena());
1430 InternalSwap(other);
1431 }
1432
1433 // implements Message ----------------------------------------------
1434
1435 BasisProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1436 return ::google::protobuf::Message::DefaultConstruct<BasisProto>(arena);
1437 }
1438 using ::google::protobuf::Message::CopyFrom;
1439 void CopyFrom(const BasisProto& from);
1440 using ::google::protobuf::Message::MergeFrom;
1441 void MergeFrom(const BasisProto& from) { BasisProto::MergeImpl(*this, from); }
1442
1443 private:
1444 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1445 const ::google::protobuf::MessageLite& from_msg);
1446
1447 public:
1448 bool IsInitialized() const {
1449 return true;
1450 }
1451 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1452 #if defined(PROTOBUF_CUSTOM_VTABLE)
1453 private:
1454 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1455 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1456 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1457 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1458
1459 public:
1460 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1461 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1462 ::uint8_t* PROTOBUF_NONNULL target,
1463 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1464 return _InternalSerialize(*this, target, stream);
1465 }
1466 #else // PROTOBUF_CUSTOM_VTABLE
1467 ::size_t ByteSizeLong() const final;
1468 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1469 ::uint8_t* PROTOBUF_NONNULL target,
1470 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1471 #endif // PROTOBUF_CUSTOM_VTABLE
1472 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1473
1474 private:
1475 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1476 static void SharedDtor(MessageLite& self);
1477 void InternalSwap(BasisProto* PROTOBUF_NONNULL other);
1478 private:
1479 template <typename T>
1481 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.BasisProto"; }
1482
1483 protected:
1484 explicit BasisProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1485 BasisProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BasisProto& from);
1486 BasisProto(
1487 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BasisProto&& from) noexcept
1488 : BasisProto(arena) {
1489 *this = ::std::move(from);
1490 }
1491 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1492 static void* PROTOBUF_NONNULL PlacementNew_(
1493 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1494 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1495 static constexpr auto InternalNewImpl_();
1496
1497 public:
1498 static constexpr auto InternalGenerateClassData_();
1499
1500 ::google::protobuf::Metadata GetMetadata() const;
1501 // nested types ----------------------------------------------------
1502
1503 // accessors -------------------------------------------------------
1504 enum : int {
1508 };
1509 // .operations_research.math_opt.SparseBasisStatusVector constraint_status = 1;
1510 bool has_constraint_status() const;
1511 void clear_constraint_status() ;
1512 const ::operations_research::math_opt::SparseBasisStatusVector& constraint_status() const;
1518
1519 private:
1520 const ::operations_research::math_opt::SparseBasisStatusVector& _internal_constraint_status() const;
1521 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL _internal_mutable_constraint_status();
1522
1523 public:
1524 // .operations_research.math_opt.SparseBasisStatusVector variable_status = 2;
1525 bool has_variable_status() const;
1526 void clear_variable_status() ;
1527 const ::operations_research::math_opt::SparseBasisStatusVector& variable_status() const;
1533
1534 private:
1535 const ::operations_research::math_opt::SparseBasisStatusVector& _internal_variable_status() const;
1536 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL _internal_mutable_variable_status();
1537
1538 public:
1539 // .operations_research.math_opt.SolutionStatusProto basic_dual_feasibility = 3;
1543
1544 private:
1545 ::operations_research::math_opt::SolutionStatusProto _internal_basic_dual_feasibility() const;
1546 void _internal_set_basic_dual_feasibility(::operations_research::math_opt::SolutionStatusProto value);
1547
1548 public:
1549 // @@protoc_insertion_point(class_scope:operations_research.math_opt.BasisProto)
1550 private:
1551 class _Internal;
1552 friend class ::google::protobuf::internal::TcParser;
1553 static const ::google::protobuf::internal::TcParseTable<2, 3,
1554 2, 0,
1555 2>
1556 _table_;
1557
1558 friend class ::google::protobuf::MessageLite;
1559 friend class ::google::protobuf::Arena;
1560 template <typename T>
1561 friend class ::google::protobuf::Arena::InternalHelper;
1562 using InternalArenaConstructable_ = void;
1563 using DestructorSkippable_ = void;
1564 struct Impl_ {
1565 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1566 inline explicit Impl_(
1567 ::google::protobuf::internal::InternalVisibility visibility,
1568 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1569 inline explicit Impl_(
1570 ::google::protobuf::internal::InternalVisibility visibility,
1571 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1572 const BasisProto& from_msg);
1573 ::google::protobuf::internal::HasBits<1> _has_bits_;
1574 ::google::protobuf::internal::CachedSize _cached_size_;
1575 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE constraint_status_;
1576 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE variable_status_;
1577 int basic_dual_feasibility_;
1578 PROTOBUF_TSAN_DECLARE_MEMBER
1579 };
1580 union { Impl_ _impl_; };
1581 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1582};
1583
1584OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull BasisProto_class_data_;
1585// -------------------------------------------------------------------
1586
1587class OR_PROTO_DLL SolutionProto final : public ::google::protobuf::Message
1588/* @@protoc_insertion_point(class_definition:operations_research.math_opt.SolutionProto) */ {
1589 public:
1590 inline SolutionProto() : SolutionProto(nullptr) {}
1591 ~SolutionProto() PROTOBUF_FINAL;
1592
1593#if defined(PROTOBUF_CUSTOM_VTABLE)
1594 void operator delete(SolutionProto* PROTOBUF_NONNULL msg, std::destroying_delete_t) {
1595 SharedDtor(*msg);
1596 ::google::protobuf::internal::SizedDelete(msg, sizeof(SolutionProto));
1597 }
1598#endif
1600 template <typename = void>
1601 explicit PROTOBUF_CONSTEXPR SolutionProto(::google::protobuf::internal::ConstantInitialized);
1602
1603 inline SolutionProto(const SolutionProto& from) : SolutionProto(nullptr, from) {}
1604 inline SolutionProto(SolutionProto&& from) noexcept
1605 : SolutionProto(nullptr, ::std::move(from)) {}
1606 inline SolutionProto& operator=(const SolutionProto& from) {
1607 CopyFrom(from);
1608 return *this;
1609 }
1610 inline SolutionProto& operator=(SolutionProto&& from) noexcept {
1611 if (this == &from) return *this;
1612 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1613 InternalSwap(&from);
1614 } else {
1616 }
1617 return *this;
1618 }
1620 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1621 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1622 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1623 }
1624 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1625 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1626 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1627 }
1628
1629 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1630 return GetDescriptor();
1631 }
1632 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1633 return default_instance().GetMetadata().descriptor;
1634 }
1635 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1636 return default_instance().GetMetadata().reflection;
1637 }
1639 return *reinterpret_cast<const SolutionProto*>(
1642 static constexpr int kIndexInFileMessages = 7;
1643 friend void swap(SolutionProto& a, SolutionProto& b) { a.Swap(&b); }
1644 inline void Swap(SolutionProto* PROTOBUF_NONNULL other) {
1645 if (other == this) return;
1646 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1647 InternalSwap(other);
1648 } else {
1649 ::google::protobuf::internal::GenericSwap(this, other);
1650 }
1652 void UnsafeArenaSwap(SolutionProto* PROTOBUF_NONNULL other) {
1653 if (other == this) return;
1654 ABSL_DCHECK(GetArena() == other->GetArena());
1655 InternalSwap(other);
1656 }
1657
1658 // implements Message ----------------------------------------------
1659
1660 SolutionProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1661 return ::google::protobuf::Message::DefaultConstruct<SolutionProto>(arena);
1662 }
1663 using ::google::protobuf::Message::CopyFrom;
1664 void CopyFrom(const SolutionProto& from);
1665 using ::google::protobuf::Message::MergeFrom;
1666 void MergeFrom(const SolutionProto& from) { SolutionProto::MergeImpl(*this, from); }
1667
1668 private:
1669 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1670 const ::google::protobuf::MessageLite& from_msg);
1671
1672 public:
1673 bool IsInitialized() const {
1674 return true;
1676 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1677 #if defined(PROTOBUF_CUSTOM_VTABLE)
1678 private:
1679 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1680 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1681 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1682 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1683
1684 public:
1685 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1686 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1687 ::uint8_t* PROTOBUF_NONNULL target,
1688 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1689 return _InternalSerialize(*this, target, stream);
1690 }
1691 #else // PROTOBUF_CUSTOM_VTABLE
1692 ::size_t ByteSizeLong() const final;
1693 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1694 ::uint8_t* PROTOBUF_NONNULL target,
1695 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1696 #endif // PROTOBUF_CUSTOM_VTABLE
1697 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1698
1699 private:
1700 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1701 static void SharedDtor(MessageLite& self);
1702 void InternalSwap(SolutionProto* PROTOBUF_NONNULL other);
1703 private:
1704 template <typename T>
1705 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1706 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.SolutionProto"; }
1707
1708 protected:
1709 explicit SolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1710 SolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SolutionProto& from);
1712 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SolutionProto&& from) noexcept
1713 : SolutionProto(arena) {
1714 *this = ::std::move(from);
1715 }
1716 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1717 static void* PROTOBUF_NONNULL PlacementNew_(
1718 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1719 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1720 static constexpr auto InternalNewImpl_();
1721
1722 public:
1723 static constexpr auto InternalGenerateClassData_();
1724
1725 ::google::protobuf::Metadata GetMetadata() const;
1726 // nested types ----------------------------------------------------
1727
1728 // accessors -------------------------------------------------------
1729 enum : int {
1733 };
1734 // optional .operations_research.math_opt.PrimalSolutionProto primal_solution = 1;
1735 bool has_primal_solution() const;
1736 void clear_primal_solution() ;
1737 const ::operations_research::math_opt::PrimalSolutionProto& primal_solution() const;
1738 [[nodiscard]] ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE release_primal_solution();
1743
1744 private:
1745 const ::operations_research::math_opt::PrimalSolutionProto& _internal_primal_solution() const;
1746 ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL _internal_mutable_primal_solution();
1747
1748 public:
1749 // optional .operations_research.math_opt.DualSolutionProto dual_solution = 2;
1750 bool has_dual_solution() const;
1751 void clear_dual_solution() ;
1752 const ::operations_research::math_opt::DualSolutionProto& dual_solution() const;
1758
1759 private:
1760 const ::operations_research::math_opt::DualSolutionProto& _internal_dual_solution() const;
1761 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL _internal_mutable_dual_solution();
1762
1763 public:
1764 // optional .operations_research.math_opt.BasisProto basis = 3;
1765 bool has_basis() const;
1766 void clear_basis() ;
1767 const ::operations_research::math_opt::BasisProto& basis() const;
1768 [[nodiscard]] ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE release_basis();
1773
1774 private:
1775 const ::operations_research::math_opt::BasisProto& _internal_basis() const;
1776 ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL _internal_mutable_basis();
1777
1778 public:
1779 // @@protoc_insertion_point(class_scope:operations_research.math_opt.SolutionProto)
1780 private:
1781 class _Internal;
1782 friend class ::google::protobuf::internal::TcParser;
1783 static const ::google::protobuf::internal::TcParseTable<2, 3,
1784 3, 0,
1785 2>
1786 _table_;
1787
1788 friend class ::google::protobuf::MessageLite;
1789 friend class ::google::protobuf::Arena;
1790 template <typename T>
1791 friend class ::google::protobuf::Arena::InternalHelper;
1792 using InternalArenaConstructable_ = void;
1793 using DestructorSkippable_ = void;
1794 struct Impl_ {
1795 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1796 inline explicit Impl_(
1797 ::google::protobuf::internal::InternalVisibility visibility,
1798 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1799 inline explicit Impl_(
1800 ::google::protobuf::internal::InternalVisibility visibility,
1801 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1802 const SolutionProto& from_msg);
1803 ::google::protobuf::internal::HasBits<1> _has_bits_;
1804 ::google::protobuf::internal::CachedSize _cached_size_;
1805 ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE primal_solution_;
1806 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE dual_solution_;
1807 ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE basis_;
1808 PROTOBUF_TSAN_DECLARE_MEMBER
1809 };
1810 union { Impl_ _impl_; };
1811 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1812};
1813
1814OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SolutionProto_class_data_;
1815
1816// ===================================================================
1817
1818
1821// ===================================================================
1822
1823
1824#ifdef __GNUC__
1825#pragma GCC diagnostic push
1826#pragma GCC diagnostic ignored "-Wstrict-aliasing"
1827#endif // __GNUC__
1828// -------------------------------------------------------------------
1829
1830// -------------------------------------------------------------------
1831
1832// PrimalSolutionProto
1833
1834// .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
1835inline bool PrimalSolutionProto::has_variable_values() const {
1836 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
1837 PROTOBUF_ASSUME(!value || _impl_.variable_values_ != nullptr);
1838 return value;
1839}
1840inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalSolutionProto::_internal_variable_values() const {
1841 ::google::protobuf::internal::TSanRead(&_impl_);
1842 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.variable_values_;
1844}
1845inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalSolutionProto::variable_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1846 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.variable_values)
1847 return _internal_variable_values();
1851 ::google::protobuf::internal::TSanWrite(&_impl_);
1852 if (GetArena() == nullptr) {
1853 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
1854 }
1855 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
1856 if (value != nullptr) {
1857 _impl_._has_bits_[0] |= 0x00000001u;
1858 } else {
1859 _impl_._has_bits_[0] &= ~0x00000001u;
1860 }
1861 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.PrimalSolutionProto.variable_values)
1863inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalSolutionProto::release_variable_values() {
1864 ::google::protobuf::internal::TSanWrite(&_impl_);
1865
1866 _impl_._has_bits_[0] &= ~0x00000001u;
1867 ::operations_research::math_opt::SparseDoubleVectorProto* released = _impl_.variable_values_;
1868 _impl_.variable_values_ = nullptr;
1869 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
1870 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
1871 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
1872 if (GetArena() == nullptr) {
1873 delete old;
1874 }
1875 } else {
1876 if (GetArena() != nullptr) {
1877 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
1878 }
1879 }
1880 return released;
1881}
1882inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalSolutionProto::unsafe_arena_release_variable_values() {
1883 ::google::protobuf::internal::TSanWrite(&_impl_);
1884 // @@protoc_insertion_point(field_release:operations_research.math_opt.PrimalSolutionProto.variable_values)
1885
1886 _impl_._has_bits_[0] &= ~0x00000001u;
1887 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.variable_values_;
1888 _impl_.variable_values_ = nullptr;
1889 return temp;
1890}
1891inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalSolutionProto::_internal_mutable_variable_values() {
1892 ::google::protobuf::internal::TSanWrite(&_impl_);
1893 if (_impl_.variable_values_ == nullptr) {
1894 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
1895 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
1896 }
1897 return _impl_.variable_values_;
1898}
1899inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalSolutionProto::mutable_variable_values()
1900 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1901 _impl_._has_bits_[0] |= 0x00000001u;
1902 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_variable_values();
1903 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.PrimalSolutionProto.variable_values)
1904 return _msg;
1905}
1907 ::google::protobuf::Arena* message_arena = GetArena();
1908 ::google::protobuf::internal::TSanWrite(&_impl_);
1909 if (message_arena == nullptr) {
1910 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
1911 }
1913 if (value != nullptr) {
1914 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
1915 if (message_arena != submessage_arena) {
1916 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
1917 }
1918 _impl_._has_bits_[0] |= 0x00000001u;
1919 } else {
1920 _impl_._has_bits_[0] &= ~0x00000001u;
1921 }
1922
1923 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
1924 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.PrimalSolutionProto.variable_values)
1925}
1926
1927// double objective_value = 2;
1929 ::google::protobuf::internal::TSanWrite(&_impl_);
1930 _impl_.objective_value_ = 0;
1931 _impl_._has_bits_[0] &= ~0x00000002u;
1932}
1933inline double PrimalSolutionProto::objective_value() const {
1934 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.objective_value)
1935 return _internal_objective_value();
1936}
1937inline void PrimalSolutionProto::set_objective_value(double value) {
1938 _internal_set_objective_value(value);
1939 _impl_._has_bits_[0] |= 0x00000002u;
1940 // @@protoc_insertion_point(field_set:operations_research.math_opt.PrimalSolutionProto.objective_value)
1942inline double PrimalSolutionProto::_internal_objective_value() const {
1943 ::google::protobuf::internal::TSanRead(&_impl_);
1944 return _impl_.objective_value_;
1945}
1946inline void PrimalSolutionProto::_internal_set_objective_value(double value) {
1947 ::google::protobuf::internal::TSanWrite(&_impl_);
1948 _impl_.objective_value_ = value;
1949}
1951// map<int64, double> auxiliary_objective_values = 4;
1952inline int PrimalSolutionProto::_internal_auxiliary_objective_values_size() const {
1953 return _internal_auxiliary_objective_values().size();
1954}
1956 return _internal_auxiliary_objective_values_size();
1957}
1959 ::google::protobuf::internal::TSanWrite(&_impl_);
1960 _impl_.auxiliary_objective_values_.Clear();
1961}
1962inline const ::google::protobuf::Map<::int64_t, double>& PrimalSolutionProto::_internal_auxiliary_objective_values() const {
1963 ::google::protobuf::internal::TSanRead(&_impl_);
1964 return _impl_.auxiliary_objective_values_.GetMap();
1965}
1966inline const ::google::protobuf::Map<::int64_t, double>& PrimalSolutionProto::auxiliary_objective_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1967 // @@protoc_insertion_point(field_map:operations_research.math_opt.PrimalSolutionProto.auxiliary_objective_values)
1968 return _internal_auxiliary_objective_values();
1969}
1970inline ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL PrimalSolutionProto::_internal_mutable_auxiliary_objective_values() {
1971 ::google::protobuf::internal::TSanWrite(&_impl_);
1972 return _impl_.auxiliary_objective_values_.MutableMap();
1973}
1974inline ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL PrimalSolutionProto::mutable_auxiliary_objective_values()
1975 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1976 // @@protoc_insertion_point(field_mutable_map:operations_research.math_opt.PrimalSolutionProto.auxiliary_objective_values)
1977 return _internal_mutable_auxiliary_objective_values();
1978}
1980// .operations_research.math_opt.SolutionStatusProto feasibility_status = 3;
1982 ::google::protobuf::internal::TSanWrite(&_impl_);
1983 _impl_.feasibility_status_ = 0;
1984 _impl_._has_bits_[0] &= ~0x00000004u;
1985}
1986inline ::operations_research::math_opt::SolutionStatusProto PrimalSolutionProto::feasibility_status() const {
1987 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.feasibility_status)
1988 return _internal_feasibility_status();
1989}
1991 _internal_set_feasibility_status(value);
1992 _impl_._has_bits_[0] |= 0x00000004u;
1993 // @@protoc_insertion_point(field_set:operations_research.math_opt.PrimalSolutionProto.feasibility_status)
1995inline ::operations_research::math_opt::SolutionStatusProto PrimalSolutionProto::_internal_feasibility_status() const {
1996 ::google::protobuf::internal::TSanRead(&_impl_);
1997 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.feasibility_status_);
1998}
1999inline void PrimalSolutionProto::_internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value) {
2000 ::google::protobuf::internal::TSanWrite(&_impl_);
2001 _impl_.feasibility_status_ = value;
2002}
2004// -------------------------------------------------------------------
2005
2006// PrimalRayProto
2007
2008// .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
2009inline bool PrimalRayProto::has_variable_values() const {
2010 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2011 PROTOBUF_ASSUME(!value || _impl_.variable_values_ != nullptr);
2012 return value;
2013}
2014inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalRayProto::_internal_variable_values() const {
2015 ::google::protobuf::internal::TSanRead(&_impl_);
2016 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.variable_values_;
2018}
2019inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalRayProto::variable_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2020 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalRayProto.variable_values)
2021 return _internal_variable_values();
2022}
2025 ::google::protobuf::internal::TSanWrite(&_impl_);
2026 if (GetArena() == nullptr) {
2027 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
2028 }
2029 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2030 if (value != nullptr) {
2031 _impl_._has_bits_[0] |= 0x00000001u;
2032 } else {
2033 _impl_._has_bits_[0] &= ~0x00000001u;
2034 }
2035 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.PrimalRayProto.variable_values)
2036}
2037inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalRayProto::release_variable_values() {
2038 ::google::protobuf::internal::TSanWrite(&_impl_);
2039
2040 _impl_._has_bits_[0] &= ~0x00000001u;
2042 _impl_.variable_values_ = nullptr;
2043 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2044 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2045 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2046 if (GetArena() == nullptr) {
2047 delete old;
2048 }
2049 } else {
2050 if (GetArena() != nullptr) {
2051 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2052 }
2053 }
2054 return released;
2055}
2056inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalRayProto::unsafe_arena_release_variable_values() {
2057 ::google::protobuf::internal::TSanWrite(&_impl_);
2058 // @@protoc_insertion_point(field_release:operations_research.math_opt.PrimalRayProto.variable_values)
2059
2060 _impl_._has_bits_[0] &= ~0x00000001u;
2061 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.variable_values_;
2062 _impl_.variable_values_ = nullptr;
2063 return temp;
2064}
2065inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalRayProto::_internal_mutable_variable_values() {
2066 ::google::protobuf::internal::TSanWrite(&_impl_);
2067 if (_impl_.variable_values_ == nullptr) {
2068 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2069 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2071 return _impl_.variable_values_;
2072}
2073inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalRayProto::mutable_variable_values()
2074 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2075 _impl_._has_bits_[0] |= 0x00000001u;
2076 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_variable_values();
2077 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.PrimalRayProto.variable_values)
2078 return _msg;
2079}
2081 ::google::protobuf::Arena* message_arena = GetArena();
2082 ::google::protobuf::internal::TSanWrite(&_impl_);
2083 if (message_arena == nullptr) {
2084 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
2085 }
2086
2087 if (value != nullptr) {
2088 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2089 if (message_arena != submessage_arena) {
2090 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2091 }
2092 _impl_._has_bits_[0] |= 0x00000001u;
2093 } else {
2094 _impl_._has_bits_[0] &= ~0x00000001u;
2095 }
2096
2097 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2098 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.PrimalRayProto.variable_values)
2099}
2100
2101// -------------------------------------------------------------------
2102
2103// DualSolutionProto
2104
2105// .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
2106inline bool DualSolutionProto::has_dual_values() const {
2107 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2108 PROTOBUF_ASSUME(!value || _impl_.dual_values_ != nullptr);
2109 return value;
2110}
2111inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_dual_values() const {
2112 ::google::protobuf::internal::TSanRead(&_impl_);
2113 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.dual_values_;
2115}
2116inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2117 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.dual_values)
2118 return _internal_dual_values();
2119}
2122 ::google::protobuf::internal::TSanWrite(&_impl_);
2123 if (GetArena() == nullptr) {
2124 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2125 }
2126 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2127 if (value != nullptr) {
2128 _impl_._has_bits_[0] |= 0x00000001u;
2129 } else {
2130 _impl_._has_bits_[0] &= ~0x00000001u;
2132 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.dual_values)
2133}
2134inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_dual_values() {
2135 ::google::protobuf::internal::TSanWrite(&_impl_);
2136
2137 _impl_._has_bits_[0] &= ~0x00000001u;
2139 _impl_.dual_values_ = nullptr;
2140 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2141 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2142 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2143 if (GetArena() == nullptr) {
2144 delete old;
2145 }
2146 } else {
2147 if (GetArena() != nullptr) {
2148 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2150 }
2151 return released;
2152}
2153inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_dual_values() {
2154 ::google::protobuf::internal::TSanWrite(&_impl_);
2155 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.dual_values)
2156
2157 _impl_._has_bits_[0] &= ~0x00000001u;
2159 _impl_.dual_values_ = nullptr;
2160 return temp;
2161}
2162inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_dual_values() {
2163 ::google::protobuf::internal::TSanWrite(&_impl_);
2164 if (_impl_.dual_values_ == nullptr) {
2165 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2166 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2167 }
2168 return _impl_.dual_values_;
2169}
2170inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_dual_values()
2171 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2172 _impl_._has_bits_[0] |= 0x00000001u;
2173 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_dual_values();
2174 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.dual_values)
2175 return _msg;
2176}
2178 ::google::protobuf::Arena* message_arena = GetArena();
2179 ::google::protobuf::internal::TSanWrite(&_impl_);
2180 if (message_arena == nullptr) {
2181 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2182 }
2183
2184 if (value != nullptr) {
2185 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2186 if (message_arena != submessage_arena) {
2187 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2188 }
2189 _impl_._has_bits_[0] |= 0x00000001u;
2190 } else {
2191 _impl_._has_bits_[0] &= ~0x00000001u;
2193
2194 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2195 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.dual_values)
2196}
2197
2198// .operations_research.math_opt.SparseDoubleVectorProto quadratic_dual_values = 5;
2200 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
2201 PROTOBUF_ASSUME(!value || _impl_.quadratic_dual_values_ != nullptr);
2202 return value;
2203}
2204inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_quadratic_dual_values() const {
2205 ::google::protobuf::internal::TSanRead(&_impl_);
2206 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.quadratic_dual_values_;
2208}
2209inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::quadratic_dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2210 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2211 return _internal_quadratic_dual_values();
2212}
2215 ::google::protobuf::internal::TSanWrite(&_impl_);
2216 if (GetArena() == nullptr) {
2217 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quadratic_dual_values_);
2218 }
2219 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2220 if (value != nullptr) {
2221 _impl_._has_bits_[0] |= 0x00000004u;
2222 } else {
2223 _impl_._has_bits_[0] &= ~0x00000004u;
2225 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2226}
2227inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_quadratic_dual_values() {
2228 ::google::protobuf::internal::TSanWrite(&_impl_);
2229
2230 _impl_._has_bits_[0] &= ~0x00000004u;
2231 ::operations_research::math_opt::SparseDoubleVectorProto* released = _impl_.quadratic_dual_values_;
2232 _impl_.quadratic_dual_values_ = nullptr;
2233 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2234 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2235 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2236 if (GetArena() == nullptr) {
2237 delete old;
2238 }
2239 } else {
2240 if (GetArena() != nullptr) {
2241 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2243 }
2244 return released;
2245}
2246inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_quadratic_dual_values() {
2247 ::google::protobuf::internal::TSanWrite(&_impl_);
2248 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2249
2250 _impl_._has_bits_[0] &= ~0x00000004u;
2251 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.quadratic_dual_values_;
2252 _impl_.quadratic_dual_values_ = nullptr;
2253 return temp;
2254}
2255inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_quadratic_dual_values() {
2256 ::google::protobuf::internal::TSanWrite(&_impl_);
2257 if (_impl_.quadratic_dual_values_ == nullptr) {
2258 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2259 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2260 }
2261 return _impl_.quadratic_dual_values_;
2262}
2263inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_quadratic_dual_values()
2264 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2265 _impl_._has_bits_[0] |= 0x00000004u;
2266 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_quadratic_dual_values();
2267 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2268 return _msg;
2269}
2271 ::google::protobuf::Arena* message_arena = GetArena();
2272 ::google::protobuf::internal::TSanWrite(&_impl_);
2273 if (message_arena == nullptr) {
2274 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quadratic_dual_values_);
2275 }
2276
2277 if (value != nullptr) {
2278 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2279 if (message_arena != submessage_arena) {
2280 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2281 }
2282 _impl_._has_bits_[0] |= 0x00000004u;
2283 } else {
2284 _impl_._has_bits_[0] &= ~0x00000004u;
2286
2287 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2288 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2289}
2290
2291// .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
2292inline bool DualSolutionProto::has_reduced_costs() const {
2293 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2294 PROTOBUF_ASSUME(!value || _impl_.reduced_costs_ != nullptr);
2295 return value;
2296}
2297inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_reduced_costs() const {
2298 ::google::protobuf::internal::TSanRead(&_impl_);
2299 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.reduced_costs_;
2301}
2302inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::reduced_costs() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2303 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.reduced_costs)
2304 return _internal_reduced_costs();
2305}
2308 ::google::protobuf::internal::TSanWrite(&_impl_);
2309 if (GetArena() == nullptr) {
2310 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2311 }
2312 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2313 if (value != nullptr) {
2314 _impl_._has_bits_[0] |= 0x00000002u;
2315 } else {
2316 _impl_._has_bits_[0] &= ~0x00000002u;
2318 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.reduced_costs)
2319}
2320inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_reduced_costs() {
2321 ::google::protobuf::internal::TSanWrite(&_impl_);
2322
2323 _impl_._has_bits_[0] &= ~0x00000002u;
2325 _impl_.reduced_costs_ = nullptr;
2326 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2327 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2328 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2329 if (GetArena() == nullptr) {
2330 delete old;
2331 }
2332 } else {
2333 if (GetArena() != nullptr) {
2334 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2336 }
2337 return released;
2338}
2339inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_reduced_costs() {
2340 ::google::protobuf::internal::TSanWrite(&_impl_);
2341 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.reduced_costs)
2342
2343 _impl_._has_bits_[0] &= ~0x00000002u;
2345 _impl_.reduced_costs_ = nullptr;
2346 return temp;
2347}
2348inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_reduced_costs() {
2349 ::google::protobuf::internal::TSanWrite(&_impl_);
2350 if (_impl_.reduced_costs_ == nullptr) {
2351 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2352 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2353 }
2354 return _impl_.reduced_costs_;
2355}
2356inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_reduced_costs()
2357 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2358 _impl_._has_bits_[0] |= 0x00000002u;
2359 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_reduced_costs();
2360 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.reduced_costs)
2361 return _msg;
2362}
2364 ::google::protobuf::Arena* message_arena = GetArena();
2365 ::google::protobuf::internal::TSanWrite(&_impl_);
2366 if (message_arena == nullptr) {
2367 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2368 }
2369
2370 if (value != nullptr) {
2371 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2372 if (message_arena != submessage_arena) {
2373 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2374 }
2375 _impl_._has_bits_[0] |= 0x00000002u;
2376 } else {
2377 _impl_._has_bits_[0] &= ~0x00000002u;
2379
2380 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2381 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.reduced_costs)
2382}
2383
2384// optional double objective_value = 3;
2385inline bool DualSolutionProto::has_objective_value() const {
2386 bool value = (_impl_._has_bits_[0] & 0x00000008u) != 0;
2387 return value;
2388}
2390 ::google::protobuf::internal::TSanWrite(&_impl_);
2391 _impl_.objective_value_ = 0;
2392 _impl_._has_bits_[0] &= ~0x00000008u;
2393}
2394inline double DualSolutionProto::objective_value() const {
2395 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.objective_value)
2396 return _internal_objective_value();
2397}
2398inline void DualSolutionProto::set_objective_value(double value) {
2399 _internal_set_objective_value(value);
2400 _impl_._has_bits_[0] |= 0x00000008u;
2401 // @@protoc_insertion_point(field_set:operations_research.math_opt.DualSolutionProto.objective_value)
2402}
2403inline double DualSolutionProto::_internal_objective_value() const {
2404 ::google::protobuf::internal::TSanRead(&_impl_);
2405 return _impl_.objective_value_;
2406}
2407inline void DualSolutionProto::_internal_set_objective_value(double value) {
2408 ::google::protobuf::internal::TSanWrite(&_impl_);
2409 _impl_.objective_value_ = value;
2410}
2411
2412// .operations_research.math_opt.SolutionStatusProto feasibility_status = 4;
2414 ::google::protobuf::internal::TSanWrite(&_impl_);
2415 _impl_.feasibility_status_ = 0;
2416 _impl_._has_bits_[0] &= ~0x00000010u;
2417}
2418inline ::operations_research::math_opt::SolutionStatusProto DualSolutionProto::feasibility_status() const {
2419 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.feasibility_status)
2420 return _internal_feasibility_status();
2421}
2423 _internal_set_feasibility_status(value);
2424 _impl_._has_bits_[0] |= 0x00000010u;
2425 // @@protoc_insertion_point(field_set:operations_research.math_opt.DualSolutionProto.feasibility_status)
2426}
2427inline ::operations_research::math_opt::SolutionStatusProto DualSolutionProto::_internal_feasibility_status() const {
2428 ::google::protobuf::internal::TSanRead(&_impl_);
2429 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.feasibility_status_);
2430}
2431inline void DualSolutionProto::_internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value) {
2432 ::google::protobuf::internal::TSanWrite(&_impl_);
2433 _impl_.feasibility_status_ = value;
2434}
2435
2436// -------------------------------------------------------------------
2438// DualRayProto
2439
2440// .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
2441inline bool DualRayProto::has_dual_values() const {
2442 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2443 PROTOBUF_ASSUME(!value || _impl_.dual_values_ != nullptr);
2444 return value;
2445}
2446inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::_internal_dual_values() const {
2447 ::google::protobuf::internal::TSanRead(&_impl_);
2448 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.dual_values_;
2450}
2451inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2452 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualRayProto.dual_values)
2453 return _internal_dual_values();
2454}
2457 ::google::protobuf::internal::TSanWrite(&_impl_);
2458 if (GetArena() == nullptr) {
2459 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2460 }
2461 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2462 if (value != nullptr) {
2463 _impl_._has_bits_[0] |= 0x00000001u;
2464 } else {
2465 _impl_._has_bits_[0] &= ~0x00000001u;
2466 }
2467 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualRayProto.dual_values)
2468}
2469inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::release_dual_values() {
2470 ::google::protobuf::internal::TSanWrite(&_impl_);
2472 _impl_._has_bits_[0] &= ~0x00000001u;
2474 _impl_.dual_values_ = nullptr;
2475 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2476 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2477 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2478 if (GetArena() == nullptr) {
2479 delete old;
2480 }
2481 } else {
2482 if (GetArena() != nullptr) {
2483 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2484 }
2486 return released;
2487}
2488inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::unsafe_arena_release_dual_values() {
2489 ::google::protobuf::internal::TSanWrite(&_impl_);
2490 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualRayProto.dual_values)
2491
2492 _impl_._has_bits_[0] &= ~0x00000001u;
2494 _impl_.dual_values_ = nullptr;
2495 return temp;
2496}
2497inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::_internal_mutable_dual_values() {
2498 ::google::protobuf::internal::TSanWrite(&_impl_);
2499 if (_impl_.dual_values_ == nullptr) {
2500 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2501 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2502 }
2503 return _impl_.dual_values_;
2505inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::mutable_dual_values()
2506 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2507 _impl_._has_bits_[0] |= 0x00000001u;
2508 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_dual_values();
2509 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualRayProto.dual_values)
2510 return _msg;
2511}
2513 ::google::protobuf::Arena* message_arena = GetArena();
2514 ::google::protobuf::internal::TSanWrite(&_impl_);
2515 if (message_arena == nullptr) {
2516 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2517 }
2518
2519 if (value != nullptr) {
2520 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2521 if (message_arena != submessage_arena) {
2522 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2523 }
2524 _impl_._has_bits_[0] |= 0x00000001u;
2525 } else {
2526 _impl_._has_bits_[0] &= ~0x00000001u;
2527 }
2529 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2530 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualRayProto.dual_values)
2531}
2532
2533// .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
2534inline bool DualRayProto::has_reduced_costs() const {
2535 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2536 PROTOBUF_ASSUME(!value || _impl_.reduced_costs_ != nullptr);
2537 return value;
2538}
2539inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::_internal_reduced_costs() const {
2540 ::google::protobuf::internal::TSanRead(&_impl_);
2541 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.reduced_costs_;
2543}
2544inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::reduced_costs() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2545 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualRayProto.reduced_costs)
2546 return _internal_reduced_costs();
2547}
2549 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE value) {
2550 ::google::protobuf::internal::TSanWrite(&_impl_);
2551 if (GetArena() == nullptr) {
2552 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2553 }
2554 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2555 if (value != nullptr) {
2556 _impl_._has_bits_[0] |= 0x00000002u;
2557 } else {
2558 _impl_._has_bits_[0] &= ~0x00000002u;
2559 }
2560 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualRayProto.reduced_costs)
2561}
2562inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::release_reduced_costs() {
2563 ::google::protobuf::internal::TSanWrite(&_impl_);
2565 _impl_._has_bits_[0] &= ~0x00000002u;
2567 _impl_.reduced_costs_ = nullptr;
2568 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2569 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2570 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2571 if (GetArena() == nullptr) {
2572 delete old;
2573 }
2574 } else {
2575 if (GetArena() != nullptr) {
2576 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2577 }
2579 return released;
2580}
2581inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::unsafe_arena_release_reduced_costs() {
2582 ::google::protobuf::internal::TSanWrite(&_impl_);
2583 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualRayProto.reduced_costs)
2584
2585 _impl_._has_bits_[0] &= ~0x00000002u;
2587 _impl_.reduced_costs_ = nullptr;
2588 return temp;
2589}
2590inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::_internal_mutable_reduced_costs() {
2591 ::google::protobuf::internal::TSanWrite(&_impl_);
2592 if (_impl_.reduced_costs_ == nullptr) {
2593 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2594 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2595 }
2596 return _impl_.reduced_costs_;
2598inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::mutable_reduced_costs()
2599 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2600 _impl_._has_bits_[0] |= 0x00000002u;
2601 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_reduced_costs();
2602 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualRayProto.reduced_costs)
2603 return _msg;
2604}
2606 ::google::protobuf::Arena* message_arena = GetArena();
2607 ::google::protobuf::internal::TSanWrite(&_impl_);
2608 if (message_arena == nullptr) {
2609 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2610 }
2611
2612 if (value != nullptr) {
2613 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2614 if (message_arena != submessage_arena) {
2615 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2616 }
2617 _impl_._has_bits_[0] |= 0x00000002u;
2618 } else {
2619 _impl_._has_bits_[0] &= ~0x00000002u;
2620 }
2622 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2623 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualRayProto.reduced_costs)
2624}
2625
2626// -------------------------------------------------------------------
2627
2628// SparseBasisStatusVector
2629
2630// repeated int64 ids = 1;
2631inline int SparseBasisStatusVector::_internal_ids_size() const {
2632 return _internal_ids().size();
2633}
2634inline int SparseBasisStatusVector::ids_size() const {
2635 return _internal_ids_size();
2636}
2638 ::google::protobuf::internal::TSanWrite(&_impl_);
2639 _impl_.ids_.Clear();
2640}
2641inline ::int64_t SparseBasisStatusVector::ids(int index) const {
2642 // @@protoc_insertion_point(field_get:operations_research.math_opt.SparseBasisStatusVector.ids)
2643 return _internal_ids().Get(index);
2644}
2645inline void SparseBasisStatusVector::set_ids(int index, ::int64_t value) {
2646 _internal_mutable_ids()->Set(index, value);
2647 // @@protoc_insertion_point(field_set:operations_research.math_opt.SparseBasisStatusVector.ids)
2648}
2649inline void SparseBasisStatusVector::add_ids(::int64_t value) {
2650 ::google::protobuf::internal::TSanWrite(&_impl_);
2651 _internal_mutable_ids()->Add(value);
2652 // @@protoc_insertion_point(field_add:operations_research.math_opt.SparseBasisStatusVector.ids)
2653}
2654inline const ::google::protobuf::RepeatedField<::int64_t>& SparseBasisStatusVector::ids() const
2655 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2656 // @@protoc_insertion_point(field_list:operations_research.math_opt.SparseBasisStatusVector.ids)
2657 return _internal_ids();
2659inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL SparseBasisStatusVector::mutable_ids()
2660 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2661 // @@protoc_insertion_point(field_mutable_list:operations_research.math_opt.SparseBasisStatusVector.ids)
2662 ::google::protobuf::internal::TSanWrite(&_impl_);
2663 return _internal_mutable_ids();
2664}
2665inline const ::google::protobuf::RepeatedField<::int64_t>&
2666SparseBasisStatusVector::_internal_ids() const {
2667 ::google::protobuf::internal::TSanRead(&_impl_);
2668 return _impl_.ids_;
2669}
2670inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
2671SparseBasisStatusVector::_internal_mutable_ids() {
2672 ::google::protobuf::internal::TSanRead(&_impl_);
2673 return &_impl_.ids_;
2674}
2675
2676// repeated .operations_research.math_opt.BasisStatusProto values = 2;
2677inline int SparseBasisStatusVector::_internal_values_size() const {
2678 return _internal_values().size();
2679}
2680inline int SparseBasisStatusVector::values_size() const {
2681 return _internal_values_size();
2682}
2684 ::google::protobuf::internal::TSanWrite(&_impl_);
2685 _impl_.values_.Clear();
2686}
2687inline ::operations_research::math_opt::BasisStatusProto SparseBasisStatusVector::values(int index) const {
2688 // @@protoc_insertion_point(field_get:operations_research.math_opt.SparseBasisStatusVector.values)
2689 return static_cast<::operations_research::math_opt::BasisStatusProto>(_internal_values().Get(index));
2690}
2692 _internal_mutable_values()->Set(index, value);
2693 // @@protoc_insertion_point(field_set:operations_research.math_opt.SparseBasisStatusVector.values)
2694}
2696 ::google::protobuf::internal::TSanWrite(&_impl_);
2697 _internal_mutable_values()->Add(value);
2698 // @@protoc_insertion_point(field_add:operations_research.math_opt.SparseBasisStatusVector.values)
2699}
2700inline const ::google::protobuf::RepeatedField<int>& SparseBasisStatusVector::values() const
2701 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2702 // @@protoc_insertion_point(field_list:operations_research.math_opt.SparseBasisStatusVector.values)
2703 return _internal_values();
2705inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL SparseBasisStatusVector::mutable_values()
2706 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2707 // @@protoc_insertion_point(field_mutable_list:operations_research.math_opt.SparseBasisStatusVector.values)
2708 ::google::protobuf::internal::TSanWrite(&_impl_);
2709 return _internal_mutable_values();
2710}
2711inline const ::google::protobuf::RepeatedField<int>& SparseBasisStatusVector::_internal_values()
2712 const {
2713 ::google::protobuf::internal::TSanRead(&_impl_);
2714 return _impl_.values_;
2715}
2716inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
2717SparseBasisStatusVector::_internal_mutable_values() {
2718 ::google::protobuf::internal::TSanRead(&_impl_);
2719 return &_impl_.values_;
2720}
2721
2722// -------------------------------------------------------------------
2723
2724// BasisProto
2725
2726// .operations_research.math_opt.SparseBasisStatusVector constraint_status = 1;
2727inline bool BasisProto::has_constraint_status() const {
2728 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2729 PROTOBUF_ASSUME(!value || _impl_.constraint_status_ != nullptr);
2730 return value;
2731}
2733 ::google::protobuf::internal::TSanWrite(&_impl_);
2734 if (_impl_.constraint_status_ != nullptr) _impl_.constraint_status_->Clear();
2735 _impl_._has_bits_[0] &= ~0x00000001u;
2736}
2737inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::_internal_constraint_status() const {
2738 ::google::protobuf::internal::TSanRead(&_impl_);
2739 const ::operations_research::math_opt::SparseBasisStatusVector* p = _impl_.constraint_status_;
2741}
2742inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::constraint_status() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2743 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.constraint_status)
2744 return _internal_constraint_status();
2748 ::google::protobuf::internal::TSanWrite(&_impl_);
2749 if (GetArena() == nullptr) {
2750 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constraint_status_);
2751 }
2752 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2753 if (value != nullptr) {
2754 _impl_._has_bits_[0] |= 0x00000001u;
2755 } else {
2756 _impl_._has_bits_[0] &= ~0x00000001u;
2757 }
2758 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.BasisProto.constraint_status)
2759}
2760inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::release_constraint_status() {
2761 ::google::protobuf::internal::TSanWrite(&_impl_);
2762
2763 _impl_._has_bits_[0] &= ~0x00000001u;
2765 _impl_.constraint_status_ = nullptr;
2766 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2767 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2768 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2769 if (GetArena() == nullptr) {
2770 delete old;
2771 }
2772 } else {
2773 if (GetArena() != nullptr) {
2774 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2775 }
2776 }
2777 return released;
2779inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::unsafe_arena_release_constraint_status() {
2780 ::google::protobuf::internal::TSanWrite(&_impl_);
2781 // @@protoc_insertion_point(field_release:operations_research.math_opt.BasisProto.constraint_status)
2782
2783 _impl_._has_bits_[0] &= ~0x00000001u;
2784 ::operations_research::math_opt::SparseBasisStatusVector* temp = _impl_.constraint_status_;
2785 _impl_.constraint_status_ = nullptr;
2786 return temp;
2787}
2788inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::_internal_mutable_constraint_status() {
2789 ::google::protobuf::internal::TSanWrite(&_impl_);
2790 if (_impl_.constraint_status_ == nullptr) {
2791 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseBasisStatusVector>(GetArena());
2792 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(p);
2793 }
2794 return _impl_.constraint_status_;
2795}
2796inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::mutable_constraint_status()
2797 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2798 _impl_._has_bits_[0] |= 0x00000001u;
2799 ::operations_research::math_opt::SparseBasisStatusVector* _msg = _internal_mutable_constraint_status();
2800 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.BasisProto.constraint_status)
2801 return _msg;
2802}
2804 ::google::protobuf::Arena* message_arena = GetArena();
2805 ::google::protobuf::internal::TSanWrite(&_impl_);
2806 if (message_arena == nullptr) {
2807 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constraint_status_);
2808 }
2809
2810 if (value != nullptr) {
2811 ::google::protobuf::Arena* submessage_arena = value->GetArena();
2812 if (message_arena != submessage_arena) {
2813 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2815 _impl_._has_bits_[0] |= 0x00000001u;
2816 } else {
2817 _impl_._has_bits_[0] &= ~0x00000001u;
2818 }
2819
2820 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2821 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.BasisProto.constraint_status)
2822}
2823
2824// .operations_research.math_opt.SparseBasisStatusVector variable_status = 2;
2825inline bool BasisProto::has_variable_status() const {
2826 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
2827 PROTOBUF_ASSUME(!value || _impl_.variable_status_ != nullptr);
2828 return value;
2829}
2831 ::google::protobuf::internal::TSanWrite(&_impl_);
2832 if (_impl_.variable_status_ != nullptr) _impl_.variable_status_->Clear();
2833 _impl_._has_bits_[0] &= ~0x00000002u;
2834}
2835inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::_internal_variable_status() const {
2836 ::google::protobuf::internal::TSanRead(&_impl_);
2837 const ::operations_research::math_opt::SparseBasisStatusVector* p = _impl_.variable_status_;
2839}
2840inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::variable_status() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2841 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.variable_status)
2842 return _internal_variable_status();
2846 ::google::protobuf::internal::TSanWrite(&_impl_);
2847 if (GetArena() == nullptr) {
2848 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_status_);
2849 }
2850 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2851 if (value != nullptr) {
2852 _impl_._has_bits_[0] |= 0x00000002u;
2853 } else {
2854 _impl_._has_bits_[0] &= ~0x00000002u;
2855 }
2856 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.BasisProto.variable_status)
2857}
2858inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::release_variable_status() {
2859 ::google::protobuf::internal::TSanWrite(&_impl_);
2860
2861 _impl_._has_bits_[0] &= ~0x00000002u;
2863 _impl_.variable_status_ = nullptr;
2864 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2865 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2866 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2867 if (GetArena() == nullptr) {
2868 delete old;
2869 }
2870 } else {
2871 if (GetArena() != nullptr) {
2872 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2873 }
2874 }
2875 return released;
2877inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::unsafe_arena_release_variable_status() {
2878 ::google::protobuf::internal::TSanWrite(&_impl_);
2879 // @@protoc_insertion_point(field_release:operations_research.math_opt.BasisProto.variable_status)
2880
2881 _impl_._has_bits_[0] &= ~0x00000002u;
2882 ::operations_research::math_opt::SparseBasisStatusVector* temp = _impl_.variable_status_;
2883 _impl_.variable_status_ = nullptr;
2884 return temp;
2885}
2886inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::_internal_mutable_variable_status() {
2887 ::google::protobuf::internal::TSanWrite(&_impl_);
2888 if (_impl_.variable_status_ == nullptr) {
2889 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseBasisStatusVector>(GetArena());
2890 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(p);
2891 }
2892 return _impl_.variable_status_;
2893}
2894inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::mutable_variable_status()
2895 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2896 _impl_._has_bits_[0] |= 0x00000002u;
2897 ::operations_research::math_opt::SparseBasisStatusVector* _msg = _internal_mutable_variable_status();
2898 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.BasisProto.variable_status)
2899 return _msg;
2900}
2902 ::google::protobuf::Arena* message_arena = GetArena();
2903 ::google::protobuf::internal::TSanWrite(&_impl_);
2904 if (message_arena == nullptr) {
2905 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_status_);
2906 }
2907
2908 if (value != nullptr) {
2909 ::google::protobuf::Arena* submessage_arena = value->GetArena();
2910 if (message_arena != submessage_arena) {
2911 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2913 _impl_._has_bits_[0] |= 0x00000002u;
2914 } else {
2915 _impl_._has_bits_[0] &= ~0x00000002u;
2916 }
2917
2918 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2919 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.BasisProto.variable_status)
2920}
2921
2922// .operations_research.math_opt.SolutionStatusProto basic_dual_feasibility = 3;
2924 ::google::protobuf::internal::TSanWrite(&_impl_);
2925 _impl_.basic_dual_feasibility_ = 0;
2926 _impl_._has_bits_[0] &= ~0x00000004u;
2927}
2928inline ::operations_research::math_opt::SolutionStatusProto BasisProto::basic_dual_feasibility() const {
2929 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.basic_dual_feasibility)
2930 return _internal_basic_dual_feasibility();
2931}
2933 _internal_set_basic_dual_feasibility(value);
2934 _impl_._has_bits_[0] |= 0x00000004u;
2935 // @@protoc_insertion_point(field_set:operations_research.math_opt.BasisProto.basic_dual_feasibility)
2936}
2937inline ::operations_research::math_opt::SolutionStatusProto BasisProto::_internal_basic_dual_feasibility() const {
2938 ::google::protobuf::internal::TSanRead(&_impl_);
2939 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.basic_dual_feasibility_);
2940}
2941inline void BasisProto::_internal_set_basic_dual_feasibility(::operations_research::math_opt::SolutionStatusProto value) {
2942 ::google::protobuf::internal::TSanWrite(&_impl_);
2943 _impl_.basic_dual_feasibility_ = value;
2944}
2945
2946// -------------------------------------------------------------------
2947
2948// SolutionProto
2949
2950// optional .operations_research.math_opt.PrimalSolutionProto primal_solution = 1;
2951inline bool SolutionProto::has_primal_solution() const {
2952 bool value = (_impl_._has_bits_[0] & 0x00000001u) != 0;
2953 PROTOBUF_ASSUME(!value || _impl_.primal_solution_ != nullptr);
2954 return value;
2955}
2957 ::google::protobuf::internal::TSanWrite(&_impl_);
2958 if (_impl_.primal_solution_ != nullptr) _impl_.primal_solution_->Clear();
2959 _impl_._has_bits_[0] &= ~0x00000001u;
2960}
2961inline const ::operations_research::math_opt::PrimalSolutionProto& SolutionProto::_internal_primal_solution() const {
2962 ::google::protobuf::internal::TSanRead(&_impl_);
2963 const ::operations_research::math_opt::PrimalSolutionProto* p = _impl_.primal_solution_;
2965}
2966inline const ::operations_research::math_opt::PrimalSolutionProto& SolutionProto::primal_solution() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2967 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.primal_solution)
2968 return _internal_primal_solution();
2969}
2972 ::google::protobuf::internal::TSanWrite(&_impl_);
2973 if (GetArena() == nullptr) {
2974 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.primal_solution_);
2976 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(value);
2977 if (value != nullptr) {
2978 _impl_._has_bits_[0] |= 0x00000001u;
2979 } else {
2980 _impl_._has_bits_[0] &= ~0x00000001u;
2981 }
2982 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.primal_solution)
2983}
2984inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE SolutionProto::release_primal_solution() {
2985 ::google::protobuf::internal::TSanWrite(&_impl_);
2986
2987 _impl_._has_bits_[0] &= ~0x00000001u;
2989 _impl_.primal_solution_ = nullptr;
2990 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2991 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2992 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2993 if (GetArena() == nullptr) {
2994 delete old;
2995 }
2996 } else {
2997 if (GetArena() != nullptr) {
2998 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2999 }
3000 }
3001 return released;
3002}
3003inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_primal_solution() {
3004 ::google::protobuf::internal::TSanWrite(&_impl_);
3005 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.primal_solution)
3006
3007 _impl_._has_bits_[0] &= ~0x00000001u;
3009 _impl_.primal_solution_ = nullptr;
3010 return temp;
3011}
3012inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_primal_solution() {
3013 ::google::protobuf::internal::TSanWrite(&_impl_);
3014 if (_impl_.primal_solution_ == nullptr) {
3015 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::PrimalSolutionProto>(GetArena());
3016 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(p);
3017 }
3018 return _impl_.primal_solution_;
3019}
3020inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL SolutionProto::mutable_primal_solution()
3021 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3022 _impl_._has_bits_[0] |= 0x00000001u;
3023 ::operations_research::math_opt::PrimalSolutionProto* _msg = _internal_mutable_primal_solution();
3024 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.primal_solution)
3025 return _msg;
3026}
3028 ::google::protobuf::Arena* message_arena = GetArena();
3029 ::google::protobuf::internal::TSanWrite(&_impl_);
3030 if (message_arena == nullptr) {
3031 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.primal_solution_);
3032 }
3033
3034 if (value != nullptr) {
3035 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3036 if (message_arena != submessage_arena) {
3037 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3038 }
3039 _impl_._has_bits_[0] |= 0x00000001u;
3040 } else {
3041 _impl_._has_bits_[0] &= ~0x00000001u;
3042 }
3043
3044 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(value);
3045 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.primal_solution)
3047
3048// optional .operations_research.math_opt.DualSolutionProto dual_solution = 2;
3049inline bool SolutionProto::has_dual_solution() const {
3050 bool value = (_impl_._has_bits_[0] & 0x00000002u) != 0;
3051 PROTOBUF_ASSUME(!value || _impl_.dual_solution_ != nullptr);
3052 return value;
3053}
3055 ::google::protobuf::internal::TSanWrite(&_impl_);
3056 if (_impl_.dual_solution_ != nullptr) _impl_.dual_solution_->Clear();
3057 _impl_._has_bits_[0] &= ~0x00000002u;
3058}
3059inline const ::operations_research::math_opt::DualSolutionProto& SolutionProto::_internal_dual_solution() const {
3060 ::google::protobuf::internal::TSanRead(&_impl_);
3061 const ::operations_research::math_opt::DualSolutionProto* p = _impl_.dual_solution_;
3063}
3064inline const ::operations_research::math_opt::DualSolutionProto& SolutionProto::dual_solution() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3065 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.dual_solution)
3066 return _internal_dual_solution();
3067}
3069 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE value) {
3070 ::google::protobuf::internal::TSanWrite(&_impl_);
3071 if (GetArena() == nullptr) {
3072 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_solution_);
3074 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(value);
3075 if (value != nullptr) {
3076 _impl_._has_bits_[0] |= 0x00000002u;
3077 } else {
3078 _impl_._has_bits_[0] &= ~0x00000002u;
3079 }
3080 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.dual_solution)
3081}
3082inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE SolutionProto::release_dual_solution() {
3083 ::google::protobuf::internal::TSanWrite(&_impl_);
3084
3085 _impl_._has_bits_[0] &= ~0x00000002u;
3087 _impl_.dual_solution_ = nullptr;
3088 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3089 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3090 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3091 if (GetArena() == nullptr) {
3092 delete old;
3093 }
3094 } else {
3095 if (GetArena() != nullptr) {
3096 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3097 }
3098 }
3099 return released;
3100}
3101inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_dual_solution() {
3102 ::google::protobuf::internal::TSanWrite(&_impl_);
3103 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.dual_solution)
3104
3105 _impl_._has_bits_[0] &= ~0x00000002u;
3107 _impl_.dual_solution_ = nullptr;
3108 return temp;
3109}
3110inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_dual_solution() {
3111 ::google::protobuf::internal::TSanWrite(&_impl_);
3112 if (_impl_.dual_solution_ == nullptr) {
3113 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::DualSolutionProto>(GetArena());
3114 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(p);
3115 }
3116 return _impl_.dual_solution_;
3117}
3118inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL SolutionProto::mutable_dual_solution()
3119 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3120 _impl_._has_bits_[0] |= 0x00000002u;
3121 ::operations_research::math_opt::DualSolutionProto* _msg = _internal_mutable_dual_solution();
3122 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.dual_solution)
3123 return _msg;
3124}
3126 ::google::protobuf::Arena* message_arena = GetArena();
3127 ::google::protobuf::internal::TSanWrite(&_impl_);
3128 if (message_arena == nullptr) {
3129 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_solution_);
3130 }
3131
3132 if (value != nullptr) {
3133 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3134 if (message_arena != submessage_arena) {
3135 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3136 }
3137 _impl_._has_bits_[0] |= 0x00000002u;
3138 } else {
3139 _impl_._has_bits_[0] &= ~0x00000002u;
3140 }
3141
3142 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(value);
3143 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.dual_solution)
3145
3146// optional .operations_research.math_opt.BasisProto basis = 3;
3147inline bool SolutionProto::has_basis() const {
3148 bool value = (_impl_._has_bits_[0] & 0x00000004u) != 0;
3149 PROTOBUF_ASSUME(!value || _impl_.basis_ != nullptr);
3150 return value;
3151}
3152inline void SolutionProto::clear_basis() {
3153 ::google::protobuf::internal::TSanWrite(&_impl_);
3154 if (_impl_.basis_ != nullptr) _impl_.basis_->Clear();
3155 _impl_._has_bits_[0] &= ~0x00000004u;
3156}
3157inline const ::operations_research::math_opt::BasisProto& SolutionProto::_internal_basis() const {
3158 ::google::protobuf::internal::TSanRead(&_impl_);
3159 const ::operations_research::math_opt::BasisProto* p = _impl_.basis_;
3161}
3162inline const ::operations_research::math_opt::BasisProto& SolutionProto::basis() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3163 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.basis)
3164 return _internal_basis();
3165}
3167 ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE value) {
3168 ::google::protobuf::internal::TSanWrite(&_impl_);
3169 if (GetArena() == nullptr) {
3170 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.basis_);
3172 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(value);
3173 if (value != nullptr) {
3174 _impl_._has_bits_[0] |= 0x00000004u;
3175 } else {
3176 _impl_._has_bits_[0] &= ~0x00000004u;
3177 }
3178 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.basis)
3179}
3180inline ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE SolutionProto::release_basis() {
3181 ::google::protobuf::internal::TSanWrite(&_impl_);
3182
3183 _impl_._has_bits_[0] &= ~0x00000004u;
3185 _impl_.basis_ = nullptr;
3186 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3187 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3188 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3189 if (GetArena() == nullptr) {
3190 delete old;
3191 }
3192 } else {
3193 if (GetArena() != nullptr) {
3194 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3195 }
3196 }
3197 return released;
3198}
3199inline ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_basis() {
3200 ::google::protobuf::internal::TSanWrite(&_impl_);
3201 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.basis)
3202
3203 _impl_._has_bits_[0] &= ~0x00000004u;
3205 _impl_.basis_ = nullptr;
3206 return temp;
3207}
3208inline ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_basis() {
3209 ::google::protobuf::internal::TSanWrite(&_impl_);
3210 if (_impl_.basis_ == nullptr) {
3211 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::BasisProto>(GetArena());
3212 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(p);
3213 }
3214 return _impl_.basis_;
3215}
3216inline ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL SolutionProto::mutable_basis()
3217 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3218 _impl_._has_bits_[0] |= 0x00000004u;
3219 ::operations_research::math_opt::BasisProto* _msg = _internal_mutable_basis();
3220 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.basis)
3221 return _msg;
3222}
3224 ::google::protobuf::Arena* message_arena = GetArena();
3225 ::google::protobuf::internal::TSanWrite(&_impl_);
3226 if (message_arena == nullptr) {
3227 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.basis_);
3228 }
3229
3230 if (value != nullptr) {
3231 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3232 if (message_arena != submessage_arena) {
3233 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3234 }
3235 _impl_._has_bits_[0] |= 0x00000004u;
3236 } else {
3237 _impl_._has_bits_[0] &= ~0x00000004u;
3238 }
3239
3240 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(value);
3241 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.basis)
3243
3244#ifdef __GNUC__
3245#pragma GCC diagnostic pop
3246#endif // __GNUC__
3247
3248// @@protoc_insertion_point(namespace_scope)
3249} // namespace math_opt
3250} // namespace operations_research
3251
3252
3253namespace google {
3254namespace protobuf {
3255
3256template <>
3257struct is_proto_enum<::operations_research::math_opt::SolutionStatusProto> : std::true_type {};
3258template <>
3259inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::math_opt::SolutionStatusProto>() {
3260 return ::operations_research::math_opt::SolutionStatusProto_descriptor();
3261}
3262template <>
3263struct is_proto_enum<::operations_research::math_opt::BasisStatusProto> : std::true_type {};
3264template <>
3265inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::math_opt::BasisStatusProto>() {
3266 return ::operations_research::math_opt::BasisStatusProto_descriptor();
3267}
3268
3269} // namespace protobuf
3270} // namespace google
3271
3272// @@protoc_insertion_point(global_scope)
3273
3274#include "google/protobuf/port_undef.inc"
3275
3276#endif // ortools_2fmath_5fopt_2fsolution_2eproto_2epb_2eh
static constexpr auto InternalGenerateClassData_()
bool has_constraint_status() const
.operations_research.math_opt.SparseBasisStatusVector constraint_status = 1;
::google::protobuf::Metadata GetMetadata() const
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE release_variable_status()
void UnsafeArenaSwap(BasisProto *PROTOBUF_NONNULL other)
void unsafe_arena_set_allocated_constraint_status(::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE value)
void set_basic_dual_feasibility(::operations_research::math_opt::SolutionStatusProto value)
friend void swap(BasisProto &a, BasisProto &b)
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE unsafe_arena_release_variable_status()
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE release_constraint_status()
void clear_basic_dual_feasibility()
.operations_research.math_opt.SolutionStatusProto basic_dual_feasibility = 3;
void set_allocated_variable_status(::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE value)
BasisProto *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE unsafe_arena_release_constraint_status()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void unsafe_arena_set_allocated_variable_status(::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE value)
const ::operations_research::math_opt::SparseBasisStatusVector & variable_status() const
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NONNULL mutable_constraint_status()
const ::operations_research::math_opt::SparseBasisStatusVector & constraint_status() const
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
::operations_research::math_opt::SolutionStatusProto basic_dual_feasibility() const
void set_allocated_constraint_status(::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE value)
bool has_variable_status() const
.operations_research.math_opt.SparseBasisStatusVector variable_status = 2;
void Swap(BasisProto *PROTOBUF_NONNULL other)
static const BasisProto & default_instance()
friend class ::google::protobuf::Arena
::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NONNULL mutable_variable_status()
void Swap(DualRayProto *PROTOBUF_NONNULL other)
friend void swap(DualRayProto &a, DualRayProto &b)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_reduced_costs()
const ::operations_research::math_opt::SparseDoubleVectorProto & dual_values() const
static const DualRayProto & default_instance()
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_dual_values()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void set_allocated_reduced_costs(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_dual_values()
bool has_dual_values() const
.operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
const ::operations_research::math_opt::SparseDoubleVectorProto & reduced_costs() const
void unsafe_arena_set_allocated_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
DualRayProto *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
::google::protobuf::Metadata GetMetadata() const
DualRayProto & operator=(const DualRayProto &from)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_reduced_costs()
void set_allocated_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_reduced_costs()
static constexpr auto InternalGenerateClassData_()
bool has_reduced_costs() const
.operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_dual_values()
void unsafe_arena_set_allocated_reduced_costs(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
friend class ::google::protobuf::Arena
::google::protobuf::Metadata GetMetadata() const
bool has_reduced_costs() const
.operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
const ::operations_research::math_opt::SparseDoubleVectorProto & dual_values() const
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_dual_values()
void set_allocated_reduced_costs(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
void MergeFrom(const DualSolutionProto &from)
DualSolutionProto *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
::operations_research::math_opt::SolutionStatusProto feasibility_status() const
static const DualSolutionProto & default_instance()
void CopyFrom(const DualSolutionProto &from)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_quadratic_dual_values()
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_reduced_costs()
void Swap(DualSolutionProto *PROTOBUF_NONNULL other)
void set_allocated_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_quadratic_dual_values()
bool has_objective_value() const
optional double objective_value = 3;
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_dual_values()
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_reduced_costs()
void unsafe_arena_set_allocated_quadratic_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
void clear_feasibility_status()
.operations_research.math_opt.SolutionStatusProto feasibility_status = 4;
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_dual_values()
DualSolutionProto & operator=(const DualSolutionProto &from)
void set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
const ::operations_research::math_opt::SparseDoubleVectorProto & reduced_costs() const
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void set_allocated_quadratic_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Reflection *PROTOBUF_NONNULL GetReflection()
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_reduced_costs()
bool has_dual_values() const
.operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
bool has_quadratic_dual_values() const
.operations_research.math_opt.SparseDoubleVectorProto quadratic_dual_values = 5;
void unsafe_arena_set_allocated_dual_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_quadratic_dual_values()
const ::operations_research::math_opt::SparseDoubleVectorProto & quadratic_dual_values() const
void unsafe_arena_set_allocated_reduced_costs(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
friend class ::google::protobuf::Arena
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void Swap(PrimalRayProto *PROTOBUF_NONNULL other)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
void CopyFrom(const PrimalRayProto &from)
const ::operations_research::math_opt::SparseDoubleVectorProto & variable_values() const
void unsafe_arena_set_allocated_variable_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_variable_values()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
bool has_variable_values() const
.operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
void MergeFrom(const PrimalRayProto &from)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_variable_values()
PrimalRayProto *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
implements Message -------------------------------------------—
friend void swap(PrimalRayProto &a, PrimalRayProto &b)
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_variable_values()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
PrimalRayProto & operator=(const PrimalRayProto &from)
void set_allocated_variable_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::Arena
::google::protobuf::internal::MapEntry<::int64_t, double, ::google::protobuf::internal::WireFormatLite::TYPE_INT64, ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE > SuperType
friend class ::google::protobuf::MessageLite
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
PROTOBUF_CONSTEXPR PrimalSolutionProto(::google::protobuf::internal::ConstantInitialized)
const ::google::protobuf::Map<::int64_t, double > & auxiliary_objective_values() const
inline ::google::protobuf::UnknownFieldSet *PROTOBUF_NONNULL mutable_unknown_fields() ABSL_ATTRIBUTE_LIFETIME_BOUND
void set_allocated_variable_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
friend void swap(PrimalSolutionProto &a, PrimalSolutionProto &b)
static const PrimalSolutionProto & default_instance()
::operations_research::math_opt::SolutionStatusProto feasibility_status() const
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NONNULL mutable_variable_values()
int auxiliary_objective_values_size() const
map<int64, double> auxiliary_objective_values = 4;
const ::operations_research::math_opt::SparseDoubleVectorProto & variable_values() const
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE unsafe_arena_release_variable_values()
void set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value)
void CopyFrom(const PrimalSolutionProto &from)
void clear_objective_value()
double objective_value = 2;
void unsafe_arena_set_allocated_variable_values(::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE value)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void clear_feasibility_status()
.operations_research.math_opt.SolutionStatusProto feasibility_status = 3;
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_variable_values()
::google::protobuf::Map<::int64_t, double > *PROTOBUF_NONNULL mutable_auxiliary_objective_values()
bool has_variable_values() const
.operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
void Swap(PrimalSolutionProto *PROTOBUF_NONNULL other)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const PrimalSolutionProto &from)
PrimalSolutionProto & operator=(const PrimalSolutionProto &from)
::operations_research::math_opt::BasisProto *PROTOBUF_NULLABLE unsafe_arena_release_basis()
bool has_primal_solution() const
optional .operations_research.math_opt.PrimalSolutionProto primal_solution = 1;
const ::operations_research::math_opt::BasisProto & basis() const
::operations_research::math_opt::DualSolutionProto *PROTOBUF_NONNULL mutable_dual_solution()
void Swap(SolutionProto *PROTOBUF_NONNULL other)
void unsafe_arena_set_allocated_basis(::operations_research::math_opt::BasisProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::DualSolutionProto *PROTOBUF_NULLABLE unsafe_arena_release_dual_solution()
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL GetDescriptor()
::operations_research::math_opt::PrimalSolutionProto *PROTOBUF_NONNULL mutable_primal_solution()
::operations_research::math_opt::PrimalSolutionProto *PROTOBUF_NULLABLE release_primal_solution()
void UnsafeArenaSwap(SolutionProto *PROTOBUF_NONNULL other)
::operations_research::math_opt::BasisProto *PROTOBUF_NULLABLE release_basis()
::google::protobuf::Metadata GetMetadata() const
bool has_dual_solution() const
optional .operations_research.math_opt.DualSolutionProto dual_solution = 2;
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void unsafe_arena_set_allocated_dual_solution(::operations_research::math_opt::DualSolutionProto *PROTOBUF_NULLABLE value)
bool has_basis() const
optional .operations_research.math_opt.BasisProto basis = 3;
::operations_research::math_opt::BasisProto *PROTOBUF_NONNULL mutable_basis()
void CopyFrom(const SolutionProto &from)
SolutionProto & operator=(const SolutionProto &from)
void set_allocated_dual_solution(::operations_research::math_opt::DualSolutionProto *PROTOBUF_NULLABLE value)
static const SolutionProto & default_instance()
::operations_research::math_opt::PrimalSolutionProto *PROTOBUF_NULLABLE unsafe_arena_release_primal_solution()
const ::operations_research::math_opt::DualSolutionProto & dual_solution() const
void set_allocated_primal_solution(::operations_research::math_opt::PrimalSolutionProto *PROTOBUF_NULLABLE value)
void set_allocated_basis(::operations_research::math_opt::BasisProto *PROTOBUF_NULLABLE value)
::operations_research::math_opt::DualSolutionProto *PROTOBUF_NULLABLE release_dual_solution()
const ::operations_research::math_opt::PrimalSolutionProto & primal_solution() const
static constexpr auto InternalGenerateClassData_()
void unsafe_arena_set_allocated_primal_solution(::operations_research::math_opt::PrimalSolutionProto *PROTOBUF_NULLABLE value)
void add_values(::operations_research::math_opt::BasisStatusProto value)
::google::protobuf::RepeatedField<::int64_t > *PROTOBUF_NONNULL mutable_ids()
int values_size() const
repeated .operations_research.math_opt.BasisStatusProto values = 2;
void set_values(int index, ::operations_research::math_opt::BasisStatusProto value)
SparseBasisStatusVector(const SparseBasisStatusVector &from)
::google::protobuf::RepeatedField< int > *PROTOBUF_NONNULL mutable_values()
const ::google::protobuf::RepeatedField< int > & values() const
::operations_research::math_opt::BasisStatusProto values(int index) const
PROTOBUF_CONSTEXPR SparseBasisStatusVector(::google::protobuf::internal::ConstantInitialized)
void Swap(SparseBasisStatusVector *PROTOBUF_NONNULL other)
const ::google::protobuf::RepeatedField<::int64_t > & ids() const
SparseBasisStatusVector & operator=(const SparseBasisStatusVector &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void CopyFrom(const SparseBasisStatusVector &from)
SparseBasisStatusVector(::google::protobuf::Arena *PROTOBUF_NULLABLE arena, SparseBasisStatusVector &&from) noexcept
::absl::string_view GetAnyMessageName()
An object oriented wrapper for quadratic constraints in ModelStorage.
Definition gurobi_isv.cc:28
PROTOBUF_CONSTINIT const uint32_t BasisStatusProto_internal_data_[]
constexpr SolutionStatusProto SolutionStatusProto_MAX
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PrimalRayProto_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 BasisProtoDefaultTypeInternal _BasisProto_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PrimalSolutionProto_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SparseBasisStatusVectorDefaultTypeInternal _SparseBasisStatusVector_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL BasisStatusProto_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUseDefaultTypeInternal _PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse_class_data_
constexpr SolutionStatusProto SolutionStatusProto_MIN
constexpr int BasisStatusProto_ARRAYSIZE
PROTOBUF_CONSTINIT const uint32_t SolutionStatusProto_internal_data_[]
bool BasisStatusProto_Parse(::absl::string_view name, BasisStatusProto *PROTOBUF_NONNULL value)
const ::std::string & SolutionStatusProto_Name(T value)
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull BasisProto_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DualSolutionProtoDefaultTypeInternal _DualSolutionProto_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull DualRayProto_class_data_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL SolutionStatusProto_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SparseDoubleVectorProtoDefaultTypeInternal _SparseDoubleVectorProto_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SolutionProto_class_data_
constexpr int SolutionStatusProto_ARRAYSIZE
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PrimalSolutionProtoDefaultTypeInternal _PrimalSolutionProto_default_instance_
constexpr BasisStatusProto BasisStatusProto_MAX
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SparseBasisStatusVector_class_data_
bool SolutionStatusProto_IsValid(int value)
constexpr BasisStatusProto BasisStatusProto_MIN
bool BasisStatusProto_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PrimalRayProtoDefaultTypeInternal _PrimalRayProto_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 DualRayProtoDefaultTypeInternal _DualRayProto_default_instance_
bool SolutionStatusProto_Parse(::absl::string_view name, SolutionStatusProto *PROTOBUF_NONNULL value)
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull DualSolutionProto_class_data_
const ::std::string & BasisStatusProto_Name(T value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SolutionProtoDefaultTypeInternal _SolutionProto_default_instance_
In SWIG mode, we don't want anything besides these top-level includes.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolution_2eproto
Internal implementation detail – do not use these members.
Definition solution.pb.h:55