Google OR-Tools v9.14
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
solve_log.pb.cc
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/pdlp/solve_log.proto
4// Protobuf C++ Version: 6.31.1
5
7
8#include <algorithm>
9#include <type_traits>
10#include "google/protobuf/io/coded_stream.h"
11#include "google/protobuf/generated_message_tctable_impl.h"
12#include "google/protobuf/extension_set.h"
13#include "google/protobuf/generated_message_util.h"
14#include "google/protobuf/wire_format_lite.h"
15#include "google/protobuf/descriptor.h"
16#include "google/protobuf/generated_message_reflection.h"
17#include "google/protobuf/reflection_ops.h"
18#include "google/protobuf/wire_format.h"
19// @@protoc_insertion_point(includes)
20
21// Must be included last.
22#include "google/protobuf/port_def.inc"
23PROTOBUF_PRAGMA_INIT_SEG
24namespace _pb = ::google::protobuf;
26namespace _fl = ::google::protobuf::internal::field_layout;
27namespace operations_research {
28namespace pdlp {
29
30inline constexpr QuadraticProgramStats::Impl_::Impl_(
31 ::_pbi::ConstantInitialized) noexcept
32 : _cached_size_{0},
33 num_variables_{::int64_t{0}},
34 num_constraints_{::int64_t{0}},
35 constraint_matrix_col_min_l_inf_norm_{0},
36 constraint_matrix_row_min_l_inf_norm_{0},
37 constraint_matrix_num_nonzeros_{::int64_t{0}},
38 constraint_matrix_abs_max_{0},
39 constraint_matrix_abs_min_{0},
40 constraint_matrix_abs_avg_{0},
41 combined_bounds_max_{0},
42 combined_bounds_min_{0},
43 combined_bounds_avg_{0},
44 variable_bound_gaps_num_finite_{::int64_t{0}},
45 variable_bound_gaps_max_{0},
46 variable_bound_gaps_min_{0},
47 variable_bound_gaps_avg_{0},
48 objective_vector_abs_max_{0},
49 objective_vector_abs_min_{0},
50 objective_vector_abs_avg_{0},
51 objective_matrix_num_nonzeros_{::int64_t{0}},
52 objective_matrix_abs_max_{0},
53 objective_matrix_abs_min_{0},
54 objective_matrix_abs_avg_{0},
55 objective_vector_l2_norm_{0},
56 combined_bounds_l2_norm_{0},
57 constraint_matrix_l2_norm_{0},
58 variable_bound_gaps_l2_norm_{0},
59 objective_matrix_l2_norm_{0},
60 combined_variable_bounds_max_{0},
61 combined_variable_bounds_min_{0},
62 combined_variable_bounds_avg_{0},
63 combined_variable_bounds_l2_norm_{0} {}
64
65template <typename>
66PROTOBUF_CONSTEXPR QuadraticProgramStats::QuadraticProgramStats(::_pbi::ConstantInitialized)
67#if defined(PROTOBUF_CUSTOM_VTABLE)
68 : ::google::protobuf::Message(QuadraticProgramStats_class_data_.base()),
69#else // PROTOBUF_CUSTOM_VTABLE
70 : ::google::protobuf::Message(),
71#endif // PROTOBUF_CUSTOM_VTABLE
72 _impl_(::_pbi::ConstantInitialized()) {
73}
81
82PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
84
85inline constexpr PointMetadata::Impl_::Impl_(
86 ::_pbi::ConstantInitialized) noexcept
87 : _cached_size_{0},
88 random_primal_projections_{},
89 random_dual_projections_{},
90 active_primal_variable_count_{::int64_t{0}},
91 active_dual_variable_count_{::int64_t{0}},
92 active_primal_variable_change_{::int64_t{0}},
93 active_dual_variable_change_{::int64_t{0}},
94 point_type_{static_cast< ::operations_research::pdlp::PointType >(0)} {}
95
96template <typename>
97PROTOBUF_CONSTEXPR PointMetadata::PointMetadata(::_pbi::ConstantInitialized)
98#if defined(PROTOBUF_CUSTOM_VTABLE)
99 : ::google::protobuf::Message(PointMetadata_class_data_.base()),
100#else // PROTOBUF_CUSTOM_VTABLE
101 : ::google::protobuf::Message(),
102#endif // PROTOBUF_CUSTOM_VTABLE
103 _impl_(::_pbi::ConstantInitialized()) {
104}
106 PROTOBUF_CONSTEXPR PointMetadataDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
108 union {
110 };
111};
112
113PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
115
116inline constexpr InfeasibilityInformation::Impl_::Impl_(
117 ::_pbi::ConstantInitialized) noexcept
118 : _cached_size_{0},
119 max_primal_ray_infeasibility_{0},
120 primal_ray_linear_objective_{0},
121 primal_ray_quadratic_norm_{0},
122 max_dual_ray_infeasibility_{0},
123 dual_ray_objective_{0},
124 candidate_type_{static_cast< ::operations_research::pdlp::PointType >(0)} {}
125
126template <typename>
127PROTOBUF_CONSTEXPR InfeasibilityInformation::InfeasibilityInformation(::_pbi::ConstantInitialized)
128#if defined(PROTOBUF_CUSTOM_VTABLE)
129 : ::google::protobuf::Message(InfeasibilityInformation_class_data_.base()),
130#else // PROTOBUF_CUSTOM_VTABLE
131 : ::google::protobuf::Message(),
132#endif // PROTOBUF_CUSTOM_VTABLE
133 _impl_(::_pbi::ConstantInitialized()) {
134}
142
143PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
145
146inline constexpr ConvergenceInformation::Impl_::Impl_(
147 ::_pbi::ConstantInitialized) noexcept
148 : _cached_size_{0},
149 primal_objective_{0},
150 dual_objective_{0},
151 corrected_dual_objective_{0},
152 l_inf_primal_residual_{0},
153 l2_primal_residual_{0},
154 l_inf_dual_residual_{0},
155 l2_dual_residual_{0},
156 l_inf_primal_variable_{0},
157 l2_primal_variable_{0},
158 l_inf_dual_variable_{0},
159 l2_dual_variable_{0},
160 l_inf_componentwise_primal_residual_{0},
161 l_inf_componentwise_dual_residual_{0},
162 candidate_type_{static_cast< ::operations_research::pdlp::PointType >(0)} {}
163
164template <typename>
165PROTOBUF_CONSTEXPR ConvergenceInformation::ConvergenceInformation(::_pbi::ConstantInitialized)
166#if defined(PROTOBUF_CUSTOM_VTABLE)
167 : ::google::protobuf::Message(ConvergenceInformation_class_data_.base()),
168#else // PROTOBUF_CUSTOM_VTABLE
169 : ::google::protobuf::Message(),
170#endif // PROTOBUF_CUSTOM_VTABLE
171 _impl_(::_pbi::ConstantInitialized()) {
172}
180
181PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
183
184inline constexpr IterationStats::Impl_::Impl_(
185 ::_pbi::ConstantInitialized) noexcept
186 : _cached_size_{0},
187 convergence_information_{},
188 infeasibility_information_{},
189 point_metadata_{},
190 iteration_number_{0},
191 cumulative_rejected_steps_{0},
192 cumulative_kkt_matrix_passes_{0},
193 cumulative_time_sec_{0},
194 step_size_{0},
195 primal_weight_{0},
196 restart_used_{static_cast< ::operations_research::pdlp::RestartChoice >(0)} {}
197
198template <typename>
199PROTOBUF_CONSTEXPR IterationStats::IterationStats(::_pbi::ConstantInitialized)
200#if defined(PROTOBUF_CUSTOM_VTABLE)
201 : ::google::protobuf::Message(IterationStats_class_data_.base()),
202#else // PROTOBUF_CUSTOM_VTABLE
203 : ::google::protobuf::Message(),
204#endif // PROTOBUF_CUSTOM_VTABLE
205 _impl_(::_pbi::ConstantInitialized()) {
206}
214
215PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
217
218inline constexpr FeasibilityPolishingDetails::Impl_::Impl_(
219 ::_pbi::ConstantInitialized) noexcept
220 : _cached_size_{0},
221 iteration_stats_{},
222 params_{nullptr},
223 solution_stats_{nullptr},
224 polishing_phase_type_{static_cast< ::operations_research::pdlp::PolishingPhaseType >(0)},
225 main_iteration_count_{0},
226 termination_reason_{static_cast< ::operations_research::pdlp::TerminationReason >(0)},
227 iteration_count_{0},
228 solve_time_sec_{0},
229 solution_type_{static_cast< ::operations_research::pdlp::PointType >(0)} {}
230
231template <typename>
232PROTOBUF_CONSTEXPR FeasibilityPolishingDetails::FeasibilityPolishingDetails(::_pbi::ConstantInitialized)
233#if defined(PROTOBUF_CUSTOM_VTABLE)
234 : ::google::protobuf::Message(FeasibilityPolishingDetails_class_data_.base()),
235#else // PROTOBUF_CUSTOM_VTABLE
236 : ::google::protobuf::Message(),
237#endif // PROTOBUF_CUSTOM_VTABLE
238 _impl_(::_pbi::ConstantInitialized()) {
239}
247
248PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
250
251inline constexpr SolveLog::Impl_::Impl_(
252 ::_pbi::ConstantInitialized) noexcept
253 : _cached_size_{0},
254 iteration_stats_{},
255 feasibility_polishing_details_{},
256 instance_name_(
257 &::google::protobuf::internal::fixed_address_empty_string,
258 ::_pbi::ConstantInitialized()),
259 termination_string_(
260 &::google::protobuf::internal::fixed_address_empty_string,
261 ::_pbi::ConstantInitialized()),
262 solution_stats_{nullptr},
263 original_problem_stats_{nullptr},
264 preprocessed_problem_stats_{nullptr},
265 params_{nullptr},
266 termination_reason_{static_cast< ::operations_research::pdlp::TerminationReason >(0)},
267 iteration_count_{0},
268 solve_time_sec_{0},
269 preprocessing_time_sec_{0},
270 solution_type_{static_cast< ::operations_research::pdlp::PointType >(0)} {}
271
272template <typename>
273PROTOBUF_CONSTEXPR SolveLog::SolveLog(::_pbi::ConstantInitialized)
274#if defined(PROTOBUF_CUSTOM_VTABLE)
275 : ::google::protobuf::Message(SolveLog_class_data_.base()),
276#else // PROTOBUF_CUSTOM_VTABLE
277 : ::google::protobuf::Message(),
278#endif // PROTOBUF_CUSTOM_VTABLE
279 _impl_(::_pbi::ConstantInitialized()) {
280}
282 PROTOBUF_CONSTEXPR SolveLogDefaultTypeInternal() : _instance(::_pbi::ConstantInitialized{}) {}
284 union {
286 };
287};
288
289PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
291} // namespace pdlp
292} // namespace operations_research
293static const ::_pb::EnumDescriptor* PROTOBUF_NONNULL
295static constexpr const ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE
297const ::uint32_t
299 protodesc_cold) = {
300 0x081, // bitmap
301 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_._has_bits_),
302 34, // hasbit index offset
303 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.num_variables_),
304 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.num_constraints_),
305 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_col_min_l_inf_norm_),
306 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_row_min_l_inf_norm_),
307 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_),
308 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_abs_max_),
309 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_abs_min_),
310 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_abs_avg_),
311 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.constraint_matrix_l2_norm_),
312 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_bounds_max_),
313 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_bounds_min_),
314 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_bounds_avg_),
315 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_bounds_l2_norm_),
316 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_variable_bounds_max_),
317 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_variable_bounds_min_),
318 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_variable_bounds_avg_),
319 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_),
320 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_),
321 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.variable_bound_gaps_max_),
322 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.variable_bound_gaps_min_),
323 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.variable_bound_gaps_avg_),
324 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.variable_bound_gaps_l2_norm_),
325 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_vector_abs_max_),
326 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_vector_abs_min_),
327 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_vector_abs_avg_),
328 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_vector_l2_norm_),
329 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_matrix_num_nonzeros_),
330 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_matrix_abs_max_),
331 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_matrix_abs_min_),
332 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_matrix_abs_avg_),
333 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::QuadraticProgramStats, _impl_.objective_matrix_l2_norm_),
334 0,
335 1,
336 2,
337 3,
338 4,
339 5,
340 6,
341 7,
342 24,
343 8,
344 9,
345 10,
346 23,
347 27,
348 28,
349 29,
350 30,
351 11,
352 12,
353 13,
354 14,
355 25,
356 15,
357 16,
358 17,
359 22,
360 18,
361 19,
362 20,
363 21,
364 26,
365 0x081, // bitmap
366 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_._has_bits_),
367 17, // hasbit index offset
368 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.candidate_type_),
369 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.primal_objective_),
370 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.dual_objective_),
371 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.corrected_dual_objective_),
372 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_primal_residual_),
373 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l2_primal_residual_),
374 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_componentwise_primal_residual_),
375 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_dual_residual_),
376 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l2_dual_residual_),
377 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_componentwise_dual_residual_),
378 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_primal_variable_),
379 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l2_primal_variable_),
380 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l_inf_dual_variable_),
381 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::ConvergenceInformation, _impl_.l2_dual_variable_),
382 13,
383 0,
384 1,
385 2,
386 3,
387 4,
388 11,
389 5,
390 6,
391 12,
392 7,
393 8,
394 9,
395 10,
396 0x081, // bitmap
397 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_._has_bits_),
398 9, // hasbit index offset
399 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_),
400 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.primal_ray_linear_objective_),
401 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.primal_ray_quadratic_norm_),
402 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.max_dual_ray_infeasibility_),
403 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.dual_ray_objective_),
404 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::InfeasibilityInformation, _impl_.candidate_type_),
405 0,
406 1,
407 2,
408 3,
409 4,
410 5,
411 0x081, // bitmap
412 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_._has_bits_),
413 10, // hasbit index offset
414 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.point_type_),
415 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.random_primal_projections_),
416 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.random_dual_projections_),
417 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.active_primal_variable_count_),
418 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.active_dual_variable_count_),
419 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.active_primal_variable_change_),
420 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::PointMetadata, _impl_.active_dual_variable_change_),
421 4,
422 ~0u,
423 ~0u,
424 0,
425 1,
426 2,
427 3,
428 0x081, // bitmap
429 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_._has_bits_),
430 13, // hasbit index offset
431 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.iteration_number_),
432 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.convergence_information_),
433 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.infeasibility_information_),
434 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.point_metadata_),
435 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.cumulative_kkt_matrix_passes_),
436 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.cumulative_rejected_steps_),
437 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.cumulative_time_sec_),
438 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.restart_used_),
439 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.step_size_),
440 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::IterationStats, _impl_.primal_weight_),
441 0,
442 ~0u,
443 ~0u,
444 ~0u,
445 2,
446 1,
447 3,
448 6,
449 4,
450 5,
451 0x081, // bitmap
452 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_._has_bits_),
453 12, // hasbit index offset
454 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.polishing_phase_type_),
455 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.main_iteration_count_),
456 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.params_),
457 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.termination_reason_),
458 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.iteration_count_),
459 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.solve_time_sec_),
460 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.solution_stats_),
461 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.solution_type_),
462 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::FeasibilityPolishingDetails, _impl_.iteration_stats_),
463 2,
464 3,
465 0,
466 4,
467 5,
468 6,
469 1,
470 7,
471 ~0u,
472 0x081, // bitmap
473 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_._has_bits_),
474 16, // hasbit index offset
475 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.instance_name_),
476 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.params_),
477 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.termination_reason_),
478 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.termination_string_),
479 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.iteration_count_),
480 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.preprocessing_time_sec_),
481 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.solve_time_sec_),
482 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.solution_stats_),
483 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.solution_type_),
484 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.iteration_stats_),
485 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.original_problem_stats_),
486 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.preprocessed_problem_stats_),
487 PROTOBUF_FIELD_OFFSET(::operations_research::pdlp::SolveLog, _impl_.feasibility_polishing_details_),
488 0,
489 5,
490 6,
491 1,
492 7,
493 9,
494 8,
495 2,
496 10,
497 ~0u,
498 3,
499 4,
500 ~0u,
501};
502
503static const ::_pbi::MigrationSchema
504 schemas[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = {
512};
522const char descriptor_table_protodef_ortools_2fpdlp_2fsolve_5flog_2eproto[] ABSL_ATTRIBUTE_SECTION_VARIABLE(
523 protodesc_cold) = {
524 "\n\034ortools/pdlp/solve_log.proto\022\030operatio"
525 "ns_research.pdlp\032\032ortools/pdlp/solvers.p"
526 "roto\"\322\010\n\025QuadraticProgramStats\022\025\n\rnum_va"
527 "riables\030\001 \001(\003\022\027\n\017num_constraints\030\002 \001(\003\022,"
528 "\n$constraint_matrix_col_min_l_inf_norm\030\003"
529 " \001(\001\022,\n$constraint_matrix_row_min_l_inf_"
530 "norm\030\004 \001(\001\022&\n\036constraint_matrix_num_nonz"
531 "eros\030\005 \001(\003\022!\n\031constraint_matrix_abs_max\030"
532 "\006 \001(\001\022!\n\031constraint_matrix_abs_min\030\007 \001(\001"
533 "\022!\n\031constraint_matrix_abs_avg\030\010 \001(\001\022!\n\031c"
534 "onstraint_matrix_l2_norm\030\031 \001(\001\022\033\n\023combin"
535 "ed_bounds_max\030\t \001(\001\022\033\n\023combined_bounds_m"
536 "in\030\n \001(\001\022\033\n\023combined_bounds_avg\030\013 \001(\001\022\037\n"
537 "\027combined_bounds_l2_norm\030\030 \001(\001\022$\n\034combin"
538 "ed_variable_bounds_max\030\034 \001(\001\022$\n\034combined"
539 "_variable_bounds_min\030\035 \001(\001\022$\n\034combined_v"
540 "ariable_bounds_avg\030\036 \001(\001\022(\n combined_var"
541 "iable_bounds_l2_norm\030\037 \001(\001\022&\n\036variable_b"
542 "ound_gaps_num_finite\030\014 \001(\003\022\037\n\027variable_b"
543 "ound_gaps_max\030\r \001(\001\022\037\n\027variable_bound_ga"
544 "ps_min\030\016 \001(\001\022\037\n\027variable_bound_gaps_avg\030"
545 "\017 \001(\001\022#\n\033variable_bound_gaps_l2_norm\030\032 \001"
546 "(\001\022 \n\030objective_vector_abs_max\030\020 \001(\001\022 \n\030"
547 "objective_vector_abs_min\030\021 \001(\001\022 \n\030object"
548 "ive_vector_abs_avg\030\022 \001(\001\022 \n\030objective_ve"
549 "ctor_l2_norm\030\027 \001(\001\022%\n\035objective_matrix_n"
550 "um_nonzeros\030\023 \001(\003\022 \n\030objective_matrix_ab"
551 "s_max\030\024 \001(\001\022 \n\030objective_matrix_abs_min\030"
552 "\025 \001(\001\022 \n\030objective_matrix_abs_avg\030\026 \001(\001\022"
553 " \n\030objective_matrix_l2_norm\030\033 \001(\001\"\247\004\n\026Co"
554 "nvergenceInformation\022;\n\016candidate_type\030\001"
555 " \001(\0162#.operations_research.pdlp.PointTyp"
556 "e\022\030\n\020primal_objective\030\002 \001(\001\022\026\n\016dual_obje"
557 "ctive\030\003 \001(\001\022 \n\030corrected_dual_objective\030"
558 "\004 \001(\001\022\035\n\025l_inf_primal_residual\030\005 \001(\001\022\032\n\022"
559 "l2_primal_residual\030\006 \001(\001\022+\n#l_inf_compon"
560 "entwise_primal_residual\030\030 \001(\001\022\033\n\023l_inf_d"
561 "ual_residual\030\007 \001(\001\022\030\n\020l2_dual_residual\030\010"
562 " \001(\001\022)\n!l_inf_componentwise_dual_residua"
563 "l\030\031 \001(\001\022\035\n\025l_inf_primal_variable\030\016 \001(\001\022\032"
564 "\n\022l2_primal_variable\030\017 \001(\001\022\033\n\023l_inf_dual"
565 "_variable\030\020 \001(\001\022\030\n\020l2_dual_variable\030\021 \001("
566 "\001J\004\010\t\020\nJ\004\010\n\020\013J\004\010\013\020\014J\004\010\014\020\rJ\004\010\r\020\016J\004\010\022\020\023J\004\010"
567 "\023\020\024J\004\010\024\020\025J\004\010\025\020\026J\004\010\026\020\027J\004\010\027\020\030\"\221\002\n\030Infeasib"
568 "ilityInformation\022$\n\034max_primal_ray_infea"
569 "sibility\030\001 \001(\001\022#\n\033primal_ray_linear_obje"
570 "ctive\030\002 \001(\001\022!\n\031primal_ray_quadratic_norm"
571 "\030\003 \001(\001\022\"\n\032max_dual_ray_infeasibility\030\004 \001"
572 "(\001\022\032\n\022dual_ray_objective\030\005 \001(\001\022;\n\016candid"
573 "ate_type\030\006 \001(\0162#.operations_research.pdl"
574 "p.PointTypeJ\004\010\007\020\010J\004\010\010\020\t\"\252\002\n\rPointMetadat"
575 "a\0227\n\npoint_type\030\001 \001(\0162#.operations_resea"
576 "rch.pdlp.PointType\022%\n\031random_primal_proj"
577 "ections\030\002 \003(\001B\002\020\001\022#\n\027random_dual_project"
578 "ions\030\003 \003(\001B\002\020\001\022$\n\034active_primal_variable"
579 "_count\030\004 \001(\003\022\"\n\032active_dual_variable_cou"
580 "nt\030\005 \001(\003\022%\n\035active_primal_variable_chang"
581 "e\030\006 \001(\003\022#\n\033active_dual_variable_change\030\007"
582 " \001(\003\"\352\003\n\016IterationStats\022\030\n\020iteration_num"
583 "ber\030\001 \001(\005\022Q\n\027convergence_information\030\002 \003"
584 "(\01320.operations_research.pdlp.Convergenc"
585 "eInformation\022U\n\031infeasibility_informatio"
586 "n\030\003 \003(\01322.operations_research.pdlp.Infea"
587 "sibilityInformation\022\?\n\016point_metadata\030\013 "
588 "\003(\0132\'.operations_research.pdlp.PointMeta"
589 "data\022$\n\034cumulative_kkt_matrix_passes\030\004 \001"
590 "(\001\022!\n\031cumulative_rejected_steps\030\005 \001(\005\022\033\n"
591 "\023cumulative_time_sec\030\006 \001(\001\022=\n\014restart_us"
592 "ed\030\007 \001(\0162\'.operations_research.pdlp.Rest"
593 "artChoice\022\021\n\tstep_size\030\010 \001(\001\022\025\n\rprimal_w"
594 "eight\030\t \001(\001J\004\010\n\020\013\"\214\004\n\033FeasibilityPolishi"
595 "ngDetails\022J\n\024polishing_phase_type\030\001 \001(\0162"
596 ",.operations_research.pdlp.PolishingPhas"
597 "eType\022\034\n\024main_iteration_count\030\002 \001(\005\022H\n\006p"
598 "arams\030\003 \001(\01328.operations_research.pdlp.P"
599 "rimalDualHybridGradientParams\022G\n\022termina"
600 "tion_reason\030\004 \001(\0162+.operations_research."
601 "pdlp.TerminationReason\022\027\n\017iteration_coun"
602 "t\030\005 \001(\005\022\026\n\016solve_time_sec\030\006 \001(\001\022@\n\016solut"
603 "ion_stats\030\007 \001(\0132(.operations_research.pd"
604 "lp.IterationStats\022:\n\rsolution_type\030\010 \001(\016"
605 "2#.operations_research.pdlp.PointType\022A\n"
606 "\017iteration_stats\030\t \003(\0132(.operations_rese"
607 "arch.pdlp.IterationStats\"\362\005\n\010SolveLog\022\025\n"
608 "\rinstance_name\030\001 \001(\t\022H\n\006params\030\016 \001(\01328.o"
609 "perations_research.pdlp.PrimalDualHybrid"
610 "GradientParams\022G\n\022termination_reason\030\003 \001"
611 "(\0162+.operations_research.pdlp.Terminatio"
612 "nReason\022\032\n\022termination_string\030\004 \001(\t\022\027\n\017i"
613 "teration_count\030\005 \001(\005\022\036\n\026preprocessing_ti"
614 "me_sec\030\r \001(\001\022\026\n\016solve_time_sec\030\006 \001(\001\022@\n\016"
615 "solution_stats\030\010 \001(\0132(.operations_resear"
616 "ch.pdlp.IterationStats\022:\n\rsolution_type\030"
617 "\n \001(\0162#.operations_research.pdlp.PointTy"
618 "pe\022A\n\017iteration_stats\030\007 \003(\0132(.operations"
619 "_research.pdlp.IterationStats\022O\n\026origina"
620 "l_problem_stats\030\013 \001(\0132/.operations_resea"
621 "rch.pdlp.QuadraticProgramStats\022S\n\032prepro"
622 "cessed_problem_stats\030\014 \001(\0132/.operations_"
623 "research.pdlp.QuadraticProgramStats\022\\\n\035f"
624 "easibility_polishing_details\030\017 \003(\01325.ope"
625 "rations_research.pdlp.FeasibilityPolishi"
626 "ngDetailsJ\004\010\002\020\003J\004\010\t\020\n*\240\001\n\rRestartChoice\022"
627 "\036\n\032RESTART_CHOICE_UNSPECIFIED\020\000\022\035\n\031RESTA"
628 "RT_CHOICE_NO_RESTART\020\001\022)\n%RESTART_CHOICE"
629 "_WEIGHTED_AVERAGE_RESET\020\002\022%\n!RESTART_CHO"
630 "ICE_RESTART_TO_AVERAGE\020\003*\361\001\n\tPointType\022\032"
631 "\n\026POINT_TYPE_UNSPECIFIED\020\000\022\036\n\032POINT_TYPE"
632 "_CURRENT_ITERATE\020\001\022!\n\035POINT_TYPE_ITERATE"
633 "_DIFFERENCE\020\002\022\036\n\032POINT_TYPE_AVERAGE_ITER"
634 "ATE\020\003\022\023\n\017POINT_TYPE_NONE\020\004\022!\n\035POINT_TYPE"
635 "_PRESOLVER_SOLUTION\020\005\022-\n)POINT_TYPE_FEAS"
636 "IBILITY_POLISHING_SOLUTION\020\006*\311\004\n\021Termina"
637 "tionReason\022\"\n\036TERMINATION_REASON_UNSPECI"
638 "FIED\020\000\022\036\n\032TERMINATION_REASON_OPTIMAL\020\001\022("
639 "\n$TERMINATION_REASON_PRIMAL_INFEASIBLE\020\002"
640 "\022&\n\"TERMINATION_REASON_DUAL_INFEASIBLE\020\003"
641 "\022!\n\035TERMINATION_REASON_TIME_LIMIT\020\004\022&\n\"T"
642 "ERMINATION_REASON_ITERATION_LIMIT\020\005\022,\n(T"
643 "ERMINATION_REASON_KKT_MATRIX_PASS_LIMIT\020"
644 "\010\022*\n&TERMINATION_REASON_INTERRUPTED_BY_U"
645 "SER\020\014\022&\n\"TERMINATION_REASON_NUMERICAL_ER"
646 "ROR\020\006\022&\n\"TERMINATION_REASON_INVALID_PROB"
647 "LEM\020\t\022/\n+TERMINATION_REASON_INVALID_INIT"
648 "IAL_SOLUTION\020\r\022(\n$TERMINATION_REASON_INV"
649 "ALID_PARAMETER\020\n\022\034\n\030TERMINATION_REASON_O"
650 "THER\020\007\0220\n,TERMINATION_REASON_PRIMAL_OR_D"
651 "UAL_INFEASIBLE\020\013*\222\001\n\022PolishingPhaseType\022"
652 "$\n POLISHING_PHASE_TYPE_UNSPECIFIED\020\000\022+\n"
653 "\'POLISHING_PHASE_TYPE_PRIMAL_FEASIBILITY"
654 "\020\001\022)\n%POLISHING_PHASE_TYPE_DUAL_FEASIBIL"
655 "ITY\020\002B1\n\027com.google.ortools.pdlpP\001\252\002\023Goo"
656 "gle.OrTools.PDLP"
657};
658static const ::_pbi::DescriptorTable* PROTOBUF_NONNULL const
679namespace operations_research {
680namespace pdlp {
681const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL RestartChoice_descriptor() {
682 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto);
684}
685PROTOBUF_CONSTINIT const uint32_t RestartChoice_internal_data_[] = {
686 262144u, 0u, };
687const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL PointType_descriptor() {
688 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto);
690}
691PROTOBUF_CONSTINIT const uint32_t PointType_internal_data_[] = {
692 458752u, 0u, };
693const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL TerminationReason_descriptor() {
694 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto);
696}
697PROTOBUF_CONSTINIT const uint32_t TerminationReason_internal_data_[] = {
698 917504u, 0u, };
699const ::google::protobuf::EnumDescriptor* PROTOBUF_NONNULL PolishingPhaseType_descriptor() {
700 ::google::protobuf::internal::AssignDescriptors(&descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto);
702}
703PROTOBUF_CONSTINIT const uint32_t PolishingPhaseType_internal_data_[] = {
704 196608u, 0u, };
705// ===================================================================
706
707class QuadraticProgramStats::_Internal {
708 public:
709 using HasBits =
710 decltype(::std::declval<QuadraticProgramStats>()._impl_._has_bits_);
711 static constexpr ::int32_t kHasBitsOffset =
712 8 * PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_._has_bits_);
713};
714
715QuadraticProgramStats::QuadraticProgramStats(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
716#if defined(PROTOBUF_CUSTOM_VTABLE)
717 : ::google::protobuf::Message(arena, QuadraticProgramStats_class_data_.base()) {
718#else // PROTOBUF_CUSTOM_VTABLE
719 : ::google::protobuf::Message(arena) {
720#endif // PROTOBUF_CUSTOM_VTABLE
721 SharedCtor(arena);
722 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.QuadraticProgramStats)
723}
725 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const QuadraticProgramStats& from)
726#if defined(PROTOBUF_CUSTOM_VTABLE)
727 : ::google::protobuf::Message(arena, QuadraticProgramStats_class_data_.base()),
728#else // PROTOBUF_CUSTOM_VTABLE
729 : ::google::protobuf::Message(arena),
730#endif // PROTOBUF_CUSTOM_VTABLE
731 _impl_(from._impl_) {
732 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
733 from._internal_metadata_);
734}
735PROTOBUF_NDEBUG_INLINE QuadraticProgramStats::Impl_::Impl_(
736 ::google::protobuf::internal::InternalVisibility visibility,
737 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
738 : _cached_size_{0} {}
739
740inline void QuadraticProgramStats::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
741 new (&_impl_) Impl_(internal_visibility(), arena);
742 ::memset(reinterpret_cast<char *>(&_impl_) +
743 offsetof(Impl_, num_variables_),
744 0,
745 offsetof(Impl_, combined_variable_bounds_l2_norm_) -
746 offsetof(Impl_, num_variables_) +
747 sizeof(Impl_::combined_variable_bounds_l2_norm_));
748}
750 // @@protoc_insertion_point(destructor:operations_research.pdlp.QuadraticProgramStats)
751 SharedDtor(*this);
752}
753inline void QuadraticProgramStats::SharedDtor(MessageLite& self) {
754 QuadraticProgramStats& this_ = static_cast<QuadraticProgramStats&>(self);
755 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
756 ABSL_DCHECK(this_.GetArena() == nullptr);
757 this_._impl_.~Impl_();
758}
759
760inline void* PROTOBUF_NONNULL QuadraticProgramStats::PlacementNew_(
761 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
762 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
763 return ::new (mem) QuadraticProgramStats(arena);
764}
766 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(QuadraticProgramStats),
767 alignof(QuadraticProgramStats));
768}
770 return ::google::protobuf::internal::ClassDataFull{
771 ::google::protobuf::internal::ClassData{
773 &_table_.header,
774 nullptr, // OnDemandRegisterArenaDtor
775 nullptr, // IsInitialized
776 &QuadraticProgramStats::MergeImpl,
777 ::google::protobuf::Message::GetNewImpl<QuadraticProgramStats>(),
778#if defined(PROTOBUF_CUSTOM_VTABLE)
779 &QuadraticProgramStats::SharedDtor,
780 ::google::protobuf::Message::GetClearImpl<QuadraticProgramStats>(), &QuadraticProgramStats::ByteSizeLong,
782#endif // PROTOBUF_CUSTOM_VTABLE
783 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_._cached_size_),
784 false,
785 },
786 &QuadraticProgramStats::kDescriptorMethods,
788 nullptr, // tracker
789 };
790}
791
792PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
793 ::google::protobuf::internal::ClassDataFull QuadraticProgramStats_class_data_ =
795
796PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
798 ::google::protobuf::internal::PrefetchToLocalCache(&QuadraticProgramStats_class_data_);
799 ::google::protobuf::internal::PrefetchToLocalCache(QuadraticProgramStats_class_data_.tc_table);
801}
802PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
803const ::_pbi::TcParseTable<5, 31, 0, 0, 2>
804QuadraticProgramStats::_table_ = {
805 {
806 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_._has_bits_),
807 0, // no _extensions_
808 31, 248, // max_field_number, fast_idx_mask
809 offsetof(decltype(_table_), field_lookup_table),
810 2147483648, // skipmap
811 offsetof(decltype(_table_), field_entries),
812 31, // num_field_entries
813 0, // num_aux_entries
814 offsetof(decltype(_table_), field_names), // no aux_entries
816 nullptr, // post_loop_handler
817 ::_pbi::TcParser::GenericFallback, // fallback
818 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
819 ::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>(), // to_prefetch
820 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
821 }, {{
822 {::_pbi::TcParser::MiniParse, {}},
823 // optional int64 num_variables = 1;
824 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.num_variables_), 0>(),
825 {8, 0, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_)}},
826 // optional int64 num_constraints = 2;
827 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.num_constraints_), 1>(),
828 {16, 1, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_constraints_)}},
829 // optional double constraint_matrix_col_min_l_inf_norm = 3;
830 {::_pbi::TcParser::FastF64S1,
831 {25, 2, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_col_min_l_inf_norm_)}},
832 // optional double constraint_matrix_row_min_l_inf_norm = 4;
833 {::_pbi::TcParser::FastF64S1,
834 {33, 3, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_row_min_l_inf_norm_)}},
835 // optional int64 constraint_matrix_num_nonzeros = 5;
836 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_), 4>(),
837 {40, 4, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_)}},
838 // optional double constraint_matrix_abs_max = 6;
839 {::_pbi::TcParser::FastF64S1,
840 {49, 5, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_max_)}},
841 // optional double constraint_matrix_abs_min = 7;
842 {::_pbi::TcParser::FastF64S1,
843 {57, 6, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_min_)}},
844 // optional double constraint_matrix_abs_avg = 8;
845 {::_pbi::TcParser::FastF64S1,
846 {65, 7, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_avg_)}},
847 // optional double combined_bounds_max = 9;
848 {::_pbi::TcParser::FastF64S1,
849 {73, 8, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_max_)}},
850 // optional double combined_bounds_min = 10;
851 {::_pbi::TcParser::FastF64S1,
852 {81, 9, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_min_)}},
853 // optional double combined_bounds_avg = 11;
854 {::_pbi::TcParser::FastF64S1,
855 {89, 10, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_avg_)}},
856 // optional int64 variable_bound_gaps_num_finite = 12;
857 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_), 11>(),
858 {96, 11, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_)}},
859 // optional double variable_bound_gaps_max = 13;
860 {::_pbi::TcParser::FastF64S1,
861 {105, 12, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_max_)}},
862 // optional double variable_bound_gaps_min = 14;
863 {::_pbi::TcParser::FastF64S1,
864 {113, 13, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_min_)}},
865 // optional double variable_bound_gaps_avg = 15;
866 {::_pbi::TcParser::FastF64S1,
867 {121, 14, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_avg_)}},
868 // optional double objective_vector_abs_max = 16;
869 {::_pbi::TcParser::FastF64S2,
870 {385, 15, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_max_)}},
871 // optional double objective_vector_abs_min = 17;
872 {::_pbi::TcParser::FastF64S2,
873 {393, 16, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_min_)}},
874 // optional double objective_vector_abs_avg = 18;
875 {::_pbi::TcParser::FastF64S2,
876 {401, 17, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_avg_)}},
877 // optional int64 objective_matrix_num_nonzeros = 19;
878 {::_pbi::TcParser::FastV64S2,
879 {408, 18, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_num_nonzeros_)}},
880 // optional double objective_matrix_abs_max = 20;
881 {::_pbi::TcParser::FastF64S2,
882 {417, 19, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_max_)}},
883 // optional double objective_matrix_abs_min = 21;
884 {::_pbi::TcParser::FastF64S2,
885 {425, 20, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_min_)}},
886 // optional double objective_matrix_abs_avg = 22;
887 {::_pbi::TcParser::FastF64S2,
888 {433, 21, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_avg_)}},
889 // optional double objective_vector_l2_norm = 23;
890 {::_pbi::TcParser::FastF64S2,
891 {441, 22, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_l2_norm_)}},
892 // optional double combined_bounds_l2_norm = 24;
893 {::_pbi::TcParser::FastF64S2,
894 {449, 23, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_l2_norm_)}},
895 // optional double constraint_matrix_l2_norm = 25;
896 {::_pbi::TcParser::FastF64S2,
897 {457, 24, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_l2_norm_)}},
898 // optional double variable_bound_gaps_l2_norm = 26;
899 {::_pbi::TcParser::FastF64S2,
900 {465, 25, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_l2_norm_)}},
901 // optional double objective_matrix_l2_norm = 27;
902 {::_pbi::TcParser::FastF64S2,
903 {473, 26, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_l2_norm_)}},
904 // optional double combined_variable_bounds_max = 28;
905 {::_pbi::TcParser::FastF64S2,
906 {481, 27, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_max_)}},
907 // optional double combined_variable_bounds_min = 29;
908 {::_pbi::TcParser::FastF64S2,
909 {489, 28, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_min_)}},
910 // optional double combined_variable_bounds_avg = 30;
911 {::_pbi::TcParser::FastF64S2,
912 {497, 29, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_avg_)}},
913 // optional double combined_variable_bounds_l2_norm = 31;
914 {::_pbi::TcParser::FastF64S2,
915 {505, 30, 0, PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_)}},
916 }}, {{
917 65535, 65535
918 }}, {{
919 // optional int64 num_variables = 1;
920 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_), _Internal::kHasBitsOffset + 0, 0,
921 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
922 // optional int64 num_constraints = 2;
923 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_constraints_), _Internal::kHasBitsOffset + 1, 0,
924 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
925 // optional double constraint_matrix_col_min_l_inf_norm = 3;
926 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_col_min_l_inf_norm_), _Internal::kHasBitsOffset + 2, 0,
927 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
928 // optional double constraint_matrix_row_min_l_inf_norm = 4;
929 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_row_min_l_inf_norm_), _Internal::kHasBitsOffset + 3, 0,
930 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
931 // optional int64 constraint_matrix_num_nonzeros = 5;
932 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_), _Internal::kHasBitsOffset + 4, 0,
933 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
934 // optional double constraint_matrix_abs_max = 6;
935 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_max_), _Internal::kHasBitsOffset + 5, 0,
936 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
937 // optional double constraint_matrix_abs_min = 7;
938 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_min_), _Internal::kHasBitsOffset + 6, 0,
939 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
940 // optional double constraint_matrix_abs_avg = 8;
941 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_avg_), _Internal::kHasBitsOffset + 7, 0,
942 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
943 // optional double combined_bounds_max = 9;
944 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_max_), _Internal::kHasBitsOffset + 8, 0,
945 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
946 // optional double combined_bounds_min = 10;
947 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_min_), _Internal::kHasBitsOffset + 9, 0,
948 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
949 // optional double combined_bounds_avg = 11;
950 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_avg_), _Internal::kHasBitsOffset + 10, 0,
951 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
952 // optional int64 variable_bound_gaps_num_finite = 12;
953 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_), _Internal::kHasBitsOffset + 11, 0,
954 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
955 // optional double variable_bound_gaps_max = 13;
956 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_max_), _Internal::kHasBitsOffset + 12, 0,
957 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
958 // optional double variable_bound_gaps_min = 14;
959 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_min_), _Internal::kHasBitsOffset + 13, 0,
960 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
961 // optional double variable_bound_gaps_avg = 15;
962 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_avg_), _Internal::kHasBitsOffset + 14, 0,
963 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
964 // optional double objective_vector_abs_max = 16;
965 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_max_), _Internal::kHasBitsOffset + 15, 0,
966 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
967 // optional double objective_vector_abs_min = 17;
968 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_min_), _Internal::kHasBitsOffset + 16, 0,
969 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
970 // optional double objective_vector_abs_avg = 18;
971 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_avg_), _Internal::kHasBitsOffset + 17, 0,
972 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
973 // optional int64 objective_matrix_num_nonzeros = 19;
974 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_num_nonzeros_), _Internal::kHasBitsOffset + 18, 0,
975 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
976 // optional double objective_matrix_abs_max = 20;
977 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_max_), _Internal::kHasBitsOffset + 19, 0,
978 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
979 // optional double objective_matrix_abs_min = 21;
980 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_min_), _Internal::kHasBitsOffset + 20, 0,
981 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
982 // optional double objective_matrix_abs_avg = 22;
983 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_avg_), _Internal::kHasBitsOffset + 21, 0,
984 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
985 // optional double objective_vector_l2_norm = 23;
986 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_l2_norm_), _Internal::kHasBitsOffset + 22, 0,
987 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
988 // optional double combined_bounds_l2_norm = 24;
989 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_l2_norm_), _Internal::kHasBitsOffset + 23, 0,
990 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
991 // optional double constraint_matrix_l2_norm = 25;
992 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_l2_norm_), _Internal::kHasBitsOffset + 24, 0,
993 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
994 // optional double variable_bound_gaps_l2_norm = 26;
995 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_l2_norm_), _Internal::kHasBitsOffset + 25, 0,
996 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
997 // optional double objective_matrix_l2_norm = 27;
998 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_l2_norm_), _Internal::kHasBitsOffset + 26, 0,
999 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1000 // optional double combined_variable_bounds_max = 28;
1001 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_max_), _Internal::kHasBitsOffset + 27, 0,
1002 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1003 // optional double combined_variable_bounds_min = 29;
1004 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_min_), _Internal::kHasBitsOffset + 28, 0,
1005 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1006 // optional double combined_variable_bounds_avg = 30;
1007 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_avg_), _Internal::kHasBitsOffset + 29, 0,
1008 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1009 // optional double combined_variable_bounds_l2_norm = 31;
1010 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_), _Internal::kHasBitsOffset + 30, 0,
1011 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1012 }},
1013 // no aux_entries
1014 {{
1015 }},
1016};
1017PROTOBUF_NOINLINE void QuadraticProgramStats::Clear() {
1018// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.QuadraticProgramStats)
1019 ::google::protobuf::internal::TSanWrite(&_impl_);
1020 ::uint32_t cached_has_bits = 0;
1021 // Prevent compiler warnings about cached_has_bits being unused
1022 (void) cached_has_bits;
1023
1024 cached_has_bits = _impl_._has_bits_[0];
1025 if ((cached_has_bits & 0x000000ffu) != 0) {
1026 ::memset(&_impl_.num_variables_, 0, static_cast<::size_t>(
1027 reinterpret_cast<char*>(&_impl_.constraint_matrix_abs_avg_) -
1028 reinterpret_cast<char*>(&_impl_.num_variables_)) + sizeof(_impl_.constraint_matrix_abs_avg_));
1029 }
1030 if ((cached_has_bits & 0x0000ff00u) != 0) {
1031 ::memset(&_impl_.combined_bounds_max_, 0, static_cast<::size_t>(
1032 reinterpret_cast<char*>(&_impl_.objective_vector_abs_max_) -
1033 reinterpret_cast<char*>(&_impl_.combined_bounds_max_)) + sizeof(_impl_.objective_vector_abs_max_));
1034 }
1035 if ((cached_has_bits & 0x00ff0000u) != 0) {
1036 ::memset(&_impl_.objective_vector_abs_min_, 0, static_cast<::size_t>(
1037 reinterpret_cast<char*>(&_impl_.combined_bounds_l2_norm_) -
1038 reinterpret_cast<char*>(&_impl_.objective_vector_abs_min_)) + sizeof(_impl_.combined_bounds_l2_norm_));
1039 }
1040 if ((cached_has_bits & 0x7f000000u) != 0) {
1041 ::memset(&_impl_.constraint_matrix_l2_norm_, 0, static_cast<::size_t>(
1042 reinterpret_cast<char*>(&_impl_.combined_variable_bounds_l2_norm_) -
1043 reinterpret_cast<char*>(&_impl_.constraint_matrix_l2_norm_)) + sizeof(_impl_.combined_variable_bounds_l2_norm_));
1044 }
1045 _impl_._has_bits_.Clear();
1046 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1047}
1048
1049#if defined(PROTOBUF_CUSTOM_VTABLE)
1050::uint8_t* PROTOBUF_NONNULL QuadraticProgramStats::_InternalSerialize(
1051 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1052 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1053 const QuadraticProgramStats& this_ = static_cast<const QuadraticProgramStats&>(base);
1054#else // PROTOBUF_CUSTOM_VTABLE
1055::uint8_t* PROTOBUF_NONNULL QuadraticProgramStats::_InternalSerialize(
1056 ::uint8_t* PROTOBUF_NONNULL target,
1057 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1058 const QuadraticProgramStats& this_ = *this;
1059#endif // PROTOBUF_CUSTOM_VTABLE
1060 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.QuadraticProgramStats)
1061 ::uint32_t cached_has_bits = 0;
1062 (void)cached_has_bits;
1063
1064 cached_has_bits = this_._impl_._has_bits_[0];
1065 // optional int64 num_variables = 1;
1066 if ((cached_has_bits & 0x00000001u) != 0) {
1067 target =
1068 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
1069 stream, this_._internal_num_variables(), target);
1070 }
1071
1072 // optional int64 num_constraints = 2;
1073 if ((cached_has_bits & 0x00000002u) != 0) {
1074 target =
1075 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<2>(
1076 stream, this_._internal_num_constraints(), target);
1077 }
1078
1079 // optional double constraint_matrix_col_min_l_inf_norm = 3;
1080 if ((cached_has_bits & 0x00000004u) != 0) {
1081 target = stream->EnsureSpace(target);
1082 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1083 3, this_._internal_constraint_matrix_col_min_l_inf_norm(), target);
1084 }
1085
1086 // optional double constraint_matrix_row_min_l_inf_norm = 4;
1087 if ((cached_has_bits & 0x00000008u) != 0) {
1088 target = stream->EnsureSpace(target);
1089 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1090 4, this_._internal_constraint_matrix_row_min_l_inf_norm(), target);
1091 }
1092
1093 // optional int64 constraint_matrix_num_nonzeros = 5;
1094 if ((cached_has_bits & 0x00000010u) != 0) {
1095 target =
1096 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<5>(
1097 stream, this_._internal_constraint_matrix_num_nonzeros(), target);
1098 }
1099
1100 // optional double constraint_matrix_abs_max = 6;
1101 if ((cached_has_bits & 0x00000020u) != 0) {
1102 target = stream->EnsureSpace(target);
1103 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1104 6, this_._internal_constraint_matrix_abs_max(), target);
1105 }
1106
1107 // optional double constraint_matrix_abs_min = 7;
1108 if ((cached_has_bits & 0x00000040u) != 0) {
1109 target = stream->EnsureSpace(target);
1110 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1111 7, this_._internal_constraint_matrix_abs_min(), target);
1112 }
1113
1114 // optional double constraint_matrix_abs_avg = 8;
1115 if ((cached_has_bits & 0x00000080u) != 0) {
1116 target = stream->EnsureSpace(target);
1117 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1118 8, this_._internal_constraint_matrix_abs_avg(), target);
1119 }
1120
1121 // optional double combined_bounds_max = 9;
1122 if ((cached_has_bits & 0x00000100u) != 0) {
1123 target = stream->EnsureSpace(target);
1124 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1125 9, this_._internal_combined_bounds_max(), target);
1126 }
1127
1128 // optional double combined_bounds_min = 10;
1129 if ((cached_has_bits & 0x00000200u) != 0) {
1130 target = stream->EnsureSpace(target);
1131 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1132 10, this_._internal_combined_bounds_min(), target);
1133 }
1134
1135 // optional double combined_bounds_avg = 11;
1136 if ((cached_has_bits & 0x00000400u) != 0) {
1137 target = stream->EnsureSpace(target);
1138 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1139 11, this_._internal_combined_bounds_avg(), target);
1140 }
1141
1142 // optional int64 variable_bound_gaps_num_finite = 12;
1143 if ((cached_has_bits & 0x00000800u) != 0) {
1144 target =
1145 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<12>(
1146 stream, this_._internal_variable_bound_gaps_num_finite(), target);
1147 }
1148
1149 // optional double variable_bound_gaps_max = 13;
1150 if ((cached_has_bits & 0x00001000u) != 0) {
1151 target = stream->EnsureSpace(target);
1152 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1153 13, this_._internal_variable_bound_gaps_max(), target);
1154 }
1155
1156 // optional double variable_bound_gaps_min = 14;
1157 if ((cached_has_bits & 0x00002000u) != 0) {
1158 target = stream->EnsureSpace(target);
1159 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1160 14, this_._internal_variable_bound_gaps_min(), target);
1161 }
1162
1163 // optional double variable_bound_gaps_avg = 15;
1164 if ((cached_has_bits & 0x00004000u) != 0) {
1165 target = stream->EnsureSpace(target);
1166 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1167 15, this_._internal_variable_bound_gaps_avg(), target);
1168 }
1169
1170 // optional double objective_vector_abs_max = 16;
1171 if ((cached_has_bits & 0x00008000u) != 0) {
1172 target = stream->EnsureSpace(target);
1173 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1174 16, this_._internal_objective_vector_abs_max(), target);
1175 }
1176
1177 // optional double objective_vector_abs_min = 17;
1178 if ((cached_has_bits & 0x00010000u) != 0) {
1179 target = stream->EnsureSpace(target);
1180 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1181 17, this_._internal_objective_vector_abs_min(), target);
1182 }
1183
1184 // optional double objective_vector_abs_avg = 18;
1185 if ((cached_has_bits & 0x00020000u) != 0) {
1186 target = stream->EnsureSpace(target);
1187 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1188 18, this_._internal_objective_vector_abs_avg(), target);
1189 }
1190
1191 // optional int64 objective_matrix_num_nonzeros = 19;
1192 if ((cached_has_bits & 0x00040000u) != 0) {
1193 target = stream->EnsureSpace(target);
1194 target = ::_pbi::WireFormatLite::WriteInt64ToArray(
1195 19, this_._internal_objective_matrix_num_nonzeros(), target);
1196 }
1197
1198 // optional double objective_matrix_abs_max = 20;
1199 if ((cached_has_bits & 0x00080000u) != 0) {
1200 target = stream->EnsureSpace(target);
1201 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1202 20, this_._internal_objective_matrix_abs_max(), target);
1203 }
1204
1205 // optional double objective_matrix_abs_min = 21;
1206 if ((cached_has_bits & 0x00100000u) != 0) {
1207 target = stream->EnsureSpace(target);
1208 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1209 21, this_._internal_objective_matrix_abs_min(), target);
1210 }
1211
1212 // optional double objective_matrix_abs_avg = 22;
1213 if ((cached_has_bits & 0x00200000u) != 0) {
1214 target = stream->EnsureSpace(target);
1215 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1216 22, this_._internal_objective_matrix_abs_avg(), target);
1217 }
1218
1219 // optional double objective_vector_l2_norm = 23;
1220 if ((cached_has_bits & 0x00400000u) != 0) {
1221 target = stream->EnsureSpace(target);
1222 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1223 23, this_._internal_objective_vector_l2_norm(), target);
1224 }
1225
1226 // optional double combined_bounds_l2_norm = 24;
1227 if ((cached_has_bits & 0x00800000u) != 0) {
1228 target = stream->EnsureSpace(target);
1229 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1230 24, this_._internal_combined_bounds_l2_norm(), target);
1231 }
1232
1233 // optional double constraint_matrix_l2_norm = 25;
1234 if ((cached_has_bits & 0x01000000u) != 0) {
1235 target = stream->EnsureSpace(target);
1236 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1237 25, this_._internal_constraint_matrix_l2_norm(), target);
1238 }
1239
1240 // optional double variable_bound_gaps_l2_norm = 26;
1241 if ((cached_has_bits & 0x02000000u) != 0) {
1242 target = stream->EnsureSpace(target);
1243 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1244 26, this_._internal_variable_bound_gaps_l2_norm(), target);
1245 }
1246
1247 // optional double objective_matrix_l2_norm = 27;
1248 if ((cached_has_bits & 0x04000000u) != 0) {
1249 target = stream->EnsureSpace(target);
1250 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1251 27, this_._internal_objective_matrix_l2_norm(), target);
1252 }
1253
1254 // optional double combined_variable_bounds_max = 28;
1255 if ((cached_has_bits & 0x08000000u) != 0) {
1256 target = stream->EnsureSpace(target);
1257 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1258 28, this_._internal_combined_variable_bounds_max(), target);
1259 }
1260
1261 // optional double combined_variable_bounds_min = 29;
1262 if ((cached_has_bits & 0x10000000u) != 0) {
1263 target = stream->EnsureSpace(target);
1264 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1265 29, this_._internal_combined_variable_bounds_min(), target);
1266 }
1267
1268 // optional double combined_variable_bounds_avg = 30;
1269 if ((cached_has_bits & 0x20000000u) != 0) {
1270 target = stream->EnsureSpace(target);
1271 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1272 30, this_._internal_combined_variable_bounds_avg(), target);
1273 }
1274
1275 // optional double combined_variable_bounds_l2_norm = 31;
1276 if ((cached_has_bits & 0x40000000u) != 0) {
1277 target = stream->EnsureSpace(target);
1278 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1279 31, this_._internal_combined_variable_bounds_l2_norm(), target);
1280 }
1281
1282 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1283 target =
1284 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1285 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1286 }
1287 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.QuadraticProgramStats)
1288 return target;
1289}
1290
1291#if defined(PROTOBUF_CUSTOM_VTABLE)
1293 const QuadraticProgramStats& this_ = static_cast<const QuadraticProgramStats&>(base);
1294#else // PROTOBUF_CUSTOM_VTABLE
1295::size_t QuadraticProgramStats::ByteSizeLong() const {
1296 const QuadraticProgramStats& this_ = *this;
1297#endif // PROTOBUF_CUSTOM_VTABLE
1298 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.QuadraticProgramStats)
1299 ::size_t total_size = 0;
1300
1301 ::uint32_t cached_has_bits = 0;
1302 // Prevent compiler warnings about cached_has_bits being unused
1303 (void)cached_has_bits;
1304
1305 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1306 cached_has_bits = this_._impl_._has_bits_[0];
1307 total_size += ::absl::popcount(0x7ffb8000u & cached_has_bits) * 10;
1308 total_size += ::absl::popcount(0x000077ecu & cached_has_bits) * 9;
1309 if ((cached_has_bits & 0x00000013u) != 0) {
1310 // optional int64 num_variables = 1;
1311 if ((cached_has_bits & 0x00000001u) != 0) {
1312 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1313 this_._internal_num_variables());
1314 }
1315 // optional int64 num_constraints = 2;
1316 if ((cached_has_bits & 0x00000002u) != 0) {
1317 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1318 this_._internal_num_constraints());
1319 }
1320 // optional int64 constraint_matrix_num_nonzeros = 5;
1321 if ((cached_has_bits & 0x00000010u) != 0) {
1322 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1323 this_._internal_constraint_matrix_num_nonzeros());
1324 }
1325 }
1326 {
1327 // optional int64 variable_bound_gaps_num_finite = 12;
1328 if ((cached_has_bits & 0x00000800u) != 0) {
1329 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1330 this_._internal_variable_bound_gaps_num_finite());
1331 }
1332 }
1333 {
1334 // optional int64 objective_matrix_num_nonzeros = 19;
1335 if ((cached_has_bits & 0x00040000u) != 0) {
1336 total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
1337 this_._internal_objective_matrix_num_nonzeros());
1338 }
1339 }
1340 return this_.MaybeComputeUnknownFieldsSize(total_size,
1341 &this_._impl_._cached_size_);
1342}
1343
1344void QuadraticProgramStats::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1345 auto* const _this = static_cast<QuadraticProgramStats*>(&to_msg);
1346 auto& from = static_cast<const QuadraticProgramStats&>(from_msg);
1347 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.QuadraticProgramStats)
1348 ABSL_DCHECK_NE(&from, _this);
1349 ::uint32_t cached_has_bits = 0;
1350 (void) cached_has_bits;
1351
1352 cached_has_bits = from._impl_._has_bits_[0];
1353 if ((cached_has_bits & 0x000000ffu) != 0) {
1354 if ((cached_has_bits & 0x00000001u) != 0) {
1355 _this->_impl_.num_variables_ = from._impl_.num_variables_;
1356 }
1357 if ((cached_has_bits & 0x00000002u) != 0) {
1358 _this->_impl_.num_constraints_ = from._impl_.num_constraints_;
1359 }
1360 if ((cached_has_bits & 0x00000004u) != 0) {
1361 _this->_impl_.constraint_matrix_col_min_l_inf_norm_ = from._impl_.constraint_matrix_col_min_l_inf_norm_;
1362 }
1363 if ((cached_has_bits & 0x00000008u) != 0) {
1364 _this->_impl_.constraint_matrix_row_min_l_inf_norm_ = from._impl_.constraint_matrix_row_min_l_inf_norm_;
1365 }
1366 if ((cached_has_bits & 0x00000010u) != 0) {
1367 _this->_impl_.constraint_matrix_num_nonzeros_ = from._impl_.constraint_matrix_num_nonzeros_;
1368 }
1369 if ((cached_has_bits & 0x00000020u) != 0) {
1370 _this->_impl_.constraint_matrix_abs_max_ = from._impl_.constraint_matrix_abs_max_;
1371 }
1372 if ((cached_has_bits & 0x00000040u) != 0) {
1373 _this->_impl_.constraint_matrix_abs_min_ = from._impl_.constraint_matrix_abs_min_;
1374 }
1375 if ((cached_has_bits & 0x00000080u) != 0) {
1376 _this->_impl_.constraint_matrix_abs_avg_ = from._impl_.constraint_matrix_abs_avg_;
1377 }
1378 }
1379 if ((cached_has_bits & 0x0000ff00u) != 0) {
1380 if ((cached_has_bits & 0x00000100u) != 0) {
1381 _this->_impl_.combined_bounds_max_ = from._impl_.combined_bounds_max_;
1382 }
1383 if ((cached_has_bits & 0x00000200u) != 0) {
1384 _this->_impl_.combined_bounds_min_ = from._impl_.combined_bounds_min_;
1385 }
1386 if ((cached_has_bits & 0x00000400u) != 0) {
1387 _this->_impl_.combined_bounds_avg_ = from._impl_.combined_bounds_avg_;
1388 }
1389 if ((cached_has_bits & 0x00000800u) != 0) {
1390 _this->_impl_.variable_bound_gaps_num_finite_ = from._impl_.variable_bound_gaps_num_finite_;
1391 }
1392 if ((cached_has_bits & 0x00001000u) != 0) {
1393 _this->_impl_.variable_bound_gaps_max_ = from._impl_.variable_bound_gaps_max_;
1394 }
1395 if ((cached_has_bits & 0x00002000u) != 0) {
1396 _this->_impl_.variable_bound_gaps_min_ = from._impl_.variable_bound_gaps_min_;
1397 }
1398 if ((cached_has_bits & 0x00004000u) != 0) {
1399 _this->_impl_.variable_bound_gaps_avg_ = from._impl_.variable_bound_gaps_avg_;
1400 }
1401 if ((cached_has_bits & 0x00008000u) != 0) {
1402 _this->_impl_.objective_vector_abs_max_ = from._impl_.objective_vector_abs_max_;
1403 }
1404 }
1405 if ((cached_has_bits & 0x00ff0000u) != 0) {
1406 if ((cached_has_bits & 0x00010000u) != 0) {
1407 _this->_impl_.objective_vector_abs_min_ = from._impl_.objective_vector_abs_min_;
1408 }
1409 if ((cached_has_bits & 0x00020000u) != 0) {
1410 _this->_impl_.objective_vector_abs_avg_ = from._impl_.objective_vector_abs_avg_;
1411 }
1412 if ((cached_has_bits & 0x00040000u) != 0) {
1413 _this->_impl_.objective_matrix_num_nonzeros_ = from._impl_.objective_matrix_num_nonzeros_;
1414 }
1415 if ((cached_has_bits & 0x00080000u) != 0) {
1416 _this->_impl_.objective_matrix_abs_max_ = from._impl_.objective_matrix_abs_max_;
1417 }
1418 if ((cached_has_bits & 0x00100000u) != 0) {
1419 _this->_impl_.objective_matrix_abs_min_ = from._impl_.objective_matrix_abs_min_;
1420 }
1421 if ((cached_has_bits & 0x00200000u) != 0) {
1422 _this->_impl_.objective_matrix_abs_avg_ = from._impl_.objective_matrix_abs_avg_;
1423 }
1424 if ((cached_has_bits & 0x00400000u) != 0) {
1425 _this->_impl_.objective_vector_l2_norm_ = from._impl_.objective_vector_l2_norm_;
1426 }
1427 if ((cached_has_bits & 0x00800000u) != 0) {
1428 _this->_impl_.combined_bounds_l2_norm_ = from._impl_.combined_bounds_l2_norm_;
1429 }
1430 }
1431 if ((cached_has_bits & 0x7f000000u) != 0) {
1432 if ((cached_has_bits & 0x01000000u) != 0) {
1433 _this->_impl_.constraint_matrix_l2_norm_ = from._impl_.constraint_matrix_l2_norm_;
1434 }
1435 if ((cached_has_bits & 0x02000000u) != 0) {
1436 _this->_impl_.variable_bound_gaps_l2_norm_ = from._impl_.variable_bound_gaps_l2_norm_;
1437 }
1438 if ((cached_has_bits & 0x04000000u) != 0) {
1439 _this->_impl_.objective_matrix_l2_norm_ = from._impl_.objective_matrix_l2_norm_;
1440 }
1441 if ((cached_has_bits & 0x08000000u) != 0) {
1442 _this->_impl_.combined_variable_bounds_max_ = from._impl_.combined_variable_bounds_max_;
1443 }
1444 if ((cached_has_bits & 0x10000000u) != 0) {
1445 _this->_impl_.combined_variable_bounds_min_ = from._impl_.combined_variable_bounds_min_;
1446 }
1447 if ((cached_has_bits & 0x20000000u) != 0) {
1448 _this->_impl_.combined_variable_bounds_avg_ = from._impl_.combined_variable_bounds_avg_;
1449 }
1450 if ((cached_has_bits & 0x40000000u) != 0) {
1451 _this->_impl_.combined_variable_bounds_l2_norm_ = from._impl_.combined_variable_bounds_l2_norm_;
1452 }
1453 }
1454 _this->_impl_._has_bits_[0] |= cached_has_bits;
1455 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1456}
1457
1459// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.QuadraticProgramStats)
1460 if (&from == this) return;
1461 Clear();
1462 MergeFrom(from);
1463}
1464
1465
1466void QuadraticProgramStats::InternalSwap(QuadraticProgramStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1467 using ::std::swap;
1468 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1469 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1470 ::google::protobuf::internal::memswap<
1471 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_)
1472 + sizeof(QuadraticProgramStats::_impl_.combined_variable_bounds_l2_norm_)
1473 - PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_)>(
1474 reinterpret_cast<char*>(&_impl_.num_variables_),
1475 reinterpret_cast<char*>(&other->_impl_.num_variables_));
1476}
1477
1478::google::protobuf::Metadata QuadraticProgramStats::GetMetadata() const {
1479 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1480}
1481// ===================================================================
1482
1484 public:
1485 using HasBits =
1486 decltype(::std::declval<ConvergenceInformation>()._impl_._has_bits_);
1487 static constexpr ::int32_t kHasBitsOffset =
1488 8 * PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._has_bits_);
1490
1491ConvergenceInformation::ConvergenceInformation(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1492#if defined(PROTOBUF_CUSTOM_VTABLE)
1493 : ::google::protobuf::Message(arena, ConvergenceInformation_class_data_.base()) {
1494#else // PROTOBUF_CUSTOM_VTABLE
1495 : ::google::protobuf::Message(arena) {
1496#endif // PROTOBUF_CUSTOM_VTABLE
1497 SharedCtor(arena);
1498 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.ConvergenceInformation)
1499}
1501 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ConvergenceInformation& from)
1502#if defined(PROTOBUF_CUSTOM_VTABLE)
1503 : ::google::protobuf::Message(arena, ConvergenceInformation_class_data_.base()),
1504#else // PROTOBUF_CUSTOM_VTABLE
1505 : ::google::protobuf::Message(arena),
1506#endif // PROTOBUF_CUSTOM_VTABLE
1507 _impl_(from._impl_) {
1508 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1509 from._internal_metadata_);
1510}
1511PROTOBUF_NDEBUG_INLINE ConvergenceInformation::Impl_::Impl_(
1512 ::google::protobuf::internal::InternalVisibility visibility,
1513 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1514 : _cached_size_{0} {}
1515
1516inline void ConvergenceInformation::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1517 new (&_impl_) Impl_(internal_visibility(), arena);
1518 ::memset(reinterpret_cast<char *>(&_impl_) +
1519 offsetof(Impl_, primal_objective_),
1520 0,
1521 offsetof(Impl_, candidate_type_) -
1522 offsetof(Impl_, primal_objective_) +
1523 sizeof(Impl_::candidate_type_));
1524}
1526 // @@protoc_insertion_point(destructor:operations_research.pdlp.ConvergenceInformation)
1527 SharedDtor(*this);
1528}
1529inline void ConvergenceInformation::SharedDtor(MessageLite& self) {
1530 ConvergenceInformation& this_ = static_cast<ConvergenceInformation&>(self);
1531 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1532 ABSL_DCHECK(this_.GetArena() == nullptr);
1533 this_._impl_.~Impl_();
1534}
1535
1536inline void* PROTOBUF_NONNULL ConvergenceInformation::PlacementNew_(
1537 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1538 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1539 return ::new (mem) ConvergenceInformation(arena);
1540}
1542 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(ConvergenceInformation),
1544}
1546 return ::google::protobuf::internal::ClassDataFull{
1547 ::google::protobuf::internal::ClassData{
1549 &_table_.header,
1550 nullptr, // OnDemandRegisterArenaDtor
1551 nullptr, // IsInitialized
1552 &ConvergenceInformation::MergeImpl,
1553 ::google::protobuf::Message::GetNewImpl<ConvergenceInformation>(),
1554#if defined(PROTOBUF_CUSTOM_VTABLE)
1555 &ConvergenceInformation::SharedDtor,
1556 ::google::protobuf::Message::GetClearImpl<ConvergenceInformation>(), &ConvergenceInformation::ByteSizeLong,
1558#endif // PROTOBUF_CUSTOM_VTABLE
1559 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._cached_size_),
1560 false,
1561 },
1562 &ConvergenceInformation::kDescriptorMethods,
1564 nullptr, // tracker
1565 };
1566}
1567
1568PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1569 ::google::protobuf::internal::ClassDataFull ConvergenceInformation_class_data_ =
1572PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1574 ::google::protobuf::internal::PrefetchToLocalCache(&ConvergenceInformation_class_data_);
1575 ::google::protobuf::internal::PrefetchToLocalCache(ConvergenceInformation_class_data_.tc_table);
1577}
1578PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1579const ::_pbi::TcParseTable<4, 14, 1, 0, 2>
1580ConvergenceInformation::_table_ = {
1581 {
1582 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._has_bits_),
1583 0, // no _extensions_
1584 25, 120, // max_field_number, fast_idx_mask
1585 offsetof(decltype(_table_), field_lookup_table),
1586 4269678336, // skipmap
1587 offsetof(decltype(_table_), field_entries),
1588 14, // num_field_entries
1589 1, // num_aux_entries
1590 offsetof(decltype(_table_), aux_entries),
1592 nullptr, // post_loop_handler
1593 ::_pbi::TcParser::GenericFallback, // fallback
1594 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1595 ::_pbi::TcParser::GetTable<::operations_research::pdlp::ConvergenceInformation>(), // to_prefetch
1596 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1597 }, {{
1598 // optional double l_inf_dual_variable = 16;
1599 {::_pbi::TcParser::FastF64S2,
1600 {385, 9, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_variable_)}},
1601 // optional .operations_research.pdlp.PointType candidate_type = 1;
1602 {::_pbi::TcParser::FastEr0S1,
1603 {8, 13, 6, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_)}},
1604 // optional double primal_objective = 2;
1605 {::_pbi::TcParser::FastF64S1,
1606 {17, 0, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_)}},
1607 // optional double dual_objective = 3;
1608 {::_pbi::TcParser::FastF64S1,
1609 {25, 1, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.dual_objective_)}},
1610 // optional double corrected_dual_objective = 4;
1611 {::_pbi::TcParser::FastF64S1,
1612 {33, 2, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.corrected_dual_objective_)}},
1613 // optional double l_inf_primal_residual = 5;
1614 {::_pbi::TcParser::FastF64S1,
1615 {41, 3, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_residual_)}},
1616 // optional double l2_primal_residual = 6;
1617 {::_pbi::TcParser::FastF64S1,
1618 {49, 4, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_residual_)}},
1619 // optional double l_inf_dual_residual = 7;
1620 {::_pbi::TcParser::FastF64S1,
1621 {57, 5, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_residual_)}},
1622 // optional double l2_dual_residual = 8;
1623 {::_pbi::TcParser::FastF64S1,
1624 {65, 6, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_residual_)}},
1625 // optional double l_inf_componentwise_dual_residual = 25;
1626 {::_pbi::TcParser::FastF64S2,
1627 {457, 12, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_dual_residual_)}},
1628 {::_pbi::TcParser::MiniParse, {}},
1629 {::_pbi::TcParser::MiniParse, {}},
1630 {::_pbi::TcParser::MiniParse, {}},
1631 {::_pbi::TcParser::MiniParse, {}},
1632 // optional double l_inf_primal_variable = 14;
1633 {::_pbi::TcParser::FastF64S1,
1634 {113, 7, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_variable_)}},
1635 // optional double l2_primal_variable = 15;
1636 {::_pbi::TcParser::FastF64S1,
1637 {121, 8, 0, PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_variable_)}},
1638 }}, {{
1639 65535, 65535
1640 }}, {{
1641 // optional .operations_research.pdlp.PointType candidate_type = 1;
1642 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_), _Internal::kHasBitsOffset + 13, 0,
1643 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
1644 // optional double primal_objective = 2;
1645 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_), _Internal::kHasBitsOffset + 0, 0,
1646 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1647 // optional double dual_objective = 3;
1648 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.dual_objective_), _Internal::kHasBitsOffset + 1, 0,
1649 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1650 // optional double corrected_dual_objective = 4;
1651 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.corrected_dual_objective_), _Internal::kHasBitsOffset + 2, 0,
1652 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1653 // optional double l_inf_primal_residual = 5;
1654 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_residual_), _Internal::kHasBitsOffset + 3, 0,
1655 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1656 // optional double l2_primal_residual = 6;
1657 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_residual_), _Internal::kHasBitsOffset + 4, 0,
1658 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1659 // optional double l_inf_dual_residual = 7;
1660 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_residual_), _Internal::kHasBitsOffset + 5, 0,
1661 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1662 // optional double l2_dual_residual = 8;
1663 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_residual_), _Internal::kHasBitsOffset + 6, 0,
1664 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1665 // optional double l_inf_primal_variable = 14;
1666 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_variable_), _Internal::kHasBitsOffset + 7, 0,
1667 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1668 // optional double l2_primal_variable = 15;
1669 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_variable_), _Internal::kHasBitsOffset + 8, 0,
1670 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1671 // optional double l_inf_dual_variable = 16;
1672 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_variable_), _Internal::kHasBitsOffset + 9, 0,
1673 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1674 // optional double l2_dual_variable = 17;
1675 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_variable_), _Internal::kHasBitsOffset + 10, 0,
1676 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1677 // optional double l_inf_componentwise_primal_residual = 24;
1678 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_primal_residual_), _Internal::kHasBitsOffset + 11, 0,
1679 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1680 // optional double l_inf_componentwise_dual_residual = 25;
1681 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_dual_residual_), _Internal::kHasBitsOffset + 12, 0,
1682 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1683 }},
1684 {{
1685 {0, 6},
1686 }},
1687 {{
1688 }},
1689};
1690PROTOBUF_NOINLINE void ConvergenceInformation::Clear() {
1691// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.ConvergenceInformation)
1692 ::google::protobuf::internal::TSanWrite(&_impl_);
1693 ::uint32_t cached_has_bits = 0;
1694 // Prevent compiler warnings about cached_has_bits being unused
1695 (void) cached_has_bits;
1696
1697 cached_has_bits = _impl_._has_bits_[0];
1698 if ((cached_has_bits & 0x000000ffu) != 0) {
1699 ::memset(&_impl_.primal_objective_, 0, static_cast<::size_t>(
1700 reinterpret_cast<char*>(&_impl_.l_inf_primal_variable_) -
1701 reinterpret_cast<char*>(&_impl_.primal_objective_)) + sizeof(_impl_.l_inf_primal_variable_));
1702 }
1703 if ((cached_has_bits & 0x00003f00u) != 0) {
1704 ::memset(&_impl_.l2_primal_variable_, 0, static_cast<::size_t>(
1705 reinterpret_cast<char*>(&_impl_.candidate_type_) -
1706 reinterpret_cast<char*>(&_impl_.l2_primal_variable_)) + sizeof(_impl_.candidate_type_));
1707 }
1708 _impl_._has_bits_.Clear();
1709 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1710}
1711
1712#if defined(PROTOBUF_CUSTOM_VTABLE)
1713::uint8_t* PROTOBUF_NONNULL ConvergenceInformation::_InternalSerialize(
1714 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1715 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1716 const ConvergenceInformation& this_ = static_cast<const ConvergenceInformation&>(base);
1717#else // PROTOBUF_CUSTOM_VTABLE
1718::uint8_t* PROTOBUF_NONNULL ConvergenceInformation::_InternalSerialize(
1719 ::uint8_t* PROTOBUF_NONNULL target,
1720 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1721 const ConvergenceInformation& this_ = *this;
1722#endif // PROTOBUF_CUSTOM_VTABLE
1723 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.ConvergenceInformation)
1724 ::uint32_t cached_has_bits = 0;
1725 (void)cached_has_bits;
1726
1727 cached_has_bits = this_._impl_._has_bits_[0];
1728 // optional .operations_research.pdlp.PointType candidate_type = 1;
1729 if ((cached_has_bits & 0x00002000u) != 0) {
1730 target = stream->EnsureSpace(target);
1731 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1732 1, this_._internal_candidate_type(), target);
1733 }
1734
1735 // optional double primal_objective = 2;
1736 if ((cached_has_bits & 0x00000001u) != 0) {
1737 target = stream->EnsureSpace(target);
1738 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1739 2, this_._internal_primal_objective(), target);
1740 }
1741
1742 // optional double dual_objective = 3;
1743 if ((cached_has_bits & 0x00000002u) != 0) {
1744 target = stream->EnsureSpace(target);
1745 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1746 3, this_._internal_dual_objective(), target);
1747 }
1748
1749 // optional double corrected_dual_objective = 4;
1750 if ((cached_has_bits & 0x00000004u) != 0) {
1751 target = stream->EnsureSpace(target);
1752 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1753 4, this_._internal_corrected_dual_objective(), target);
1754 }
1755
1756 // optional double l_inf_primal_residual = 5;
1757 if ((cached_has_bits & 0x00000008u) != 0) {
1758 target = stream->EnsureSpace(target);
1759 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1760 5, this_._internal_l_inf_primal_residual(), target);
1761 }
1762
1763 // optional double l2_primal_residual = 6;
1764 if ((cached_has_bits & 0x00000010u) != 0) {
1765 target = stream->EnsureSpace(target);
1766 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1767 6, this_._internal_l2_primal_residual(), target);
1768 }
1769
1770 // optional double l_inf_dual_residual = 7;
1771 if ((cached_has_bits & 0x00000020u) != 0) {
1772 target = stream->EnsureSpace(target);
1773 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1774 7, this_._internal_l_inf_dual_residual(), target);
1775 }
1776
1777 // optional double l2_dual_residual = 8;
1778 if ((cached_has_bits & 0x00000040u) != 0) {
1779 target = stream->EnsureSpace(target);
1780 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1781 8, this_._internal_l2_dual_residual(), target);
1782 }
1783
1784 // optional double l_inf_primal_variable = 14;
1785 if ((cached_has_bits & 0x00000080u) != 0) {
1786 target = stream->EnsureSpace(target);
1787 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1788 14, this_._internal_l_inf_primal_variable(), target);
1789 }
1790
1791 // optional double l2_primal_variable = 15;
1792 if ((cached_has_bits & 0x00000100u) != 0) {
1793 target = stream->EnsureSpace(target);
1794 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1795 15, this_._internal_l2_primal_variable(), target);
1796 }
1797
1798 // optional double l_inf_dual_variable = 16;
1799 if ((cached_has_bits & 0x00000200u) != 0) {
1800 target = stream->EnsureSpace(target);
1801 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1802 16, this_._internal_l_inf_dual_variable(), target);
1803 }
1804
1805 // optional double l2_dual_variable = 17;
1806 if ((cached_has_bits & 0x00000400u) != 0) {
1807 target = stream->EnsureSpace(target);
1808 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1809 17, this_._internal_l2_dual_variable(), target);
1810 }
1811
1812 // optional double l_inf_componentwise_primal_residual = 24;
1813 if ((cached_has_bits & 0x00000800u) != 0) {
1814 target = stream->EnsureSpace(target);
1815 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1816 24, this_._internal_l_inf_componentwise_primal_residual(), target);
1817 }
1818
1819 // optional double l_inf_componentwise_dual_residual = 25;
1820 if ((cached_has_bits & 0x00001000u) != 0) {
1821 target = stream->EnsureSpace(target);
1822 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1823 25, this_._internal_l_inf_componentwise_dual_residual(), target);
1824 }
1825
1826 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1827 target =
1828 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1829 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1830 }
1831 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.ConvergenceInformation)
1832 return target;
1833}
1834
1835#if defined(PROTOBUF_CUSTOM_VTABLE)
1837 const ConvergenceInformation& this_ = static_cast<const ConvergenceInformation&>(base);
1838#else // PROTOBUF_CUSTOM_VTABLE
1839::size_t ConvergenceInformation::ByteSizeLong() const {
1840 const ConvergenceInformation& this_ = *this;
1841#endif // PROTOBUF_CUSTOM_VTABLE
1842 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.ConvergenceInformation)
1843 ::size_t total_size = 0;
1844
1845 ::uint32_t cached_has_bits = 0;
1846 // Prevent compiler warnings about cached_has_bits being unused
1847 (void)cached_has_bits;
1848
1849 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1850 cached_has_bits = this_._impl_._has_bits_[0];
1851 total_size += ::absl::popcount(0x00001e00u & cached_has_bits) * 10;
1852 total_size += ::absl::popcount(0x000001ffu & cached_has_bits) * 9;
1853 {
1854 // optional .operations_research.pdlp.PointType candidate_type = 1;
1855 if ((cached_has_bits & 0x00002000u) != 0) {
1856 total_size += 1 +
1857 ::_pbi::WireFormatLite::EnumSize(this_._internal_candidate_type());
1858 }
1859 }
1860 return this_.MaybeComputeUnknownFieldsSize(total_size,
1861 &this_._impl_._cached_size_);
1862}
1863
1864void ConvergenceInformation::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1865 auto* const _this = static_cast<ConvergenceInformation*>(&to_msg);
1866 auto& from = static_cast<const ConvergenceInformation&>(from_msg);
1867 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.ConvergenceInformation)
1868 ABSL_DCHECK_NE(&from, _this);
1869 ::uint32_t cached_has_bits = 0;
1870 (void) cached_has_bits;
1871
1872 cached_has_bits = from._impl_._has_bits_[0];
1873 if ((cached_has_bits & 0x000000ffu) != 0) {
1874 if ((cached_has_bits & 0x00000001u) != 0) {
1875 _this->_impl_.primal_objective_ = from._impl_.primal_objective_;
1876 }
1877 if ((cached_has_bits & 0x00000002u) != 0) {
1878 _this->_impl_.dual_objective_ = from._impl_.dual_objective_;
1879 }
1880 if ((cached_has_bits & 0x00000004u) != 0) {
1881 _this->_impl_.corrected_dual_objective_ = from._impl_.corrected_dual_objective_;
1882 }
1883 if ((cached_has_bits & 0x00000008u) != 0) {
1884 _this->_impl_.l_inf_primal_residual_ = from._impl_.l_inf_primal_residual_;
1885 }
1886 if ((cached_has_bits & 0x00000010u) != 0) {
1887 _this->_impl_.l2_primal_residual_ = from._impl_.l2_primal_residual_;
1888 }
1889 if ((cached_has_bits & 0x00000020u) != 0) {
1890 _this->_impl_.l_inf_dual_residual_ = from._impl_.l_inf_dual_residual_;
1891 }
1892 if ((cached_has_bits & 0x00000040u) != 0) {
1893 _this->_impl_.l2_dual_residual_ = from._impl_.l2_dual_residual_;
1894 }
1895 if ((cached_has_bits & 0x00000080u) != 0) {
1896 _this->_impl_.l_inf_primal_variable_ = from._impl_.l_inf_primal_variable_;
1897 }
1898 }
1899 if ((cached_has_bits & 0x00003f00u) != 0) {
1900 if ((cached_has_bits & 0x00000100u) != 0) {
1901 _this->_impl_.l2_primal_variable_ = from._impl_.l2_primal_variable_;
1902 }
1903 if ((cached_has_bits & 0x00000200u) != 0) {
1904 _this->_impl_.l_inf_dual_variable_ = from._impl_.l_inf_dual_variable_;
1905 }
1906 if ((cached_has_bits & 0x00000400u) != 0) {
1907 _this->_impl_.l2_dual_variable_ = from._impl_.l2_dual_variable_;
1908 }
1909 if ((cached_has_bits & 0x00000800u) != 0) {
1910 _this->_impl_.l_inf_componentwise_primal_residual_ = from._impl_.l_inf_componentwise_primal_residual_;
1911 }
1912 if ((cached_has_bits & 0x00001000u) != 0) {
1913 _this->_impl_.l_inf_componentwise_dual_residual_ = from._impl_.l_inf_componentwise_dual_residual_;
1914 }
1915 if ((cached_has_bits & 0x00002000u) != 0) {
1916 _this->_impl_.candidate_type_ = from._impl_.candidate_type_;
1917 }
1918 }
1919 _this->_impl_._has_bits_[0] |= cached_has_bits;
1920 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1921}
1922
1924// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.ConvergenceInformation)
1925 if (&from == this) return;
1926 Clear();
1927 MergeFrom(from);
1928}
1929
1930
1931void ConvergenceInformation::InternalSwap(ConvergenceInformation* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1932 using ::std::swap;
1933 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1934 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1935 ::google::protobuf::internal::memswap<
1936 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_)
1937 + sizeof(ConvergenceInformation::_impl_.candidate_type_)
1938 - PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_)>(
1939 reinterpret_cast<char*>(&_impl_.primal_objective_),
1940 reinterpret_cast<char*>(&other->_impl_.primal_objective_));
1941}
1942
1943::google::protobuf::Metadata ConvergenceInformation::GetMetadata() const {
1944 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1946// ===================================================================
1947
1949 public:
1950 using HasBits =
1951 decltype(::std::declval<InfeasibilityInformation>()._impl_._has_bits_);
1952 static constexpr ::int32_t kHasBitsOffset =
1953 8 * PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._has_bits_);
1954};
1956InfeasibilityInformation::InfeasibilityInformation(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1957#if defined(PROTOBUF_CUSTOM_VTABLE)
1958 : ::google::protobuf::Message(arena, InfeasibilityInformation_class_data_.base()) {
1959#else // PROTOBUF_CUSTOM_VTABLE
1960 : ::google::protobuf::Message(arena) {
1961#endif // PROTOBUF_CUSTOM_VTABLE
1962 SharedCtor(arena);
1963 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.InfeasibilityInformation)
1964}
1966 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const InfeasibilityInformation& from)
1967#if defined(PROTOBUF_CUSTOM_VTABLE)
1968 : ::google::protobuf::Message(arena, InfeasibilityInformation_class_data_.base()),
1969#else // PROTOBUF_CUSTOM_VTABLE
1970 : ::google::protobuf::Message(arena),
1971#endif // PROTOBUF_CUSTOM_VTABLE
1972 _impl_(from._impl_) {
1973 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1974 from._internal_metadata_);
1975}
1976PROTOBUF_NDEBUG_INLINE InfeasibilityInformation::Impl_::Impl_(
1977 ::google::protobuf::internal::InternalVisibility visibility,
1978 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1979 : _cached_size_{0} {}
1980
1981inline void InfeasibilityInformation::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1982 new (&_impl_) Impl_(internal_visibility(), arena);
1983 ::memset(reinterpret_cast<char *>(&_impl_) +
1984 offsetof(Impl_, max_primal_ray_infeasibility_),
1985 0,
1986 offsetof(Impl_, candidate_type_) -
1987 offsetof(Impl_, max_primal_ray_infeasibility_) +
1988 sizeof(Impl_::candidate_type_));
1989}
1991 // @@protoc_insertion_point(destructor:operations_research.pdlp.InfeasibilityInformation)
1992 SharedDtor(*this);
1994inline void InfeasibilityInformation::SharedDtor(MessageLite& self) {
1995 InfeasibilityInformation& this_ = static_cast<InfeasibilityInformation&>(self);
1996 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1997 ABSL_DCHECK(this_.GetArena() == nullptr);
1998 this_._impl_.~Impl_();
1999}
2000
2001inline void* PROTOBUF_NONNULL InfeasibilityInformation::PlacementNew_(
2002 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2003 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2004 return ::new (mem) InfeasibilityInformation(arena);
2005}
2007 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(InfeasibilityInformation),
2008 alignof(InfeasibilityInformation));
2011 return ::google::protobuf::internal::ClassDataFull{
2012 ::google::protobuf::internal::ClassData{
2014 &_table_.header,
2015 nullptr, // OnDemandRegisterArenaDtor
2016 nullptr, // IsInitialized
2017 &InfeasibilityInformation::MergeImpl,
2018 ::google::protobuf::Message::GetNewImpl<InfeasibilityInformation>(),
2019#if defined(PROTOBUF_CUSTOM_VTABLE)
2020 &InfeasibilityInformation::SharedDtor,
2021 ::google::protobuf::Message::GetClearImpl<InfeasibilityInformation>(), &InfeasibilityInformation::ByteSizeLong,
2023#endif // PROTOBUF_CUSTOM_VTABLE
2024 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._cached_size_),
2025 false,
2026 },
2027 &InfeasibilityInformation::kDescriptorMethods,
2029 nullptr, // tracker
2030 };
2031}
2032
2033PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2034 ::google::protobuf::internal::ClassDataFull InfeasibilityInformation_class_data_ =
2036
2037PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2039 ::google::protobuf::internal::PrefetchToLocalCache(&InfeasibilityInformation_class_data_);
2040 ::google::protobuf::internal::PrefetchToLocalCache(InfeasibilityInformation_class_data_.tc_table);
2042}
2043PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2044const ::_pbi::TcParseTable<3, 6, 1, 0, 2>
2045InfeasibilityInformation::_table_ = {
2046 {
2047 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._has_bits_),
2048 0, // no _extensions_
2049 6, 56, // max_field_number, fast_idx_mask
2050 offsetof(decltype(_table_), field_lookup_table),
2051 4294967232, // skipmap
2052 offsetof(decltype(_table_), field_entries),
2053 6, // num_field_entries
2054 1, // num_aux_entries
2055 offsetof(decltype(_table_), aux_entries),
2057 nullptr, // post_loop_handler
2058 ::_pbi::TcParser::GenericFallback, // fallback
2059 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2060 ::_pbi::TcParser::GetTable<::operations_research::pdlp::InfeasibilityInformation>(), // to_prefetch
2061 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2062 }, {{
2063 {::_pbi::TcParser::MiniParse, {}},
2064 // optional double max_primal_ray_infeasibility = 1;
2065 {::_pbi::TcParser::FastF64S1,
2066 {9, 0, 0, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_)}},
2067 // optional double primal_ray_linear_objective = 2;
2068 {::_pbi::TcParser::FastF64S1,
2069 {17, 1, 0, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_linear_objective_)}},
2070 // optional double primal_ray_quadratic_norm = 3;
2071 {::_pbi::TcParser::FastF64S1,
2072 {25, 2, 0, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_quadratic_norm_)}},
2073 // optional double max_dual_ray_infeasibility = 4;
2074 {::_pbi::TcParser::FastF64S1,
2075 {33, 3, 0, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_dual_ray_infeasibility_)}},
2076 // optional double dual_ray_objective = 5;
2077 {::_pbi::TcParser::FastF64S1,
2078 {41, 4, 0, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.dual_ray_objective_)}},
2079 // optional .operations_research.pdlp.PointType candidate_type = 6;
2080 {::_pbi::TcParser::FastEr0S1,
2081 {48, 5, 6, PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_)}},
2082 {::_pbi::TcParser::MiniParse, {}},
2083 }}, {{
2084 65535, 65535
2085 }}, {{
2086 // optional double max_primal_ray_infeasibility = 1;
2087 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_), _Internal::kHasBitsOffset + 0, 0,
2088 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2089 // optional double primal_ray_linear_objective = 2;
2090 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_linear_objective_), _Internal::kHasBitsOffset + 1, 0,
2091 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2092 // optional double primal_ray_quadratic_norm = 3;
2093 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_quadratic_norm_), _Internal::kHasBitsOffset + 2, 0,
2094 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2095 // optional double max_dual_ray_infeasibility = 4;
2096 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_dual_ray_infeasibility_), _Internal::kHasBitsOffset + 3, 0,
2097 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2098 // optional double dual_ray_objective = 5;
2099 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.dual_ray_objective_), _Internal::kHasBitsOffset + 4, 0,
2100 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2101 // optional .operations_research.pdlp.PointType candidate_type = 6;
2102 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_), _Internal::kHasBitsOffset + 5, 0,
2103 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2104 }},
2105 {{
2106 {0, 6},
2107 }},
2108 {{
2109 }},
2110};
2111PROTOBUF_NOINLINE void InfeasibilityInformation::Clear() {
2112// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.InfeasibilityInformation)
2113 ::google::protobuf::internal::TSanWrite(&_impl_);
2114 ::uint32_t cached_has_bits = 0;
2115 // Prevent compiler warnings about cached_has_bits being unused
2116 (void) cached_has_bits;
2117
2118 cached_has_bits = _impl_._has_bits_[0];
2119 if ((cached_has_bits & 0x0000003fu) != 0) {
2120 ::memset(&_impl_.max_primal_ray_infeasibility_, 0, static_cast<::size_t>(
2121 reinterpret_cast<char*>(&_impl_.candidate_type_) -
2122 reinterpret_cast<char*>(&_impl_.max_primal_ray_infeasibility_)) + sizeof(_impl_.candidate_type_));
2123 }
2124 _impl_._has_bits_.Clear();
2125 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2126}
2127
2128#if defined(PROTOBUF_CUSTOM_VTABLE)
2129::uint8_t* PROTOBUF_NONNULL InfeasibilityInformation::_InternalSerialize(
2130 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2131 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2132 const InfeasibilityInformation& this_ = static_cast<const InfeasibilityInformation&>(base);
2133#else // PROTOBUF_CUSTOM_VTABLE
2134::uint8_t* PROTOBUF_NONNULL InfeasibilityInformation::_InternalSerialize(
2135 ::uint8_t* PROTOBUF_NONNULL target,
2136 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2137 const InfeasibilityInformation& this_ = *this;
2138#endif // PROTOBUF_CUSTOM_VTABLE
2139 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.InfeasibilityInformation)
2140 ::uint32_t cached_has_bits = 0;
2141 (void)cached_has_bits;
2142
2143 cached_has_bits = this_._impl_._has_bits_[0];
2144 // optional double max_primal_ray_infeasibility = 1;
2145 if ((cached_has_bits & 0x00000001u) != 0) {
2146 target = stream->EnsureSpace(target);
2147 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2148 1, this_._internal_max_primal_ray_infeasibility(), target);
2149 }
2150
2151 // optional double primal_ray_linear_objective = 2;
2152 if ((cached_has_bits & 0x00000002u) != 0) {
2153 target = stream->EnsureSpace(target);
2154 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2155 2, this_._internal_primal_ray_linear_objective(), target);
2156 }
2157
2158 // optional double primal_ray_quadratic_norm = 3;
2159 if ((cached_has_bits & 0x00000004u) != 0) {
2160 target = stream->EnsureSpace(target);
2161 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2162 3, this_._internal_primal_ray_quadratic_norm(), target);
2163 }
2164
2165 // optional double max_dual_ray_infeasibility = 4;
2166 if ((cached_has_bits & 0x00000008u) != 0) {
2167 target = stream->EnsureSpace(target);
2168 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2169 4, this_._internal_max_dual_ray_infeasibility(), target);
2170 }
2171
2172 // optional double dual_ray_objective = 5;
2173 if ((cached_has_bits & 0x00000010u) != 0) {
2174 target = stream->EnsureSpace(target);
2175 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2176 5, this_._internal_dual_ray_objective(), target);
2177 }
2178
2179 // optional .operations_research.pdlp.PointType candidate_type = 6;
2180 if ((cached_has_bits & 0x00000020u) != 0) {
2181 target = stream->EnsureSpace(target);
2182 target = ::_pbi::WireFormatLite::WriteEnumToArray(
2183 6, this_._internal_candidate_type(), target);
2184 }
2185
2186 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2187 target =
2188 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2189 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2190 }
2191 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.InfeasibilityInformation)
2192 return target;
2193}
2194
2195#if defined(PROTOBUF_CUSTOM_VTABLE)
2197 const InfeasibilityInformation& this_ = static_cast<const InfeasibilityInformation&>(base);
2198#else // PROTOBUF_CUSTOM_VTABLE
2200 const InfeasibilityInformation& this_ = *this;
2201#endif // PROTOBUF_CUSTOM_VTABLE
2202 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.InfeasibilityInformation)
2203 ::size_t total_size = 0;
2204
2205 ::uint32_t cached_has_bits = 0;
2206 // Prevent compiler warnings about cached_has_bits being unused
2207 (void)cached_has_bits;
2208
2209 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2210 cached_has_bits = this_._impl_._has_bits_[0];
2211 total_size += ::absl::popcount(0x0000001fu & cached_has_bits) * 9;
2212 {
2213 // optional .operations_research.pdlp.PointType candidate_type = 6;
2214 if ((cached_has_bits & 0x00000020u) != 0) {
2215 total_size += 1 +
2216 ::_pbi::WireFormatLite::EnumSize(this_._internal_candidate_type());
2217 }
2218 }
2219 return this_.MaybeComputeUnknownFieldsSize(total_size,
2220 &this_._impl_._cached_size_);
2221}
2222
2223void InfeasibilityInformation::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2224 auto* const _this = static_cast<InfeasibilityInformation*>(&to_msg);
2225 auto& from = static_cast<const InfeasibilityInformation&>(from_msg);
2226 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.InfeasibilityInformation)
2227 ABSL_DCHECK_NE(&from, _this);
2228 ::uint32_t cached_has_bits = 0;
2229 (void) cached_has_bits;
2230
2231 cached_has_bits = from._impl_._has_bits_[0];
2232 if ((cached_has_bits & 0x0000003fu) != 0) {
2233 if ((cached_has_bits & 0x00000001u) != 0) {
2234 _this->_impl_.max_primal_ray_infeasibility_ = from._impl_.max_primal_ray_infeasibility_;
2235 }
2236 if ((cached_has_bits & 0x00000002u) != 0) {
2237 _this->_impl_.primal_ray_linear_objective_ = from._impl_.primal_ray_linear_objective_;
2238 }
2239 if ((cached_has_bits & 0x00000004u) != 0) {
2240 _this->_impl_.primal_ray_quadratic_norm_ = from._impl_.primal_ray_quadratic_norm_;
2241 }
2242 if ((cached_has_bits & 0x00000008u) != 0) {
2243 _this->_impl_.max_dual_ray_infeasibility_ = from._impl_.max_dual_ray_infeasibility_;
2244 }
2245 if ((cached_has_bits & 0x00000010u) != 0) {
2246 _this->_impl_.dual_ray_objective_ = from._impl_.dual_ray_objective_;
2247 }
2248 if ((cached_has_bits & 0x00000020u) != 0) {
2249 _this->_impl_.candidate_type_ = from._impl_.candidate_type_;
2250 }
2251 }
2252 _this->_impl_._has_bits_[0] |= cached_has_bits;
2253 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2254}
2255
2257// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.InfeasibilityInformation)
2258 if (&from == this) return;
2260 MergeFrom(from);
2261}
2262
2263
2264void InfeasibilityInformation::InternalSwap(InfeasibilityInformation* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2265 using ::std::swap;
2266 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2267 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2268 ::google::protobuf::internal::memswap<
2269 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_)
2270 + sizeof(InfeasibilityInformation::_impl_.candidate_type_)
2271 - PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_)>(
2272 reinterpret_cast<char*>(&_impl_.max_primal_ray_infeasibility_),
2273 reinterpret_cast<char*>(&other->_impl_.max_primal_ray_infeasibility_));
2274}
2275
2276::google::protobuf::Metadata InfeasibilityInformation::GetMetadata() const {
2277 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2278}
2279// ===================================================================
2280
2282 public:
2283 using HasBits =
2284 decltype(::std::declval<PointMetadata>()._impl_._has_bits_);
2285 static constexpr ::int32_t kHasBitsOffset =
2286 8 * PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._has_bits_);
2288
2289PointMetadata::PointMetadata(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2290#if defined(PROTOBUF_CUSTOM_VTABLE)
2291 : ::google::protobuf::Message(arena, PointMetadata_class_data_.base()) {
2292#else // PROTOBUF_CUSTOM_VTABLE
2293 : ::google::protobuf::Message(arena) {
2294#endif // PROTOBUF_CUSTOM_VTABLE
2295 SharedCtor(arena);
2296 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.PointMetadata)
2297}
2298PROTOBUF_NDEBUG_INLINE PointMetadata::Impl_::Impl_(
2299 ::google::protobuf::internal::InternalVisibility visibility,
2300 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2301 const ::operations_research::pdlp::PointMetadata& from_msg)
2302 : _has_bits_{from._has_bits_},
2303 _cached_size_{0},
2304 random_primal_projections_{visibility, arena, from.random_primal_projections_},
2305 random_dual_projections_{visibility, arena, from.random_dual_projections_} {}
2306
2308 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2309 const PointMetadata& from)
2310#if defined(PROTOBUF_CUSTOM_VTABLE)
2311 : ::google::protobuf::Message(arena, PointMetadata_class_data_.base()) {
2312#else // PROTOBUF_CUSTOM_VTABLE
2313 : ::google::protobuf::Message(arena) {
2314#endif // PROTOBUF_CUSTOM_VTABLE
2315 PointMetadata* const _this = this;
2316 (void)_this;
2317 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2318 from._internal_metadata_);
2319 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2320 ::memcpy(reinterpret_cast<char *>(&_impl_) +
2321 offsetof(Impl_, active_primal_variable_count_),
2322 reinterpret_cast<const char *>(&from._impl_) +
2323 offsetof(Impl_, active_primal_variable_count_),
2324 offsetof(Impl_, point_type_) -
2325 offsetof(Impl_, active_primal_variable_count_) +
2326 sizeof(Impl_::point_type_));
2327
2328 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.PointMetadata)
2329}
2330PROTOBUF_NDEBUG_INLINE PointMetadata::Impl_::Impl_(
2331 ::google::protobuf::internal::InternalVisibility visibility,
2332 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2333 : _cached_size_{0},
2334 random_primal_projections_{visibility, arena},
2335 random_dual_projections_{visibility, arena} {}
2336
2337inline void PointMetadata::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2338 new (&_impl_) Impl_(internal_visibility(), arena);
2339 ::memset(reinterpret_cast<char *>(&_impl_) +
2340 offsetof(Impl_, active_primal_variable_count_),
2341 0,
2342 offsetof(Impl_, point_type_) -
2343 offsetof(Impl_, active_primal_variable_count_) +
2344 sizeof(Impl_::point_type_));
2345}
2347 // @@protoc_insertion_point(destructor:operations_research.pdlp.PointMetadata)
2348 SharedDtor(*this);
2349}
2350inline void PointMetadata::SharedDtor(MessageLite& self) {
2351 PointMetadata& this_ = static_cast<PointMetadata&>(self);
2352 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2353 ABSL_DCHECK(this_.GetArena() == nullptr);
2354 this_._impl_.~Impl_();
2355}
2356
2357inline void* PROTOBUF_NONNULL PointMetadata::PlacementNew_(
2358 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2359 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2360 return ::new (mem) PointMetadata(arena);
2362constexpr auto PointMetadata::InternalNewImpl_() {
2363 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2364 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_) +
2365 decltype(PointMetadata::_impl_.random_primal_projections_)::
2366 InternalGetArenaOffset(
2367 ::google::protobuf::Message::internal_visibility()),
2368 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_) +
2369 decltype(PointMetadata::_impl_.random_dual_projections_)::
2370 InternalGetArenaOffset(
2371 ::google::protobuf::Message::internal_visibility()),
2372 });
2373 if (arena_bits.has_value()) {
2374 return ::google::protobuf::internal::MessageCreator::ZeroInit(
2375 sizeof(PointMetadata), alignof(PointMetadata), *arena_bits);
2376 } else {
2377 return ::google::protobuf::internal::MessageCreator(&PointMetadata::PlacementNew_,
2378 sizeof(PointMetadata),
2379 alignof(PointMetadata));
2380 }
2381}
2383 return ::google::protobuf::internal::ClassDataFull{
2384 ::google::protobuf::internal::ClassData{
2386 &_table_.header,
2387 nullptr, // OnDemandRegisterArenaDtor
2388 nullptr, // IsInitialized
2389 &PointMetadata::MergeImpl,
2390 ::google::protobuf::Message::GetNewImpl<PointMetadata>(),
2391#if defined(PROTOBUF_CUSTOM_VTABLE)
2392 &PointMetadata::SharedDtor,
2393 ::google::protobuf::Message::GetClearImpl<PointMetadata>(), &PointMetadata::ByteSizeLong,
2395#endif // PROTOBUF_CUSTOM_VTABLE
2396 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._cached_size_),
2397 false,
2398 },
2399 &PointMetadata::kDescriptorMethods,
2401 nullptr, // tracker
2402 };
2403}
2404
2405PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2406 ::google::protobuf::internal::ClassDataFull PointMetadata_class_data_ =
2408
2409PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2411 ::google::protobuf::internal::PrefetchToLocalCache(&PointMetadata_class_data_);
2412 ::google::protobuf::internal::PrefetchToLocalCache(PointMetadata_class_data_.tc_table);
2413 return PointMetadata_class_data_.base();
2415PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2416const ::_pbi::TcParseTable<3, 7, 1, 0, 2>
2417PointMetadata::_table_ = {
2418 {
2419 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._has_bits_),
2420 0, // no _extensions_
2421 7, 56, // max_field_number, fast_idx_mask
2422 offsetof(decltype(_table_), field_lookup_table),
2423 4294967168, // skipmap
2424 offsetof(decltype(_table_), field_entries),
2425 7, // num_field_entries
2426 1, // num_aux_entries
2427 offsetof(decltype(_table_), aux_entries),
2429 nullptr, // post_loop_handler
2430 ::_pbi::TcParser::GenericFallback, // fallback
2431 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2432 ::_pbi::TcParser::GetTable<::operations_research::pdlp::PointMetadata>(), // to_prefetch
2433 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2434 }, {{
2435 {::_pbi::TcParser::MiniParse, {}},
2436 // optional .operations_research.pdlp.PointType point_type = 1;
2437 {::_pbi::TcParser::FastEr0S1,
2438 {8, 4, 6, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_)}},
2439 // repeated double random_primal_projections = 2 [packed = true];
2440 {::_pbi::TcParser::FastF64P1,
2441 {18, 63, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_)}},
2442 // repeated double random_dual_projections = 3 [packed = true];
2443 {::_pbi::TcParser::FastF64P1,
2444 {26, 63, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_)}},
2445 // optional int64 active_primal_variable_count = 4;
2446 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_primal_variable_count_), 0>(),
2447 {32, 0, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_)}},
2448 // optional int64 active_dual_variable_count = 5;
2449 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_dual_variable_count_), 1>(),
2450 {40, 1, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_count_)}},
2451 // optional int64 active_primal_variable_change = 6;
2452 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_primal_variable_change_), 2>(),
2453 {48, 2, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_change_)}},
2454 // optional int64 active_dual_variable_change = 7;
2455 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_dual_variable_change_), 3>(),
2456 {56, 3, 0, PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_change_)}},
2457 }}, {{
2458 65535, 65535
2459 }}, {{
2460 // optional .operations_research.pdlp.PointType point_type = 1;
2461 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_), _Internal::kHasBitsOffset + 4, 0,
2462 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2463 // repeated double random_primal_projections = 2 [packed = true];
2464 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_), -1, 0,
2465 (0 | ::_fl::kFcRepeated | ::_fl::kPackedDouble)},
2466 // repeated double random_dual_projections = 3 [packed = true];
2467 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_), -1, 0,
2468 (0 | ::_fl::kFcRepeated | ::_fl::kPackedDouble)},
2469 // optional int64 active_primal_variable_count = 4;
2470 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_), _Internal::kHasBitsOffset + 0, 0,
2471 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2472 // optional int64 active_dual_variable_count = 5;
2473 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_count_), _Internal::kHasBitsOffset + 1, 0,
2474 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2475 // optional int64 active_primal_variable_change = 6;
2476 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_change_), _Internal::kHasBitsOffset + 2, 0,
2477 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2478 // optional int64 active_dual_variable_change = 7;
2479 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_change_), _Internal::kHasBitsOffset + 3, 0,
2480 (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2481 }},
2482 {{
2483 {0, 6},
2484 }},
2485 {{
2486 }},
2487};
2488PROTOBUF_NOINLINE void PointMetadata::Clear() {
2489// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.PointMetadata)
2490 ::google::protobuf::internal::TSanWrite(&_impl_);
2491 ::uint32_t cached_has_bits = 0;
2492 // Prevent compiler warnings about cached_has_bits being unused
2493 (void) cached_has_bits;
2494
2495 _impl_.random_primal_projections_.Clear();
2496 _impl_.random_dual_projections_.Clear();
2497 cached_has_bits = _impl_._has_bits_[0];
2498 if ((cached_has_bits & 0x0000001fu) != 0) {
2499 ::memset(&_impl_.active_primal_variable_count_, 0, static_cast<::size_t>(
2500 reinterpret_cast<char*>(&_impl_.point_type_) -
2501 reinterpret_cast<char*>(&_impl_.active_primal_variable_count_)) + sizeof(_impl_.point_type_));
2502 }
2503 _impl_._has_bits_.Clear();
2504 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2505}
2506
2507#if defined(PROTOBUF_CUSTOM_VTABLE)
2508::uint8_t* PROTOBUF_NONNULL PointMetadata::_InternalSerialize(
2509 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2510 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2511 const PointMetadata& this_ = static_cast<const PointMetadata&>(base);
2512#else // PROTOBUF_CUSTOM_VTABLE
2513::uint8_t* PROTOBUF_NONNULL PointMetadata::_InternalSerialize(
2514 ::uint8_t* PROTOBUF_NONNULL target,
2515 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2516 const PointMetadata& this_ = *this;
2517#endif // PROTOBUF_CUSTOM_VTABLE
2518 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.PointMetadata)
2519 ::uint32_t cached_has_bits = 0;
2520 (void)cached_has_bits;
2521
2522 cached_has_bits = this_._impl_._has_bits_[0];
2523 // optional .operations_research.pdlp.PointType point_type = 1;
2524 if ((cached_has_bits & 0x00000010u) != 0) {
2525 target = stream->EnsureSpace(target);
2526 target = ::_pbi::WireFormatLite::WriteEnumToArray(
2527 1, this_._internal_point_type(), target);
2528 }
2529
2530 // repeated double random_primal_projections = 2 [packed = true];
2531 if (this_._internal_random_primal_projections_size() > 0) {
2532 target = stream->WriteFixedPacked(2, this_._internal_random_primal_projections(), target);
2533 }
2534
2535 // repeated double random_dual_projections = 3 [packed = true];
2536 if (this_._internal_random_dual_projections_size() > 0) {
2537 target = stream->WriteFixedPacked(3, this_._internal_random_dual_projections(), target);
2538 }
2539
2540 // optional int64 active_primal_variable_count = 4;
2541 if ((cached_has_bits & 0x00000001u) != 0) {
2542 target =
2543 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<4>(
2544 stream, this_._internal_active_primal_variable_count(), target);
2545 }
2546
2547 // optional int64 active_dual_variable_count = 5;
2548 if ((cached_has_bits & 0x00000002u) != 0) {
2549 target =
2550 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<5>(
2551 stream, this_._internal_active_dual_variable_count(), target);
2552 }
2553
2554 // optional int64 active_primal_variable_change = 6;
2555 if ((cached_has_bits & 0x00000004u) != 0) {
2556 target =
2557 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<6>(
2558 stream, this_._internal_active_primal_variable_change(), target);
2559 }
2560
2561 // optional int64 active_dual_variable_change = 7;
2562 if ((cached_has_bits & 0x00000008u) != 0) {
2563 target =
2564 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<7>(
2565 stream, this_._internal_active_dual_variable_change(), target);
2566 }
2567
2568 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2569 target =
2570 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2571 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2572 }
2573 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.PointMetadata)
2574 return target;
2575}
2576
2577#if defined(PROTOBUF_CUSTOM_VTABLE)
2578::size_t PointMetadata::ByteSizeLong(const MessageLite& base) {
2579 const PointMetadata& this_ = static_cast<const PointMetadata&>(base);
2580#else // PROTOBUF_CUSTOM_VTABLE
2581::size_t PointMetadata::ByteSizeLong() const {
2582 const PointMetadata& this_ = *this;
2583#endif // PROTOBUF_CUSTOM_VTABLE
2584 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.PointMetadata)
2585 ::size_t total_size = 0;
2586
2587 ::uint32_t cached_has_bits = 0;
2588 // Prevent compiler warnings about cached_has_bits being unused
2589 (void)cached_has_bits;
2590
2591 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2592 {
2593 // repeated double random_primal_projections = 2 [packed = true];
2594 {
2595 ::size_t data_size = ::size_t{8} *
2596 ::_pbi::FromIntSize(this_._internal_random_primal_projections_size());
2597 ::size_t tag_size = data_size == 0
2598 ? 0
2599 : 1 + ::_pbi::WireFormatLite::Int32Size(
2600 static_cast<::int32_t>(data_size));
2601 total_size += tag_size + data_size;
2602 }
2603 // repeated double random_dual_projections = 3 [packed = true];
2604 {
2605 ::size_t data_size = ::size_t{8} *
2606 ::_pbi::FromIntSize(this_._internal_random_dual_projections_size());
2607 ::size_t tag_size = data_size == 0
2608 ? 0
2609 : 1 + ::_pbi::WireFormatLite::Int32Size(
2610 static_cast<::int32_t>(data_size));
2611 total_size += tag_size + data_size;
2612 }
2613 }
2614 cached_has_bits = this_._impl_._has_bits_[0];
2615 if ((cached_has_bits & 0x0000001fu) != 0) {
2616 // optional int64 active_primal_variable_count = 4;
2617 if ((cached_has_bits & 0x00000001u) != 0) {
2618 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2619 this_._internal_active_primal_variable_count());
2620 }
2621 // optional int64 active_dual_variable_count = 5;
2622 if ((cached_has_bits & 0x00000002u) != 0) {
2623 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2624 this_._internal_active_dual_variable_count());
2625 }
2626 // optional int64 active_primal_variable_change = 6;
2627 if ((cached_has_bits & 0x00000004u) != 0) {
2628 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2629 this_._internal_active_primal_variable_change());
2630 }
2631 // optional int64 active_dual_variable_change = 7;
2632 if ((cached_has_bits & 0x00000008u) != 0) {
2633 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2634 this_._internal_active_dual_variable_change());
2635 }
2636 // optional .operations_research.pdlp.PointType point_type = 1;
2637 if ((cached_has_bits & 0x00000010u) != 0) {
2638 total_size += 1 +
2639 ::_pbi::WireFormatLite::EnumSize(this_._internal_point_type());
2640 }
2641 }
2642 return this_.MaybeComputeUnknownFieldsSize(total_size,
2643 &this_._impl_._cached_size_);
2644}
2645
2646void PointMetadata::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2647 auto* const _this = static_cast<PointMetadata*>(&to_msg);
2648 auto& from = static_cast<const PointMetadata&>(from_msg);
2649 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.PointMetadata)
2650 ABSL_DCHECK_NE(&from, _this);
2651 ::uint32_t cached_has_bits = 0;
2652 (void) cached_has_bits;
2653
2654 _this->_internal_mutable_random_primal_projections()->MergeFrom(from._internal_random_primal_projections());
2655 _this->_internal_mutable_random_dual_projections()->MergeFrom(from._internal_random_dual_projections());
2656 cached_has_bits = from._impl_._has_bits_[0];
2657 if ((cached_has_bits & 0x0000001fu) != 0) {
2658 if ((cached_has_bits & 0x00000001u) != 0) {
2659 _this->_impl_.active_primal_variable_count_ = from._impl_.active_primal_variable_count_;
2660 }
2661 if ((cached_has_bits & 0x00000002u) != 0) {
2662 _this->_impl_.active_dual_variable_count_ = from._impl_.active_dual_variable_count_;
2663 }
2664 if ((cached_has_bits & 0x00000004u) != 0) {
2665 _this->_impl_.active_primal_variable_change_ = from._impl_.active_primal_variable_change_;
2666 }
2667 if ((cached_has_bits & 0x00000008u) != 0) {
2668 _this->_impl_.active_dual_variable_change_ = from._impl_.active_dual_variable_change_;
2669 }
2670 if ((cached_has_bits & 0x00000010u) != 0) {
2671 _this->_impl_.point_type_ = from._impl_.point_type_;
2672 }
2673 }
2674 _this->_impl_._has_bits_[0] |= cached_has_bits;
2675 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2676}
2677
2678void PointMetadata::CopyFrom(const PointMetadata& from) {
2679// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.PointMetadata)
2680 if (&from == this) return;
2681 Clear();
2683}
2684
2685
2686void PointMetadata::InternalSwap(PointMetadata* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2687 using ::std::swap;
2688 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2689 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2690 _impl_.random_primal_projections_.InternalSwap(&other->_impl_.random_primal_projections_);
2691 _impl_.random_dual_projections_.InternalSwap(&other->_impl_.random_dual_projections_);
2692 ::google::protobuf::internal::memswap<
2693 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_)
2694 + sizeof(PointMetadata::_impl_.point_type_)
2695 - PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_)>(
2696 reinterpret_cast<char*>(&_impl_.active_primal_variable_count_),
2697 reinterpret_cast<char*>(&other->_impl_.active_primal_variable_count_));
2698}
2699
2700::google::protobuf::Metadata PointMetadata::GetMetadata() const {
2701 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2702}
2703// ===================================================================
2706 public:
2707 using HasBits =
2708 decltype(::std::declval<IterationStats>()._impl_._has_bits_);
2709 static constexpr ::int32_t kHasBitsOffset =
2710 8 * PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._has_bits_);
2711};
2713IterationStats::IterationStats(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2714#if defined(PROTOBUF_CUSTOM_VTABLE)
2715 : ::google::protobuf::Message(arena, IterationStats_class_data_.base()) {
2716#else // PROTOBUF_CUSTOM_VTABLE
2717 : ::google::protobuf::Message(arena) {
2718#endif // PROTOBUF_CUSTOM_VTABLE
2719 SharedCtor(arena);
2720 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.IterationStats)
2721}
2722PROTOBUF_NDEBUG_INLINE IterationStats::Impl_::Impl_(
2723 ::google::protobuf::internal::InternalVisibility visibility,
2724 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2725 const ::operations_research::pdlp::IterationStats& from_msg)
2726 : _has_bits_{from._has_bits_},
2727 _cached_size_{0},
2728 convergence_information_{visibility, arena, from.convergence_information_},
2729 infeasibility_information_{visibility, arena, from.infeasibility_information_},
2730 point_metadata_{visibility, arena, from.point_metadata_} {}
2731
2733 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2734 const IterationStats& from)
2735#if defined(PROTOBUF_CUSTOM_VTABLE)
2736 : ::google::protobuf::Message(arena, IterationStats_class_data_.base()) {
2737#else // PROTOBUF_CUSTOM_VTABLE
2738 : ::google::protobuf::Message(arena) {
2739#endif // PROTOBUF_CUSTOM_VTABLE
2740 IterationStats* const _this = this;
2741 (void)_this;
2742 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2743 from._internal_metadata_);
2744 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2745 ::memcpy(reinterpret_cast<char *>(&_impl_) +
2746 offsetof(Impl_, iteration_number_),
2747 reinterpret_cast<const char *>(&from._impl_) +
2748 offsetof(Impl_, iteration_number_),
2749 offsetof(Impl_, restart_used_) -
2750 offsetof(Impl_, iteration_number_) +
2751 sizeof(Impl_::restart_used_));
2752
2753 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.IterationStats)
2754}
2755PROTOBUF_NDEBUG_INLINE IterationStats::Impl_::Impl_(
2756 ::google::protobuf::internal::InternalVisibility visibility,
2757 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2758 : _cached_size_{0},
2759 convergence_information_{visibility, arena},
2760 infeasibility_information_{visibility, arena},
2761 point_metadata_{visibility, arena} {}
2762
2763inline void IterationStats::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2764 new (&_impl_) Impl_(internal_visibility(), arena);
2765 ::memset(reinterpret_cast<char *>(&_impl_) +
2766 offsetof(Impl_, iteration_number_),
2767 0,
2768 offsetof(Impl_, restart_used_) -
2769 offsetof(Impl_, iteration_number_) +
2770 sizeof(Impl_::restart_used_));
2771}
2773 // @@protoc_insertion_point(destructor:operations_research.pdlp.IterationStats)
2774 SharedDtor(*this);
2775}
2776inline void IterationStats::SharedDtor(MessageLite& self) {
2777 IterationStats& this_ = static_cast<IterationStats&>(self);
2778 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2779 ABSL_DCHECK(this_.GetArena() == nullptr);
2780 this_._impl_.~Impl_();
2781}
2782
2783inline void* PROTOBUF_NONNULL IterationStats::PlacementNew_(
2784 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2785 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2786 return ::new (mem) IterationStats(arena);
2787}
2789 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2790 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_) +
2791 decltype(IterationStats::_impl_.convergence_information_)::
2792 InternalGetArenaOffset(
2793 ::google::protobuf::Message::internal_visibility()),
2794 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_) +
2795 decltype(IterationStats::_impl_.infeasibility_information_)::
2796 InternalGetArenaOffset(
2797 ::google::protobuf::Message::internal_visibility()),
2798 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_) +
2799 decltype(IterationStats::_impl_.point_metadata_)::
2800 InternalGetArenaOffset(
2801 ::google::protobuf::Message::internal_visibility()),
2802 });
2803 if (arena_bits.has_value()) {
2804 return ::google::protobuf::internal::MessageCreator::ZeroInit(
2805 sizeof(IterationStats), alignof(IterationStats), *arena_bits);
2806 } else {
2807 return ::google::protobuf::internal::MessageCreator(&IterationStats::PlacementNew_,
2808 sizeof(IterationStats),
2809 alignof(IterationStats));
2810 }
2811}
2813 return ::google::protobuf::internal::ClassDataFull{
2814 ::google::protobuf::internal::ClassData{
2816 &_table_.header,
2817 nullptr, // OnDemandRegisterArenaDtor
2818 nullptr, // IsInitialized
2819 &IterationStats::MergeImpl,
2820 ::google::protobuf::Message::GetNewImpl<IterationStats>(),
2821#if defined(PROTOBUF_CUSTOM_VTABLE)
2822 &IterationStats::SharedDtor,
2823 ::google::protobuf::Message::GetClearImpl<IterationStats>(), &IterationStats::ByteSizeLong,
2825#endif // PROTOBUF_CUSTOM_VTABLE
2826 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._cached_size_),
2827 false,
2828 },
2829 &IterationStats::kDescriptorMethods,
2831 nullptr, // tracker
2832 };
2833}
2834
2835PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2836 ::google::protobuf::internal::ClassDataFull IterationStats_class_data_ =
2838
2839PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2841 ::google::protobuf::internal::PrefetchToLocalCache(&IterationStats_class_data_);
2842 ::google::protobuf::internal::PrefetchToLocalCache(IterationStats_class_data_.tc_table);
2843 return IterationStats_class_data_.base();
2844}
2845PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2846const ::_pbi::TcParseTable<4, 10, 4, 0, 2>
2847IterationStats::_table_ = {
2848 {
2849 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._has_bits_),
2850 0, // no _extensions_
2851 11, 120, // max_field_number, fast_idx_mask
2852 offsetof(decltype(_table_), field_lookup_table),
2853 4294965760, // skipmap
2854 offsetof(decltype(_table_), field_entries),
2855 10, // num_field_entries
2856 4, // num_aux_entries
2857 offsetof(decltype(_table_), aux_entries),
2859 nullptr, // post_loop_handler
2860 ::_pbi::TcParser::GenericFallback, // fallback
2861 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2862 ::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>(), // to_prefetch
2863 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2864 }, {{
2865 {::_pbi::TcParser::MiniParse, {}},
2866 // optional int32 iteration_number = 1;
2867 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(IterationStats, _impl_.iteration_number_), 0>(),
2868 {8, 0, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_)}},
2869 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
2870 {::_pbi::TcParser::FastMtR1,
2871 {18, 63, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_)}},
2872 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
2873 {::_pbi::TcParser::FastMtR1,
2874 {26, 63, 1, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_)}},
2875 // optional double cumulative_kkt_matrix_passes = 4;
2876 {::_pbi::TcParser::FastF64S1,
2877 {33, 2, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_kkt_matrix_passes_)}},
2878 // optional int32 cumulative_rejected_steps = 5;
2879 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(IterationStats, _impl_.cumulative_rejected_steps_), 1>(),
2880 {40, 1, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_rejected_steps_)}},
2881 // optional double cumulative_time_sec = 6;
2882 {::_pbi::TcParser::FastF64S1,
2883 {49, 3, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_time_sec_)}},
2884 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
2885 {::_pbi::TcParser::FastEr0S1,
2886 {56, 6, 3, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_)}},
2887 // optional double step_size = 8;
2888 {::_pbi::TcParser::FastF64S1,
2889 {65, 4, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.step_size_)}},
2890 // optional double primal_weight = 9;
2891 {::_pbi::TcParser::FastF64S1,
2892 {73, 5, 0, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.primal_weight_)}},
2893 {::_pbi::TcParser::MiniParse, {}},
2894 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
2895 {::_pbi::TcParser::FastMtR1,
2896 {90, 63, 2, PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_)}},
2897 {::_pbi::TcParser::MiniParse, {}},
2898 {::_pbi::TcParser::MiniParse, {}},
2899 {::_pbi::TcParser::MiniParse, {}},
2900 {::_pbi::TcParser::MiniParse, {}},
2901 }}, {{
2902 65535, 65535
2903 }}, {{
2904 // optional int32 iteration_number = 1;
2905 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_), _Internal::kHasBitsOffset + 0, 0,
2906 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2907 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
2908 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_), -1, 0,
2909 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2910 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
2911 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_), -1, 1,
2912 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2913 // optional double cumulative_kkt_matrix_passes = 4;
2914 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_kkt_matrix_passes_), _Internal::kHasBitsOffset + 2, 0,
2915 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2916 // optional int32 cumulative_rejected_steps = 5;
2917 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_rejected_steps_), _Internal::kHasBitsOffset + 1, 0,
2918 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2919 // optional double cumulative_time_sec = 6;
2920 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_time_sec_), _Internal::kHasBitsOffset + 3, 0,
2921 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2922 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
2923 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_), _Internal::kHasBitsOffset + 6, 3,
2924 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2925 // optional double step_size = 8;
2926 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.step_size_), _Internal::kHasBitsOffset + 4, 0,
2927 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2928 // optional double primal_weight = 9;
2929 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.primal_weight_), _Internal::kHasBitsOffset + 5, 0,
2930 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2931 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
2932 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_), -1, 2,
2933 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2934 }},
2935 {{
2936 {::_pbi::TcParser::GetTable<::operations_research::pdlp::ConvergenceInformation>()},
2937 {::_pbi::TcParser::GetTable<::operations_research::pdlp::InfeasibilityInformation>()},
2938 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PointMetadata>()},
2939 {0, 3},
2940 }},
2941 {{
2942 }},
2943};
2944PROTOBUF_NOINLINE void IterationStats::Clear() {
2945// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.IterationStats)
2946 ::google::protobuf::internal::TSanWrite(&_impl_);
2947 ::uint32_t cached_has_bits = 0;
2948 // Prevent compiler warnings about cached_has_bits being unused
2949 (void) cached_has_bits;
2950
2951 _impl_.convergence_information_.Clear();
2952 _impl_.infeasibility_information_.Clear();
2953 _impl_.point_metadata_.Clear();
2954 cached_has_bits = _impl_._has_bits_[0];
2955 if ((cached_has_bits & 0x0000007fu) != 0) {
2956 ::memset(&_impl_.iteration_number_, 0, static_cast<::size_t>(
2957 reinterpret_cast<char*>(&_impl_.restart_used_) -
2958 reinterpret_cast<char*>(&_impl_.iteration_number_)) + sizeof(_impl_.restart_used_));
2959 }
2960 _impl_._has_bits_.Clear();
2961 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2962}
2963
2964#if defined(PROTOBUF_CUSTOM_VTABLE)
2965::uint8_t* PROTOBUF_NONNULL IterationStats::_InternalSerialize(
2966 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2967 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2968 const IterationStats& this_ = static_cast<const IterationStats&>(base);
2969#else // PROTOBUF_CUSTOM_VTABLE
2970::uint8_t* PROTOBUF_NONNULL IterationStats::_InternalSerialize(
2971 ::uint8_t* PROTOBUF_NONNULL target,
2972 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2973 const IterationStats& this_ = *this;
2974#endif // PROTOBUF_CUSTOM_VTABLE
2975 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.IterationStats)
2976 ::uint32_t cached_has_bits = 0;
2977 (void)cached_has_bits;
2978
2979 cached_has_bits = this_._impl_._has_bits_[0];
2980 // optional int32 iteration_number = 1;
2981 if ((cached_has_bits & 0x00000001u) != 0) {
2982 target =
2983 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
2984 stream, this_._internal_iteration_number(), target);
2985 }
2986
2987 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
2988 for (unsigned i = 0, n = static_cast<unsigned>(
2989 this_._internal_convergence_information_size());
2990 i < n; i++) {
2991 const auto& repfield = this_._internal_convergence_information().Get(i);
2992 target =
2993 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
2994 2, repfield, repfield.GetCachedSize(),
2995 target, stream);
2996 }
2997
2998 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
2999 for (unsigned i = 0, n = static_cast<unsigned>(
3000 this_._internal_infeasibility_information_size());
3001 i < n; i++) {
3002 const auto& repfield = this_._internal_infeasibility_information().Get(i);
3003 target =
3004 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3005 3, repfield, repfield.GetCachedSize(),
3006 target, stream);
3007 }
3008
3009 // optional double cumulative_kkt_matrix_passes = 4;
3010 if ((cached_has_bits & 0x00000004u) != 0) {
3011 target = stream->EnsureSpace(target);
3012 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3013 4, this_._internal_cumulative_kkt_matrix_passes(), target);
3014 }
3015
3016 // optional int32 cumulative_rejected_steps = 5;
3017 if ((cached_has_bits & 0x00000002u) != 0) {
3018 target =
3019 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
3020 stream, this_._internal_cumulative_rejected_steps(), target);
3021 }
3022
3023 // optional double cumulative_time_sec = 6;
3024 if ((cached_has_bits & 0x00000008u) != 0) {
3025 target = stream->EnsureSpace(target);
3026 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3027 6, this_._internal_cumulative_time_sec(), target);
3028 }
3029
3030 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
3031 if ((cached_has_bits & 0x00000040u) != 0) {
3032 target = stream->EnsureSpace(target);
3033 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3034 7, this_._internal_restart_used(), target);
3035 }
3036
3037 // optional double step_size = 8;
3038 if ((cached_has_bits & 0x00000010u) != 0) {
3039 target = stream->EnsureSpace(target);
3040 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3041 8, this_._internal_step_size(), target);
3042 }
3043
3044 // optional double primal_weight = 9;
3045 if ((cached_has_bits & 0x00000020u) != 0) {
3046 target = stream->EnsureSpace(target);
3047 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3048 9, this_._internal_primal_weight(), target);
3049 }
3050
3051 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
3052 for (unsigned i = 0, n = static_cast<unsigned>(
3053 this_._internal_point_metadata_size());
3054 i < n; i++) {
3055 const auto& repfield = this_._internal_point_metadata().Get(i);
3056 target =
3057 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3058 11, repfield, repfield.GetCachedSize(),
3059 target, stream);
3060 }
3061
3062 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3063 target =
3064 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3065 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3066 }
3067 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.IterationStats)
3068 return target;
3069}
3070
3071#if defined(PROTOBUF_CUSTOM_VTABLE)
3072::size_t IterationStats::ByteSizeLong(const MessageLite& base) {
3073 const IterationStats& this_ = static_cast<const IterationStats&>(base);
3074#else // PROTOBUF_CUSTOM_VTABLE
3075::size_t IterationStats::ByteSizeLong() const {
3076 const IterationStats& this_ = *this;
3077#endif // PROTOBUF_CUSTOM_VTABLE
3078 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.IterationStats)
3079 ::size_t total_size = 0;
3081 ::uint32_t cached_has_bits = 0;
3082 // Prevent compiler warnings about cached_has_bits being unused
3083 (void)cached_has_bits;
3084
3085 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3086 {
3087 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
3088 {
3089 total_size += 1UL * this_._internal_convergence_information_size();
3090 for (const auto& msg : this_._internal_convergence_information()) {
3091 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3092 }
3093 }
3094 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
3095 {
3096 total_size += 1UL * this_._internal_infeasibility_information_size();
3097 for (const auto& msg : this_._internal_infeasibility_information()) {
3098 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3099 }
3100 }
3101 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
3102 {
3103 total_size += 1UL * this_._internal_point_metadata_size();
3104 for (const auto& msg : this_._internal_point_metadata()) {
3105 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3106 }
3107 }
3108 }
3109 cached_has_bits = this_._impl_._has_bits_[0];
3110 total_size += ::absl::popcount(0x0000003cu & cached_has_bits) * 9;
3111 if ((cached_has_bits & 0x00000043u) != 0) {
3112 // optional int32 iteration_number = 1;
3113 if ((cached_has_bits & 0x00000001u) != 0) {
3114 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3115 this_._internal_iteration_number());
3116 }
3117 // optional int32 cumulative_rejected_steps = 5;
3118 if ((cached_has_bits & 0x00000002u) != 0) {
3119 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3120 this_._internal_cumulative_rejected_steps());
3121 }
3122 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
3123 if ((cached_has_bits & 0x00000040u) != 0) {
3124 total_size += 1 +
3125 ::_pbi::WireFormatLite::EnumSize(this_._internal_restart_used());
3126 }
3127 }
3128 return this_.MaybeComputeUnknownFieldsSize(total_size,
3129 &this_._impl_._cached_size_);
3130}
3131
3132void IterationStats::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
3133 auto* const _this = static_cast<IterationStats*>(&to_msg);
3134 auto& from = static_cast<const IterationStats&>(from_msg);
3135 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.IterationStats)
3136 ABSL_DCHECK_NE(&from, _this);
3137 ::uint32_t cached_has_bits = 0;
3138 (void) cached_has_bits;
3139
3140 _this->_internal_mutable_convergence_information()->MergeFrom(
3141 from._internal_convergence_information());
3142 _this->_internal_mutable_infeasibility_information()->MergeFrom(
3143 from._internal_infeasibility_information());
3144 _this->_internal_mutable_point_metadata()->MergeFrom(
3145 from._internal_point_metadata());
3146 cached_has_bits = from._impl_._has_bits_[0];
3147 if ((cached_has_bits & 0x0000007fu) != 0) {
3148 if ((cached_has_bits & 0x00000001u) != 0) {
3149 _this->_impl_.iteration_number_ = from._impl_.iteration_number_;
3150 }
3151 if ((cached_has_bits & 0x00000002u) != 0) {
3152 _this->_impl_.cumulative_rejected_steps_ = from._impl_.cumulative_rejected_steps_;
3153 }
3154 if ((cached_has_bits & 0x00000004u) != 0) {
3155 _this->_impl_.cumulative_kkt_matrix_passes_ = from._impl_.cumulative_kkt_matrix_passes_;
3156 }
3157 if ((cached_has_bits & 0x00000008u) != 0) {
3158 _this->_impl_.cumulative_time_sec_ = from._impl_.cumulative_time_sec_;
3159 }
3160 if ((cached_has_bits & 0x00000010u) != 0) {
3161 _this->_impl_.step_size_ = from._impl_.step_size_;
3162 }
3163 if ((cached_has_bits & 0x00000020u) != 0) {
3164 _this->_impl_.primal_weight_ = from._impl_.primal_weight_;
3165 }
3166 if ((cached_has_bits & 0x00000040u) != 0) {
3167 _this->_impl_.restart_used_ = from._impl_.restart_used_;
3168 }
3169 }
3170 _this->_impl_._has_bits_[0] |= cached_has_bits;
3171 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
3172}
3173
3174void IterationStats::CopyFrom(const IterationStats& from) {
3175// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.IterationStats)
3176 if (&from == this) return;
3177 Clear();
3178 MergeFrom(from);
3180
3181
3182void IterationStats::InternalSwap(IterationStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3183 using ::std::swap;
3184 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3185 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3186 _impl_.convergence_information_.InternalSwap(&other->_impl_.convergence_information_);
3187 _impl_.infeasibility_information_.InternalSwap(&other->_impl_.infeasibility_information_);
3188 _impl_.point_metadata_.InternalSwap(&other->_impl_.point_metadata_);
3189 ::google::protobuf::internal::memswap<
3190 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_)
3191 + sizeof(IterationStats::_impl_.restart_used_)
3192 - PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_)>(
3193 reinterpret_cast<char*>(&_impl_.iteration_number_),
3194 reinterpret_cast<char*>(&other->_impl_.iteration_number_));
3195}
3196
3197::google::protobuf::Metadata IterationStats::GetMetadata() const {
3198 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
3199}
3200// ===================================================================
3201
3203 public:
3204 using HasBits =
3205 decltype(::std::declval<FeasibilityPolishingDetails>()._impl_._has_bits_);
3206 static constexpr ::int32_t kHasBitsOffset =
3207 8 * PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._has_bits_);
3209
3211 ::google::protobuf::internal::TSanWrite(&_impl_);
3212 if (_impl_.params_ != nullptr) _impl_.params_->Clear();
3213 _impl_._has_bits_[0] &= ~0x00000001u;
3214}
3215FeasibilityPolishingDetails::FeasibilityPolishingDetails(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3216#if defined(PROTOBUF_CUSTOM_VTABLE)
3217 : ::google::protobuf::Message(arena, FeasibilityPolishingDetails_class_data_.base()) {
3218#else // PROTOBUF_CUSTOM_VTABLE
3219 : ::google::protobuf::Message(arena) {
3220#endif // PROTOBUF_CUSTOM_VTABLE
3221 SharedCtor(arena);
3222 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.FeasibilityPolishingDetails)
3223}
3224PROTOBUF_NDEBUG_INLINE FeasibilityPolishingDetails::Impl_::Impl_(
3225 ::google::protobuf::internal::InternalVisibility visibility,
3226 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
3227 const ::operations_research::pdlp::FeasibilityPolishingDetails& from_msg)
3228 : _has_bits_{from._has_bits_},
3229 _cached_size_{0},
3230 iteration_stats_{visibility, arena, from.iteration_stats_} {}
3231
3233 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
3234 const FeasibilityPolishingDetails& from)
3235#if defined(PROTOBUF_CUSTOM_VTABLE)
3236 : ::google::protobuf::Message(arena, FeasibilityPolishingDetails_class_data_.base()) {
3237#else // PROTOBUF_CUSTOM_VTABLE
3238 : ::google::protobuf::Message(arena) {
3239#endif // PROTOBUF_CUSTOM_VTABLE
3240 FeasibilityPolishingDetails* const _this = this;
3241 (void)_this;
3242 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3243 from._internal_metadata_);
3244 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
3245 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
3246 _impl_.params_ = ((cached_has_bits & 0x00000001u) != 0)
3247 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_)
3248 : nullptr;
3249 _impl_.solution_stats_ = ((cached_has_bits & 0x00000002u) != 0)
3250 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_)
3251 : nullptr;
3252 ::memcpy(reinterpret_cast<char *>(&_impl_) +
3253 offsetof(Impl_, polishing_phase_type_),
3254 reinterpret_cast<const char *>(&from._impl_) +
3255 offsetof(Impl_, polishing_phase_type_),
3256 offsetof(Impl_, solution_type_) -
3257 offsetof(Impl_, polishing_phase_type_) +
3258 sizeof(Impl_::solution_type_));
3259
3260 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.FeasibilityPolishingDetails)
3261}
3262PROTOBUF_NDEBUG_INLINE FeasibilityPolishingDetails::Impl_::Impl_(
3263 ::google::protobuf::internal::InternalVisibility visibility,
3264 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3265 : _cached_size_{0},
3266 iteration_stats_{visibility, arena} {}
3267
3268inline void FeasibilityPolishingDetails::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
3269 new (&_impl_) Impl_(internal_visibility(), arena);
3270 ::memset(reinterpret_cast<char *>(&_impl_) +
3271 offsetof(Impl_, params_),
3272 0,
3273 offsetof(Impl_, solution_type_) -
3274 offsetof(Impl_, params_) +
3275 sizeof(Impl_::solution_type_));
3276}
3278 // @@protoc_insertion_point(destructor:operations_research.pdlp.FeasibilityPolishingDetails)
3279 SharedDtor(*this);
3280}
3281inline void FeasibilityPolishingDetails::SharedDtor(MessageLite& self) {
3282 FeasibilityPolishingDetails& this_ = static_cast<FeasibilityPolishingDetails&>(self);
3283 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
3284 ABSL_DCHECK(this_.GetArena() == nullptr);
3285 delete this_._impl_.params_;
3286 delete this_._impl_.solution_stats_;
3287 this_._impl_.~Impl_();
3288}
3289
3290inline void* PROTOBUF_NONNULL FeasibilityPolishingDetails::PlacementNew_(
3291 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
3292 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
3293 return ::new (mem) FeasibilityPolishingDetails(arena);
3294}
3296 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
3297 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_) +
3298 decltype(FeasibilityPolishingDetails::_impl_.iteration_stats_)::
3299 InternalGetArenaOffset(
3300 ::google::protobuf::Message::internal_visibility()),
3301 });
3302 if (arena_bits.has_value()) {
3303 return ::google::protobuf::internal::MessageCreator::ZeroInit(
3304 sizeof(FeasibilityPolishingDetails), alignof(FeasibilityPolishingDetails), *arena_bits);
3305 } else {
3306 return ::google::protobuf::internal::MessageCreator(&FeasibilityPolishingDetails::PlacementNew_,
3309 }
3310}
3312 return ::google::protobuf::internal::ClassDataFull{
3313 ::google::protobuf::internal::ClassData{
3315 &_table_.header,
3316 nullptr, // OnDemandRegisterArenaDtor
3317 nullptr, // IsInitialized
3318 &FeasibilityPolishingDetails::MergeImpl,
3319 ::google::protobuf::Message::GetNewImpl<FeasibilityPolishingDetails>(),
3320#if defined(PROTOBUF_CUSTOM_VTABLE)
3321 &FeasibilityPolishingDetails::SharedDtor,
3322 ::google::protobuf::Message::GetClearImpl<FeasibilityPolishingDetails>(), &FeasibilityPolishingDetails::ByteSizeLong,
3324#endif // PROTOBUF_CUSTOM_VTABLE
3325 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._cached_size_),
3326 false,
3327 },
3328 &FeasibilityPolishingDetails::kDescriptorMethods,
3330 nullptr, // tracker
3331 };
3332}
3333
3334PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
3335 ::google::protobuf::internal::ClassDataFull FeasibilityPolishingDetails_class_data_ =
3337
3338PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
3340 ::google::protobuf::internal::PrefetchToLocalCache(&FeasibilityPolishingDetails_class_data_);
3341 ::google::protobuf::internal::PrefetchToLocalCache(FeasibilityPolishingDetails_class_data_.tc_table);
3343}
3344PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
3345const ::_pbi::TcParseTable<4, 9, 6, 0, 2>
3346FeasibilityPolishingDetails::_table_ = {
3347 {
3348 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._has_bits_),
3349 0, // no _extensions_
3350 9, 120, // max_field_number, fast_idx_mask
3351 offsetof(decltype(_table_), field_lookup_table),
3352 4294966784, // skipmap
3353 offsetof(decltype(_table_), field_entries),
3354 9, // num_field_entries
3355 6, // num_aux_entries
3356 offsetof(decltype(_table_), aux_entries),
3358 nullptr, // post_loop_handler
3359 ::_pbi::TcParser::GenericFallback, // fallback
3360 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
3361 ::_pbi::TcParser::GetTable<::operations_research::pdlp::FeasibilityPolishingDetails>(), // to_prefetch
3362 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
3363 }, {{
3364 {::_pbi::TcParser::MiniParse, {}},
3365 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3366 {::_pbi::TcParser::FastEr0S1,
3367 {8, 2, 2, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.polishing_phase_type_)}},
3368 // optional int32 main_iteration_count = 2;
3369 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(FeasibilityPolishingDetails, _impl_.main_iteration_count_), 3>(),
3370 {16, 3, 0, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.main_iteration_count_)}},
3371 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3372 {::_pbi::TcParser::FastMtS1,
3373 {26, 0, 0, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_)}},
3374 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3375 {::_pbi::TcParser::FastEr0S1,
3376 {32, 4, 13, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.termination_reason_)}},
3377 // optional int32 iteration_count = 5;
3378 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(FeasibilityPolishingDetails, _impl_.iteration_count_), 5>(),
3379 {40, 5, 0, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_count_)}},
3380 // optional double solve_time_sec = 6;
3381 {::_pbi::TcParser::FastF64S1,
3382 {49, 6, 0, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solve_time_sec_)}},
3383 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3384 {::_pbi::TcParser::FastMtS1,
3385 {58, 1, 1, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_stats_)}},
3386 // optional .operations_research.pdlp.PointType solution_type = 8;
3387 {::_pbi::TcParser::FastEr0S1,
3388 {64, 7, 6, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_)}},
3389 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3390 {::_pbi::TcParser::FastMtR1,
3391 {74, 63, 2, PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_)}},
3392 {::_pbi::TcParser::MiniParse, {}},
3393 {::_pbi::TcParser::MiniParse, {}},
3394 {::_pbi::TcParser::MiniParse, {}},
3395 {::_pbi::TcParser::MiniParse, {}},
3396 {::_pbi::TcParser::MiniParse, {}},
3397 {::_pbi::TcParser::MiniParse, {}},
3398 }}, {{
3399 65535, 65535
3400 }}, {{
3401 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3402 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.polishing_phase_type_), _Internal::kHasBitsOffset + 2, 3,
3403 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3404 // optional int32 main_iteration_count = 2;
3405 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.main_iteration_count_), _Internal::kHasBitsOffset + 3, 0,
3406 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3407 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3408 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_), _Internal::kHasBitsOffset + 0, 0,
3409 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3410 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3411 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.termination_reason_), _Internal::kHasBitsOffset + 4, 4,
3412 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3413 // optional int32 iteration_count = 5;
3414 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_count_), _Internal::kHasBitsOffset + 5, 0,
3415 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3416 // optional double solve_time_sec = 6;
3417 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solve_time_sec_), _Internal::kHasBitsOffset + 6, 0,
3418 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
3419 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3420 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_stats_), _Internal::kHasBitsOffset + 1, 1,
3421 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3422 // optional .operations_research.pdlp.PointType solution_type = 8;
3423 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_), _Internal::kHasBitsOffset + 7, 5,
3424 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3425 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3426 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_), -1, 2,
3427 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
3428 }},
3429 {{
3430 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PrimalDualHybridGradientParams>()},
3431 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3432 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3433 {0, 2},
3434 {0, 13},
3435 {0, 6},
3436 }},
3437 {{
3438 }},
3439};
3440PROTOBUF_NOINLINE void FeasibilityPolishingDetails::Clear() {
3441// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.FeasibilityPolishingDetails)
3442 ::google::protobuf::internal::TSanWrite(&_impl_);
3443 ::uint32_t cached_has_bits = 0;
3444 // Prevent compiler warnings about cached_has_bits being unused
3445 (void) cached_has_bits;
3447 _impl_.iteration_stats_.Clear();
3448 cached_has_bits = _impl_._has_bits_[0];
3449 if ((cached_has_bits & 0x00000003u) != 0) {
3450 if ((cached_has_bits & 0x00000001u) != 0) {
3451 ABSL_DCHECK(_impl_.params_ != nullptr);
3452 _impl_.params_->Clear();
3453 }
3454 if ((cached_has_bits & 0x00000002u) != 0) {
3455 ABSL_DCHECK(_impl_.solution_stats_ != nullptr);
3456 _impl_.solution_stats_->Clear();
3457 }
3458 }
3459 if ((cached_has_bits & 0x000000fcu) != 0) {
3460 ::memset(&_impl_.polishing_phase_type_, 0, static_cast<::size_t>(
3461 reinterpret_cast<char*>(&_impl_.solution_type_) -
3462 reinterpret_cast<char*>(&_impl_.polishing_phase_type_)) + sizeof(_impl_.solution_type_));
3463 }
3464 _impl_._has_bits_.Clear();
3465 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
3466}
3467
3468#if defined(PROTOBUF_CUSTOM_VTABLE)
3469::uint8_t* PROTOBUF_NONNULL FeasibilityPolishingDetails::_InternalSerialize(
3470 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
3471 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
3472 const FeasibilityPolishingDetails& this_ = static_cast<const FeasibilityPolishingDetails&>(base);
3473#else // PROTOBUF_CUSTOM_VTABLE
3474::uint8_t* PROTOBUF_NONNULL FeasibilityPolishingDetails::_InternalSerialize(
3475 ::uint8_t* PROTOBUF_NONNULL target,
3476 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
3477 const FeasibilityPolishingDetails& this_ = *this;
3478#endif // PROTOBUF_CUSTOM_VTABLE
3479 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.FeasibilityPolishingDetails)
3480 ::uint32_t cached_has_bits = 0;
3481 (void)cached_has_bits;
3482
3483 cached_has_bits = this_._impl_._has_bits_[0];
3484 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3485 if ((cached_has_bits & 0x00000004u) != 0) {
3486 target = stream->EnsureSpace(target);
3487 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3488 1, this_._internal_polishing_phase_type(), target);
3489 }
3490
3491 // optional int32 main_iteration_count = 2;
3492 if ((cached_has_bits & 0x00000008u) != 0) {
3493 target =
3494 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
3495 stream, this_._internal_main_iteration_count(), target);
3496 }
3497
3498 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3499 if ((cached_has_bits & 0x00000001u) != 0) {
3500 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3501 3, *this_._impl_.params_, this_._impl_.params_->GetCachedSize(), target,
3502 stream);
3503 }
3504
3505 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3506 if ((cached_has_bits & 0x00000010u) != 0) {
3507 target = stream->EnsureSpace(target);
3508 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3509 4, this_._internal_termination_reason(), target);
3510 }
3511
3512 // optional int32 iteration_count = 5;
3513 if ((cached_has_bits & 0x00000020u) != 0) {
3514 target =
3515 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
3516 stream, this_._internal_iteration_count(), target);
3517 }
3518
3519 // optional double solve_time_sec = 6;
3520 if ((cached_has_bits & 0x00000040u) != 0) {
3521 target = stream->EnsureSpace(target);
3522 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3523 6, this_._internal_solve_time_sec(), target);
3524 }
3525
3526 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3527 if ((cached_has_bits & 0x00000002u) != 0) {
3528 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3529 7, *this_._impl_.solution_stats_, this_._impl_.solution_stats_->GetCachedSize(), target,
3530 stream);
3531 }
3532
3533 // optional .operations_research.pdlp.PointType solution_type = 8;
3534 if ((cached_has_bits & 0x00000080u) != 0) {
3535 target = stream->EnsureSpace(target);
3536 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3537 8, this_._internal_solution_type(), target);
3538 }
3539
3540 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3541 for (unsigned i = 0, n = static_cast<unsigned>(
3542 this_._internal_iteration_stats_size());
3543 i < n; i++) {
3544 const auto& repfield = this_._internal_iteration_stats().Get(i);
3545 target =
3546 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3547 9, repfield, repfield.GetCachedSize(),
3548 target, stream);
3549 }
3550
3551 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3552 target =
3553 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3554 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3555 }
3556 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.FeasibilityPolishingDetails)
3557 return target;
3558}
3559
3560#if defined(PROTOBUF_CUSTOM_VTABLE)
3562 const FeasibilityPolishingDetails& this_ = static_cast<const FeasibilityPolishingDetails&>(base);
3563#else // PROTOBUF_CUSTOM_VTABLE
3565 const FeasibilityPolishingDetails& this_ = *this;
3566#endif // PROTOBUF_CUSTOM_VTABLE
3567 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.FeasibilityPolishingDetails)
3568 ::size_t total_size = 0;
3569
3570 ::uint32_t cached_has_bits = 0;
3571 // Prevent compiler warnings about cached_has_bits being unused
3572 (void)cached_has_bits;
3573
3574 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3575 {
3576 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3577 {
3578 total_size += 1UL * this_._internal_iteration_stats_size();
3579 for (const auto& msg : this_._internal_iteration_stats()) {
3580 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3581 }
3582 }
3583 }
3584 cached_has_bits = this_._impl_._has_bits_[0];
3585 total_size += static_cast<bool>(0x00000040u & cached_has_bits) * 9;
3586 if ((cached_has_bits & 0x000000bfu) != 0) {
3587 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3588 if ((cached_has_bits & 0x00000001u) != 0) {
3589 total_size += 1 +
3590 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.params_);
3591 }
3592 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3593 if ((cached_has_bits & 0x00000002u) != 0) {
3594 total_size += 1 +
3595 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.solution_stats_);
3596 }
3597 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3598 if ((cached_has_bits & 0x00000004u) != 0) {
3599 total_size += 1 +
3600 ::_pbi::WireFormatLite::EnumSize(this_._internal_polishing_phase_type());
3601 }
3602 // optional int32 main_iteration_count = 2;
3603 if ((cached_has_bits & 0x00000008u) != 0) {
3604 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3605 this_._internal_main_iteration_count());
3606 }
3607 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3608 if ((cached_has_bits & 0x00000010u) != 0) {
3609 total_size += 1 +
3610 ::_pbi::WireFormatLite::EnumSize(this_._internal_termination_reason());
3611 }
3612 // optional int32 iteration_count = 5;
3613 if ((cached_has_bits & 0x00000020u) != 0) {
3614 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3615 this_._internal_iteration_count());
3616 }
3617 // optional .operations_research.pdlp.PointType solution_type = 8;
3618 if ((cached_has_bits & 0x00000080u) != 0) {
3619 total_size += 1 +
3620 ::_pbi::WireFormatLite::EnumSize(this_._internal_solution_type());
3621 }
3622 }
3623 return this_.MaybeComputeUnknownFieldsSize(total_size,
3624 &this_._impl_._cached_size_);
3625}
3626
3627void FeasibilityPolishingDetails::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
3628 auto* const _this = static_cast<FeasibilityPolishingDetails*>(&to_msg);
3629 auto& from = static_cast<const FeasibilityPolishingDetails&>(from_msg);
3630 ::google::protobuf::Arena* arena = _this->GetArena();
3631 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.FeasibilityPolishingDetails)
3632 ABSL_DCHECK_NE(&from, _this);
3633 ::uint32_t cached_has_bits = 0;
3634 (void) cached_has_bits;
3635
3636 _this->_internal_mutable_iteration_stats()->MergeFrom(
3637 from._internal_iteration_stats());
3638 cached_has_bits = from._impl_._has_bits_[0];
3639 if ((cached_has_bits & 0x000000ffu) != 0) {
3640 if ((cached_has_bits & 0x00000001u) != 0) {
3641 ABSL_DCHECK(from._impl_.params_ != nullptr);
3642 if (_this->_impl_.params_ == nullptr) {
3643 _this->_impl_.params_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_);
3644 } else {
3645 _this->_impl_.params_->MergeFrom(*from._impl_.params_);
3646 }
3647 }
3648 if ((cached_has_bits & 0x00000002u) != 0) {
3649 ABSL_DCHECK(from._impl_.solution_stats_ != nullptr);
3650 if (_this->_impl_.solution_stats_ == nullptr) {
3651 _this->_impl_.solution_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_);
3652 } else {
3653 _this->_impl_.solution_stats_->MergeFrom(*from._impl_.solution_stats_);
3654 }
3655 }
3656 if ((cached_has_bits & 0x00000004u) != 0) {
3657 _this->_impl_.polishing_phase_type_ = from._impl_.polishing_phase_type_;
3658 }
3659 if ((cached_has_bits & 0x00000008u) != 0) {
3660 _this->_impl_.main_iteration_count_ = from._impl_.main_iteration_count_;
3661 }
3662 if ((cached_has_bits & 0x00000010u) != 0) {
3663 _this->_impl_.termination_reason_ = from._impl_.termination_reason_;
3664 }
3665 if ((cached_has_bits & 0x00000020u) != 0) {
3666 _this->_impl_.iteration_count_ = from._impl_.iteration_count_;
3667 }
3668 if ((cached_has_bits & 0x00000040u) != 0) {
3669 _this->_impl_.solve_time_sec_ = from._impl_.solve_time_sec_;
3670 }
3671 if ((cached_has_bits & 0x00000080u) != 0) {
3672 _this->_impl_.solution_type_ = from._impl_.solution_type_;
3673 }
3674 }
3675 _this->_impl_._has_bits_[0] |= cached_has_bits;
3676 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
3677}
3678
3680// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.FeasibilityPolishingDetails)
3681 if (&from == this) return;
3682 Clear();
3683 MergeFrom(from);
3684}
3686
3687void FeasibilityPolishingDetails::InternalSwap(FeasibilityPolishingDetails* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3688 using ::std::swap;
3689 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3690 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3691 _impl_.iteration_stats_.InternalSwap(&other->_impl_.iteration_stats_);
3692 ::google::protobuf::internal::memswap<
3693 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_)
3694 + sizeof(FeasibilityPolishingDetails::_impl_.solution_type_)
3695 - PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_)>(
3696 reinterpret_cast<char*>(&_impl_.params_),
3697 reinterpret_cast<char*>(&other->_impl_.params_));
3698}
3699
3700::google::protobuf::Metadata FeasibilityPolishingDetails::GetMetadata() const {
3701 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
3702}
3703// ===================================================================
3704
3705class SolveLog::_Internal {
3706 public:
3707 using HasBits =
3708 decltype(::std::declval<SolveLog>()._impl_._has_bits_);
3709 static constexpr ::int32_t kHasBitsOffset =
3710 8 * PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._has_bits_);
3711};
3714 ::google::protobuf::internal::TSanWrite(&_impl_);
3715 if (_impl_.params_ != nullptr) _impl_.params_->Clear();
3716 _impl_._has_bits_[0] &= ~0x00000020u;
3717}
3718SolveLog::SolveLog(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3719#if defined(PROTOBUF_CUSTOM_VTABLE)
3720 : ::google::protobuf::Message(arena, SolveLog_class_data_.base()) {
3721#else // PROTOBUF_CUSTOM_VTABLE
3722 : ::google::protobuf::Message(arena) {
3723#endif // PROTOBUF_CUSTOM_VTABLE
3724 SharedCtor(arena);
3725 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.SolveLog)
3726}
3727PROTOBUF_NDEBUG_INLINE SolveLog::Impl_::Impl_(
3728 ::google::protobuf::internal::InternalVisibility visibility,
3729 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
3730 const ::operations_research::pdlp::SolveLog& from_msg)
3731 : _has_bits_{from._has_bits_},
3732 _cached_size_{0},
3733 iteration_stats_{visibility, arena, from.iteration_stats_},
3734 feasibility_polishing_details_{visibility, arena, from.feasibility_polishing_details_},
3735 instance_name_(arena, from.instance_name_),
3736 termination_string_(arena, from.termination_string_) {}
3737
3739 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
3740 const SolveLog& from)
3741#if defined(PROTOBUF_CUSTOM_VTABLE)
3742 : ::google::protobuf::Message(arena, SolveLog_class_data_.base()) {
3743#else // PROTOBUF_CUSTOM_VTABLE
3744 : ::google::protobuf::Message(arena) {
3745#endif // PROTOBUF_CUSTOM_VTABLE
3746 SolveLog* const _this = this;
3747 (void)_this;
3748 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3749 from._internal_metadata_);
3750 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
3751 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
3752 _impl_.solution_stats_ = ((cached_has_bits & 0x00000004u) != 0)
3753 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_)
3754 : nullptr;
3755 _impl_.original_problem_stats_ = ((cached_has_bits & 0x00000008u) != 0)
3756 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.original_problem_stats_)
3757 : nullptr;
3758 _impl_.preprocessed_problem_stats_ = ((cached_has_bits & 0x00000010u) != 0)
3759 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.preprocessed_problem_stats_)
3760 : nullptr;
3761 _impl_.params_ = ((cached_has_bits & 0x00000020u) != 0)
3762 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_)
3763 : nullptr;
3764 ::memcpy(reinterpret_cast<char *>(&_impl_) +
3765 offsetof(Impl_, termination_reason_),
3766 reinterpret_cast<const char *>(&from._impl_) +
3767 offsetof(Impl_, termination_reason_),
3768 offsetof(Impl_, solution_type_) -
3769 offsetof(Impl_, termination_reason_) +
3770 sizeof(Impl_::solution_type_));
3771
3772 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.SolveLog)
3773}
3774PROTOBUF_NDEBUG_INLINE SolveLog::Impl_::Impl_(
3775 ::google::protobuf::internal::InternalVisibility visibility,
3776 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3777 : _cached_size_{0},
3778 iteration_stats_{visibility, arena},
3779 feasibility_polishing_details_{visibility, arena},
3780 instance_name_(arena),
3781 termination_string_(arena) {}
3782
3783inline void SolveLog::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
3784 new (&_impl_) Impl_(internal_visibility(), arena);
3785 ::memset(reinterpret_cast<char *>(&_impl_) +
3786 offsetof(Impl_, solution_stats_),
3787 0,
3788 offsetof(Impl_, solution_type_) -
3789 offsetof(Impl_, solution_stats_) +
3790 sizeof(Impl_::solution_type_));
3791}
3793 // @@protoc_insertion_point(destructor:operations_research.pdlp.SolveLog)
3794 SharedDtor(*this);
3795}
3796inline void SolveLog::SharedDtor(MessageLite& self) {
3797 SolveLog& this_ = static_cast<SolveLog&>(self);
3798 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
3799 ABSL_DCHECK(this_.GetArena() == nullptr);
3800 this_._impl_.instance_name_.Destroy();
3801 this_._impl_.termination_string_.Destroy();
3802 delete this_._impl_.solution_stats_;
3803 delete this_._impl_.original_problem_stats_;
3804 delete this_._impl_.preprocessed_problem_stats_;
3805 delete this_._impl_.params_;
3806 this_._impl_.~Impl_();
3807}
3808
3809inline void* PROTOBUF_NONNULL SolveLog::PlacementNew_(
3810 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
3811 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
3812 return ::new (mem) SolveLog(arena);
3813}
3814constexpr auto SolveLog::InternalNewImpl_() {
3815 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
3816 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_) +
3817 decltype(SolveLog::_impl_.iteration_stats_)::
3818 InternalGetArenaOffset(
3819 ::google::protobuf::Message::internal_visibility()),
3820 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_) +
3821 decltype(SolveLog::_impl_.feasibility_polishing_details_)::
3822 InternalGetArenaOffset(
3823 ::google::protobuf::Message::internal_visibility()),
3824 });
3825 if (arena_bits.has_value()) {
3826 return ::google::protobuf::internal::MessageCreator::CopyInit(
3827 sizeof(SolveLog), alignof(SolveLog), *arena_bits);
3828 } else {
3829 return ::google::protobuf::internal::MessageCreator(&SolveLog::PlacementNew_,
3830 sizeof(SolveLog),
3831 alignof(SolveLog));
3832 }
3833}
3834constexpr auto SolveLog::InternalGenerateClassData_() {
3835 return ::google::protobuf::internal::ClassDataFull{
3836 ::google::protobuf::internal::ClassData{
3837 &_SolveLog_default_instance_._instance,
3838 &_table_.header,
3839 nullptr, // OnDemandRegisterArenaDtor
3840 nullptr, // IsInitialized
3841 &SolveLog::MergeImpl,
3842 ::google::protobuf::Message::GetNewImpl<SolveLog>(),
3843#if defined(PROTOBUF_CUSTOM_VTABLE)
3844 &SolveLog::SharedDtor,
3845 ::google::protobuf::Message::GetClearImpl<SolveLog>(), &SolveLog::ByteSizeLong,
3847#endif // PROTOBUF_CUSTOM_VTABLE
3848 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._cached_size_),
3849 false,
3850 },
3851 &SolveLog::kDescriptorMethods,
3853 nullptr, // tracker
3854 };
3855}
3856
3857PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
3858 ::google::protobuf::internal::ClassDataFull SolveLog_class_data_ =
3860
3861PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
3862SolveLog::GetClassData() const {
3863 ::google::protobuf::internal::PrefetchToLocalCache(&SolveLog_class_data_);
3864 ::google::protobuf::internal::PrefetchToLocalCache(SolveLog_class_data_.tc_table);
3866}
3867PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
3868const ::_pbi::TcParseTable<4, 13, 8, 81, 2>
3869SolveLog::_table_ = {
3870 {
3871 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._has_bits_),
3872 0, // no _extensions_
3873 15, 120, // max_field_number, fast_idx_mask
3874 offsetof(decltype(_table_), field_lookup_table),
3875 4294934786, // skipmap
3876 offsetof(decltype(_table_), field_entries),
3877 13, // num_field_entries
3878 8, // num_aux_entries
3879 offsetof(decltype(_table_), aux_entries),
3880 SolveLog_class_data_.base(),
3881 nullptr, // post_loop_handler
3882 ::_pbi::TcParser::GenericFallback, // fallback
3883 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
3884 ::_pbi::TcParser::GetTable<::operations_research::pdlp::SolveLog>(), // to_prefetch
3885 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
3886 }, {{
3887 {::_pbi::TcParser::MiniParse, {}},
3888 // optional string instance_name = 1;
3889 {::_pbi::TcParser::FastSS1,
3890 {10, 0, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.instance_name_)}},
3891 {::_pbi::TcParser::MiniParse, {}},
3892 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
3893 {::_pbi::TcParser::FastEr0S1,
3894 {24, 6, 13, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_reason_)}},
3895 // optional string termination_string = 4;
3896 {::_pbi::TcParser::FastSS1,
3897 {34, 1, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_string_)}},
3898 // optional int32 iteration_count = 5;
3899 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveLog, _impl_.iteration_count_), 7>(),
3900 {40, 7, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_count_)}},
3901 // optional double solve_time_sec = 6;
3902 {::_pbi::TcParser::FastF64S1,
3903 {49, 8, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solve_time_sec_)}},
3904 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
3905 {::_pbi::TcParser::FastMtR1,
3906 {58, 63, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_)}},
3907 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
3908 {::_pbi::TcParser::FastMtS1,
3909 {66, 2, 1, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_)}},
3910 {::_pbi::TcParser::MiniParse, {}},
3911 // optional .operations_research.pdlp.PointType solution_type = 10;
3912 {::_pbi::TcParser::FastEr0S1,
3913 {80, 10, 6, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_)}},
3914 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
3915 {::_pbi::TcParser::FastMtS1,
3916 {90, 3, 2, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.original_problem_stats_)}},
3917 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
3918 {::_pbi::TcParser::FastMtS1,
3919 {98, 4, 3, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessed_problem_stats_)}},
3920 // optional double preprocessing_time_sec = 13;
3921 {::_pbi::TcParser::FastF64S1,
3922 {105, 9, 0, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessing_time_sec_)}},
3923 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
3924 {::_pbi::TcParser::FastMtS1,
3925 {114, 5, 4, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.params_)}},
3926 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
3927 {::_pbi::TcParser::FastMtR1,
3928 {122, 63, 5, PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_)}},
3929 }}, {{
3930 65535, 65535
3931 }}, {{
3932 // optional string instance_name = 1;
3933 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.instance_name_), _Internal::kHasBitsOffset + 0, 0,
3934 (0 | ::_fl::kFcOptional | ::_fl::kRawString | ::_fl::kRepAString)},
3935 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
3936 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_reason_), _Internal::kHasBitsOffset + 6, 6,
3937 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3938 // optional string termination_string = 4;
3939 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_string_), _Internal::kHasBitsOffset + 1, 0,
3940 (0 | ::_fl::kFcOptional | ::_fl::kRawString | ::_fl::kRepAString)},
3941 // optional int32 iteration_count = 5;
3942 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_count_), _Internal::kHasBitsOffset + 7, 0,
3943 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3944 // optional double solve_time_sec = 6;
3945 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solve_time_sec_), _Internal::kHasBitsOffset + 8, 0,
3946 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
3947 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
3948 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_), -1, 0,
3949 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
3950 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
3951 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_), _Internal::kHasBitsOffset + 2, 1,
3952 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3953 // optional .operations_research.pdlp.PointType solution_type = 10;
3954 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_), _Internal::kHasBitsOffset + 10, 7,
3955 (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3956 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
3957 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.original_problem_stats_), _Internal::kHasBitsOffset + 3, 2,
3958 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3959 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
3960 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessed_problem_stats_), _Internal::kHasBitsOffset + 4, 3,
3961 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3962 // optional double preprocessing_time_sec = 13;
3963 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessing_time_sec_), _Internal::kHasBitsOffset + 9, 0,
3964 (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
3965 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
3966 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.params_), _Internal::kHasBitsOffset + 5, 4,
3967 (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3968 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
3969 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_), -1, 5,
3970 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
3971 }},
3972 {{
3973 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3974 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3975 {::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>()},
3976 {::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>()},
3977 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PrimalDualHybridGradientParams>()},
3978 {::_pbi::TcParser::GetTable<::operations_research::pdlp::FeasibilityPolishingDetails>()},
3979 {0, 13},
3980 {0, 6},
3981 }},
3982 {{
3983 "\41\15\0\22\0\0\0\0\0\0\0\0\0\0\0\0"
3984 "operations_research.pdlp.SolveLog"
3985 "instance_name"
3986 "termination_string"
3987 }},
3988};
3989PROTOBUF_NOINLINE void SolveLog::Clear() {
3990// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.SolveLog)
3991 ::google::protobuf::internal::TSanWrite(&_impl_);
3992 ::uint32_t cached_has_bits = 0;
3993 // Prevent compiler warnings about cached_has_bits being unused
3994 (void) cached_has_bits;
3995
3996 _impl_.iteration_stats_.Clear();
3997 _impl_.feasibility_polishing_details_.Clear();
3998 cached_has_bits = _impl_._has_bits_[0];
3999 if ((cached_has_bits & 0x0000003fu) != 0) {
4000 if ((cached_has_bits & 0x00000001u) != 0) {
4001 _impl_.instance_name_.ClearNonDefaultToEmpty();
4002 }
4003 if ((cached_has_bits & 0x00000002u) != 0) {
4004 _impl_.termination_string_.ClearNonDefaultToEmpty();
4005 }
4006 if ((cached_has_bits & 0x00000004u) != 0) {
4007 ABSL_DCHECK(_impl_.solution_stats_ != nullptr);
4008 _impl_.solution_stats_->Clear();
4009 }
4010 if ((cached_has_bits & 0x00000008u) != 0) {
4011 ABSL_DCHECK(_impl_.original_problem_stats_ != nullptr);
4012 _impl_.original_problem_stats_->Clear();
4013 }
4014 if ((cached_has_bits & 0x00000010u) != 0) {
4015 ABSL_DCHECK(_impl_.preprocessed_problem_stats_ != nullptr);
4016 _impl_.preprocessed_problem_stats_->Clear();
4017 }
4018 if ((cached_has_bits & 0x00000020u) != 0) {
4019 ABSL_DCHECK(_impl_.params_ != nullptr);
4020 _impl_.params_->Clear();
4021 }
4022 }
4023 if ((cached_has_bits & 0x000000c0u) != 0) {
4024 ::memset(&_impl_.termination_reason_, 0, static_cast<::size_t>(
4025 reinterpret_cast<char*>(&_impl_.iteration_count_) -
4026 reinterpret_cast<char*>(&_impl_.termination_reason_)) + sizeof(_impl_.iteration_count_));
4027 }
4028 if ((cached_has_bits & 0x00000700u) != 0) {
4029 ::memset(&_impl_.solve_time_sec_, 0, static_cast<::size_t>(
4030 reinterpret_cast<char*>(&_impl_.solution_type_) -
4031 reinterpret_cast<char*>(&_impl_.solve_time_sec_)) + sizeof(_impl_.solution_type_));
4032 }
4033 _impl_._has_bits_.Clear();
4034 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
4035}
4036
4037#if defined(PROTOBUF_CUSTOM_VTABLE)
4038::uint8_t* PROTOBUF_NONNULL SolveLog::_InternalSerialize(
4039 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
4040 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
4041 const SolveLog& this_ = static_cast<const SolveLog&>(base);
4042#else // PROTOBUF_CUSTOM_VTABLE
4043::uint8_t* PROTOBUF_NONNULL SolveLog::_InternalSerialize(
4044 ::uint8_t* PROTOBUF_NONNULL target,
4045 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
4046 const SolveLog& this_ = *this;
4047#endif // PROTOBUF_CUSTOM_VTABLE
4048 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.SolveLog)
4049 ::uint32_t cached_has_bits = 0;
4050 (void)cached_has_bits;
4051
4052 cached_has_bits = this_._impl_._has_bits_[0];
4053 // optional string instance_name = 1;
4054 if ((cached_has_bits & 0x00000001u) != 0) {
4055 const ::std::string& _s = this_._internal_instance_name();
4056 ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(_s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormat::SERIALIZE,
4057 "operations_research.pdlp.SolveLog.instance_name");
4058 target = stream->WriteStringMaybeAliased(1, _s, target);
4059 }
4060
4061 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4062 if ((cached_has_bits & 0x00000040u) != 0) {
4063 target = stream->EnsureSpace(target);
4064 target = ::_pbi::WireFormatLite::WriteEnumToArray(
4065 3, this_._internal_termination_reason(), target);
4066 }
4067
4068 // optional string termination_string = 4;
4069 if ((cached_has_bits & 0x00000002u) != 0) {
4070 const ::std::string& _s = this_._internal_termination_string();
4071 ::google::protobuf::internal::WireFormat::VerifyUTF8StringNamedField(_s.data(), static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormat::SERIALIZE,
4072 "operations_research.pdlp.SolveLog.termination_string");
4073 target = stream->WriteStringMaybeAliased(4, _s, target);
4074 }
4075
4076 // optional int32 iteration_count = 5;
4077 if ((cached_has_bits & 0x00000080u) != 0) {
4078 target =
4079 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
4080 stream, this_._internal_iteration_count(), target);
4081 }
4082
4083 // optional double solve_time_sec = 6;
4084 if ((cached_has_bits & 0x00000100u) != 0) {
4085 target = stream->EnsureSpace(target);
4086 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
4087 6, this_._internal_solve_time_sec(), target);
4088 }
4089
4090 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4091 for (unsigned i = 0, n = static_cast<unsigned>(
4092 this_._internal_iteration_stats_size());
4093 i < n; i++) {
4094 const auto& repfield = this_._internal_iteration_stats().Get(i);
4095 target =
4096 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4097 7, repfield, repfield.GetCachedSize(),
4098 target, stream);
4099 }
4100
4101 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4102 if ((cached_has_bits & 0x00000004u) != 0) {
4103 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4104 8, *this_._impl_.solution_stats_, this_._impl_.solution_stats_->GetCachedSize(), target,
4105 stream);
4106 }
4107
4108 // optional .operations_research.pdlp.PointType solution_type = 10;
4109 if ((cached_has_bits & 0x00000400u) != 0) {
4110 target = stream->EnsureSpace(target);
4111 target = ::_pbi::WireFormatLite::WriteEnumToArray(
4112 10, this_._internal_solution_type(), target);
4113 }
4114
4115 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4116 if ((cached_has_bits & 0x00000008u) != 0) {
4117 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4118 11, *this_._impl_.original_problem_stats_, this_._impl_.original_problem_stats_->GetCachedSize(), target,
4119 stream);
4120 }
4121
4122 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4123 if ((cached_has_bits & 0x00000010u) != 0) {
4124 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4125 12, *this_._impl_.preprocessed_problem_stats_, this_._impl_.preprocessed_problem_stats_->GetCachedSize(), target,
4126 stream);
4127 }
4128
4129 // optional double preprocessing_time_sec = 13;
4130 if ((cached_has_bits & 0x00000200u) != 0) {
4131 target = stream->EnsureSpace(target);
4132 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
4133 13, this_._internal_preprocessing_time_sec(), target);
4134 }
4135
4136 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4137 if ((cached_has_bits & 0x00000020u) != 0) {
4138 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4139 14, *this_._impl_.params_, this_._impl_.params_->GetCachedSize(), target,
4140 stream);
4141 }
4142
4143 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4144 for (unsigned i = 0, n = static_cast<unsigned>(
4145 this_._internal_feasibility_polishing_details_size());
4146 i < n; i++) {
4147 const auto& repfield = this_._internal_feasibility_polishing_details().Get(i);
4148 target =
4149 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4150 15, repfield, repfield.GetCachedSize(),
4151 target, stream);
4152 }
4153
4154 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
4155 target =
4156 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
4157 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
4158 }
4159 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.SolveLog)
4160 return target;
4161}
4162
4163#if defined(PROTOBUF_CUSTOM_VTABLE)
4164::size_t SolveLog::ByteSizeLong(const MessageLite& base) {
4165 const SolveLog& this_ = static_cast<const SolveLog&>(base);
4166#else // PROTOBUF_CUSTOM_VTABLE
4167::size_t SolveLog::ByteSizeLong() const {
4168 const SolveLog& this_ = *this;
4169#endif // PROTOBUF_CUSTOM_VTABLE
4170 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.SolveLog)
4171 ::size_t total_size = 0;
4172
4173 ::uint32_t cached_has_bits = 0;
4174 // Prevent compiler warnings about cached_has_bits being unused
4175 (void)cached_has_bits;
4176
4177 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
4178 {
4179 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4180 {
4181 total_size += 1UL * this_._internal_iteration_stats_size();
4182 for (const auto& msg : this_._internal_iteration_stats()) {
4183 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
4184 }
4185 }
4186 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4187 {
4188 total_size += 1UL * this_._internal_feasibility_polishing_details_size();
4189 for (const auto& msg : this_._internal_feasibility_polishing_details()) {
4190 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
4191 }
4192 }
4193 }
4194 cached_has_bits = this_._impl_._has_bits_[0];
4195 total_size += ::absl::popcount(0x00000300u & cached_has_bits) * 9;
4196 if ((cached_has_bits & 0x000000ffu) != 0) {
4197 // optional string instance_name = 1;
4198 if ((cached_has_bits & 0x00000001u) != 0) {
4199 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
4200 this_._internal_instance_name());
4201 }
4202 // optional string termination_string = 4;
4203 if ((cached_has_bits & 0x00000002u) != 0) {
4204 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
4205 this_._internal_termination_string());
4206 }
4207 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4208 if ((cached_has_bits & 0x00000004u) != 0) {
4209 total_size += 1 +
4210 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.solution_stats_);
4211 }
4212 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4213 if ((cached_has_bits & 0x00000008u) != 0) {
4214 total_size += 1 +
4215 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.original_problem_stats_);
4216 }
4217 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4218 if ((cached_has_bits & 0x00000010u) != 0) {
4219 total_size += 1 +
4220 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.preprocessed_problem_stats_);
4221 }
4222 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4223 if ((cached_has_bits & 0x00000020u) != 0) {
4224 total_size += 1 +
4225 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.params_);
4226 }
4227 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4228 if ((cached_has_bits & 0x00000040u) != 0) {
4229 total_size += 1 +
4230 ::_pbi::WireFormatLite::EnumSize(this_._internal_termination_reason());
4231 }
4232 // optional int32 iteration_count = 5;
4233 if ((cached_has_bits & 0x00000080u) != 0) {
4234 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
4235 this_._internal_iteration_count());
4236 }
4237 }
4238 {
4239 // optional .operations_research.pdlp.PointType solution_type = 10;
4240 if ((cached_has_bits & 0x00000400u) != 0) {
4241 total_size += 1 +
4242 ::_pbi::WireFormatLite::EnumSize(this_._internal_solution_type());
4243 }
4244 }
4245 return this_.MaybeComputeUnknownFieldsSize(total_size,
4246 &this_._impl_._cached_size_);
4247}
4248
4249void SolveLog::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
4250 auto* const _this = static_cast<SolveLog*>(&to_msg);
4251 auto& from = static_cast<const SolveLog&>(from_msg);
4252 ::google::protobuf::Arena* arena = _this->GetArena();
4253 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.SolveLog)
4254 ABSL_DCHECK_NE(&from, _this);
4255 ::uint32_t cached_has_bits = 0;
4256 (void) cached_has_bits;
4257
4258 _this->_internal_mutable_iteration_stats()->MergeFrom(
4259 from._internal_iteration_stats());
4260 _this->_internal_mutable_feasibility_polishing_details()->MergeFrom(
4261 from._internal_feasibility_polishing_details());
4262 cached_has_bits = from._impl_._has_bits_[0];
4263 if ((cached_has_bits & 0x000000ffu) != 0) {
4264 if ((cached_has_bits & 0x00000001u) != 0) {
4265 _this->_internal_set_instance_name(from._internal_instance_name());
4266 }
4267 if ((cached_has_bits & 0x00000002u) != 0) {
4268 _this->_internal_set_termination_string(from._internal_termination_string());
4269 }
4270 if ((cached_has_bits & 0x00000004u) != 0) {
4271 ABSL_DCHECK(from._impl_.solution_stats_ != nullptr);
4272 if (_this->_impl_.solution_stats_ == nullptr) {
4273 _this->_impl_.solution_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_);
4274 } else {
4275 _this->_impl_.solution_stats_->MergeFrom(*from._impl_.solution_stats_);
4276 }
4277 }
4278 if ((cached_has_bits & 0x00000008u) != 0) {
4279 ABSL_DCHECK(from._impl_.original_problem_stats_ != nullptr);
4280 if (_this->_impl_.original_problem_stats_ == nullptr) {
4281 _this->_impl_.original_problem_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.original_problem_stats_);
4282 } else {
4283 _this->_impl_.original_problem_stats_->MergeFrom(*from._impl_.original_problem_stats_);
4284 }
4285 }
4286 if ((cached_has_bits & 0x00000010u) != 0) {
4287 ABSL_DCHECK(from._impl_.preprocessed_problem_stats_ != nullptr);
4288 if (_this->_impl_.preprocessed_problem_stats_ == nullptr) {
4289 _this->_impl_.preprocessed_problem_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.preprocessed_problem_stats_);
4290 } else {
4291 _this->_impl_.preprocessed_problem_stats_->MergeFrom(*from._impl_.preprocessed_problem_stats_);
4292 }
4293 }
4294 if ((cached_has_bits & 0x00000020u) != 0) {
4295 ABSL_DCHECK(from._impl_.params_ != nullptr);
4296 if (_this->_impl_.params_ == nullptr) {
4297 _this->_impl_.params_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_);
4298 } else {
4299 _this->_impl_.params_->MergeFrom(*from._impl_.params_);
4300 }
4301 }
4302 if ((cached_has_bits & 0x00000040u) != 0) {
4303 _this->_impl_.termination_reason_ = from._impl_.termination_reason_;
4304 }
4305 if ((cached_has_bits & 0x00000080u) != 0) {
4306 _this->_impl_.iteration_count_ = from._impl_.iteration_count_;
4307 }
4308 }
4309 if ((cached_has_bits & 0x00000700u) != 0) {
4310 if ((cached_has_bits & 0x00000100u) != 0) {
4311 _this->_impl_.solve_time_sec_ = from._impl_.solve_time_sec_;
4312 }
4313 if ((cached_has_bits & 0x00000200u) != 0) {
4314 _this->_impl_.preprocessing_time_sec_ = from._impl_.preprocessing_time_sec_;
4315 }
4316 if ((cached_has_bits & 0x00000400u) != 0) {
4317 _this->_impl_.solution_type_ = from._impl_.solution_type_;
4318 }
4319 }
4320 _this->_impl_._has_bits_[0] |= cached_has_bits;
4321 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
4322}
4323
4324void SolveLog::CopyFrom(const SolveLog& from) {
4325// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.SolveLog)
4326 if (&from == this) return;
4327 Clear();
4328 MergeFrom(from);
4329}
4330
4332void SolveLog::InternalSwap(SolveLog* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
4333 using ::std::swap;
4334 auto* arena = GetArena();
4335 ABSL_DCHECK_EQ(arena, other->GetArena());
4336 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
4337 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
4338 _impl_.iteration_stats_.InternalSwap(&other->_impl_.iteration_stats_);
4339 _impl_.feasibility_polishing_details_.InternalSwap(&other->_impl_.feasibility_polishing_details_);
4340 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.instance_name_, &other->_impl_.instance_name_, arena);
4341 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.termination_string_, &other->_impl_.termination_string_, arena);
4342 ::google::protobuf::internal::memswap<
4343 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_)
4344 + sizeof(SolveLog::_impl_.solution_type_)
4345 - PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_)>(
4346 reinterpret_cast<char*>(&_impl_.solution_stats_),
4347 reinterpret_cast<char*>(&other->_impl_.solution_stats_));
4348}
4349
4350::google::protobuf::Metadata SolveLog::GetMetadata() const {
4351 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
4352}
4353// @@protoc_insertion_point(namespace_scope)
4354} // namespace pdlp
4355} // namespace operations_research
4356namespace google {
4357namespace protobuf {
4358} // namespace protobuf
4359} // namespace google
4360// @@protoc_insertion_point(global_scope)
4361PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
4362 _static_init2_ [[maybe_unused]] =
4364 ::std::false_type{});
4365#include "google/protobuf/port_undef.inc"
static PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 ::std::false_type _static_init2_
@protoc_insertion_point(global_scope)
static const ::_pb::Message *PROTOBUF_NONNULL const file_default_instances[]
decltype(::std::declval< ConvergenceInformation >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
friend void swap(ConvergenceInformation &a, ConvergenceInformation &b)
void CopyFrom(const ConvergenceInformation &from)
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void MergeFrom(const ConvergenceInformation &from)
void MergeFrom(const FeasibilityPolishingDetails &from)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
::google::protobuf::Metadata GetMetadata() const
friend void swap(FeasibilityPolishingDetails &a, FeasibilityPolishingDetails &b)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void CopyFrom(const FeasibilityPolishingDetails &from)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
void CopyFrom(const InfeasibilityInformation &from)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::google::protobuf::Metadata GetMetadata() const
void MergeFrom(const InfeasibilityInformation &from)
friend void swap(InfeasibilityInformation &a, InfeasibilityInformation &b)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::MessageLite
friend void swap(IterationStats &a, IterationStats &b)
void CopyFrom(const IterationStats &from)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static constexpr auto InternalGenerateClassData_()
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void MergeFrom(const IterationStats &from)
::google::protobuf::Metadata GetMetadata() const
friend class ::google::protobuf::MessageLite
static constexpr auto InternalGenerateClassData_()
void MergeFrom(const PointMetadata &from)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
friend void swap(PointMetadata &a, PointMetadata &b)
void CopyFrom(const PointMetadata &from)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
::google::protobuf::Metadata GetMetadata() const
void MergeFrom(const PrimalDualHybridGradientParams &from)
decltype(::std::declval< QuadraticProgramStats >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
::google::protobuf::Metadata GetMetadata() const
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
void MergeFrom(const QuadraticProgramStats &from)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void CopyFrom(const QuadraticProgramStats &from)
friend void swap(QuadraticProgramStats &a, QuadraticProgramStats &b)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::MessageLite
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
::google::protobuf::Metadata GetMetadata() const
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::size_t ByteSizeLong() const final
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
static constexpr auto InternalNewImpl_()
static constexpr auto InternalGenerateClassData_()
friend void swap(SolveLog &a, SolveLog &b)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SolveLog &from)
friend class ::google::protobuf::Arena
void CopyFrom(const SolveLog &from)
Validation utilities for solvers.proto.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 InfeasibilityInformationDefaultTypeInternal _InfeasibilityInformation_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull IterationStats_class_data_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL PolishingPhaseType_descriptor()
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull QuadraticProgramStats_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 FeasibilityPolishingDetailsDefaultTypeInternal _FeasibilityPolishingDetails_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull ConvergenceInformation_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ConvergenceInformationDefaultTypeInternal _ConvergenceInformation_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull FeasibilityPolishingDetails_class_data_
PROTOBUF_CONSTINIT const uint32_t PolishingPhaseType_internal_data_[]
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 IterationStatsDefaultTypeInternal _IterationStats_default_instance_
PROTOBUF_CONSTINIT const uint32_t RestartChoice_internal_data_[]
PROTOBUF_CONSTINIT const uint32_t TerminationReason_internal_data_[]
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 QuadraticProgramStatsDefaultTypeInternal _QuadraticProgramStats_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull PointMetadata_class_data_
PROTOBUF_CONSTINIT const uint32_t PointType_internal_data_[]
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 PointMetadataDefaultTypeInternal _PointMetadata_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL PointType_descriptor()
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL RestartChoice_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 SolveLogDefaultTypeInternal _SolveLog_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL TerminationReason_descriptor()
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull InfeasibilityInformation_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull SolveLog_class_data_
In SWIG mode, we don't want anything besides these top-level includes.
static constexpr ::_pbi::MigrationSchema *PROTOBUF_NULLABLE schemas
static constexprconst ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE file_level_service_descriptors_ortools_2fpdlp_2fsolve_5flog_2eproto
static const ::_pb::EnumDescriptor *PROTOBUF_NONNULL file_level_enum_descriptors_ortools_2fpdlp_2fsolve_5flog_2eproto[4]
static const ::_pbi::DescriptorTable *PROTOBUF_NONNULL const descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto_deps[1]
const ::uint32_t TableStruct_ortools_2fpdlp_2fsolve_5flog_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold)
::absl::once_flag descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto_once
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fpdlp_2fsolve_5flog_2eproto
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fpdlp_2fsolvers_2eproto