Google OR-Tools v9.15
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.33.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 != 6033001
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 explicit SparseBasisStatusVector(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
320 SparseBasisStatusVector(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SparseBasisStatusVector& from);
322 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SparseBasisStatusVector&& from) noexcept
323 : SparseBasisStatusVector(arena) {
324 *this = ::std::move(from);
325 }
326 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
327 static void* PROTOBUF_NONNULL PlacementNew_(
328 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
329 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
330 static constexpr auto InternalNewImpl_();
331
332 public:
333 static constexpr auto InternalGenerateClassData_();
334
335 ::google::protobuf::Metadata GetMetadata() const;
336 // nested types ----------------------------------------------------
337
338 // accessors -------------------------------------------------------
339 enum : int {
340 kIdsFieldNumber = 1,
341 kValuesFieldNumber = 2,
342 };
343 // repeated int64 ids = 1;
344 int ids_size() const;
345 private:
346 int _internal_ids_size() const;
347
348 public:
349 void clear_ids() ;
350 ::int64_t ids(int index) const;
351 void set_ids(int index, ::int64_t value);
352 void add_ids(::int64_t value);
353 const ::google::protobuf::RepeatedField<::int64_t>& ids() const;
354 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL mutable_ids();
355
356 private:
357 const ::google::protobuf::RepeatedField<::int64_t>& _internal_ids() const;
358 ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL _internal_mutable_ids();
359
360 public:
361 // repeated .operations_research.math_opt.BasisStatusProto values = 2;
362 int values_size() const;
363 private:
364 int _internal_values_size() const;
365
366 public:
367 void clear_values() ;
368 public:
372 const ::google::protobuf::RepeatedField<int>& values() const;
373 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL mutable_values();
374
375 private:
376 const ::google::protobuf::RepeatedField<int>& _internal_values() const;
377 ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL _internal_mutable_values();
378
379 public:
380 // @@protoc_insertion_point(class_scope:operations_research.math_opt.SparseBasisStatusVector)
381 private:
382 class _Internal;
383 friend class ::google::protobuf::internal::TcParser;
384 static const ::google::protobuf::internal::TcParseTable<1, 2,
385 0, 0,
386 2>
387 _table_;
388
389 friend class ::google::protobuf::MessageLite;
390 friend class ::google::protobuf::Arena;
391 template <typename T>
392 friend class ::google::protobuf::Arena::InternalHelper;
393 using InternalArenaConstructable_ = void;
394 using DestructorSkippable_ = void;
395 struct Impl_ {
396 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
397 inline explicit Impl_(
398 ::google::protobuf::internal::InternalVisibility visibility,
399 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
400 inline explicit Impl_(
401 ::google::protobuf::internal::InternalVisibility visibility,
402 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
403 const SparseBasisStatusVector& from_msg);
404 ::google::protobuf::internal::HasBits<1> _has_bits_;
405 ::google::protobuf::internal::CachedSize _cached_size_;
406 ::google::protobuf::RepeatedField<::int64_t> ids_;
407 ::google::protobuf::internal::CachedSize _ids_cached_byte_size_;
408 ::google::protobuf::RepeatedField<int> values_;
409 ::google::protobuf::internal::CachedSize _values_cached_byte_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 explicit PrimalSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
580 PrimalSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PrimalSolutionProto& from);
582 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PrimalSolutionProto&& from) noexcept
583 : PrimalSolutionProto(arena) {
584 *this = ::std::move(from);
585 }
586 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
587 static void* PROTOBUF_NONNULL PlacementNew_(
588 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
589 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
590 static constexpr auto InternalNewImpl_();
591
592 public:
593 static constexpr auto InternalGenerateClassData_();
594
595 ::google::protobuf::Metadata GetMetadata() const;
596 // nested types ----------------------------------------------------
597
598 // accessors -------------------------------------------------------
599 enum : int {
600 kVariableValuesFieldNumber = 1,
601 kObjectiveValueFieldNumber = 2,
602 kFeasibilityStatusFieldNumber = 3,
603 kAuxiliaryObjectiveValuesFieldNumber = 4,
604 };
605 // .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
608 const ::operations_research::math_opt::SparseDoubleVectorProto& variable_values() const;
614
615 private:
616 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_variable_values() const;
617 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_variable_values();
618
619 public:
620 // double objective_value = 2;
621 void clear_objective_value() ;
622 double objective_value() const;
623 void set_objective_value(double value);
624
625 private:
626 double _internal_objective_value() const;
627 void _internal_set_objective_value(double value);
628
629 public:
630 // .operations_research.math_opt.SolutionStatusProto feasibility_status = 3;
634
635 private:
636 ::operations_research::math_opt::SolutionStatusProto _internal_feasibility_status() const;
637 void _internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value);
638
639 public:
640 // map<int64, double> auxiliary_objective_values = 4;
642 private:
643 int _internal_auxiliary_objective_values_size() const;
644
645 public:
647 const ::google::protobuf::Map<::int64_t, double>& auxiliary_objective_values() const;
648 ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL mutable_auxiliary_objective_values();
649
650 private:
651 const ::google::protobuf::Map<::int64_t, double>& _internal_auxiliary_objective_values() const;
652 ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL _internal_mutable_auxiliary_objective_values();
653
654 public:
655 // @@protoc_insertion_point(class_scope:operations_research.math_opt.PrimalSolutionProto)
656 private:
657 class _Internal;
658 friend class ::google::protobuf::internal::TcParser;
659 static const ::google::protobuf::internal::TcParseTable<2, 4,
660 2, 0,
661 2>
662 _table_;
663
664 friend class ::google::protobuf::MessageLite;
665 friend class ::google::protobuf::Arena;
666 template <typename T>
667 friend class ::google::protobuf::Arena::InternalHelper;
668 using InternalArenaConstructable_ = void;
669 using DestructorSkippable_ = void;
670 struct Impl_ {
671 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
672 inline explicit Impl_(
673 ::google::protobuf::internal::InternalVisibility visibility,
674 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
675 inline explicit Impl_(
676 ::google::protobuf::internal::InternalVisibility visibility,
677 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
678 const PrimalSolutionProto& from_msg);
679 ::google::protobuf::internal::HasBits<1> _has_bits_;
680 ::google::protobuf::internal::CachedSize _cached_size_;
681 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE variable_values_;
682 double objective_value_;
683 int feasibility_status_;
684 ::google::protobuf::internal::MapField<PrimalSolutionProto_AuxiliaryObjectiveValuesEntry_DoNotUse, ::int64_t, double,
685 ::google::protobuf::internal::WireFormatLite::TYPE_INT64,
686 ::google::protobuf::internal::WireFormatLite::TYPE_DOUBLE>
687 auxiliary_objective_values_;
688 PROTOBUF_TSAN_DECLARE_MEMBER
689 };
690 union { Impl_ _impl_; };
691 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
692};
693
694OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalSolutionProto_class_data_;
695// -------------------------------------------------------------------
696
697class OR_PROTO_DLL PrimalRayProto final : public ::google::protobuf::Message
698/* @@protoc_insertion_point(class_definition:operations_research.math_opt.PrimalRayProto) */ {
699 public:
700 inline PrimalRayProto() : PrimalRayProto(nullptr) {}
701 ~PrimalRayProto() PROTOBUF_FINAL;
703#if defined(PROTOBUF_CUSTOM_VTABLE)
704 void operator delete(PrimalRayProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
705 SharedDtor(*msg);
706 ::google::protobuf::internal::SizedDelete(msg, sizeof(PrimalRayProto));
707 }
708#endif
709
710 template <typename = void>
711 explicit PROTOBUF_CONSTEXPR PrimalRayProto(::google::protobuf::internal::ConstantInitialized);
712
713 inline PrimalRayProto(const PrimalRayProto& from) : PrimalRayProto(nullptr, from) {}
714 inline PrimalRayProto(PrimalRayProto&& from) noexcept
715 : PrimalRayProto(nullptr, ::std::move(from)) {}
717 CopyFrom(from);
718 return *this;
720 inline PrimalRayProto& operator=(PrimalRayProto&& from) noexcept {
721 if (this == &from) return *this;
722 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
723 InternalSwap(&from);
724 } else {
725 CopyFrom(from);
726 }
727 return *this;
728 }
729
730 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
731 ABSL_ATTRIBUTE_LIFETIME_BOUND {
732 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
733 }
734 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
735 ABSL_ATTRIBUTE_LIFETIME_BOUND {
736 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
737 }
738
739 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
740 return GetDescriptor();
741 }
742 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
743 return default_instance().GetMetadata().descriptor;
745 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
746 return default_instance().GetMetadata().reflection;
748 static const PrimalRayProto& default_instance() {
749 return *reinterpret_cast<const PrimalRayProto*>(
751 }
752 static constexpr int kIndexInFileMessages = 2;
753 friend void swap(PrimalRayProto& a, PrimalRayProto& b) { a.Swap(&b); }
754 inline void Swap(PrimalRayProto* PROTOBUF_NONNULL other) {
755 if (other == this) return;
756 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
757 InternalSwap(other);
758 } else {
759 ::google::protobuf::internal::GenericSwap(this, other);
760 }
761 }
762 void UnsafeArenaSwap(PrimalRayProto* PROTOBUF_NONNULL other) {
763 if (other == this) return;
764 ABSL_DCHECK(GetArena() == other->GetArena());
765 InternalSwap(other);
766 }
768 // implements Message ----------------------------------------------
769
770 PrimalRayProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
771 return ::google::protobuf::Message::DefaultConstruct<PrimalRayProto>(arena);
772 }
773 using ::google::protobuf::Message::CopyFrom;
774 void CopyFrom(const PrimalRayProto& from);
775 using ::google::protobuf::Message::MergeFrom;
776 void MergeFrom(const PrimalRayProto& from) { PrimalRayProto::MergeImpl(*this, from); }
777
778 private:
779 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
780 const ::google::protobuf::MessageLite& from_msg);
782 public:
783 bool IsInitialized() const {
784 return true;
785 }
786 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
787 #if defined(PROTOBUF_CUSTOM_VTABLE)
788 private:
789 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
790 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
791 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
792 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
793
794 public:
795 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
796 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
797 ::uint8_t* PROTOBUF_NONNULL target,
798 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
799 return _InternalSerialize(*this, target, stream);
800 }
801 #else // PROTOBUF_CUSTOM_VTABLE
802 ::size_t ByteSizeLong() const final;
803 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
804 ::uint8_t* PROTOBUF_NONNULL target,
805 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
806 #endif // PROTOBUF_CUSTOM_VTABLE
807 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
808
809 private:
810 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
811 static void SharedDtor(MessageLite& self);
812 void InternalSwap(PrimalRayProto* PROTOBUF_NONNULL other);
813 private:
814 template <typename T>
815 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
816 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.PrimalRayProto"; }
817
818 explicit PrimalRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
819 PrimalRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const PrimalRayProto& from);
821 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, PrimalRayProto&& from) noexcept
822 : PrimalRayProto(arena) {
823 *this = ::std::move(from);
824 }
825 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
826 static void* PROTOBUF_NONNULL PlacementNew_(
827 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
828 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
829 static constexpr auto InternalNewImpl_();
830
831 public:
832 static constexpr auto InternalGenerateClassData_();
833
834 ::google::protobuf::Metadata GetMetadata() const;
835 // nested types ----------------------------------------------------
836
837 // accessors -------------------------------------------------------
838 enum : int {
839 kVariableValuesFieldNumber = 1,
840 };
841 // .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
842 bool has_variable_values() const;
843 void clear_variable_values() ;
844 const ::operations_research::math_opt::SparseDoubleVectorProto& variable_values() const;
850
851 private:
852 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_variable_values() const;
853 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_variable_values();
854
855 public:
856 // @@protoc_insertion_point(class_scope:operations_research.math_opt.PrimalRayProto)
857 private:
858 class _Internal;
859 friend class ::google::protobuf::internal::TcParser;
860 static const ::google::protobuf::internal::TcParseTable<0, 1,
861 1, 0,
862 2>
863 _table_;
865 friend class ::google::protobuf::MessageLite;
866 friend class ::google::protobuf::Arena;
867 template <typename T>
868 friend class ::google::protobuf::Arena::InternalHelper;
869 using InternalArenaConstructable_ = void;
870 using DestructorSkippable_ = void;
871 struct Impl_ {
872 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
873 inline explicit Impl_(
874 ::google::protobuf::internal::InternalVisibility visibility,
875 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
876 inline explicit Impl_(
877 ::google::protobuf::internal::InternalVisibility visibility,
878 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
879 const PrimalRayProto& from_msg);
880 ::google::protobuf::internal::HasBits<1> _has_bits_;
881 ::google::protobuf::internal::CachedSize _cached_size_;
882 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE variable_values_;
883 PROTOBUF_TSAN_DECLARE_MEMBER
884 };
885 union { Impl_ _impl_; };
886 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
887};
888
889OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull PrimalRayProto_class_data_;
890// -------------------------------------------------------------------
892class OR_PROTO_DLL DualSolutionProto final : public ::google::protobuf::Message
893/* @@protoc_insertion_point(class_definition:operations_research.math_opt.DualSolutionProto) */ {
894 public:
895 inline DualSolutionProto() : DualSolutionProto(nullptr) {}
896 ~DualSolutionProto() PROTOBUF_FINAL;
897
898#if defined(PROTOBUF_CUSTOM_VTABLE)
899 void operator delete(DualSolutionProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
900 SharedDtor(*msg);
901 ::google::protobuf::internal::SizedDelete(msg, sizeof(DualSolutionProto));
902 }
903#endif
904
905 template <typename = void>
906 explicit PROTOBUF_CONSTEXPR DualSolutionProto(::google::protobuf::internal::ConstantInitialized);
907
908 inline DualSolutionProto(const DualSolutionProto& from) : DualSolutionProto(nullptr, from) {}
909 inline DualSolutionProto(DualSolutionProto&& from) noexcept
910 : DualSolutionProto(nullptr, ::std::move(from)) {}
911 inline DualSolutionProto& operator=(const DualSolutionProto& from) {
912 CopyFrom(from);
913 return *this;
916 if (this == &from) return *this;
917 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
918 InternalSwap(&from);
919 } else {
920 CopyFrom(from);
922 return *this;
923 }
924
925 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
926 ABSL_ATTRIBUTE_LIFETIME_BOUND {
927 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
928 }
929 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
930 ABSL_ATTRIBUTE_LIFETIME_BOUND {
931 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
932 }
933
934 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
936 }
937 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
938 return default_instance().GetMetadata().descriptor;
939 }
940 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
941 return default_instance().GetMetadata().reflection;
942 }
944 return *reinterpret_cast<const DualSolutionProto*>(
947 static constexpr int kIndexInFileMessages = 3;
948 friend void swap(DualSolutionProto& a, DualSolutionProto& b) { a.Swap(&b); }
949 inline void Swap(DualSolutionProto* PROTOBUF_NONNULL other) {
950 if (other == this) return;
951 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
952 InternalSwap(other);
953 } else {
954 ::google::protobuf::internal::GenericSwap(this, other);
956 }
957 void UnsafeArenaSwap(DualSolutionProto* PROTOBUF_NONNULL other) {
958 if (other == this) return;
959 ABSL_DCHECK(GetArena() == other->GetArena());
960 InternalSwap(other);
961 }
962
963 // implements Message ----------------------------------------------
964
965 DualSolutionProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
966 return ::google::protobuf::Message::DefaultConstruct<DualSolutionProto>(arena);
967 }
968 using ::google::protobuf::Message::CopyFrom;
969 void CopyFrom(const DualSolutionProto& from);
970 using ::google::protobuf::Message::MergeFrom;
971 void MergeFrom(const DualSolutionProto& from) { DualSolutionProto::MergeImpl(*this, from); }
972
973 private:
974 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
975 const ::google::protobuf::MessageLite& from_msg);
976
977 public:
978 bool IsInitialized() const {
979 return true;
980 }
981 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
982 #if defined(PROTOBUF_CUSTOM_VTABLE)
983 private:
984 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
985 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
986 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
987 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
988
989 public:
990 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
991 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
992 ::uint8_t* PROTOBUF_NONNULL target,
993 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
994 return _InternalSerialize(*this, target, stream);
995 }
996 #else // PROTOBUF_CUSTOM_VTABLE
997 ::size_t ByteSizeLong() const final;
998 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
999 ::uint8_t* PROTOBUF_NONNULL target,
1000 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1001 #endif // PROTOBUF_CUSTOM_VTABLE
1002 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1003
1004 private:
1005 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1006 static void SharedDtor(MessageLite& self);
1007 void InternalSwap(DualSolutionProto* PROTOBUF_NONNULL other);
1008 private:
1009 template <typename T>
1010 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1011 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.DualSolutionProto"; }
1012
1013 explicit DualSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1014 DualSolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DualSolutionProto& from);
1016 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DualSolutionProto&& from) noexcept
1017 : DualSolutionProto(arena) {
1018 *this = ::std::move(from);
1019 }
1020 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1021 static void* PROTOBUF_NONNULL PlacementNew_(
1022 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1023 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1024 static constexpr auto InternalNewImpl_();
1025
1026 public:
1027 static constexpr auto InternalGenerateClassData_();
1028
1029 ::google::protobuf::Metadata GetMetadata() const;
1030 // nested types ----------------------------------------------------
1031
1032 // accessors -------------------------------------------------------
1033 enum : int {
1034 kDualValuesFieldNumber = 1,
1035 kReducedCostsFieldNumber = 2,
1036 kQuadraticDualValuesFieldNumber = 5,
1037 kObjectiveValueFieldNumber = 3,
1038 kFeasibilityStatusFieldNumber = 4,
1039 };
1040 // .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
1041 bool has_dual_values() const;
1043 const ::operations_research::math_opt::SparseDoubleVectorProto& dual_values() const;
1049
1050 private:
1051 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_dual_values() const;
1052 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_dual_values();
1053
1054 public:
1055 // .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
1056 bool has_reduced_costs() const;
1057 void clear_reduced_costs() ;
1058 const ::operations_research::math_opt::SparseDoubleVectorProto& reduced_costs() const;
1064
1065 private:
1066 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_reduced_costs() const;
1067 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_reduced_costs();
1068
1069 public:
1070 // .operations_research.math_opt.SparseDoubleVectorProto quadratic_dual_values = 5;
1071 bool has_quadratic_dual_values() const;
1073 const ::operations_research::math_opt::SparseDoubleVectorProto& quadratic_dual_values() const;
1079
1080 private:
1081 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_quadratic_dual_values() const;
1082 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_quadratic_dual_values();
1083
1084 public:
1085 // optional double objective_value = 3;
1086 bool has_objective_value() const;
1087 void clear_objective_value() ;
1088 double objective_value() const;
1089 void set_objective_value(double value);
1090
1091 private:
1092 double _internal_objective_value() const;
1093 void _internal_set_objective_value(double value);
1094
1095 public:
1096 // .operations_research.math_opt.SolutionStatusProto feasibility_status = 4;
1100
1101 private:
1102 ::operations_research::math_opt::SolutionStatusProto _internal_feasibility_status() const;
1103 void _internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value);
1104
1105 public:
1106 // @@protoc_insertion_point(class_scope:operations_research.math_opt.DualSolutionProto)
1107 private:
1108 class _Internal;
1109 friend class ::google::protobuf::internal::TcParser;
1110 static const ::google::protobuf::internal::TcParseTable<3, 5,
1111 3, 0,
1112 2>
1113 _table_;
1114
1115 friend class ::google::protobuf::MessageLite;
1116 friend class ::google::protobuf::Arena;
1117 template <typename T>
1118 friend class ::google::protobuf::Arena::InternalHelper;
1119 using InternalArenaConstructable_ = void;
1120 using DestructorSkippable_ = void;
1121 struct Impl_ {
1122 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1123 inline explicit Impl_(
1124 ::google::protobuf::internal::InternalVisibility visibility,
1125 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1126 inline explicit Impl_(
1127 ::google::protobuf::internal::InternalVisibility visibility,
1128 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1129 const DualSolutionProto& from_msg);
1130 ::google::protobuf::internal::HasBits<1> _has_bits_;
1131 ::google::protobuf::internal::CachedSize _cached_size_;
1132 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE dual_values_;
1133 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE reduced_costs_;
1134 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE quadratic_dual_values_;
1135 double objective_value_;
1136 int feasibility_status_;
1137 PROTOBUF_TSAN_DECLARE_MEMBER
1138 };
1139 union { Impl_ _impl_; };
1140 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1141};
1142
1143OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualSolutionProto_class_data_;
1144// -------------------------------------------------------------------
1146class OR_PROTO_DLL DualRayProto final : public ::google::protobuf::Message
1147/* @@protoc_insertion_point(class_definition:operations_research.math_opt.DualRayProto) */ {
1148 public:
1149 inline DualRayProto() : DualRayProto(nullptr) {}
1150 ~DualRayProto() PROTOBUF_FINAL;
1151
1152#if defined(PROTOBUF_CUSTOM_VTABLE)
1153 void operator delete(DualRayProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1154 SharedDtor(*msg);
1155 ::google::protobuf::internal::SizedDelete(msg, sizeof(DualRayProto));
1157#endif
1158
1159 template <typename = void>
1160 explicit PROTOBUF_CONSTEXPR DualRayProto(::google::protobuf::internal::ConstantInitialized);
1161
1162 inline DualRayProto(const DualRayProto& from) : DualRayProto(nullptr, from) {}
1163 inline DualRayProto(DualRayProto&& from) noexcept
1164 : DualRayProto(nullptr, ::std::move(from)) {}
1165 inline DualRayProto& operator=(const DualRayProto& from) {
1166 CopyFrom(from);
1167 return *this;
1168 }
1169 inline DualRayProto& operator=(DualRayProto&& from) noexcept {
1170 if (this == &from) return *this;
1171 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1172 InternalSwap(&from);
1173 } else {
1174 CopyFrom(from);
1175 }
1176 return *this;
1177 }
1178
1179 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1180 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1181 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1182 }
1183 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1184 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1185 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1187
1188 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1189 return GetDescriptor();
1191 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1192 return default_instance().GetMetadata().descriptor;
1193 }
1194 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1195 return default_instance().GetMetadata().reflection;
1196 }
1197 static const DualRayProto& default_instance() {
1198 return *reinterpret_cast<const DualRayProto*>(
1200 }
1201 static constexpr int kIndexInFileMessages = 4;
1202 friend void swap(DualRayProto& a, DualRayProto& b) { a.Swap(&b); }
1203 inline void Swap(DualRayProto* PROTOBUF_NONNULL other) {
1204 if (other == this) return;
1205 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1206 InternalSwap(other);
1207 } else {
1208 ::google::protobuf::internal::GenericSwap(this, other);
1211 void UnsafeArenaSwap(DualRayProto* PROTOBUF_NONNULL other) {
1212 if (other == this) return;
1213 ABSL_DCHECK(GetArena() == other->GetArena());
1214 InternalSwap(other);
1215 }
1216
1217 // implements Message ----------------------------------------------
1219 DualRayProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1220 return ::google::protobuf::Message::DefaultConstruct<DualRayProto>(arena);
1221 }
1222 using ::google::protobuf::Message::CopyFrom;
1223 void CopyFrom(const DualRayProto& from);
1224 using ::google::protobuf::Message::MergeFrom;
1225 void MergeFrom(const DualRayProto& from) { DualRayProto::MergeImpl(*this, from); }
1227 private:
1228 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1229 const ::google::protobuf::MessageLite& from_msg);
1230
1231 public:
1232 bool IsInitialized() const {
1233 return true;
1234 }
1235 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1236 #if defined(PROTOBUF_CUSTOM_VTABLE)
1237 private:
1238 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1239 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1240 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1241 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1242
1243 public:
1244 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1245 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1246 ::uint8_t* PROTOBUF_NONNULL target,
1247 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1248 return _InternalSerialize(*this, target, stream);
1249 }
1250 #else // PROTOBUF_CUSTOM_VTABLE
1251 ::size_t ByteSizeLong() const final;
1252 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1253 ::uint8_t* PROTOBUF_NONNULL target,
1254 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1255 #endif // PROTOBUF_CUSTOM_VTABLE
1256 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1257
1258 private:
1259 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1260 static void SharedDtor(MessageLite& self);
1261 void InternalSwap(DualRayProto* PROTOBUF_NONNULL other);
1262 private:
1263 template <typename T>
1264 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1265 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.DualRayProto"; }
1266
1267 explicit DualRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1268 DualRayProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const DualRayProto& from);
1270 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, DualRayProto&& from) noexcept
1271 : DualRayProto(arena) {
1272 *this = ::std::move(from);
1273 }
1274 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1275 static void* PROTOBUF_NONNULL PlacementNew_(
1276 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1277 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1278 static constexpr auto InternalNewImpl_();
1279
1280 public:
1281 static constexpr auto InternalGenerateClassData_();
1282
1283 ::google::protobuf::Metadata GetMetadata() const;
1284 // nested types ----------------------------------------------------
1285
1286 // accessors -------------------------------------------------------
1287 enum : int {
1288 kDualValuesFieldNumber = 1,
1289 kReducedCostsFieldNumber = 2,
1290 };
1291 // .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
1292 bool has_dual_values() const;
1293 void clear_dual_values() ;
1294 const ::operations_research::math_opt::SparseDoubleVectorProto& dual_values() const;
1300
1301 private:
1302 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_dual_values() const;
1303 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_dual_values();
1304
1305 public:
1306 // .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
1307 bool has_reduced_costs() const;
1308 void clear_reduced_costs() ;
1309 const ::operations_research::math_opt::SparseDoubleVectorProto& reduced_costs() const;
1315
1316 private:
1317 const ::operations_research::math_opt::SparseDoubleVectorProto& _internal_reduced_costs() const;
1318 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL _internal_mutable_reduced_costs();
1319
1320 public:
1321 // @@protoc_insertion_point(class_scope:operations_research.math_opt.DualRayProto)
1322 private:
1323 class _Internal;
1324 friend class ::google::protobuf::internal::TcParser;
1325 static const ::google::protobuf::internal::TcParseTable<1, 2,
1326 2, 0,
1327 2>
1328 _table_;
1329
1330 friend class ::google::protobuf::MessageLite;
1331 friend class ::google::protobuf::Arena;
1332 template <typename T>
1333 friend class ::google::protobuf::Arena::InternalHelper;
1334 using InternalArenaConstructable_ = void;
1335 using DestructorSkippable_ = void;
1336 struct Impl_ {
1337 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1338 inline explicit Impl_(
1339 ::google::protobuf::internal::InternalVisibility visibility,
1340 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1341 inline explicit Impl_(
1342 ::google::protobuf::internal::InternalVisibility visibility,
1343 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1344 const DualRayProto& from_msg);
1345 ::google::protobuf::internal::HasBits<1> _has_bits_;
1346 ::google::protobuf::internal::CachedSize _cached_size_;
1347 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE dual_values_;
1348 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE reduced_costs_;
1349 PROTOBUF_TSAN_DECLARE_MEMBER
1350 };
1351 union { Impl_ _impl_; };
1352 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1353};
1354
1355OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull DualRayProto_class_data_;
1356// -------------------------------------------------------------------
1357
1358class OR_PROTO_DLL BasisProto final : public ::google::protobuf::Message
1359/* @@protoc_insertion_point(class_definition:operations_research.math_opt.BasisProto) */ {
1360 public:
1361 inline BasisProto() : BasisProto(nullptr) {}
1362 ~BasisProto() PROTOBUF_FINAL;
1363
1364#if defined(PROTOBUF_CUSTOM_VTABLE)
1365 void operator delete(BasisProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1366 SharedDtor(*msg);
1367 ::google::protobuf::internal::SizedDelete(msg, sizeof(BasisProto));
1368 }
1369#endif
1370
1371 template <typename = void>
1372 explicit PROTOBUF_CONSTEXPR BasisProto(::google::protobuf::internal::ConstantInitialized);
1373
1374 inline BasisProto(const BasisProto& from) : BasisProto(nullptr, from) {}
1375 inline BasisProto(BasisProto&& from) noexcept
1376 : BasisProto(nullptr, ::std::move(from)) {}
1377 inline BasisProto& operator=(const BasisProto& from) {
1378 CopyFrom(from);
1379 return *this;
1381 inline BasisProto& operator=(BasisProto&& from) noexcept {
1382 if (this == &from) return *this;
1383 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1384 InternalSwap(&from);
1385 } else {
1386 CopyFrom(from);
1387 }
1388 return *this;
1390
1391 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1392 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1393 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1394 }
1395 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1396 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1397 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1398 }
1400 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1401 return GetDescriptor();
1402 }
1403 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1404 return default_instance().GetMetadata().descriptor;
1405 }
1406 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1407 return default_instance().GetMetadata().reflection;
1409 static const BasisProto& default_instance() {
1410 return *reinterpret_cast<const BasisProto*>(
1412 }
1413 static constexpr int kIndexInFileMessages = 6;
1414 friend void swap(BasisProto& a, BasisProto& b) { a.Swap(&b); }
1415 inline void Swap(BasisProto* PROTOBUF_NONNULL other) {
1416 if (other == this) return;
1417 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1418 InternalSwap(other);
1419 } else {
1420 ::google::protobuf::internal::GenericSwap(this, other);
1423 void UnsafeArenaSwap(BasisProto* PROTOBUF_NONNULL other) {
1424 if (other == this) return;
1425 ABSL_DCHECK(GetArena() == other->GetArena());
1426 InternalSwap(other);
1427 }
1428
1429 // implements Message ----------------------------------------------
1430
1431 BasisProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1432 return ::google::protobuf::Message::DefaultConstruct<BasisProto>(arena);
1433 }
1434 using ::google::protobuf::Message::CopyFrom;
1435 void CopyFrom(const BasisProto& from);
1436 using ::google::protobuf::Message::MergeFrom;
1437 void MergeFrom(const BasisProto& from) { BasisProto::MergeImpl(*this, from); }
1438
1439 private:
1440 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1441 const ::google::protobuf::MessageLite& from_msg);
1442
1443 public:
1444 bool IsInitialized() const {
1445 return true;
1446 }
1447 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1448 #if defined(PROTOBUF_CUSTOM_VTABLE)
1449 private:
1450 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1451 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1452 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1453 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1454
1455 public:
1456 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1457 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1458 ::uint8_t* PROTOBUF_NONNULL target,
1459 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1460 return _InternalSerialize(*this, target, stream);
1461 }
1462 #else // PROTOBUF_CUSTOM_VTABLE
1463 ::size_t ByteSizeLong() const final;
1464 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1465 ::uint8_t* PROTOBUF_NONNULL target,
1466 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1467 #endif // PROTOBUF_CUSTOM_VTABLE
1468 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1469
1470 private:
1471 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1472 static void SharedDtor(MessageLite& self);
1473 void InternalSwap(BasisProto* PROTOBUF_NONNULL other);
1474 private:
1475 template <typename T>
1477 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.BasisProto"; }
1478
1479 explicit BasisProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1480 BasisProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const BasisProto& from);
1481 BasisProto(
1482 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, BasisProto&& from) noexcept
1483 : BasisProto(arena) {
1484 *this = ::std::move(from);
1485 }
1486 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1487 static void* PROTOBUF_NONNULL PlacementNew_(
1488 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1489 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1490 static constexpr auto InternalNewImpl_();
1491
1492 public:
1493 static constexpr auto InternalGenerateClassData_();
1494
1495 ::google::protobuf::Metadata GetMetadata() const;
1496 // nested types ----------------------------------------------------
1497
1498 // accessors -------------------------------------------------------
1499 enum : int {
1500 kConstraintStatusFieldNumber = 1,
1501 kVariableStatusFieldNumber = 2,
1502 kBasicDualFeasibilityFieldNumber = 3,
1503 };
1504 // .operations_research.math_opt.SparseBasisStatusVector constraint_status = 1;
1505 bool has_constraint_status() const;
1506 void clear_constraint_status() ;
1507 const ::operations_research::math_opt::SparseBasisStatusVector& constraint_status() const;
1513
1514 private:
1515 const ::operations_research::math_opt::SparseBasisStatusVector& _internal_constraint_status() const;
1516 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL _internal_mutable_constraint_status();
1517
1518 public:
1519 // .operations_research.math_opt.SparseBasisStatusVector variable_status = 2;
1520 bool has_variable_status() const;
1521 void clear_variable_status() ;
1522 const ::operations_research::math_opt::SparseBasisStatusVector& variable_status() const;
1528
1529 private:
1530 const ::operations_research::math_opt::SparseBasisStatusVector& _internal_variable_status() const;
1531 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL _internal_mutable_variable_status();
1532
1533 public:
1534 // .operations_research.math_opt.SolutionStatusProto basic_dual_feasibility = 3;
1538
1539 private:
1540 ::operations_research::math_opt::SolutionStatusProto _internal_basic_dual_feasibility() const;
1541 void _internal_set_basic_dual_feasibility(::operations_research::math_opt::SolutionStatusProto value);
1542
1543 public:
1544 // @@protoc_insertion_point(class_scope:operations_research.math_opt.BasisProto)
1545 private:
1546 class _Internal;
1547 friend class ::google::protobuf::internal::TcParser;
1548 static const ::google::protobuf::internal::TcParseTable<2, 3,
1549 2, 0,
1550 2>
1551 _table_;
1552
1553 friend class ::google::protobuf::MessageLite;
1554 friend class ::google::protobuf::Arena;
1555 template <typename T>
1556 friend class ::google::protobuf::Arena::InternalHelper;
1557 using InternalArenaConstructable_ = void;
1558 using DestructorSkippable_ = void;
1559 struct Impl_ {
1560 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1561 inline explicit Impl_(
1562 ::google::protobuf::internal::InternalVisibility visibility,
1563 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1564 inline explicit Impl_(
1565 ::google::protobuf::internal::InternalVisibility visibility,
1566 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1567 const BasisProto& from_msg);
1568 ::google::protobuf::internal::HasBits<1> _has_bits_;
1569 ::google::protobuf::internal::CachedSize _cached_size_;
1570 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE constraint_status_;
1571 ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE variable_status_;
1572 int basic_dual_feasibility_;
1573 PROTOBUF_TSAN_DECLARE_MEMBER
1574 };
1575 union { Impl_ _impl_; };
1576 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1577};
1578
1579OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull BasisProto_class_data_;
1580// -------------------------------------------------------------------
1581
1582class OR_PROTO_DLL SolutionProto final : public ::google::protobuf::Message
1583/* @@protoc_insertion_point(class_definition:operations_research.math_opt.SolutionProto) */ {
1584 public:
1585 inline SolutionProto() : SolutionProto(nullptr) {}
1586 ~SolutionProto() PROTOBUF_FINAL;
1587
1588#if defined(PROTOBUF_CUSTOM_VTABLE)
1589 void operator delete(SolutionProto* PROTOBUF_NONNULL msg, ::std::destroying_delete_t) {
1590 SharedDtor(*msg);
1591 ::google::protobuf::internal::SizedDelete(msg, sizeof(SolutionProto));
1592 }
1593#endif
1595 template <typename = void>
1596 explicit PROTOBUF_CONSTEXPR SolutionProto(::google::protobuf::internal::ConstantInitialized);
1597
1598 inline SolutionProto(const SolutionProto& from) : SolutionProto(nullptr, from) {}
1599 inline SolutionProto(SolutionProto&& from) noexcept
1600 : SolutionProto(nullptr, ::std::move(from)) {}
1601 inline SolutionProto& operator=(const SolutionProto& from) {
1602 CopyFrom(from);
1603 return *this;
1604 }
1605 inline SolutionProto& operator=(SolutionProto&& from) noexcept {
1606 if (this == &from) return *this;
1607 if (::google::protobuf::internal::CanMoveWithInternalSwap(GetArena(), from.GetArena())) {
1608 InternalSwap(&from);
1609 } else {
1611 }
1612 return *this;
1613 }
1615 inline const ::google::protobuf::UnknownFieldSet& unknown_fields() const
1616 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1617 return _internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance);
1618 }
1619 inline ::google::protobuf::UnknownFieldSet* PROTOBUF_NONNULL mutable_unknown_fields()
1620 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1621 return _internal_metadata_.mutable_unknown_fields<::google::protobuf::UnknownFieldSet>();
1622 }
1623
1624 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL descriptor() {
1625 return GetDescriptor();
1626 }
1627 static const ::google::protobuf::Descriptor* PROTOBUF_NONNULL GetDescriptor() {
1628 return default_instance().GetMetadata().descriptor;
1629 }
1630 static const ::google::protobuf::Reflection* PROTOBUF_NONNULL GetReflection() {
1631 return default_instance().GetMetadata().reflection;
1632 }
1634 return *reinterpret_cast<const SolutionProto*>(
1637 static constexpr int kIndexInFileMessages = 7;
1638 friend void swap(SolutionProto& a, SolutionProto& b) { a.Swap(&b); }
1639 inline void Swap(SolutionProto* PROTOBUF_NONNULL other) {
1640 if (other == this) return;
1641 if (::google::protobuf::internal::CanUseInternalSwap(GetArena(), other->GetArena())) {
1642 InternalSwap(other);
1643 } else {
1644 ::google::protobuf::internal::GenericSwap(this, other);
1645 }
1647 void UnsafeArenaSwap(SolutionProto* PROTOBUF_NONNULL other) {
1648 if (other == this) return;
1649 ABSL_DCHECK(GetArena() == other->GetArena());
1650 InternalSwap(other);
1651 }
1652
1653 // implements Message ----------------------------------------------
1654
1655 SolutionProto* PROTOBUF_NONNULL New(::google::protobuf::Arena* PROTOBUF_NULLABLE arena = nullptr) const {
1656 return ::google::protobuf::Message::DefaultConstruct<SolutionProto>(arena);
1657 }
1658 using ::google::protobuf::Message::CopyFrom;
1659 void CopyFrom(const SolutionProto& from);
1660 using ::google::protobuf::Message::MergeFrom;
1661 void MergeFrom(const SolutionProto& from) { SolutionProto::MergeImpl(*this, from); }
1662
1663 private:
1664 static void MergeImpl(::google::protobuf::MessageLite& to_msg,
1665 const ::google::protobuf::MessageLite& from_msg);
1666
1667 public:
1668 bool IsInitialized() const {
1669 return true;
1671 ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL;
1672 #if defined(PROTOBUF_CUSTOM_VTABLE)
1673 private:
1674 static ::size_t ByteSizeLong(const ::google::protobuf::MessageLite& msg);
1675 static ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1676 const ::google::protobuf::MessageLite& msg, ::uint8_t* PROTOBUF_NONNULL target,
1677 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream);
1678
1679 public:
1680 ::size_t ByteSizeLong() const { return ByteSizeLong(*this); }
1681 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1682 ::uint8_t* PROTOBUF_NONNULL target,
1683 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1684 return _InternalSerialize(*this, target, stream);
1685 }
1686 #else // PROTOBUF_CUSTOM_VTABLE
1687 ::size_t ByteSizeLong() const final;
1688 ::uint8_t* PROTOBUF_NONNULL _InternalSerialize(
1689 ::uint8_t* PROTOBUF_NONNULL target,
1690 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const final;
1691 #endif // PROTOBUF_CUSTOM_VTABLE
1692 int GetCachedSize() const { return _impl_._cached_size_.Get(); }
1693
1694 private:
1695 void SharedCtor(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1696 static void SharedDtor(MessageLite& self);
1697 void InternalSwap(SolutionProto* PROTOBUF_NONNULL other);
1698 private:
1699 template <typename T>
1700 friend ::absl::string_view(::google::protobuf::internal::GetAnyMessageName)();
1701 static ::absl::string_view FullMessageName() { return "operations_research.math_opt.SolutionProto"; }
1702
1703 explicit SolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1704 SolutionProto(::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const SolutionProto& from);
1706 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, SolutionProto&& from) noexcept
1707 : SolutionProto(arena) {
1708 *this = ::std::move(from);
1709 }
1710 const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL;
1711 static void* PROTOBUF_NONNULL PlacementNew_(
1712 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1713 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1714 static constexpr auto InternalNewImpl_();
1715
1716 public:
1717 static constexpr auto InternalGenerateClassData_();
1718
1719 ::google::protobuf::Metadata GetMetadata() const;
1720 // nested types ----------------------------------------------------
1721
1722 // accessors -------------------------------------------------------
1723 enum : int {
1724 kPrimalSolutionFieldNumber = 1,
1725 kDualSolutionFieldNumber = 2,
1726 kBasisFieldNumber = 3,
1727 };
1728 // optional .operations_research.math_opt.PrimalSolutionProto primal_solution = 1;
1729 bool has_primal_solution() const;
1730 void clear_primal_solution() ;
1731 const ::operations_research::math_opt::PrimalSolutionProto& primal_solution() const;
1732 [[nodiscard]] ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE release_primal_solution();
1737
1738 private:
1739 const ::operations_research::math_opt::PrimalSolutionProto& _internal_primal_solution() const;
1740 ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL _internal_mutable_primal_solution();
1741
1742 public:
1743 // optional .operations_research.math_opt.DualSolutionProto dual_solution = 2;
1744 bool has_dual_solution() const;
1745 void clear_dual_solution() ;
1746 const ::operations_research::math_opt::DualSolutionProto& dual_solution() const;
1752
1753 private:
1754 const ::operations_research::math_opt::DualSolutionProto& _internal_dual_solution() const;
1755 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL _internal_mutable_dual_solution();
1756
1757 public:
1758 // optional .operations_research.math_opt.BasisProto basis = 3;
1759 bool has_basis() const;
1760 void clear_basis() ;
1761 const ::operations_research::math_opt::BasisProto& basis() const;
1762 [[nodiscard]] ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE release_basis();
1767
1768 private:
1769 const ::operations_research::math_opt::BasisProto& _internal_basis() const;
1770 ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL _internal_mutable_basis();
1771
1772 public:
1773 // @@protoc_insertion_point(class_scope:operations_research.math_opt.SolutionProto)
1774 private:
1775 class _Internal;
1776 friend class ::google::protobuf::internal::TcParser;
1777 static const ::google::protobuf::internal::TcParseTable<2, 3,
1778 3, 0,
1779 2>
1780 _table_;
1781
1782 friend class ::google::protobuf::MessageLite;
1783 friend class ::google::protobuf::Arena;
1784 template <typename T>
1785 friend class ::google::protobuf::Arena::InternalHelper;
1786 using InternalArenaConstructable_ = void;
1787 using DestructorSkippable_ = void;
1788 struct Impl_ {
1789 inline explicit constexpr Impl_(::google::protobuf::internal::ConstantInitialized) noexcept;
1790 inline explicit Impl_(
1791 ::google::protobuf::internal::InternalVisibility visibility,
1792 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena);
1793 inline explicit Impl_(
1794 ::google::protobuf::internal::InternalVisibility visibility,
1795 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
1796 const SolutionProto& from_msg);
1797 ::google::protobuf::internal::HasBits<1> _has_bits_;
1798 ::google::protobuf::internal::CachedSize _cached_size_;
1799 ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE primal_solution_;
1800 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE dual_solution_;
1801 ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE basis_;
1802 PROTOBUF_TSAN_DECLARE_MEMBER
1803 };
1804 union { Impl_ _impl_; };
1805 friend struct ::TableStruct_ortools_2fmath_5fopt_2fsolution_2eproto;
1806};
1807
1808OR_PROTO_DLL extern const ::google::protobuf::internal::ClassDataFull SolutionProto_class_data_;
1809
1810// ===================================================================
1811
1812
1815// ===================================================================
1816
1817
1818#ifdef __GNUC__
1819#pragma GCC diagnostic push
1820#pragma GCC diagnostic ignored "-Wstrict-aliasing"
1821#endif // __GNUC__
1822// -------------------------------------------------------------------
1823
1824// -------------------------------------------------------------------
1825
1826// PrimalSolutionProto
1827
1828// .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
1829inline bool PrimalSolutionProto::has_variable_values() const {
1830 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
1831 PROTOBUF_ASSUME(!value || _impl_.variable_values_ != nullptr);
1832 return value;
1833}
1834inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalSolutionProto::_internal_variable_values() const {
1835 ::google::protobuf::internal::TSanRead(&_impl_);
1836 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.variable_values_;
1838}
1839inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalSolutionProto::variable_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1840 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.variable_values)
1841 return _internal_variable_values();
1845 ::google::protobuf::internal::TSanWrite(&_impl_);
1846 if (GetArena() == nullptr) {
1847 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
1848 }
1849 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
1850 if (value != nullptr) {
1851 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
1852 } else {
1853 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
1854 }
1855 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.PrimalSolutionProto.variable_values)
1857inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalSolutionProto::release_variable_values() {
1858 ::google::protobuf::internal::TSanWrite(&_impl_);
1859
1860 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
1861 ::operations_research::math_opt::SparseDoubleVectorProto* released = _impl_.variable_values_;
1862 _impl_.variable_values_ = nullptr;
1863 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
1864 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
1865 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
1866 if (GetArena() == nullptr) {
1867 delete old;
1868 }
1869 } else {
1870 if (GetArena() != nullptr) {
1871 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
1872 }
1873 }
1874 return released;
1875}
1876inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalSolutionProto::unsafe_arena_release_variable_values() {
1877 ::google::protobuf::internal::TSanWrite(&_impl_);
1878 // @@protoc_insertion_point(field_release:operations_research.math_opt.PrimalSolutionProto.variable_values)
1879
1880 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
1881 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.variable_values_;
1882 _impl_.variable_values_ = nullptr;
1883 return temp;
1884}
1885inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalSolutionProto::_internal_mutable_variable_values() {
1886 ::google::protobuf::internal::TSanWrite(&_impl_);
1887 if (_impl_.variable_values_ == nullptr) {
1888 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
1889 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
1890 }
1891 return _impl_.variable_values_;
1892}
1893inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalSolutionProto::mutable_variable_values()
1894 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1895 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
1896 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_variable_values();
1897 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.PrimalSolutionProto.variable_values)
1898 return _msg;
1899}
1901 ::google::protobuf::Arena* message_arena = GetArena();
1902 ::google::protobuf::internal::TSanWrite(&_impl_);
1903 if (message_arena == nullptr) {
1904 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
1905 }
1907 if (value != nullptr) {
1908 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
1909 if (message_arena != submessage_arena) {
1910 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
1911 }
1912 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
1913 } else {
1914 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
1915 }
1916
1917 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
1918 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.PrimalSolutionProto.variable_values)
1919}
1920
1921// double objective_value = 2;
1923 ::google::protobuf::internal::TSanWrite(&_impl_);
1924 _impl_.objective_value_ = 0;
1925 ClearHasBit(_impl_._has_bits_[0],
1926 0x00000002U);
1927}
1928inline double PrimalSolutionProto::objective_value() const {
1929 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.objective_value)
1930 return _internal_objective_value();
1931}
1932inline void PrimalSolutionProto::set_objective_value(double value) {
1933 _internal_set_objective_value(value);
1934 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
1935 // @@protoc_insertion_point(field_set:operations_research.math_opt.PrimalSolutionProto.objective_value)
1936}
1937inline double PrimalSolutionProto::_internal_objective_value() const {
1938 ::google::protobuf::internal::TSanRead(&_impl_);
1939 return _impl_.objective_value_;
1940}
1941inline void PrimalSolutionProto::_internal_set_objective_value(double value) {
1942 ::google::protobuf::internal::TSanWrite(&_impl_);
1943 _impl_.objective_value_ = value;
1944}
1946// map<int64, double> auxiliary_objective_values = 4;
1947inline int PrimalSolutionProto::_internal_auxiliary_objective_values_size() const {
1948 return _internal_auxiliary_objective_values().size();
1949}
1951 return _internal_auxiliary_objective_values_size();
1952}
1954 ::google::protobuf::internal::TSanWrite(&_impl_);
1955 _impl_.auxiliary_objective_values_.Clear();
1956 ClearHasBitForRepeated(_impl_._has_bits_[0],
1957 0x00000008U);
1958}
1959inline const ::google::protobuf::Map<::int64_t, double>& PrimalSolutionProto::_internal_auxiliary_objective_values() const {
1960 ::google::protobuf::internal::TSanRead(&_impl_);
1961 return _impl_.auxiliary_objective_values_.GetMap();
1962}
1963inline const ::google::protobuf::Map<::int64_t, double>& PrimalSolutionProto::auxiliary_objective_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
1964 // @@protoc_insertion_point(field_map:operations_research.math_opt.PrimalSolutionProto.auxiliary_objective_values)
1965 return _internal_auxiliary_objective_values();
1967inline ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL PrimalSolutionProto::_internal_mutable_auxiliary_objective_values() {
1968 ::google::protobuf::internal::TSanWrite(&_impl_);
1969 return _impl_.auxiliary_objective_values_.MutableMap();
1970}
1971inline ::google::protobuf::Map<::int64_t, double>* PROTOBUF_NONNULL PrimalSolutionProto::mutable_auxiliary_objective_values()
1972 ABSL_ATTRIBUTE_LIFETIME_BOUND {
1973 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000008U);
1974 // @@protoc_insertion_point(field_mutable_map:operations_research.math_opt.PrimalSolutionProto.auxiliary_objective_values)
1975 return _internal_mutable_auxiliary_objective_values();
1977
1978// .operations_research.math_opt.SolutionStatusProto feasibility_status = 3;
1980 ::google::protobuf::internal::TSanWrite(&_impl_);
1981 _impl_.feasibility_status_ = 0;
1982 ClearHasBit(_impl_._has_bits_[0],
1983 0x00000004U);
1985inline ::operations_research::math_opt::SolutionStatusProto PrimalSolutionProto::feasibility_status() const {
1986 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalSolutionProto.feasibility_status)
1987 return _internal_feasibility_status();
1988}
1990 _internal_set_feasibility_status(value);
1991 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
1992 // @@protoc_insertion_point(field_set:operations_research.math_opt.PrimalSolutionProto.feasibility_status)
1993}
1994inline ::operations_research::math_opt::SolutionStatusProto PrimalSolutionProto::_internal_feasibility_status() const {
1995 ::google::protobuf::internal::TSanRead(&_impl_);
1996 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.feasibility_status_);
1997}
1998inline void PrimalSolutionProto::_internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value) {
1999 ::google::protobuf::internal::TSanWrite(&_impl_);
2000 _impl_.feasibility_status_ = value;
2001}
2003// -------------------------------------------------------------------
2004
2005// PrimalRayProto
2006
2007// .operations_research.math_opt.SparseDoubleVectorProto variable_values = 1;
2008inline bool PrimalRayProto::has_variable_values() const {
2009 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
2010 PROTOBUF_ASSUME(!value || _impl_.variable_values_ != nullptr);
2011 return value;
2012}
2013inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalRayProto::_internal_variable_values() const {
2014 ::google::protobuf::internal::TSanRead(&_impl_);
2015 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.variable_values_;
2017}
2018inline const ::operations_research::math_opt::SparseDoubleVectorProto& PrimalRayProto::variable_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2019 // @@protoc_insertion_point(field_get:operations_research.math_opt.PrimalRayProto.variable_values)
2020 return _internal_variable_values();
2021}
2024 ::google::protobuf::internal::TSanWrite(&_impl_);
2025 if (GetArena() == nullptr) {
2026 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
2027 }
2028 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2029 if (value != nullptr) {
2030 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2031 } else {
2032 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2033 }
2034 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.PrimalRayProto.variable_values)
2035}
2036inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalRayProto::release_variable_values() {
2037 ::google::protobuf::internal::TSanWrite(&_impl_);
2038
2039 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2041 _impl_.variable_values_ = nullptr;
2042 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2043 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2044 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2045 if (GetArena() == nullptr) {
2046 delete old;
2047 }
2048 } else {
2049 if (GetArena() != nullptr) {
2050 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2051 }
2052 }
2053 return released;
2054}
2055inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE PrimalRayProto::unsafe_arena_release_variable_values() {
2056 ::google::protobuf::internal::TSanWrite(&_impl_);
2057 // @@protoc_insertion_point(field_release:operations_research.math_opt.PrimalRayProto.variable_values)
2058
2059 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2060 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.variable_values_;
2061 _impl_.variable_values_ = nullptr;
2062 return temp;
2063}
2064inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalRayProto::_internal_mutable_variable_values() {
2065 ::google::protobuf::internal::TSanWrite(&_impl_);
2066 if (_impl_.variable_values_ == nullptr) {
2067 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2068 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2070 return _impl_.variable_values_;
2071}
2072inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL PrimalRayProto::mutable_variable_values()
2073 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2074 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2075 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_variable_values();
2076 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.PrimalRayProto.variable_values)
2077 return _msg;
2078}
2080 ::google::protobuf::Arena* message_arena = GetArena();
2081 ::google::protobuf::internal::TSanWrite(&_impl_);
2082 if (message_arena == nullptr) {
2083 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_values_);
2084 }
2085
2086 if (value != nullptr) {
2087 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2088 if (message_arena != submessage_arena) {
2089 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2090 }
2091 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2092 } else {
2093 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2094 }
2095
2096 _impl_.variable_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2097 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.PrimalRayProto.variable_values)
2098}
2099
2100// -------------------------------------------------------------------
2101
2102// DualSolutionProto
2103
2104// .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
2105inline bool DualSolutionProto::has_dual_values() const {
2106 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
2107 PROTOBUF_ASSUME(!value || _impl_.dual_values_ != nullptr);
2108 return value;
2109}
2110inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_dual_values() const {
2111 ::google::protobuf::internal::TSanRead(&_impl_);
2112 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.dual_values_;
2114}
2115inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2116 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.dual_values)
2117 return _internal_dual_values();
2118}
2121 ::google::protobuf::internal::TSanWrite(&_impl_);
2122 if (GetArena() == nullptr) {
2123 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2124 }
2125 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2126 if (value != nullptr) {
2127 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2128 } else {
2129 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2131 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.dual_values)
2132}
2133inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_dual_values() {
2134 ::google::protobuf::internal::TSanWrite(&_impl_);
2135
2136 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2138 _impl_.dual_values_ = nullptr;
2139 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2140 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2141 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2142 if (GetArena() == nullptr) {
2143 delete old;
2144 }
2145 } else {
2146 if (GetArena() != nullptr) {
2147 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2149 }
2150 return released;
2151}
2152inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_dual_values() {
2153 ::google::protobuf::internal::TSanWrite(&_impl_);
2154 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.dual_values)
2155
2156 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2158 _impl_.dual_values_ = nullptr;
2159 return temp;
2160}
2161inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_dual_values() {
2162 ::google::protobuf::internal::TSanWrite(&_impl_);
2163 if (_impl_.dual_values_ == nullptr) {
2164 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2165 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2166 }
2167 return _impl_.dual_values_;
2168}
2169inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_dual_values()
2170 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2171 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2172 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_dual_values();
2173 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.dual_values)
2174 return _msg;
2175}
2177 ::google::protobuf::Arena* message_arena = GetArena();
2178 ::google::protobuf::internal::TSanWrite(&_impl_);
2179 if (message_arena == nullptr) {
2180 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2181 }
2182
2183 if (value != nullptr) {
2184 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2185 if (message_arena != submessage_arena) {
2186 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2187 }
2188 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2189 } else {
2190 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2192
2193 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2194 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.dual_values)
2195}
2196
2197// .operations_research.math_opt.SparseDoubleVectorProto quadratic_dual_values = 5;
2199 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
2200 PROTOBUF_ASSUME(!value || _impl_.quadratic_dual_values_ != nullptr);
2201 return value;
2202}
2203inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_quadratic_dual_values() const {
2204 ::google::protobuf::internal::TSanRead(&_impl_);
2205 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.quadratic_dual_values_;
2207}
2208inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::quadratic_dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2209 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2210 return _internal_quadratic_dual_values();
2211}
2214 ::google::protobuf::internal::TSanWrite(&_impl_);
2215 if (GetArena() == nullptr) {
2216 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quadratic_dual_values_);
2217 }
2218 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2219 if (value != nullptr) {
2220 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2221 } else {
2222 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2224 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2225}
2226inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_quadratic_dual_values() {
2227 ::google::protobuf::internal::TSanWrite(&_impl_);
2228
2229 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2230 ::operations_research::math_opt::SparseDoubleVectorProto* released = _impl_.quadratic_dual_values_;
2231 _impl_.quadratic_dual_values_ = nullptr;
2232 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2233 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2234 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2235 if (GetArena() == nullptr) {
2236 delete old;
2237 }
2238 } else {
2239 if (GetArena() != nullptr) {
2240 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2242 }
2243 return released;
2244}
2245inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_quadratic_dual_values() {
2246 ::google::protobuf::internal::TSanWrite(&_impl_);
2247 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2248
2249 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2250 ::operations_research::math_opt::SparseDoubleVectorProto* temp = _impl_.quadratic_dual_values_;
2251 _impl_.quadratic_dual_values_ = nullptr;
2252 return temp;
2253}
2254inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_quadratic_dual_values() {
2255 ::google::protobuf::internal::TSanWrite(&_impl_);
2256 if (_impl_.quadratic_dual_values_ == nullptr) {
2257 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2258 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2259 }
2260 return _impl_.quadratic_dual_values_;
2261}
2262inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_quadratic_dual_values()
2263 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2264 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2265 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_quadratic_dual_values();
2266 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2267 return _msg;
2268}
2270 ::google::protobuf::Arena* message_arena = GetArena();
2271 ::google::protobuf::internal::TSanWrite(&_impl_);
2272 if (message_arena == nullptr) {
2273 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.quadratic_dual_values_);
2274 }
2275
2276 if (value != nullptr) {
2277 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2278 if (message_arena != submessage_arena) {
2279 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2280 }
2281 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2282 } else {
2283 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
2285
2286 _impl_.quadratic_dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2287 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.quadratic_dual_values)
2288}
2289
2290// .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
2291inline bool DualSolutionProto::has_reduced_costs() const {
2292 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
2293 PROTOBUF_ASSUME(!value || _impl_.reduced_costs_ != nullptr);
2294 return value;
2295}
2296inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::_internal_reduced_costs() const {
2297 ::google::protobuf::internal::TSanRead(&_impl_);
2298 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.reduced_costs_;
2300}
2301inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualSolutionProto::reduced_costs() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2302 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.reduced_costs)
2303 return _internal_reduced_costs();
2304}
2307 ::google::protobuf::internal::TSanWrite(&_impl_);
2308 if (GetArena() == nullptr) {
2309 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2310 }
2311 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2312 if (value != nullptr) {
2313 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2314 } else {
2315 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2317 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualSolutionProto.reduced_costs)
2318}
2319inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::release_reduced_costs() {
2320 ::google::protobuf::internal::TSanWrite(&_impl_);
2321
2322 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2324 _impl_.reduced_costs_ = nullptr;
2325 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2326 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2327 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2328 if (GetArena() == nullptr) {
2329 delete old;
2330 }
2331 } else {
2332 if (GetArena() != nullptr) {
2333 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2335 }
2336 return released;
2337}
2338inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualSolutionProto::unsafe_arena_release_reduced_costs() {
2339 ::google::protobuf::internal::TSanWrite(&_impl_);
2340 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualSolutionProto.reduced_costs)
2341
2342 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2344 _impl_.reduced_costs_ = nullptr;
2345 return temp;
2346}
2347inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::_internal_mutable_reduced_costs() {
2348 ::google::protobuf::internal::TSanWrite(&_impl_);
2349 if (_impl_.reduced_costs_ == nullptr) {
2350 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2351 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2352 }
2353 return _impl_.reduced_costs_;
2354}
2355inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualSolutionProto::mutable_reduced_costs()
2356 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2357 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2358 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_reduced_costs();
2359 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualSolutionProto.reduced_costs)
2360 return _msg;
2361}
2363 ::google::protobuf::Arena* message_arena = GetArena();
2364 ::google::protobuf::internal::TSanWrite(&_impl_);
2365 if (message_arena == nullptr) {
2366 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2367 }
2368
2369 if (value != nullptr) {
2370 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2371 if (message_arena != submessage_arena) {
2372 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2373 }
2374 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2375 } else {
2376 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2378
2379 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2380 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualSolutionProto.reduced_costs)
2381}
2382
2383// optional double objective_value = 3;
2384inline bool DualSolutionProto::has_objective_value() const {
2385 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000008U);
2386 return value;
2387}
2389 ::google::protobuf::internal::TSanWrite(&_impl_);
2390 _impl_.objective_value_ = 0;
2391 ClearHasBit(_impl_._has_bits_[0],
2392 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 SetHasBit(_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 ClearHasBit(_impl_._has_bits_[0],
2417 0x00000010U);
2418}
2419inline ::operations_research::math_opt::SolutionStatusProto DualSolutionProto::feasibility_status() const {
2420 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualSolutionProto.feasibility_status)
2421 return _internal_feasibility_status();
2422}
2424 _internal_set_feasibility_status(value);
2425 SetHasBit(_impl_._has_bits_[0], 0x00000010U);
2426 // @@protoc_insertion_point(field_set:operations_research.math_opt.DualSolutionProto.feasibility_status)
2427}
2428inline ::operations_research::math_opt::SolutionStatusProto DualSolutionProto::_internal_feasibility_status() const {
2429 ::google::protobuf::internal::TSanRead(&_impl_);
2430 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.feasibility_status_);
2431}
2432inline void DualSolutionProto::_internal_set_feasibility_status(::operations_research::math_opt::SolutionStatusProto value) {
2433 ::google::protobuf::internal::TSanWrite(&_impl_);
2434 _impl_.feasibility_status_ = value;
2435}
2436
2437// -------------------------------------------------------------------
2439// DualRayProto
2440
2441// .operations_research.math_opt.SparseDoubleVectorProto dual_values = 1;
2442inline bool DualRayProto::has_dual_values() const {
2443 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
2444 PROTOBUF_ASSUME(!value || _impl_.dual_values_ != nullptr);
2445 return value;
2446}
2447inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::_internal_dual_values() const {
2448 ::google::protobuf::internal::TSanRead(&_impl_);
2449 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.dual_values_;
2451}
2452inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::dual_values() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2453 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualRayProto.dual_values)
2454 return _internal_dual_values();
2455}
2458 ::google::protobuf::internal::TSanWrite(&_impl_);
2459 if (GetArena() == nullptr) {
2460 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2461 }
2462 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2463 if (value != nullptr) {
2464 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2465 } else {
2466 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2467 }
2468 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualRayProto.dual_values)
2469}
2470inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::release_dual_values() {
2471 ::google::protobuf::internal::TSanWrite(&_impl_);
2473 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2475 _impl_.dual_values_ = nullptr;
2476 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2477 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2478 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2479 if (GetArena() == nullptr) {
2480 delete old;
2481 }
2482 } else {
2483 if (GetArena() != nullptr) {
2484 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2485 }
2487 return released;
2488}
2489inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::unsafe_arena_release_dual_values() {
2490 ::google::protobuf::internal::TSanWrite(&_impl_);
2491 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualRayProto.dual_values)
2492
2493 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2495 _impl_.dual_values_ = nullptr;
2496 return temp;
2497}
2498inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::_internal_mutable_dual_values() {
2499 ::google::protobuf::internal::TSanWrite(&_impl_);
2500 if (_impl_.dual_values_ == nullptr) {
2501 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2502 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2503 }
2504 return _impl_.dual_values_;
2506inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::mutable_dual_values()
2507 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2508 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2509 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_dual_values();
2510 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualRayProto.dual_values)
2511 return _msg;
2512}
2514 ::google::protobuf::Arena* message_arena = GetArena();
2515 ::google::protobuf::internal::TSanWrite(&_impl_);
2516 if (message_arena == nullptr) {
2517 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_values_);
2518 }
2519
2520 if (value != nullptr) {
2521 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2522 if (message_arena != submessage_arena) {
2523 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2524 }
2525 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2526 } else {
2527 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2528 }
2530 _impl_.dual_values_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2531 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualRayProto.dual_values)
2532}
2533
2534// .operations_research.math_opt.SparseDoubleVectorProto reduced_costs = 2;
2535inline bool DualRayProto::has_reduced_costs() const {
2536 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
2537 PROTOBUF_ASSUME(!value || _impl_.reduced_costs_ != nullptr);
2538 return value;
2539}
2540inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::_internal_reduced_costs() const {
2541 ::google::protobuf::internal::TSanRead(&_impl_);
2542 const ::operations_research::math_opt::SparseDoubleVectorProto* p = _impl_.reduced_costs_;
2544}
2545inline const ::operations_research::math_opt::SparseDoubleVectorProto& DualRayProto::reduced_costs() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2546 // @@protoc_insertion_point(field_get:operations_research.math_opt.DualRayProto.reduced_costs)
2547 return _internal_reduced_costs();
2548}
2550 ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE value) {
2551 ::google::protobuf::internal::TSanWrite(&_impl_);
2552 if (GetArena() == nullptr) {
2553 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2554 }
2555 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2556 if (value != nullptr) {
2557 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2558 } else {
2559 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2560 }
2561 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.DualRayProto.reduced_costs)
2562}
2563inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::release_reduced_costs() {
2564 ::google::protobuf::internal::TSanWrite(&_impl_);
2566 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2568 _impl_.reduced_costs_ = nullptr;
2569 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2570 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2571 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2572 if (GetArena() == nullptr) {
2573 delete old;
2574 }
2575 } else {
2576 if (GetArena() != nullptr) {
2577 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2578 }
2580 return released;
2581}
2582inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NULLABLE DualRayProto::unsafe_arena_release_reduced_costs() {
2583 ::google::protobuf::internal::TSanWrite(&_impl_);
2584 // @@protoc_insertion_point(field_release:operations_research.math_opt.DualRayProto.reduced_costs)
2585
2586 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2588 _impl_.reduced_costs_ = nullptr;
2589 return temp;
2590}
2591inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::_internal_mutable_reduced_costs() {
2592 ::google::protobuf::internal::TSanWrite(&_impl_);
2593 if (_impl_.reduced_costs_ == nullptr) {
2594 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseDoubleVectorProto>(GetArena());
2595 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(p);
2596 }
2597 return _impl_.reduced_costs_;
2599inline ::operations_research::math_opt::SparseDoubleVectorProto* PROTOBUF_NONNULL DualRayProto::mutable_reduced_costs()
2600 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2601 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2602 ::operations_research::math_opt::SparseDoubleVectorProto* _msg = _internal_mutable_reduced_costs();
2603 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.DualRayProto.reduced_costs)
2604 return _msg;
2605}
2607 ::google::protobuf::Arena* message_arena = GetArena();
2608 ::google::protobuf::internal::TSanWrite(&_impl_);
2609 if (message_arena == nullptr) {
2610 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.reduced_costs_);
2611 }
2612
2613 if (value != nullptr) {
2614 ::google::protobuf::Arena* submessage_arena = reinterpret_cast<::google::protobuf::Message*>(value)->GetArena();
2615 if (message_arena != submessage_arena) {
2616 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2617 }
2618 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2619 } else {
2620 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2621 }
2623 _impl_.reduced_costs_ = reinterpret_cast<::operations_research::math_opt::SparseDoubleVectorProto*>(value);
2624 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.DualRayProto.reduced_costs)
2625}
2626
2627// -------------------------------------------------------------------
2628
2629// SparseBasisStatusVector
2630
2631// repeated int64 ids = 1;
2632inline int SparseBasisStatusVector::_internal_ids_size() const {
2633 return _internal_ids().size();
2634}
2635inline int SparseBasisStatusVector::ids_size() const {
2636 return _internal_ids_size();
2637}
2639 ::google::protobuf::internal::TSanWrite(&_impl_);
2640 _impl_.ids_.Clear();
2641 ClearHasBitForRepeated(_impl_._has_bits_[0],
2642 0x00000001U);
2643}
2644inline ::int64_t SparseBasisStatusVector::ids(int index) const {
2645 // @@protoc_insertion_point(field_get:operations_research.math_opt.SparseBasisStatusVector.ids)
2646 return _internal_ids().Get(index);
2647}
2648inline void SparseBasisStatusVector::set_ids(int index, ::int64_t value) {
2649 _internal_mutable_ids()->Set(index, value);
2650 // @@protoc_insertion_point(field_set:operations_research.math_opt.SparseBasisStatusVector.ids)
2651}
2652inline void SparseBasisStatusVector::add_ids(::int64_t value) {
2653 ::google::protobuf::internal::TSanWrite(&_impl_);
2654 _internal_mutable_ids()->Add(value);
2655 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2656 // @@protoc_insertion_point(field_add:operations_research.math_opt.SparseBasisStatusVector.ids)
2657}
2658inline const ::google::protobuf::RepeatedField<::int64_t>& SparseBasisStatusVector::ids() const
2659 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2660 // @@protoc_insertion_point(field_list:operations_research.math_opt.SparseBasisStatusVector.ids)
2661 return _internal_ids();
2662}
2663inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL SparseBasisStatusVector::mutable_ids()
2664 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2665 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000001U);
2666 // @@protoc_insertion_point(field_mutable_list:operations_research.math_opt.SparseBasisStatusVector.ids)
2667 ::google::protobuf::internal::TSanWrite(&_impl_);
2668 return _internal_mutable_ids();
2670inline const ::google::protobuf::RepeatedField<::int64_t>&
2671SparseBasisStatusVector::_internal_ids() const {
2672 ::google::protobuf::internal::TSanRead(&_impl_);
2673 return _impl_.ids_;
2674}
2675inline ::google::protobuf::RepeatedField<::int64_t>* PROTOBUF_NONNULL
2676SparseBasisStatusVector::_internal_mutable_ids() {
2677 ::google::protobuf::internal::TSanRead(&_impl_);
2678 return &_impl_.ids_;
2679}
2681// repeated .operations_research.math_opt.BasisStatusProto values = 2;
2682inline int SparseBasisStatusVector::_internal_values_size() const {
2683 return _internal_values().size();
2684}
2685inline int SparseBasisStatusVector::values_size() const {
2686 return _internal_values_size();
2687}
2689 ::google::protobuf::internal::TSanWrite(&_impl_);
2690 _impl_.values_.Clear();
2691 ClearHasBitForRepeated(_impl_._has_bits_[0],
2692 0x00000002U);
2693}
2694inline ::operations_research::math_opt::BasisStatusProto SparseBasisStatusVector::values(int index) const {
2695 // @@protoc_insertion_point(field_get:operations_research.math_opt.SparseBasisStatusVector.values)
2696 return static_cast<::operations_research::math_opt::BasisStatusProto>(_internal_values().Get(index));
2697}
2699 _internal_mutable_values()->Set(index, value);
2700 // @@protoc_insertion_point(field_set:operations_research.math_opt.SparseBasisStatusVector.values)
2701}
2703 ::google::protobuf::internal::TSanWrite(&_impl_);
2704 _internal_mutable_values()->Add(value);
2705 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
2706 // @@protoc_insertion_point(field_add:operations_research.math_opt.SparseBasisStatusVector.values)
2707}
2708inline const ::google::protobuf::RepeatedField<int>& SparseBasisStatusVector::values() const
2709 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2710 // @@protoc_insertion_point(field_list:operations_research.math_opt.SparseBasisStatusVector.values)
2711 return _internal_values();
2712}
2713inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL SparseBasisStatusVector::mutable_values()
2714 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2715 SetHasBitForRepeated(_impl_._has_bits_[0], 0x00000002U);
2716 // @@protoc_insertion_point(field_mutable_list:operations_research.math_opt.SparseBasisStatusVector.values)
2717 ::google::protobuf::internal::TSanWrite(&_impl_);
2718 return _internal_mutable_values();
2720inline const ::google::protobuf::RepeatedField<int>& SparseBasisStatusVector::_internal_values()
2721 const {
2722 ::google::protobuf::internal::TSanRead(&_impl_);
2723 return _impl_.values_;
2724}
2725inline ::google::protobuf::RepeatedField<int>* PROTOBUF_NONNULL
2726SparseBasisStatusVector::_internal_mutable_values() {
2727 ::google::protobuf::internal::TSanRead(&_impl_);
2728 return &_impl_.values_;
2729}
2731// -------------------------------------------------------------------
2732
2733// BasisProto
2734
2735// .operations_research.math_opt.SparseBasisStatusVector constraint_status = 1;
2736inline bool BasisProto::has_constraint_status() const {
2737 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
2738 PROTOBUF_ASSUME(!value || _impl_.constraint_status_ != nullptr);
2739 return value;
2740}
2742 ::google::protobuf::internal::TSanWrite(&_impl_);
2743 if (_impl_.constraint_status_ != nullptr) _impl_.constraint_status_->Clear();
2744 ClearHasBit(_impl_._has_bits_[0],
2745 0x00000001U);
2746}
2747inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::_internal_constraint_status() const {
2748 ::google::protobuf::internal::TSanRead(&_impl_);
2749 const ::operations_research::math_opt::SparseBasisStatusVector* p = _impl_.constraint_status_;
2751}
2752inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::constraint_status() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2753 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.constraint_status)
2754 return _internal_constraint_status();
2755}
2758 ::google::protobuf::internal::TSanWrite(&_impl_);
2759 if (GetArena() == nullptr) {
2760 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constraint_status_);
2761 }
2762 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2763 if (value != nullptr) {
2764 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2765 } else {
2766 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2767 }
2768 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.BasisProto.constraint_status)
2769}
2770inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::release_constraint_status() {
2771 ::google::protobuf::internal::TSanWrite(&_impl_);
2772
2773 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2775 _impl_.constraint_status_ = nullptr;
2776 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2777 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2778 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2779 if (GetArena() == nullptr) {
2780 delete old;
2781 }
2782 } else {
2783 if (GetArena() != nullptr) {
2784 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2785 }
2786 }
2787 return released;
2789inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::unsafe_arena_release_constraint_status() {
2790 ::google::protobuf::internal::TSanWrite(&_impl_);
2791 // @@protoc_insertion_point(field_release:operations_research.math_opt.BasisProto.constraint_status)
2792
2793 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2794 ::operations_research::math_opt::SparseBasisStatusVector* temp = _impl_.constraint_status_;
2795 _impl_.constraint_status_ = nullptr;
2796 return temp;
2797}
2798inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::_internal_mutable_constraint_status() {
2799 ::google::protobuf::internal::TSanWrite(&_impl_);
2800 if (_impl_.constraint_status_ == nullptr) {
2801 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseBasisStatusVector>(GetArena());
2802 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(p);
2803 }
2804 return _impl_.constraint_status_;
2805}
2806inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::mutable_constraint_status()
2807 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2808 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2809 ::operations_research::math_opt::SparseBasisStatusVector* _msg = _internal_mutable_constraint_status();
2810 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.BasisProto.constraint_status)
2811 return _msg;
2812}
2814 ::google::protobuf::Arena* message_arena = GetArena();
2815 ::google::protobuf::internal::TSanWrite(&_impl_);
2816 if (message_arena == nullptr) {
2817 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.constraint_status_);
2818 }
2819
2820 if (value != nullptr) {
2821 ::google::protobuf::Arena* submessage_arena = value->GetArena();
2822 if (message_arena != submessage_arena) {
2823 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2825 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2826 } else {
2827 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2828 }
2829
2830 _impl_.constraint_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2831 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.BasisProto.constraint_status)
2832}
2833
2834// .operations_research.math_opt.SparseBasisStatusVector variable_status = 2;
2835inline bool BasisProto::has_variable_status() const {
2836 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
2837 PROTOBUF_ASSUME(!value || _impl_.variable_status_ != nullptr);
2838 return value;
2839}
2841 ::google::protobuf::internal::TSanWrite(&_impl_);
2842 if (_impl_.variable_status_ != nullptr) _impl_.variable_status_->Clear();
2843 ClearHasBit(_impl_._has_bits_[0],
2844 0x00000002U);
2845}
2846inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::_internal_variable_status() const {
2847 ::google::protobuf::internal::TSanRead(&_impl_);
2848 const ::operations_research::math_opt::SparseBasisStatusVector* p = _impl_.variable_status_;
2850}
2851inline const ::operations_research::math_opt::SparseBasisStatusVector& BasisProto::variable_status() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2852 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.variable_status)
2853 return _internal_variable_status();
2854}
2857 ::google::protobuf::internal::TSanWrite(&_impl_);
2858 if (GetArena() == nullptr) {
2859 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_status_);
2860 }
2861 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2862 if (value != nullptr) {
2863 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2864 } else {
2865 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2866 }
2867 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.BasisProto.variable_status)
2868}
2869inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::release_variable_status() {
2870 ::google::protobuf::internal::TSanWrite(&_impl_);
2871
2872 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2874 _impl_.variable_status_ = nullptr;
2875 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
2876 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
2877 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2878 if (GetArena() == nullptr) {
2879 delete old;
2880 }
2881 } else {
2882 if (GetArena() != nullptr) {
2883 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
2884 }
2885 }
2886 return released;
2888inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NULLABLE BasisProto::unsafe_arena_release_variable_status() {
2889 ::google::protobuf::internal::TSanWrite(&_impl_);
2890 // @@protoc_insertion_point(field_release:operations_research.math_opt.BasisProto.variable_status)
2891
2892 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2893 ::operations_research::math_opt::SparseBasisStatusVector* temp = _impl_.variable_status_;
2894 _impl_.variable_status_ = nullptr;
2895 return temp;
2896}
2897inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::_internal_mutable_variable_status() {
2898 ::google::protobuf::internal::TSanWrite(&_impl_);
2899 if (_impl_.variable_status_ == nullptr) {
2900 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::SparseBasisStatusVector>(GetArena());
2901 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(p);
2902 }
2903 return _impl_.variable_status_;
2904}
2905inline ::operations_research::math_opt::SparseBasisStatusVector* PROTOBUF_NONNULL BasisProto::mutable_variable_status()
2906 ABSL_ATTRIBUTE_LIFETIME_BOUND {
2907 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2908 ::operations_research::math_opt::SparseBasisStatusVector* _msg = _internal_mutable_variable_status();
2909 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.BasisProto.variable_status)
2910 return _msg;
2911}
2913 ::google::protobuf::Arena* message_arena = GetArena();
2914 ::google::protobuf::internal::TSanWrite(&_impl_);
2915 if (message_arena == nullptr) {
2916 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.variable_status_);
2917 }
2918
2919 if (value != nullptr) {
2920 ::google::protobuf::Arena* submessage_arena = value->GetArena();
2921 if (message_arena != submessage_arena) {
2922 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
2924 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
2925 } else {
2926 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
2927 }
2928
2929 _impl_.variable_status_ = reinterpret_cast<::operations_research::math_opt::SparseBasisStatusVector*>(value);
2930 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.BasisProto.variable_status)
2931}
2932
2933// .operations_research.math_opt.SolutionStatusProto basic_dual_feasibility = 3;
2935 ::google::protobuf::internal::TSanWrite(&_impl_);
2936 _impl_.basic_dual_feasibility_ = 0;
2937 ClearHasBit(_impl_._has_bits_[0],
2938 0x00000004U);
2939}
2940inline ::operations_research::math_opt::SolutionStatusProto BasisProto::basic_dual_feasibility() const {
2941 // @@protoc_insertion_point(field_get:operations_research.math_opt.BasisProto.basic_dual_feasibility)
2942 return _internal_basic_dual_feasibility();
2943}
2945 _internal_set_basic_dual_feasibility(value);
2946 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
2947 // @@protoc_insertion_point(field_set:operations_research.math_opt.BasisProto.basic_dual_feasibility)
2948}
2949inline ::operations_research::math_opt::SolutionStatusProto BasisProto::_internal_basic_dual_feasibility() const {
2950 ::google::protobuf::internal::TSanRead(&_impl_);
2951 return static_cast<::operations_research::math_opt::SolutionStatusProto>(_impl_.basic_dual_feasibility_);
2953inline void BasisProto::_internal_set_basic_dual_feasibility(::operations_research::math_opt::SolutionStatusProto value) {
2954 ::google::protobuf::internal::TSanWrite(&_impl_);
2955 _impl_.basic_dual_feasibility_ = value;
2956}
2957
2958// -------------------------------------------------------------------
2959
2960// SolutionProto
2961
2962// optional .operations_research.math_opt.PrimalSolutionProto primal_solution = 1;
2963inline bool SolutionProto::has_primal_solution() const {
2964 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000001U);
2965 PROTOBUF_ASSUME(!value || _impl_.primal_solution_ != nullptr);
2966 return value;
2967}
2969 ::google::protobuf::internal::TSanWrite(&_impl_);
2970 if (_impl_.primal_solution_ != nullptr) _impl_.primal_solution_->Clear();
2971 ClearHasBit(_impl_._has_bits_[0],
2972 0x00000001U);
2973}
2974inline const ::operations_research::math_opt::PrimalSolutionProto& SolutionProto::_internal_primal_solution() const {
2975 ::google::protobuf::internal::TSanRead(&_impl_);
2976 const ::operations_research::math_opt::PrimalSolutionProto* p = _impl_.primal_solution_;
2978}
2979inline const ::operations_research::math_opt::PrimalSolutionProto& SolutionProto::primal_solution() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
2980 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.primal_solution)
2981 return _internal_primal_solution();
2985 ::google::protobuf::internal::TSanWrite(&_impl_);
2986 if (GetArena() == nullptr) {
2987 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.primal_solution_);
2988 }
2989 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(value);
2990 if (value != nullptr) {
2991 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
2992 } else {
2993 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
2994 }
2995 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.primal_solution)
2996}
2997inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE SolutionProto::release_primal_solution() {
2998 ::google::protobuf::internal::TSanWrite(&_impl_);
2999
3000 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
3002 _impl_.primal_solution_ = nullptr;
3003 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3004 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3005 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3006 if (GetArena() == nullptr) {
3007 delete old;
3008 }
3009 } else {
3010 if (GetArena() != nullptr) {
3011 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3012 }
3013 }
3014 return released;
3015}
3016inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_primal_solution() {
3017 ::google::protobuf::internal::TSanWrite(&_impl_);
3018 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.primal_solution)
3019
3020 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
3022 _impl_.primal_solution_ = nullptr;
3023 return temp;
3024}
3025inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_primal_solution() {
3026 ::google::protobuf::internal::TSanWrite(&_impl_);
3027 if (_impl_.primal_solution_ == nullptr) {
3028 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::PrimalSolutionProto>(GetArena());
3029 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(p);
3030 }
3031 return _impl_.primal_solution_;
3032}
3033inline ::operations_research::math_opt::PrimalSolutionProto* PROTOBUF_NONNULL SolutionProto::mutable_primal_solution()
3034 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3035 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
3036 ::operations_research::math_opt::PrimalSolutionProto* _msg = _internal_mutable_primal_solution();
3037 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.primal_solution)
3038 return _msg;
3039}
3041 ::google::protobuf::Arena* message_arena = GetArena();
3042 ::google::protobuf::internal::TSanWrite(&_impl_);
3043 if (message_arena == nullptr) {
3044 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.primal_solution_);
3045 }
3046
3047 if (value != nullptr) {
3048 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3049 if (message_arena != submessage_arena) {
3050 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3051 }
3052 SetHasBit(_impl_._has_bits_[0], 0x00000001U);
3053 } else {
3054 ClearHasBit(_impl_._has_bits_[0], 0x00000001U);
3055 }
3056
3057 _impl_.primal_solution_ = reinterpret_cast<::operations_research::math_opt::PrimalSolutionProto*>(value);
3058 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.primal_solution)
3060
3061// optional .operations_research.math_opt.DualSolutionProto dual_solution = 2;
3062inline bool SolutionProto::has_dual_solution() const {
3063 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000002U);
3064 PROTOBUF_ASSUME(!value || _impl_.dual_solution_ != nullptr);
3065 return value;
3066}
3068 ::google::protobuf::internal::TSanWrite(&_impl_);
3069 if (_impl_.dual_solution_ != nullptr) _impl_.dual_solution_->Clear();
3070 ClearHasBit(_impl_._has_bits_[0],
3071 0x00000002U);
3072}
3073inline const ::operations_research::math_opt::DualSolutionProto& SolutionProto::_internal_dual_solution() const {
3074 ::google::protobuf::internal::TSanRead(&_impl_);
3075 const ::operations_research::math_opt::DualSolutionProto* p = _impl_.dual_solution_;
3077}
3078inline const ::operations_research::math_opt::DualSolutionProto& SolutionProto::dual_solution() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3079 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.dual_solution)
3080 return _internal_dual_solution();
3083 ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE value) {
3084 ::google::protobuf::internal::TSanWrite(&_impl_);
3085 if (GetArena() == nullptr) {
3086 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_solution_);
3087 }
3088 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(value);
3089 if (value != nullptr) {
3090 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3091 } else {
3092 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
3093 }
3094 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.dual_solution)
3095}
3096inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE SolutionProto::release_dual_solution() {
3097 ::google::protobuf::internal::TSanWrite(&_impl_);
3098
3099 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
3101 _impl_.dual_solution_ = nullptr;
3102 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3103 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3104 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3105 if (GetArena() == nullptr) {
3106 delete old;
3107 }
3108 } else {
3109 if (GetArena() != nullptr) {
3110 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3111 }
3112 }
3113 return released;
3114}
3115inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_dual_solution() {
3116 ::google::protobuf::internal::TSanWrite(&_impl_);
3117 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.dual_solution)
3118
3119 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
3121 _impl_.dual_solution_ = nullptr;
3122 return temp;
3123}
3124inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_dual_solution() {
3125 ::google::protobuf::internal::TSanWrite(&_impl_);
3126 if (_impl_.dual_solution_ == nullptr) {
3127 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::DualSolutionProto>(GetArena());
3128 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(p);
3129 }
3130 return _impl_.dual_solution_;
3131}
3132inline ::operations_research::math_opt::DualSolutionProto* PROTOBUF_NONNULL SolutionProto::mutable_dual_solution()
3133 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3134 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3135 ::operations_research::math_opt::DualSolutionProto* _msg = _internal_mutable_dual_solution();
3136 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.dual_solution)
3137 return _msg;
3138}
3140 ::google::protobuf::Arena* message_arena = GetArena();
3141 ::google::protobuf::internal::TSanWrite(&_impl_);
3142 if (message_arena == nullptr) {
3143 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.dual_solution_);
3144 }
3145
3146 if (value != nullptr) {
3147 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3148 if (message_arena != submessage_arena) {
3149 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3150 }
3151 SetHasBit(_impl_._has_bits_[0], 0x00000002U);
3152 } else {
3153 ClearHasBit(_impl_._has_bits_[0], 0x00000002U);
3154 }
3155
3156 _impl_.dual_solution_ = reinterpret_cast<::operations_research::math_opt::DualSolutionProto*>(value);
3157 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.dual_solution)
3159
3160// optional .operations_research.math_opt.BasisProto basis = 3;
3161inline bool SolutionProto::has_basis() const {
3162 bool value = CheckHasBit(_impl_._has_bits_[0], 0x00000004U);
3163 PROTOBUF_ASSUME(!value || _impl_.basis_ != nullptr);
3164 return value;
3165}
3166inline void SolutionProto::clear_basis() {
3167 ::google::protobuf::internal::TSanWrite(&_impl_);
3168 if (_impl_.basis_ != nullptr) _impl_.basis_->Clear();
3169 ClearHasBit(_impl_._has_bits_[0],
3170 0x00000004U);
3171}
3172inline const ::operations_research::math_opt::BasisProto& SolutionProto::_internal_basis() const {
3173 ::google::protobuf::internal::TSanRead(&_impl_);
3174 const ::operations_research::math_opt::BasisProto* p = _impl_.basis_;
3176}
3177inline const ::operations_research::math_opt::BasisProto& SolutionProto::basis() const ABSL_ATTRIBUTE_LIFETIME_BOUND {
3178 // @@protoc_insertion_point(field_get:operations_research.math_opt.SolutionProto.basis)
3179 return _internal_basis();
3182 ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE value) {
3183 ::google::protobuf::internal::TSanWrite(&_impl_);
3184 if (GetArena() == nullptr) {
3185 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.basis_);
3186 }
3187 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(value);
3188 if (value != nullptr) {
3189 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3190 } else {
3191 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
3192 }
3193 // @@protoc_insertion_point(field_unsafe_arena_set_allocated:operations_research.math_opt.SolutionProto.basis)
3194}
3195inline ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE SolutionProto::release_basis() {
3196 ::google::protobuf::internal::TSanWrite(&_impl_);
3197
3198 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
3200 _impl_.basis_ = nullptr;
3201 if (::google::protobuf::internal::DebugHardenForceCopyInRelease()) {
3202 auto* old = reinterpret_cast<::google::protobuf::MessageLite*>(released);
3203 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3204 if (GetArena() == nullptr) {
3205 delete old;
3206 }
3207 } else {
3208 if (GetArena() != nullptr) {
3209 released = ::google::protobuf::internal::DuplicateIfNonNull(released);
3210 }
3211 }
3212 return released;
3213}
3214inline ::operations_research::math_opt::BasisProto* PROTOBUF_NULLABLE SolutionProto::unsafe_arena_release_basis() {
3215 ::google::protobuf::internal::TSanWrite(&_impl_);
3216 // @@protoc_insertion_point(field_release:operations_research.math_opt.SolutionProto.basis)
3217
3218 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
3220 _impl_.basis_ = nullptr;
3221 return temp;
3222}
3223inline ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL SolutionProto::_internal_mutable_basis() {
3224 ::google::protobuf::internal::TSanWrite(&_impl_);
3225 if (_impl_.basis_ == nullptr) {
3226 auto* p = ::google::protobuf::Message::DefaultConstruct<::operations_research::math_opt::BasisProto>(GetArena());
3227 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(p);
3228 }
3229 return _impl_.basis_;
3230}
3231inline ::operations_research::math_opt::BasisProto* PROTOBUF_NONNULL SolutionProto::mutable_basis()
3232 ABSL_ATTRIBUTE_LIFETIME_BOUND {
3233 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3234 ::operations_research::math_opt::BasisProto* _msg = _internal_mutable_basis();
3235 // @@protoc_insertion_point(field_mutable:operations_research.math_opt.SolutionProto.basis)
3236 return _msg;
3237}
3239 ::google::protobuf::Arena* message_arena = GetArena();
3240 ::google::protobuf::internal::TSanWrite(&_impl_);
3241 if (message_arena == nullptr) {
3242 delete reinterpret_cast<::google::protobuf::MessageLite*>(_impl_.basis_);
3243 }
3244
3245 if (value != nullptr) {
3246 ::google::protobuf::Arena* submessage_arena = value->GetArena();
3247 if (message_arena != submessage_arena) {
3248 value = ::google::protobuf::internal::GetOwnedMessage(message_arena, value, submessage_arena);
3249 }
3250 SetHasBit(_impl_._has_bits_[0], 0x00000004U);
3251 } else {
3252 ClearHasBit(_impl_._has_bits_[0], 0x00000004U);
3253 }
3254
3255 _impl_.basis_ = reinterpret_cast<::operations_research::math_opt::BasisProto*>(value);
3256 // @@protoc_insertion_point(field_set_allocated:operations_research.math_opt.SolutionProto.basis)
3258
3259#ifdef __GNUC__
3260#pragma GCC diagnostic pop
3261#endif // __GNUC__
3262
3263// @@protoc_insertion_point(namespace_scope)
3264} // namespace math_opt
3265} // namespace operations_research
3266
3267
3268namespace google {
3269namespace protobuf {
3270
3271template <>
3272struct is_proto_enum<::operations_research::math_opt::SolutionStatusProto> : std::true_type {};
3273template <>
3274inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::math_opt::SolutionStatusProto>() {
3275 return ::operations_research::math_opt::SolutionStatusProto_descriptor();
3276}
3277template <>
3278struct is_proto_enum<::operations_research::math_opt::BasisStatusProto> : std::true_type {};
3279template <>
3280inline const EnumDescriptor* PROTOBUF_NONNULL GetEnumDescriptor<::operations_research::math_opt::BasisStatusProto>() {
3281 return ::operations_research::math_opt::BasisStatusProto_descriptor();
3282}
3283
3284} // namespace protobuf
3285} // namespace google
3286
3287// @@protoc_insertion_point(global_scope)
3288
3289#include "google/protobuf/port_undef.inc"
3290
3291#endif // ortools_2fmath_5fopt_2fsolution_2eproto_2epb_2eh
::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 set_allocated_variable_status(::operations_research::math_opt::SparseBasisStatusVector *PROTOBUF_NULLABLE value)
BasisProto *PROTOBUF_NONNULL New(::google::protobuf::Arena *PROTOBUF_NULLABLE arena=nullptr) const
::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)
void Swap(BasisProto *PROTOBUF_NONNULL other)
static const BasisProto & default_instance()
::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()
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
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()
::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)
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
::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()
::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()
::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)
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()
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)
static const ::google::protobuf::Descriptor *PROTOBUF_NONNULL descriptor()
void Swap(PrimalRayProto *PROTOBUF_NONNULL other)
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()
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
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)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::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()
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 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
::operations_research::math_opt::SparseDoubleVectorProto *PROTOBUF_NULLABLE release_variable_values()
::google::protobuf::Map<::int64_t, double > *PROTOBUF_NONNULL mutable_auxiliary_objective_values()
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()
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()
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)
::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
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()
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)
::absl::string_view GetAnyMessageName()
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_
OR-Tools root namespace.
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fmath_5fopt_2fsolution_2eproto