Google OR-Tools v9.15
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.33.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 6,
422 0,
423 1,
424 2,
425 3,
426 4,
427 5,
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 3,
442 0,
443 1,
444 2,
445 5,
446 4,
447 6,
448 9,
449 7,
450 8,
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 3,
464 4,
465 1,
466 5,
467 6,
468 7,
469 2,
470 8,
471 0,
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 2,
489 7,
490 8,
491 3,
492 9,
493 11,
494 10,
495 4,
496 12,
497 0,
498 5,
499 6,
500 1,
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 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
737 [[maybe_unused]] ::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 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
756 this_.CheckHasBitConsistency();
757 }
758 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
759 ABSL_DCHECK(this_.GetArena() == nullptr);
760 this_._impl_.~Impl_();
761}
762
763inline void* PROTOBUF_NONNULL QuadraticProgramStats::PlacementNew_(
764 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
765 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
766 return ::new (mem) QuadraticProgramStats(arena);
767}
768constexpr auto QuadraticProgramStats::InternalNewImpl_() {
769 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(QuadraticProgramStats),
770 alignof(QuadraticProgramStats));
771}
773 return ::google::protobuf::internal::ClassDataFull{
774 ::google::protobuf::internal::ClassData{
776 &_table_.header,
777 nullptr, // OnDemandRegisterArenaDtor
778 nullptr, // IsInitialized
779 &QuadraticProgramStats::MergeImpl,
780 ::google::protobuf::Message::GetNewImpl<QuadraticProgramStats>(),
781#if defined(PROTOBUF_CUSTOM_VTABLE)
782 &QuadraticProgramStats::SharedDtor,
783 ::google::protobuf::Message::GetClearImpl<QuadraticProgramStats>(), &QuadraticProgramStats::ByteSizeLong,
785#endif // PROTOBUF_CUSTOM_VTABLE
786 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_._cached_size_),
787 false,
788 },
789 &QuadraticProgramStats::kDescriptorMethods,
791 nullptr, // tracker
792 };
793}
794
795PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
796 ::google::protobuf::internal::ClassDataFull QuadraticProgramStats_class_data_ =
798
799PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
800QuadraticProgramStats::GetClassData() const {
801 ::google::protobuf::internal::PrefetchToLocalCache(&QuadraticProgramStats_class_data_);
802 ::google::protobuf::internal::PrefetchToLocalCache(QuadraticProgramStats_class_data_.tc_table);
804}
805PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
806const ::_pbi::TcParseTable<5, 31, 0, 0, 2>
807QuadraticProgramStats::_table_ = {
808 {
809 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_._has_bits_),
810 0, // no _extensions_
811 31, 248, // max_field_number, fast_idx_mask
812 offsetof(decltype(_table_), field_lookup_table),
813 2147483648, // skipmap
814 offsetof(decltype(_table_), field_entries),
815 31, // num_field_entries
816 0, // num_aux_entries
817 offsetof(decltype(_table_), field_names), // no aux_entries
819 nullptr, // post_loop_handler
820 ::_pbi::TcParser::GenericFallback, // fallback
821 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
822 ::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>(), // to_prefetch
823 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
824 }, {{
825 {::_pbi::TcParser::MiniParse, {}},
826 // optional int64 num_variables = 1;
827 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.num_variables_), 0>(),
828 {8, 0, 0,
829 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_)}},
830 // optional int64 num_constraints = 2;
831 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.num_constraints_), 1>(),
832 {16, 1, 0,
833 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_constraints_)}},
834 // optional double constraint_matrix_col_min_l_inf_norm = 3;
835 {::_pbi::TcParser::FastF64S1,
836 {25, 2, 0,
837 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_col_min_l_inf_norm_)}},
838 // optional double constraint_matrix_row_min_l_inf_norm = 4;
839 {::_pbi::TcParser::FastF64S1,
840 {33, 3, 0,
841 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_row_min_l_inf_norm_)}},
842 // optional int64 constraint_matrix_num_nonzeros = 5;
843 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_), 4>(),
844 {40, 4, 0,
845 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_)}},
846 // optional double constraint_matrix_abs_max = 6;
847 {::_pbi::TcParser::FastF64S1,
848 {49, 5, 0,
849 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_max_)}},
850 // optional double constraint_matrix_abs_min = 7;
851 {::_pbi::TcParser::FastF64S1,
852 {57, 6, 0,
853 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_min_)}},
854 // optional double constraint_matrix_abs_avg = 8;
855 {::_pbi::TcParser::FastF64S1,
856 {65, 7, 0,
857 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_avg_)}},
858 // optional double combined_bounds_max = 9;
859 {::_pbi::TcParser::FastF64S1,
860 {73, 8, 0,
861 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_max_)}},
862 // optional double combined_bounds_min = 10;
863 {::_pbi::TcParser::FastF64S1,
864 {81, 9, 0,
865 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_min_)}},
866 // optional double combined_bounds_avg = 11;
867 {::_pbi::TcParser::FastF64S1,
868 {89, 10, 0,
869 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_avg_)}},
870 // optional int64 variable_bound_gaps_num_finite = 12;
871 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_), 11>(),
872 {96, 11, 0,
873 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_)}},
874 // optional double variable_bound_gaps_max = 13;
875 {::_pbi::TcParser::FastF64S1,
876 {105, 12, 0,
877 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_max_)}},
878 // optional double variable_bound_gaps_min = 14;
879 {::_pbi::TcParser::FastF64S1,
880 {113, 13, 0,
881 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_min_)}},
882 // optional double variable_bound_gaps_avg = 15;
883 {::_pbi::TcParser::FastF64S1,
884 {121, 14, 0,
885 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_avg_)}},
886 // optional double objective_vector_abs_max = 16;
887 {::_pbi::TcParser::FastF64S2,
888 {385, 15, 0,
889 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_max_)}},
890 // optional double objective_vector_abs_min = 17;
891 {::_pbi::TcParser::FastF64S2,
892 {393, 16, 0,
893 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_min_)}},
894 // optional double objective_vector_abs_avg = 18;
895 {::_pbi::TcParser::FastF64S2,
896 {401, 17, 0,
897 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_avg_)}},
898 // optional int64 objective_matrix_num_nonzeros = 19;
899 {::_pbi::TcParser::FastV64S2,
900 {408, 18, 0,
901 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_num_nonzeros_)}},
902 // optional double objective_matrix_abs_max = 20;
903 {::_pbi::TcParser::FastF64S2,
904 {417, 19, 0,
905 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_max_)}},
906 // optional double objective_matrix_abs_min = 21;
907 {::_pbi::TcParser::FastF64S2,
908 {425, 20, 0,
909 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_min_)}},
910 // optional double objective_matrix_abs_avg = 22;
911 {::_pbi::TcParser::FastF64S2,
912 {433, 21, 0,
913 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_avg_)}},
914 // optional double objective_vector_l2_norm = 23;
915 {::_pbi::TcParser::FastF64S2,
916 {441, 22, 0,
917 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_l2_norm_)}},
918 // optional double combined_bounds_l2_norm = 24;
919 {::_pbi::TcParser::FastF64S2,
920 {449, 23, 0,
921 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_l2_norm_)}},
922 // optional double constraint_matrix_l2_norm = 25;
923 {::_pbi::TcParser::FastF64S2,
924 {457, 24, 0,
925 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_l2_norm_)}},
926 // optional double variable_bound_gaps_l2_norm = 26;
927 {::_pbi::TcParser::FastF64S2,
928 {465, 25, 0,
929 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_l2_norm_)}},
930 // optional double objective_matrix_l2_norm = 27;
931 {::_pbi::TcParser::FastF64S2,
932 {473, 26, 0,
933 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_l2_norm_)}},
934 // optional double combined_variable_bounds_max = 28;
935 {::_pbi::TcParser::FastF64S2,
936 {481, 27, 0,
937 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_max_)}},
938 // optional double combined_variable_bounds_min = 29;
939 {::_pbi::TcParser::FastF64S2,
940 {489, 28, 0,
941 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_min_)}},
942 // optional double combined_variable_bounds_avg = 30;
943 {::_pbi::TcParser::FastF64S2,
944 {497, 29, 0,
945 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_avg_)}},
946 // optional double combined_variable_bounds_l2_norm = 31;
947 {::_pbi::TcParser::FastF64S2,
948 {505, 30, 0,
949 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_)}},
950 }}, {{
951 65535, 65535
952 }}, {{
953 // optional int64 num_variables = 1;
954 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
955 // optional int64 num_constraints = 2;
956 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_constraints_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
957 // optional double constraint_matrix_col_min_l_inf_norm = 3;
958 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_col_min_l_inf_norm_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
959 // optional double constraint_matrix_row_min_l_inf_norm = 4;
960 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_row_min_l_inf_norm_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
961 // optional int64 constraint_matrix_num_nonzeros = 5;
962 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_num_nonzeros_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
963 // optional double constraint_matrix_abs_max = 6;
964 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_max_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
965 // optional double constraint_matrix_abs_min = 7;
966 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_min_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
967 // optional double constraint_matrix_abs_avg = 8;
968 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_abs_avg_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
969 // optional double combined_bounds_max = 9;
970 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_max_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
971 // optional double combined_bounds_min = 10;
972 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_min_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
973 // optional double combined_bounds_avg = 11;
974 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_avg_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
975 // optional int64 variable_bound_gaps_num_finite = 12;
976 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_num_finite_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
977 // optional double variable_bound_gaps_max = 13;
978 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_max_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
979 // optional double variable_bound_gaps_min = 14;
980 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_min_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
981 // optional double variable_bound_gaps_avg = 15;
982 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_avg_), _Internal::kHasBitsOffset + 14, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
983 // optional double objective_vector_abs_max = 16;
984 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_max_), _Internal::kHasBitsOffset + 15, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
985 // optional double objective_vector_abs_min = 17;
986 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_min_), _Internal::kHasBitsOffset + 16, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
987 // optional double objective_vector_abs_avg = 18;
988 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_abs_avg_), _Internal::kHasBitsOffset + 17, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
989 // optional int64 objective_matrix_num_nonzeros = 19;
990 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_num_nonzeros_), _Internal::kHasBitsOffset + 18, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
991 // optional double objective_matrix_abs_max = 20;
992 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_max_), _Internal::kHasBitsOffset + 19, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
993 // optional double objective_matrix_abs_min = 21;
994 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_min_), _Internal::kHasBitsOffset + 20, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
995 // optional double objective_matrix_abs_avg = 22;
996 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_abs_avg_), _Internal::kHasBitsOffset + 21, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
997 // optional double objective_vector_l2_norm = 23;
998 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_vector_l2_norm_), _Internal::kHasBitsOffset + 22, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
999 // optional double combined_bounds_l2_norm = 24;
1000 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_bounds_l2_norm_), _Internal::kHasBitsOffset + 23, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1001 // optional double constraint_matrix_l2_norm = 25;
1002 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.constraint_matrix_l2_norm_), _Internal::kHasBitsOffset + 24, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1003 // optional double variable_bound_gaps_l2_norm = 26;
1004 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.variable_bound_gaps_l2_norm_), _Internal::kHasBitsOffset + 25, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1005 // optional double objective_matrix_l2_norm = 27;
1006 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.objective_matrix_l2_norm_), _Internal::kHasBitsOffset + 26, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1007 // optional double combined_variable_bounds_max = 28;
1008 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_max_), _Internal::kHasBitsOffset + 27, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1009 // optional double combined_variable_bounds_min = 29;
1010 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_min_), _Internal::kHasBitsOffset + 28, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1011 // optional double combined_variable_bounds_avg = 30;
1012 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_avg_), _Internal::kHasBitsOffset + 29, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1013 // optional double combined_variable_bounds_l2_norm = 31;
1014 {PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_), _Internal::kHasBitsOffset + 30, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1015 }},
1016 // no aux_entries
1017 {{
1018 }},
1019};
1020PROTOBUF_NOINLINE void QuadraticProgramStats::Clear() {
1021// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.QuadraticProgramStats)
1022 ::google::protobuf::internal::TSanWrite(&_impl_);
1023 ::uint32_t cached_has_bits = 0;
1024 // Prevent compiler warnings about cached_has_bits being unused
1025 (void) cached_has_bits;
1026
1027 cached_has_bits = _impl_._has_bits_[0];
1028 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1029 ::memset(&_impl_.num_variables_, 0, static_cast<::size_t>(
1030 reinterpret_cast<char*>(&_impl_.constraint_matrix_abs_avg_) -
1031 reinterpret_cast<char*>(&_impl_.num_variables_)) + sizeof(_impl_.constraint_matrix_abs_avg_));
1032 }
1033 if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
1034 ::memset(&_impl_.combined_bounds_max_, 0, static_cast<::size_t>(
1035 reinterpret_cast<char*>(&_impl_.objective_vector_abs_max_) -
1036 reinterpret_cast<char*>(&_impl_.combined_bounds_max_)) + sizeof(_impl_.objective_vector_abs_max_));
1037 }
1038 if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
1039 ::memset(&_impl_.objective_vector_abs_min_, 0, static_cast<::size_t>(
1040 reinterpret_cast<char*>(&_impl_.combined_bounds_l2_norm_) -
1041 reinterpret_cast<char*>(&_impl_.objective_vector_abs_min_)) + sizeof(_impl_.combined_bounds_l2_norm_));
1042 }
1043 if (BatchCheckHasBit(cached_has_bits, 0x7f000000U)) {
1044 ::memset(&_impl_.constraint_matrix_l2_norm_, 0, static_cast<::size_t>(
1045 reinterpret_cast<char*>(&_impl_.combined_variable_bounds_l2_norm_) -
1046 reinterpret_cast<char*>(&_impl_.constraint_matrix_l2_norm_)) + sizeof(_impl_.combined_variable_bounds_l2_norm_));
1047 }
1048 _impl_._has_bits_.Clear();
1049 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1050}
1051
1052#if defined(PROTOBUF_CUSTOM_VTABLE)
1053::uint8_t* PROTOBUF_NONNULL QuadraticProgramStats::_InternalSerialize(
1054 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1055 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1056 const QuadraticProgramStats& this_ = static_cast<const QuadraticProgramStats&>(base);
1057#else // PROTOBUF_CUSTOM_VTABLE
1058::uint8_t* PROTOBUF_NONNULL QuadraticProgramStats::_InternalSerialize(
1059 ::uint8_t* PROTOBUF_NONNULL target,
1060 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1061 const QuadraticProgramStats& this_ = *this;
1062#endif // PROTOBUF_CUSTOM_VTABLE
1063 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1064 this_.CheckHasBitConsistency();
1065 }
1066 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.QuadraticProgramStats)
1067 ::uint32_t cached_has_bits = 0;
1068 (void)cached_has_bits;
1069
1070 cached_has_bits = this_._impl_._has_bits_[0];
1071 // optional int64 num_variables = 1;
1072 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1073 target =
1074 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<1>(
1075 stream, this_._internal_num_variables(), target);
1076 }
1077
1078 // optional int64 num_constraints = 2;
1079 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1080 target =
1081 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<2>(
1082 stream, this_._internal_num_constraints(), target);
1083 }
1084
1085 // optional double constraint_matrix_col_min_l_inf_norm = 3;
1086 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1087 target = stream->EnsureSpace(target);
1088 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1089 3, this_._internal_constraint_matrix_col_min_l_inf_norm(), target);
1090 }
1091
1092 // optional double constraint_matrix_row_min_l_inf_norm = 4;
1093 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1094 target = stream->EnsureSpace(target);
1095 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1096 4, this_._internal_constraint_matrix_row_min_l_inf_norm(), target);
1097 }
1098
1099 // optional int64 constraint_matrix_num_nonzeros = 5;
1100 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1101 target =
1102 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<5>(
1103 stream, this_._internal_constraint_matrix_num_nonzeros(), target);
1104 }
1105
1106 // optional double constraint_matrix_abs_max = 6;
1107 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1108 target = stream->EnsureSpace(target);
1109 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1110 6, this_._internal_constraint_matrix_abs_max(), target);
1111 }
1112
1113 // optional double constraint_matrix_abs_min = 7;
1114 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1115 target = stream->EnsureSpace(target);
1116 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1117 7, this_._internal_constraint_matrix_abs_min(), target);
1118 }
1119
1120 // optional double constraint_matrix_abs_avg = 8;
1121 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1122 target = stream->EnsureSpace(target);
1123 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1124 8, this_._internal_constraint_matrix_abs_avg(), target);
1125 }
1126
1127 // optional double combined_bounds_max = 9;
1128 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1129 target = stream->EnsureSpace(target);
1130 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1131 9, this_._internal_combined_bounds_max(), target);
1132 }
1133
1134 // optional double combined_bounds_min = 10;
1135 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1136 target = stream->EnsureSpace(target);
1137 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1138 10, this_._internal_combined_bounds_min(), target);
1139 }
1140
1141 // optional double combined_bounds_avg = 11;
1142 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1143 target = stream->EnsureSpace(target);
1144 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1145 11, this_._internal_combined_bounds_avg(), target);
1146 }
1147
1148 // optional int64 variable_bound_gaps_num_finite = 12;
1149 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1150 target =
1151 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<12>(
1152 stream, this_._internal_variable_bound_gaps_num_finite(), target);
1153 }
1154
1155 // optional double variable_bound_gaps_max = 13;
1156 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1157 target = stream->EnsureSpace(target);
1158 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1159 13, this_._internal_variable_bound_gaps_max(), target);
1160 }
1161
1162 // optional double variable_bound_gaps_min = 14;
1163 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1164 target = stream->EnsureSpace(target);
1165 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1166 14, this_._internal_variable_bound_gaps_min(), target);
1167 }
1168
1169 // optional double variable_bound_gaps_avg = 15;
1170 if (CheckHasBit(cached_has_bits, 0x00004000U)) {
1171 target = stream->EnsureSpace(target);
1172 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1173 15, this_._internal_variable_bound_gaps_avg(), target);
1174 }
1175
1176 // optional double objective_vector_abs_max = 16;
1177 if (CheckHasBit(cached_has_bits, 0x00008000U)) {
1178 target = stream->EnsureSpace(target);
1179 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1180 16, this_._internal_objective_vector_abs_max(), target);
1181 }
1182
1183 // optional double objective_vector_abs_min = 17;
1184 if (CheckHasBit(cached_has_bits, 0x00010000U)) {
1185 target = stream->EnsureSpace(target);
1186 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1187 17, this_._internal_objective_vector_abs_min(), target);
1188 }
1189
1190 // optional double objective_vector_abs_avg = 18;
1191 if (CheckHasBit(cached_has_bits, 0x00020000U)) {
1192 target = stream->EnsureSpace(target);
1193 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1194 18, this_._internal_objective_vector_abs_avg(), target);
1195 }
1196
1197 // optional int64 objective_matrix_num_nonzeros = 19;
1198 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1199 target = stream->EnsureSpace(target);
1200 target = ::_pbi::WireFormatLite::WriteInt64ToArray(
1201 19, this_._internal_objective_matrix_num_nonzeros(), target);
1202 }
1203
1204 // optional double objective_matrix_abs_max = 20;
1205 if (CheckHasBit(cached_has_bits, 0x00080000U)) {
1206 target = stream->EnsureSpace(target);
1207 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1208 20, this_._internal_objective_matrix_abs_max(), target);
1209 }
1210
1211 // optional double objective_matrix_abs_min = 21;
1212 if (CheckHasBit(cached_has_bits, 0x00100000U)) {
1213 target = stream->EnsureSpace(target);
1214 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1215 21, this_._internal_objective_matrix_abs_min(), target);
1216 }
1217
1218 // optional double objective_matrix_abs_avg = 22;
1219 if (CheckHasBit(cached_has_bits, 0x00200000U)) {
1220 target = stream->EnsureSpace(target);
1221 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1222 22, this_._internal_objective_matrix_abs_avg(), target);
1223 }
1224
1225 // optional double objective_vector_l2_norm = 23;
1226 if (CheckHasBit(cached_has_bits, 0x00400000U)) {
1227 target = stream->EnsureSpace(target);
1228 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1229 23, this_._internal_objective_vector_l2_norm(), target);
1230 }
1231
1232 // optional double combined_bounds_l2_norm = 24;
1233 if (CheckHasBit(cached_has_bits, 0x00800000U)) {
1234 target = stream->EnsureSpace(target);
1235 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1236 24, this_._internal_combined_bounds_l2_norm(), target);
1237 }
1238
1239 // optional double constraint_matrix_l2_norm = 25;
1240 if (CheckHasBit(cached_has_bits, 0x01000000U)) {
1241 target = stream->EnsureSpace(target);
1242 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1243 25, this_._internal_constraint_matrix_l2_norm(), target);
1244 }
1245
1246 // optional double variable_bound_gaps_l2_norm = 26;
1247 if (CheckHasBit(cached_has_bits, 0x02000000U)) {
1248 target = stream->EnsureSpace(target);
1249 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1250 26, this_._internal_variable_bound_gaps_l2_norm(), target);
1251 }
1252
1253 // optional double objective_matrix_l2_norm = 27;
1254 if (CheckHasBit(cached_has_bits, 0x04000000U)) {
1255 target = stream->EnsureSpace(target);
1256 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1257 27, this_._internal_objective_matrix_l2_norm(), target);
1258 }
1259
1260 // optional double combined_variable_bounds_max = 28;
1261 if (CheckHasBit(cached_has_bits, 0x08000000U)) {
1262 target = stream->EnsureSpace(target);
1263 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1264 28, this_._internal_combined_variable_bounds_max(), target);
1265 }
1266
1267 // optional double combined_variable_bounds_min = 29;
1268 if (CheckHasBit(cached_has_bits, 0x10000000U)) {
1269 target = stream->EnsureSpace(target);
1270 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1271 29, this_._internal_combined_variable_bounds_min(), target);
1272 }
1273
1274 // optional double combined_variable_bounds_avg = 30;
1275 if (CheckHasBit(cached_has_bits, 0x20000000U)) {
1276 target = stream->EnsureSpace(target);
1277 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1278 30, this_._internal_combined_variable_bounds_avg(), target);
1279 }
1280
1281 // optional double combined_variable_bounds_l2_norm = 31;
1282 if (CheckHasBit(cached_has_bits, 0x40000000U)) {
1283 target = stream->EnsureSpace(target);
1284 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1285 31, this_._internal_combined_variable_bounds_l2_norm(), target);
1286 }
1287
1288 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1289 target =
1290 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1291 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1292 }
1293 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.QuadraticProgramStats)
1294 return target;
1295}
1296
1297#if defined(PROTOBUF_CUSTOM_VTABLE)
1299 const QuadraticProgramStats& this_ = static_cast<const QuadraticProgramStats&>(base);
1300#else // PROTOBUF_CUSTOM_VTABLE
1301::size_t QuadraticProgramStats::ByteSizeLong() const {
1302 const QuadraticProgramStats& this_ = *this;
1303#endif // PROTOBUF_CUSTOM_VTABLE
1304 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.QuadraticProgramStats)
1305 ::size_t total_size = 0;
1306
1307 ::uint32_t cached_has_bits = 0;
1308 // Prevent compiler warnings about cached_has_bits being unused
1309 (void)cached_has_bits;
1310
1311 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1312 cached_has_bits = this_._impl_._has_bits_[0];
1313 total_size += ::absl::popcount(0x7ffb8000U & cached_has_bits) * 10;
1314 total_size += ::absl::popcount(0x000077ecU & cached_has_bits) * 9;
1315 if (BatchCheckHasBit(cached_has_bits, 0x00000013U)) {
1316 // optional int64 num_variables = 1;
1317 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1318 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1319 this_._internal_num_variables());
1320 }
1321 // optional int64 num_constraints = 2;
1322 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1323 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1324 this_._internal_num_constraints());
1325 }
1326 // optional int64 constraint_matrix_num_nonzeros = 5;
1327 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1328 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1329 this_._internal_constraint_matrix_num_nonzeros());
1330 }
1331 }
1332 {
1333 // optional int64 variable_bound_gaps_num_finite = 12;
1334 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1335 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
1336 this_._internal_variable_bound_gaps_num_finite());
1337 }
1338 }
1339 {
1340 // optional int64 objective_matrix_num_nonzeros = 19;
1341 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1342 total_size += 2 + ::_pbi::WireFormatLite::Int64Size(
1343 this_._internal_objective_matrix_num_nonzeros());
1344 }
1345 }
1346 return this_.MaybeComputeUnknownFieldsSize(total_size,
1347 &this_._impl_._cached_size_);
1348}
1349
1350void QuadraticProgramStats::MergeImpl(::google::protobuf::MessageLite& to_msg,
1351 const ::google::protobuf::MessageLite& from_msg) {
1352 auto* const _this =
1353 static_cast<QuadraticProgramStats*>(&to_msg);
1354 auto& from = static_cast<const QuadraticProgramStats&>(from_msg);
1355 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1356 from.CheckHasBitConsistency();
1357 }
1358 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.QuadraticProgramStats)
1359 ABSL_DCHECK_NE(&from, _this);
1360 ::uint32_t cached_has_bits = 0;
1361 (void)cached_has_bits;
1362
1363 cached_has_bits = from._impl_._has_bits_[0];
1364 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1365 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1366 _this->_impl_.num_variables_ = from._impl_.num_variables_;
1367 }
1368 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1369 _this->_impl_.num_constraints_ = from._impl_.num_constraints_;
1370 }
1371 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1372 _this->_impl_.constraint_matrix_col_min_l_inf_norm_ = from._impl_.constraint_matrix_col_min_l_inf_norm_;
1373 }
1374 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1375 _this->_impl_.constraint_matrix_row_min_l_inf_norm_ = from._impl_.constraint_matrix_row_min_l_inf_norm_;
1376 }
1377 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1378 _this->_impl_.constraint_matrix_num_nonzeros_ = from._impl_.constraint_matrix_num_nonzeros_;
1379 }
1380 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1381 _this->_impl_.constraint_matrix_abs_max_ = from._impl_.constraint_matrix_abs_max_;
1382 }
1383 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1384 _this->_impl_.constraint_matrix_abs_min_ = from._impl_.constraint_matrix_abs_min_;
1385 }
1386 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1387 _this->_impl_.constraint_matrix_abs_avg_ = from._impl_.constraint_matrix_abs_avg_;
1388 }
1389 }
1390 if (BatchCheckHasBit(cached_has_bits, 0x0000ff00U)) {
1391 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1392 _this->_impl_.combined_bounds_max_ = from._impl_.combined_bounds_max_;
1393 }
1394 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1395 _this->_impl_.combined_bounds_min_ = from._impl_.combined_bounds_min_;
1396 }
1397 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1398 _this->_impl_.combined_bounds_avg_ = from._impl_.combined_bounds_avg_;
1399 }
1400 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1401 _this->_impl_.variable_bound_gaps_num_finite_ = from._impl_.variable_bound_gaps_num_finite_;
1402 }
1403 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1404 _this->_impl_.variable_bound_gaps_max_ = from._impl_.variable_bound_gaps_max_;
1405 }
1406 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1407 _this->_impl_.variable_bound_gaps_min_ = from._impl_.variable_bound_gaps_min_;
1408 }
1409 if (CheckHasBit(cached_has_bits, 0x00004000U)) {
1410 _this->_impl_.variable_bound_gaps_avg_ = from._impl_.variable_bound_gaps_avg_;
1411 }
1412 if (CheckHasBit(cached_has_bits, 0x00008000U)) {
1413 _this->_impl_.objective_vector_abs_max_ = from._impl_.objective_vector_abs_max_;
1414 }
1415 }
1416 if (BatchCheckHasBit(cached_has_bits, 0x00ff0000U)) {
1417 if (CheckHasBit(cached_has_bits, 0x00010000U)) {
1418 _this->_impl_.objective_vector_abs_min_ = from._impl_.objective_vector_abs_min_;
1419 }
1420 if (CheckHasBit(cached_has_bits, 0x00020000U)) {
1421 _this->_impl_.objective_vector_abs_avg_ = from._impl_.objective_vector_abs_avg_;
1422 }
1423 if (CheckHasBit(cached_has_bits, 0x00040000U)) {
1424 _this->_impl_.objective_matrix_num_nonzeros_ = from._impl_.objective_matrix_num_nonzeros_;
1425 }
1426 if (CheckHasBit(cached_has_bits, 0x00080000U)) {
1427 _this->_impl_.objective_matrix_abs_max_ = from._impl_.objective_matrix_abs_max_;
1428 }
1429 if (CheckHasBit(cached_has_bits, 0x00100000U)) {
1430 _this->_impl_.objective_matrix_abs_min_ = from._impl_.objective_matrix_abs_min_;
1431 }
1432 if (CheckHasBit(cached_has_bits, 0x00200000U)) {
1433 _this->_impl_.objective_matrix_abs_avg_ = from._impl_.objective_matrix_abs_avg_;
1434 }
1435 if (CheckHasBit(cached_has_bits, 0x00400000U)) {
1436 _this->_impl_.objective_vector_l2_norm_ = from._impl_.objective_vector_l2_norm_;
1437 }
1438 if (CheckHasBit(cached_has_bits, 0x00800000U)) {
1439 _this->_impl_.combined_bounds_l2_norm_ = from._impl_.combined_bounds_l2_norm_;
1440 }
1441 }
1442 if (BatchCheckHasBit(cached_has_bits, 0x7f000000U)) {
1443 if (CheckHasBit(cached_has_bits, 0x01000000U)) {
1444 _this->_impl_.constraint_matrix_l2_norm_ = from._impl_.constraint_matrix_l2_norm_;
1445 }
1446 if (CheckHasBit(cached_has_bits, 0x02000000U)) {
1447 _this->_impl_.variable_bound_gaps_l2_norm_ = from._impl_.variable_bound_gaps_l2_norm_;
1448 }
1449 if (CheckHasBit(cached_has_bits, 0x04000000U)) {
1450 _this->_impl_.objective_matrix_l2_norm_ = from._impl_.objective_matrix_l2_norm_;
1451 }
1452 if (CheckHasBit(cached_has_bits, 0x08000000U)) {
1453 _this->_impl_.combined_variable_bounds_max_ = from._impl_.combined_variable_bounds_max_;
1454 }
1455 if (CheckHasBit(cached_has_bits, 0x10000000U)) {
1456 _this->_impl_.combined_variable_bounds_min_ = from._impl_.combined_variable_bounds_min_;
1457 }
1458 if (CheckHasBit(cached_has_bits, 0x20000000U)) {
1459 _this->_impl_.combined_variable_bounds_avg_ = from._impl_.combined_variable_bounds_avg_;
1460 }
1461 if (CheckHasBit(cached_has_bits, 0x40000000U)) {
1462 _this->_impl_.combined_variable_bounds_l2_norm_ = from._impl_.combined_variable_bounds_l2_norm_;
1463 }
1464 }
1465 _this->_impl_._has_bits_[0] |= cached_has_bits;
1466 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1467 from._internal_metadata_);
1468}
1469
1471 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.QuadraticProgramStats)
1472 if (&from == this) return;
1473 Clear();
1474 MergeFrom(from);
1475}
1476
1477
1478void QuadraticProgramStats::InternalSwap(QuadraticProgramStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1479 using ::std::swap;
1480 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1481 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1482 ::google::protobuf::internal::memswap<
1483 PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.combined_variable_bounds_l2_norm_)
1484 + sizeof(QuadraticProgramStats::_impl_.combined_variable_bounds_l2_norm_)
1485 - PROTOBUF_FIELD_OFFSET(QuadraticProgramStats, _impl_.num_variables_)>(
1486 reinterpret_cast<char*>(&_impl_.num_variables_),
1487 reinterpret_cast<char*>(&other->_impl_.num_variables_));
1488}
1489
1490::google::protobuf::Metadata QuadraticProgramStats::GetMetadata() const {
1491 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1492}
1493// ===================================================================
1494
1496 public:
1497 using HasBits =
1498 decltype(::std::declval<ConvergenceInformation>()._impl_._has_bits_);
1499 static constexpr ::int32_t kHasBitsOffset =
1500 8 * PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._has_bits_);
1502
1503ConvergenceInformation::ConvergenceInformation(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1504#if defined(PROTOBUF_CUSTOM_VTABLE)
1505 : ::google::protobuf::Message(arena, ConvergenceInformation_class_data_.base()) {
1506#else // PROTOBUF_CUSTOM_VTABLE
1507 : ::google::protobuf::Message(arena) {
1508#endif // PROTOBUF_CUSTOM_VTABLE
1509 SharedCtor(arena);
1510 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.ConvergenceInformation)
1511}
1513 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const ConvergenceInformation& from)
1514#if defined(PROTOBUF_CUSTOM_VTABLE)
1515 : ::google::protobuf::Message(arena, ConvergenceInformation_class_data_.base()),
1516#else // PROTOBUF_CUSTOM_VTABLE
1517 : ::google::protobuf::Message(arena),
1518#endif // PROTOBUF_CUSTOM_VTABLE
1519 _impl_(from._impl_) {
1520 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1521 from._internal_metadata_);
1522}
1523PROTOBUF_NDEBUG_INLINE ConvergenceInformation::Impl_::Impl_(
1524 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
1525 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1526 : _cached_size_{0} {}
1527
1528inline void ConvergenceInformation::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1529 new (&_impl_) Impl_(internal_visibility(), arena);
1530 ::memset(reinterpret_cast<char*>(&_impl_) +
1531 offsetof(Impl_, primal_objective_),
1532 0,
1533 offsetof(Impl_, candidate_type_) -
1534 offsetof(Impl_, primal_objective_) +
1535 sizeof(Impl_::candidate_type_));
1536}
1538 // @@protoc_insertion_point(destructor:operations_research.pdlp.ConvergenceInformation)
1539 SharedDtor(*this);
1540}
1541inline void ConvergenceInformation::SharedDtor(MessageLite& self) {
1542 ConvergenceInformation& this_ = static_cast<ConvergenceInformation&>(self);
1543 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1544 this_.CheckHasBitConsistency();
1545 }
1546 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1547 ABSL_DCHECK(this_.GetArena() == nullptr);
1548 this_._impl_.~Impl_();
1549}
1550
1551inline void* PROTOBUF_NONNULL ConvergenceInformation::PlacementNew_(
1552 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
1553 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1554 return ::new (mem) ConvergenceInformation(arena);
1555}
1556constexpr auto ConvergenceInformation::InternalNewImpl_() {
1557 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(ConvergenceInformation),
1558 alignof(ConvergenceInformation));
1559}
1561 return ::google::protobuf::internal::ClassDataFull{
1562 ::google::protobuf::internal::ClassData{
1564 &_table_.header,
1565 nullptr, // OnDemandRegisterArenaDtor
1566 nullptr, // IsInitialized
1567 &ConvergenceInformation::MergeImpl,
1568 ::google::protobuf::Message::GetNewImpl<ConvergenceInformation>(),
1569#if defined(PROTOBUF_CUSTOM_VTABLE)
1570 &ConvergenceInformation::SharedDtor,
1571 ::google::protobuf::Message::GetClearImpl<ConvergenceInformation>(), &ConvergenceInformation::ByteSizeLong,
1573#endif // PROTOBUF_CUSTOM_VTABLE
1574 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._cached_size_),
1575 false,
1576 },
1577 &ConvergenceInformation::kDescriptorMethods,
1579 nullptr, // tracker
1580 };
1581}
1582
1583PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1584 ::google::protobuf::internal::ClassDataFull ConvergenceInformation_class_data_ =
1587PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1588ConvergenceInformation::GetClassData() const {
1589 ::google::protobuf::internal::PrefetchToLocalCache(&ConvergenceInformation_class_data_);
1590 ::google::protobuf::internal::PrefetchToLocalCache(ConvergenceInformation_class_data_.tc_table);
1592}
1593PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1594const ::_pbi::TcParseTable<4, 14, 1, 0, 2>
1595ConvergenceInformation::_table_ = {
1596 {
1597 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_._has_bits_),
1598 0, // no _extensions_
1599 25, 120, // max_field_number, fast_idx_mask
1600 offsetof(decltype(_table_), field_lookup_table),
1601 4269678336, // skipmap
1602 offsetof(decltype(_table_), field_entries),
1603 14, // num_field_entries
1604 1, // num_aux_entries
1605 offsetof(decltype(_table_), aux_entries),
1607 nullptr, // post_loop_handler
1608 ::_pbi::TcParser::GenericFallback, // fallback
1609 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1610 ::_pbi::TcParser::GetTable<::operations_research::pdlp::ConvergenceInformation>(), // to_prefetch
1611 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
1612 }, {{
1613 // optional double l_inf_dual_variable = 16;
1614 {::_pbi::TcParser::FastF64S2,
1615 {385, 9, 0,
1616 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_variable_)}},
1617 // optional .operations_research.pdlp.PointType candidate_type = 1;
1618 {::_pbi::TcParser::FastEr0S1,
1619 {8, 13, 6,
1620 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_)}},
1621 // optional double primal_objective = 2;
1622 {::_pbi::TcParser::FastF64S1,
1623 {17, 0, 0,
1624 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_)}},
1625 // optional double dual_objective = 3;
1626 {::_pbi::TcParser::FastF64S1,
1627 {25, 1, 0,
1628 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.dual_objective_)}},
1629 // optional double corrected_dual_objective = 4;
1630 {::_pbi::TcParser::FastF64S1,
1631 {33, 2, 0,
1632 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.corrected_dual_objective_)}},
1633 // optional double l_inf_primal_residual = 5;
1634 {::_pbi::TcParser::FastF64S1,
1635 {41, 3, 0,
1636 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_residual_)}},
1637 // optional double l2_primal_residual = 6;
1638 {::_pbi::TcParser::FastF64S1,
1639 {49, 4, 0,
1640 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_residual_)}},
1641 // optional double l_inf_dual_residual = 7;
1642 {::_pbi::TcParser::FastF64S1,
1643 {57, 5, 0,
1644 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_residual_)}},
1645 // optional double l2_dual_residual = 8;
1646 {::_pbi::TcParser::FastF64S1,
1647 {65, 6, 0,
1648 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_residual_)}},
1649 // optional double l_inf_componentwise_dual_residual = 25;
1650 {::_pbi::TcParser::FastF64S2,
1651 {457, 12, 0,
1652 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_dual_residual_)}},
1653 {::_pbi::TcParser::MiniParse, {}},
1654 {::_pbi::TcParser::MiniParse, {}},
1655 {::_pbi::TcParser::MiniParse, {}},
1656 {::_pbi::TcParser::MiniParse, {}},
1657 // optional double l_inf_primal_variable = 14;
1658 {::_pbi::TcParser::FastF64S1,
1659 {113, 7, 0,
1660 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_variable_)}},
1661 // optional double l2_primal_variable = 15;
1662 {::_pbi::TcParser::FastF64S1,
1663 {121, 8, 0,
1664 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_variable_)}},
1665 }}, {{
1666 65535, 65535
1667 }}, {{
1668 // optional .operations_research.pdlp.PointType candidate_type = 1;
1669 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_), _Internal::kHasBitsOffset + 13, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
1670 // optional double primal_objective = 2;
1671 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1672 // optional double dual_objective = 3;
1673 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.dual_objective_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1674 // optional double corrected_dual_objective = 4;
1675 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.corrected_dual_objective_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1676 // optional double l_inf_primal_residual = 5;
1677 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_residual_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1678 // optional double l2_primal_residual = 6;
1679 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_residual_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1680 // optional double l_inf_dual_residual = 7;
1681 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_residual_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1682 // optional double l2_dual_residual = 8;
1683 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_residual_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1684 // optional double l_inf_primal_variable = 14;
1685 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_primal_variable_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1686 // optional double l2_primal_variable = 15;
1687 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_primal_variable_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1688 // optional double l_inf_dual_variable = 16;
1689 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_dual_variable_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1690 // optional double l2_dual_variable = 17;
1691 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l2_dual_variable_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1692 // optional double l_inf_componentwise_primal_residual = 24;
1693 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_primal_residual_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1694 // optional double l_inf_componentwise_dual_residual = 25;
1695 {PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.l_inf_componentwise_dual_residual_), _Internal::kHasBitsOffset + 12, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
1696 }},
1697 {{
1698 {0, 6},
1699 }},
1700 {{
1701 }},
1702};
1703PROTOBUF_NOINLINE void ConvergenceInformation::Clear() {
1704// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.ConvergenceInformation)
1705 ::google::protobuf::internal::TSanWrite(&_impl_);
1706 ::uint32_t cached_has_bits = 0;
1707 // Prevent compiler warnings about cached_has_bits being unused
1708 (void) cached_has_bits;
1709
1710 cached_has_bits = _impl_._has_bits_[0];
1711 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1712 ::memset(&_impl_.primal_objective_, 0, static_cast<::size_t>(
1713 reinterpret_cast<char*>(&_impl_.l_inf_primal_variable_) -
1714 reinterpret_cast<char*>(&_impl_.primal_objective_)) + sizeof(_impl_.l_inf_primal_variable_));
1715 }
1716 if (BatchCheckHasBit(cached_has_bits, 0x00003f00U)) {
1717 ::memset(&_impl_.l2_primal_variable_, 0, static_cast<::size_t>(
1718 reinterpret_cast<char*>(&_impl_.candidate_type_) -
1719 reinterpret_cast<char*>(&_impl_.l2_primal_variable_)) + sizeof(_impl_.candidate_type_));
1720 }
1721 _impl_._has_bits_.Clear();
1722 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1723}
1724
1725#if defined(PROTOBUF_CUSTOM_VTABLE)
1726::uint8_t* PROTOBUF_NONNULL ConvergenceInformation::_InternalSerialize(
1727 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1728 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1729 const ConvergenceInformation& this_ = static_cast<const ConvergenceInformation&>(base);
1730#else // PROTOBUF_CUSTOM_VTABLE
1731::uint8_t* PROTOBUF_NONNULL ConvergenceInformation::_InternalSerialize(
1732 ::uint8_t* PROTOBUF_NONNULL target,
1733 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
1734 const ConvergenceInformation& this_ = *this;
1735#endif // PROTOBUF_CUSTOM_VTABLE
1736 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1737 this_.CheckHasBitConsistency();
1738 }
1739 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.ConvergenceInformation)
1740 ::uint32_t cached_has_bits = 0;
1741 (void)cached_has_bits;
1742
1743 cached_has_bits = this_._impl_._has_bits_[0];
1744 // optional .operations_research.pdlp.PointType candidate_type = 1;
1745 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1746 target = stream->EnsureSpace(target);
1747 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1748 1, this_._internal_candidate_type(), target);
1749 }
1750
1751 // optional double primal_objective = 2;
1752 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1753 target = stream->EnsureSpace(target);
1754 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1755 2, this_._internal_primal_objective(), target);
1756 }
1757
1758 // optional double dual_objective = 3;
1759 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1760 target = stream->EnsureSpace(target);
1761 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1762 3, this_._internal_dual_objective(), target);
1763 }
1764
1765 // optional double corrected_dual_objective = 4;
1766 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1767 target = stream->EnsureSpace(target);
1768 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1769 4, this_._internal_corrected_dual_objective(), target);
1770 }
1771
1772 // optional double l_inf_primal_residual = 5;
1773 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1774 target = stream->EnsureSpace(target);
1775 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1776 5, this_._internal_l_inf_primal_residual(), target);
1777 }
1778
1779 // optional double l2_primal_residual = 6;
1780 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1781 target = stream->EnsureSpace(target);
1782 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1783 6, this_._internal_l2_primal_residual(), target);
1784 }
1785
1786 // optional double l_inf_dual_residual = 7;
1787 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1788 target = stream->EnsureSpace(target);
1789 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1790 7, this_._internal_l_inf_dual_residual(), target);
1791 }
1792
1793 // optional double l2_dual_residual = 8;
1794 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1795 target = stream->EnsureSpace(target);
1796 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1797 8, this_._internal_l2_dual_residual(), target);
1798 }
1799
1800 // optional double l_inf_primal_variable = 14;
1801 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1802 target = stream->EnsureSpace(target);
1803 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1804 14, this_._internal_l_inf_primal_variable(), target);
1805 }
1806
1807 // optional double l2_primal_variable = 15;
1808 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1809 target = stream->EnsureSpace(target);
1810 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1811 15, this_._internal_l2_primal_variable(), target);
1812 }
1813
1814 // optional double l_inf_dual_variable = 16;
1815 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1816 target = stream->EnsureSpace(target);
1817 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1818 16, this_._internal_l_inf_dual_variable(), target);
1819 }
1820
1821 // optional double l2_dual_variable = 17;
1822 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1823 target = stream->EnsureSpace(target);
1824 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1825 17, this_._internal_l2_dual_variable(), target);
1826 }
1827
1828 // optional double l_inf_componentwise_primal_residual = 24;
1829 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1830 target = stream->EnsureSpace(target);
1831 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1832 24, this_._internal_l_inf_componentwise_primal_residual(), target);
1833 }
1834
1835 // optional double l_inf_componentwise_dual_residual = 25;
1836 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1837 target = stream->EnsureSpace(target);
1838 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
1839 25, this_._internal_l_inf_componentwise_dual_residual(), target);
1840 }
1841
1842 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1843 target =
1844 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1845 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1846 }
1847 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.ConvergenceInformation)
1848 return target;
1849}
1850
1851#if defined(PROTOBUF_CUSTOM_VTABLE)
1853 const ConvergenceInformation& this_ = static_cast<const ConvergenceInformation&>(base);
1854#else // PROTOBUF_CUSTOM_VTABLE
1855::size_t ConvergenceInformation::ByteSizeLong() const {
1856 const ConvergenceInformation& this_ = *this;
1857#endif // PROTOBUF_CUSTOM_VTABLE
1858 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.ConvergenceInformation)
1859 ::size_t total_size = 0;
1860
1861 ::uint32_t cached_has_bits = 0;
1862 // Prevent compiler warnings about cached_has_bits being unused
1863 (void)cached_has_bits;
1864
1865 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1866 cached_has_bits = this_._impl_._has_bits_[0];
1867 total_size += ::absl::popcount(0x00001e00U & cached_has_bits) * 10;
1868 total_size += ::absl::popcount(0x000001ffU & cached_has_bits) * 9;
1869 {
1870 // optional .operations_research.pdlp.PointType candidate_type = 1;
1871 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1872 total_size += 1 +
1873 ::_pbi::WireFormatLite::EnumSize(this_._internal_candidate_type());
1874 }
1875 }
1876 return this_.MaybeComputeUnknownFieldsSize(total_size,
1877 &this_._impl_._cached_size_);
1878}
1879
1880void ConvergenceInformation::MergeImpl(::google::protobuf::MessageLite& to_msg,
1881 const ::google::protobuf::MessageLite& from_msg) {
1882 auto* const _this =
1883 static_cast<ConvergenceInformation*>(&to_msg);
1884 auto& from = static_cast<const ConvergenceInformation&>(from_msg);
1885 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
1886 from.CheckHasBitConsistency();
1887 }
1888 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.ConvergenceInformation)
1889 ABSL_DCHECK_NE(&from, _this);
1890 ::uint32_t cached_has_bits = 0;
1891 (void)cached_has_bits;
1892
1893 cached_has_bits = from._impl_._has_bits_[0];
1894 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
1895 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
1896 _this->_impl_.primal_objective_ = from._impl_.primal_objective_;
1897 }
1898 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
1899 _this->_impl_.dual_objective_ = from._impl_.dual_objective_;
1900 }
1901 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
1902 _this->_impl_.corrected_dual_objective_ = from._impl_.corrected_dual_objective_;
1903 }
1904 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
1905 _this->_impl_.l_inf_primal_residual_ = from._impl_.l_inf_primal_residual_;
1906 }
1907 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
1908 _this->_impl_.l2_primal_residual_ = from._impl_.l2_primal_residual_;
1909 }
1910 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
1911 _this->_impl_.l_inf_dual_residual_ = from._impl_.l_inf_dual_residual_;
1912 }
1913 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
1914 _this->_impl_.l2_dual_residual_ = from._impl_.l2_dual_residual_;
1915 }
1916 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
1917 _this->_impl_.l_inf_primal_variable_ = from._impl_.l_inf_primal_variable_;
1918 }
1919 }
1920 if (BatchCheckHasBit(cached_has_bits, 0x00003f00U)) {
1921 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
1922 _this->_impl_.l2_primal_variable_ = from._impl_.l2_primal_variable_;
1923 }
1924 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
1925 _this->_impl_.l_inf_dual_variable_ = from._impl_.l_inf_dual_variable_;
1926 }
1927 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
1928 _this->_impl_.l2_dual_variable_ = from._impl_.l2_dual_variable_;
1929 }
1930 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
1931 _this->_impl_.l_inf_componentwise_primal_residual_ = from._impl_.l_inf_componentwise_primal_residual_;
1932 }
1933 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
1934 _this->_impl_.l_inf_componentwise_dual_residual_ = from._impl_.l_inf_componentwise_dual_residual_;
1935 }
1936 if (CheckHasBit(cached_has_bits, 0x00002000U)) {
1937 _this->_impl_.candidate_type_ = from._impl_.candidate_type_;
1938 }
1939 }
1940 _this->_impl_._has_bits_[0] |= cached_has_bits;
1941 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1942 from._internal_metadata_);
1943}
1944
1946 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.ConvergenceInformation)
1947 if (&from == this) return;
1948 Clear();
1949 MergeFrom(from);
1950}
1951
1952
1953void ConvergenceInformation::InternalSwap(ConvergenceInformation* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1954 using ::std::swap;
1955 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1956 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1957 ::google::protobuf::internal::memswap<
1958 PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.candidate_type_)
1959 + sizeof(ConvergenceInformation::_impl_.candidate_type_)
1960 - PROTOBUF_FIELD_OFFSET(ConvergenceInformation, _impl_.primal_objective_)>(
1961 reinterpret_cast<char*>(&_impl_.primal_objective_),
1962 reinterpret_cast<char*>(&other->_impl_.primal_objective_));
1963}
1964
1965::google::protobuf::Metadata ConvergenceInformation::GetMetadata() const {
1966 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
1968// ===================================================================
1969
1971 public:
1972 using HasBits =
1973 decltype(::std::declval<InfeasibilityInformation>()._impl_._has_bits_);
1974 static constexpr ::int32_t kHasBitsOffset =
1975 8 * PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._has_bits_);
1976};
1978InfeasibilityInformation::InfeasibilityInformation(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1979#if defined(PROTOBUF_CUSTOM_VTABLE)
1980 : ::google::protobuf::Message(arena, InfeasibilityInformation_class_data_.base()) {
1981#else // PROTOBUF_CUSTOM_VTABLE
1982 : ::google::protobuf::Message(arena) {
1983#endif // PROTOBUF_CUSTOM_VTABLE
1984 SharedCtor(arena);
1985 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.InfeasibilityInformation)
1986}
1988 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const InfeasibilityInformation& from)
1989#if defined(PROTOBUF_CUSTOM_VTABLE)
1990 : ::google::protobuf::Message(arena, InfeasibilityInformation_class_data_.base()),
1991#else // PROTOBUF_CUSTOM_VTABLE
1992 : ::google::protobuf::Message(arena),
1993#endif // PROTOBUF_CUSTOM_VTABLE
1994 _impl_(from._impl_) {
1995 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
1996 from._internal_metadata_);
1997}
1998PROTOBUF_NDEBUG_INLINE InfeasibilityInformation::Impl_::Impl_(
1999 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
2000 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2001 : _cached_size_{0} {}
2002
2003inline void InfeasibilityInformation::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2004 new (&_impl_) Impl_(internal_visibility(), arena);
2005 ::memset(reinterpret_cast<char*>(&_impl_) +
2006 offsetof(Impl_, max_primal_ray_infeasibility_),
2007 0,
2008 offsetof(Impl_, candidate_type_) -
2009 offsetof(Impl_, max_primal_ray_infeasibility_) +
2010 sizeof(Impl_::candidate_type_));
2011}
2013 // @@protoc_insertion_point(destructor:operations_research.pdlp.InfeasibilityInformation)
2014 SharedDtor(*this);
2016inline void InfeasibilityInformation::SharedDtor(MessageLite& self) {
2017 InfeasibilityInformation& this_ = static_cast<InfeasibilityInformation&>(self);
2018 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2019 this_.CheckHasBitConsistency();
2020 }
2021 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2022 ABSL_DCHECK(this_.GetArena() == nullptr);
2023 this_._impl_.~Impl_();
2024}
2025
2026inline void* PROTOBUF_NONNULL InfeasibilityInformation::PlacementNew_(
2027 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2028 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2029 return ::new (mem) InfeasibilityInformation(arena);
2030}
2031constexpr auto InfeasibilityInformation::InternalNewImpl_() {
2032 return ::google::protobuf::internal::MessageCreator::ZeroInit(sizeof(InfeasibilityInformation),
2033 alignof(InfeasibilityInformation));
2034}
2036 return ::google::protobuf::internal::ClassDataFull{
2037 ::google::protobuf::internal::ClassData{
2039 &_table_.header,
2040 nullptr, // OnDemandRegisterArenaDtor
2041 nullptr, // IsInitialized
2042 &InfeasibilityInformation::MergeImpl,
2043 ::google::protobuf::Message::GetNewImpl<InfeasibilityInformation>(),
2044#if defined(PROTOBUF_CUSTOM_VTABLE)
2045 &InfeasibilityInformation::SharedDtor,
2046 ::google::protobuf::Message::GetClearImpl<InfeasibilityInformation>(), &InfeasibilityInformation::ByteSizeLong,
2048#endif // PROTOBUF_CUSTOM_VTABLE
2049 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._cached_size_),
2050 false,
2051 },
2052 &InfeasibilityInformation::kDescriptorMethods,
2054 nullptr, // tracker
2055 };
2056}
2057
2058PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2059 ::google::protobuf::internal::ClassDataFull InfeasibilityInformation_class_data_ =
2061
2062PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2063InfeasibilityInformation::GetClassData() const {
2064 ::google::protobuf::internal::PrefetchToLocalCache(&InfeasibilityInformation_class_data_);
2065 ::google::protobuf::internal::PrefetchToLocalCache(InfeasibilityInformation_class_data_.tc_table);
2067}
2068PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2069const ::_pbi::TcParseTable<3, 6, 1, 0, 2>
2070InfeasibilityInformation::_table_ = {
2071 {
2072 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_._has_bits_),
2073 0, // no _extensions_
2074 6, 56, // max_field_number, fast_idx_mask
2075 offsetof(decltype(_table_), field_lookup_table),
2076 4294967232, // skipmap
2077 offsetof(decltype(_table_), field_entries),
2078 6, // num_field_entries
2079 1, // num_aux_entries
2080 offsetof(decltype(_table_), aux_entries),
2082 nullptr, // post_loop_handler
2083 ::_pbi::TcParser::GenericFallback, // fallback
2084 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2085 ::_pbi::TcParser::GetTable<::operations_research::pdlp::InfeasibilityInformation>(), // to_prefetch
2086 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2087 }, {{
2088 {::_pbi::TcParser::MiniParse, {}},
2089 // optional double max_primal_ray_infeasibility = 1;
2090 {::_pbi::TcParser::FastF64S1,
2091 {9, 0, 0,
2092 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_)}},
2093 // optional double primal_ray_linear_objective = 2;
2094 {::_pbi::TcParser::FastF64S1,
2095 {17, 1, 0,
2096 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_linear_objective_)}},
2097 // optional double primal_ray_quadratic_norm = 3;
2098 {::_pbi::TcParser::FastF64S1,
2099 {25, 2, 0,
2100 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_quadratic_norm_)}},
2101 // optional double max_dual_ray_infeasibility = 4;
2102 {::_pbi::TcParser::FastF64S1,
2103 {33, 3, 0,
2104 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_dual_ray_infeasibility_)}},
2105 // optional double dual_ray_objective = 5;
2106 {::_pbi::TcParser::FastF64S1,
2107 {41, 4, 0,
2108 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.dual_ray_objective_)}},
2109 // optional .operations_research.pdlp.PointType candidate_type = 6;
2110 {::_pbi::TcParser::FastEr0S1,
2111 {48, 5, 6,
2112 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_)}},
2113 {::_pbi::TcParser::MiniParse, {}},
2114 }}, {{
2115 65535, 65535
2116 }}, {{
2117 // optional double max_primal_ray_infeasibility = 1;
2118 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2119 // optional double primal_ray_linear_objective = 2;
2120 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_linear_objective_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2121 // optional double primal_ray_quadratic_norm = 3;
2122 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.primal_ray_quadratic_norm_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2123 // optional double max_dual_ray_infeasibility = 4;
2124 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_dual_ray_infeasibility_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2125 // optional double dual_ray_objective = 5;
2126 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.dual_ray_objective_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2127 // optional .operations_research.pdlp.PointType candidate_type = 6;
2128 {PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2129 }},
2130 {{
2131 {0, 6},
2132 }},
2133 {{
2134 }},
2135};
2136PROTOBUF_NOINLINE void InfeasibilityInformation::Clear() {
2137// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.InfeasibilityInformation)
2138 ::google::protobuf::internal::TSanWrite(&_impl_);
2139 ::uint32_t cached_has_bits = 0;
2140 // Prevent compiler warnings about cached_has_bits being unused
2141 (void) cached_has_bits;
2142
2143 cached_has_bits = _impl_._has_bits_[0];
2144 if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
2145 ::memset(&_impl_.max_primal_ray_infeasibility_, 0, static_cast<::size_t>(
2146 reinterpret_cast<char*>(&_impl_.candidate_type_) -
2147 reinterpret_cast<char*>(&_impl_.max_primal_ray_infeasibility_)) + sizeof(_impl_.candidate_type_));
2148 }
2149 _impl_._has_bits_.Clear();
2150 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2151}
2152
2153#if defined(PROTOBUF_CUSTOM_VTABLE)
2154::uint8_t* PROTOBUF_NONNULL InfeasibilityInformation::_InternalSerialize(
2155 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2156 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2157 const InfeasibilityInformation& this_ = static_cast<const InfeasibilityInformation&>(base);
2158#else // PROTOBUF_CUSTOM_VTABLE
2159::uint8_t* PROTOBUF_NONNULL InfeasibilityInformation::_InternalSerialize(
2160 ::uint8_t* PROTOBUF_NONNULL target,
2161 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2162 const InfeasibilityInformation& this_ = *this;
2163#endif // PROTOBUF_CUSTOM_VTABLE
2164 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2165 this_.CheckHasBitConsistency();
2166 }
2167 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.InfeasibilityInformation)
2168 ::uint32_t cached_has_bits = 0;
2169 (void)cached_has_bits;
2170
2171 cached_has_bits = this_._impl_._has_bits_[0];
2172 // optional double max_primal_ray_infeasibility = 1;
2173 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
2174 target = stream->EnsureSpace(target);
2175 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2176 1, this_._internal_max_primal_ray_infeasibility(), target);
2177 }
2178
2179 // optional double primal_ray_linear_objective = 2;
2180 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
2181 target = stream->EnsureSpace(target);
2182 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2183 2, this_._internal_primal_ray_linear_objective(), target);
2184 }
2185
2186 // optional double primal_ray_quadratic_norm = 3;
2187 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
2188 target = stream->EnsureSpace(target);
2189 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2190 3, this_._internal_primal_ray_quadratic_norm(), target);
2191 }
2192
2193 // optional double max_dual_ray_infeasibility = 4;
2194 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
2195 target = stream->EnsureSpace(target);
2196 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2197 4, this_._internal_max_dual_ray_infeasibility(), target);
2198 }
2199
2200 // optional double dual_ray_objective = 5;
2201 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
2202 target = stream->EnsureSpace(target);
2203 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
2204 5, this_._internal_dual_ray_objective(), target);
2205 }
2206
2207 // optional .operations_research.pdlp.PointType candidate_type = 6;
2208 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2209 target = stream->EnsureSpace(target);
2210 target = ::_pbi::WireFormatLite::WriteEnumToArray(
2211 6, this_._internal_candidate_type(), target);
2212 }
2213
2214 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2215 target =
2216 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2217 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2218 }
2219 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.InfeasibilityInformation)
2220 return target;
2221}
2222
2223#if defined(PROTOBUF_CUSTOM_VTABLE)
2225 const InfeasibilityInformation& this_ = static_cast<const InfeasibilityInformation&>(base);
2226#else // PROTOBUF_CUSTOM_VTABLE
2228 const InfeasibilityInformation& this_ = *this;
2229#endif // PROTOBUF_CUSTOM_VTABLE
2230 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.InfeasibilityInformation)
2231 ::size_t total_size = 0;
2232
2233 ::uint32_t cached_has_bits = 0;
2234 // Prevent compiler warnings about cached_has_bits being unused
2235 (void)cached_has_bits;
2236
2237 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2238 cached_has_bits = this_._impl_._has_bits_[0];
2239 total_size += ::absl::popcount(0x0000001fU & cached_has_bits) * 9;
2240 {
2241 // optional .operations_research.pdlp.PointType candidate_type = 6;
2242 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2243 total_size += 1 +
2244 ::_pbi::WireFormatLite::EnumSize(this_._internal_candidate_type());
2245 }
2246 }
2247 return this_.MaybeComputeUnknownFieldsSize(total_size,
2248 &this_._impl_._cached_size_);
2249}
2250
2251void InfeasibilityInformation::MergeImpl(::google::protobuf::MessageLite& to_msg,
2252 const ::google::protobuf::MessageLite& from_msg) {
2253 auto* const _this =
2254 static_cast<InfeasibilityInformation*>(&to_msg);
2255 auto& from = static_cast<const InfeasibilityInformation&>(from_msg);
2256 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2257 from.CheckHasBitConsistency();
2258 }
2259 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.InfeasibilityInformation)
2260 ABSL_DCHECK_NE(&from, _this);
2261 ::uint32_t cached_has_bits = 0;
2262 (void)cached_has_bits;
2263
2264 cached_has_bits = from._impl_._has_bits_[0];
2265 if (BatchCheckHasBit(cached_has_bits, 0x0000003fU)) {
2266 if (CheckHasBit(cached_has_bits, 0x00000001U)) {
2267 _this->_impl_.max_primal_ray_infeasibility_ = from._impl_.max_primal_ray_infeasibility_;
2268 }
2269 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
2270 _this->_impl_.primal_ray_linear_objective_ = from._impl_.primal_ray_linear_objective_;
2271 }
2272 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
2273 _this->_impl_.primal_ray_quadratic_norm_ = from._impl_.primal_ray_quadratic_norm_;
2274 }
2275 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
2276 _this->_impl_.max_dual_ray_infeasibility_ = from._impl_.max_dual_ray_infeasibility_;
2277 }
2278 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
2279 _this->_impl_.dual_ray_objective_ = from._impl_.dual_ray_objective_;
2280 }
2281 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2282 _this->_impl_.candidate_type_ = from._impl_.candidate_type_;
2283 }
2284 }
2285 _this->_impl_._has_bits_[0] |= cached_has_bits;
2286 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2287 from._internal_metadata_);
2288}
2289
2290void InfeasibilityInformation::CopyFrom(const InfeasibilityInformation& from) {
2291 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.InfeasibilityInformation)
2292 if (&from == this) return;
2294 MergeFrom(from);
2295}
2296
2297
2298void InfeasibilityInformation::InternalSwap(InfeasibilityInformation* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2299 using ::std::swap;
2300 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2301 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2302 ::google::protobuf::internal::memswap<
2303 PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.candidate_type_)
2304 + sizeof(InfeasibilityInformation::_impl_.candidate_type_)
2305 - PROTOBUF_FIELD_OFFSET(InfeasibilityInformation, _impl_.max_primal_ray_infeasibility_)>(
2306 reinterpret_cast<char*>(&_impl_.max_primal_ray_infeasibility_),
2307 reinterpret_cast<char*>(&other->_impl_.max_primal_ray_infeasibility_));
2308}
2309
2310::google::protobuf::Metadata InfeasibilityInformation::GetMetadata() const {
2311 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2312}
2313// ===================================================================
2314
2316 public:
2317 using HasBits =
2318 decltype(::std::declval<PointMetadata>()._impl_._has_bits_);
2319 static constexpr ::int32_t kHasBitsOffset =
2320 8 * PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._has_bits_);
2322
2323PointMetadata::PointMetadata(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2324#if defined(PROTOBUF_CUSTOM_VTABLE)
2325 : ::google::protobuf::Message(arena, PointMetadata_class_data_.base()) {
2326#else // PROTOBUF_CUSTOM_VTABLE
2327 : ::google::protobuf::Message(arena) {
2328#endif // PROTOBUF_CUSTOM_VTABLE
2329 SharedCtor(arena);
2330 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.PointMetadata)
2331}
2332PROTOBUF_NDEBUG_INLINE PointMetadata::Impl_::Impl_(
2333 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
2334 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2335 [[maybe_unused]] const ::operations_research::pdlp::PointMetadata& from_msg)
2336 : _has_bits_{from._has_bits_},
2337 _cached_size_{0},
2338 random_primal_projections_{visibility, arena, from.random_primal_projections_},
2339 random_dual_projections_{visibility, arena, from.random_dual_projections_} {}
2340
2342 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2343 const PointMetadata& from)
2344#if defined(PROTOBUF_CUSTOM_VTABLE)
2345 : ::google::protobuf::Message(arena, PointMetadata_class_data_.base()) {
2346#else // PROTOBUF_CUSTOM_VTABLE
2347 : ::google::protobuf::Message(arena) {
2348#endif // PROTOBUF_CUSTOM_VTABLE
2349 PointMetadata* const _this = this;
2350 (void)_this;
2351 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2352 from._internal_metadata_);
2353 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2354 ::memcpy(reinterpret_cast<char*>(&_impl_) +
2355 offsetof(Impl_, active_primal_variable_count_),
2356 reinterpret_cast<const char*>(&from._impl_) +
2357 offsetof(Impl_, active_primal_variable_count_),
2358 offsetof(Impl_, point_type_) -
2359 offsetof(Impl_, active_primal_variable_count_) +
2360 sizeof(Impl_::point_type_));
2361
2362 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.PointMetadata)
2363}
2364PROTOBUF_NDEBUG_INLINE PointMetadata::Impl_::Impl_(
2365 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
2366 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2367 : _cached_size_{0},
2368 random_primal_projections_{visibility, arena},
2369 random_dual_projections_{visibility, arena} {}
2370
2371inline void PointMetadata::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2372 new (&_impl_) Impl_(internal_visibility(), arena);
2373 ::memset(reinterpret_cast<char*>(&_impl_) +
2374 offsetof(Impl_, active_primal_variable_count_),
2375 0,
2376 offsetof(Impl_, point_type_) -
2377 offsetof(Impl_, active_primal_variable_count_) +
2378 sizeof(Impl_::point_type_));
2379}
2381 // @@protoc_insertion_point(destructor:operations_research.pdlp.PointMetadata)
2382 SharedDtor(*this);
2383}
2384inline void PointMetadata::SharedDtor(MessageLite& self) {
2385 PointMetadata& this_ = static_cast<PointMetadata&>(self);
2386 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2387 this_.CheckHasBitConsistency();
2388 }
2389 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2390 ABSL_DCHECK(this_.GetArena() == nullptr);
2391 this_._impl_.~Impl_();
2392}
2393
2394inline void* PROTOBUF_NONNULL PointMetadata::PlacementNew_(
2395 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2396 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2397 return ::new (mem) PointMetadata(arena);
2398}
2399constexpr auto PointMetadata::InternalNewImpl_() {
2400 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2401 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_) +
2402 decltype(PointMetadata::_impl_.random_primal_projections_)::
2403 InternalGetArenaOffset(
2404 ::google::protobuf::Message::internal_visibility()),
2405 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_) +
2406 decltype(PointMetadata::_impl_.random_dual_projections_)::
2407 InternalGetArenaOffset(
2408 ::google::protobuf::Message::internal_visibility()),
2409 });
2410 if (arena_bits.has_value()) {
2411 return ::google::protobuf::internal::MessageCreator::ZeroInit(
2412 sizeof(PointMetadata), alignof(PointMetadata), *arena_bits);
2413 } else {
2414 return ::google::protobuf::internal::MessageCreator(&PointMetadata::PlacementNew_,
2415 sizeof(PointMetadata),
2416 alignof(PointMetadata));
2417 }
2418}
2420 return ::google::protobuf::internal::ClassDataFull{
2421 ::google::protobuf::internal::ClassData{
2423 &_table_.header,
2424 nullptr, // OnDemandRegisterArenaDtor
2425 nullptr, // IsInitialized
2426 &PointMetadata::MergeImpl,
2427 ::google::protobuf::Message::GetNewImpl<PointMetadata>(),
2428#if defined(PROTOBUF_CUSTOM_VTABLE)
2429 &PointMetadata::SharedDtor,
2430 ::google::protobuf::Message::GetClearImpl<PointMetadata>(), &PointMetadata::ByteSizeLong,
2432#endif // PROTOBUF_CUSTOM_VTABLE
2433 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._cached_size_),
2434 false,
2435 },
2436 &PointMetadata::kDescriptorMethods,
2438 nullptr, // tracker
2439 };
2440}
2441
2442PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2443 ::google::protobuf::internal::ClassDataFull PointMetadata_class_data_ =
2445
2446PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2447PointMetadata::GetClassData() const {
2448 ::google::protobuf::internal::PrefetchToLocalCache(&PointMetadata_class_data_);
2449 ::google::protobuf::internal::PrefetchToLocalCache(PointMetadata_class_data_.tc_table);
2450 return PointMetadata_class_data_.base();
2451}
2452PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2453const ::_pbi::TcParseTable<3, 7, 1, 0, 2>
2454PointMetadata::_table_ = {
2455 {
2456 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_._has_bits_),
2457 0, // no _extensions_
2458 7, 56, // max_field_number, fast_idx_mask
2459 offsetof(decltype(_table_), field_lookup_table),
2460 4294967168, // skipmap
2461 offsetof(decltype(_table_), field_entries),
2462 7, // num_field_entries
2463 1, // num_aux_entries
2464 offsetof(decltype(_table_), aux_entries),
2466 nullptr, // post_loop_handler
2467 ::_pbi::TcParser::GenericFallback, // fallback
2468 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2469 ::_pbi::TcParser::GetTable<::operations_research::pdlp::PointMetadata>(), // to_prefetch
2470 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2471 }, {{
2472 {::_pbi::TcParser::MiniParse, {}},
2473 // optional .operations_research.pdlp.PointType point_type = 1;
2474 {::_pbi::TcParser::FastEr0S1,
2475 {8, 6, 6,
2476 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_)}},
2477 // repeated double random_primal_projections = 2 [packed = true];
2478 {::_pbi::TcParser::FastF64P1,
2479 {18, 0, 0,
2480 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_)}},
2481 // repeated double random_dual_projections = 3 [packed = true];
2482 {::_pbi::TcParser::FastF64P1,
2483 {26, 1, 0,
2484 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_)}},
2485 // optional int64 active_primal_variable_count = 4;
2486 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_primal_variable_count_), 2>(),
2487 {32, 2, 0,
2488 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_)}},
2489 // optional int64 active_dual_variable_count = 5;
2490 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_dual_variable_count_), 3>(),
2491 {40, 3, 0,
2492 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_count_)}},
2493 // optional int64 active_primal_variable_change = 6;
2494 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_primal_variable_change_), 4>(),
2495 {48, 4, 0,
2496 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_change_)}},
2497 // optional int64 active_dual_variable_change = 7;
2498 {::_pbi::TcParser::SingularVarintNoZag1<::uint64_t, offsetof(PointMetadata, _impl_.active_dual_variable_change_), 5>(),
2499 {56, 5, 0,
2500 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_change_)}},
2501 }}, {{
2502 65535, 65535
2503 }}, {{
2504 // optional .operations_research.pdlp.PointType point_type = 1;
2505 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2506 // repeated double random_primal_projections = 2 [packed = true];
2507 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_primal_projections_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kPackedDouble)},
2508 // repeated double random_dual_projections = 3 [packed = true];
2509 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.random_dual_projections_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcRepeated | ::_fl::kPackedDouble)},
2510 // optional int64 active_primal_variable_count = 4;
2511 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2512 // optional int64 active_dual_variable_count = 5;
2513 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_count_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2514 // optional int64 active_primal_variable_change = 6;
2515 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_change_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2516 // optional int64 active_dual_variable_change = 7;
2517 {PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_dual_variable_change_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt64)},
2518 }},
2519 {{
2520 {0, 6},
2521 }},
2522 {{
2523 }},
2524};
2525PROTOBUF_NOINLINE void PointMetadata::Clear() {
2526// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.PointMetadata)
2527 ::google::protobuf::internal::TSanWrite(&_impl_);
2528 ::uint32_t cached_has_bits = 0;
2529 // Prevent compiler warnings about cached_has_bits being unused
2530 (void) cached_has_bits;
2531
2532 cached_has_bits = _impl_._has_bits_[0];
2533 if (BatchCheckHasBit(cached_has_bits, 0x00000003U)) {
2534 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
2535 _impl_.random_primal_projections_.Clear();
2536 }
2537 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
2538 _impl_.random_dual_projections_.Clear();
2539 }
2540 }
2541 if (BatchCheckHasBit(cached_has_bits, 0x0000007cU)) {
2542 ::memset(&_impl_.active_primal_variable_count_, 0, static_cast<::size_t>(
2543 reinterpret_cast<char*>(&_impl_.point_type_) -
2544 reinterpret_cast<char*>(&_impl_.active_primal_variable_count_)) + sizeof(_impl_.point_type_));
2545 }
2546 _impl_._has_bits_.Clear();
2547 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2548}
2549
2550#if defined(PROTOBUF_CUSTOM_VTABLE)
2551::uint8_t* PROTOBUF_NONNULL PointMetadata::_InternalSerialize(
2552 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2553 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2554 const PointMetadata& this_ = static_cast<const PointMetadata&>(base);
2555#else // PROTOBUF_CUSTOM_VTABLE
2556::uint8_t* PROTOBUF_NONNULL PointMetadata::_InternalSerialize(
2557 ::uint8_t* PROTOBUF_NONNULL target,
2558 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
2559 const PointMetadata& this_ = *this;
2560#endif // PROTOBUF_CUSTOM_VTABLE
2561 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2562 this_.CheckHasBitConsistency();
2563 }
2564 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.PointMetadata)
2565 ::uint32_t cached_has_bits = 0;
2566 (void)cached_has_bits;
2567
2568 cached_has_bits = this_._impl_._has_bits_[0];
2569 // optional .operations_research.pdlp.PointType point_type = 1;
2570 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
2571 target = stream->EnsureSpace(target);
2572 target = ::_pbi::WireFormatLite::WriteEnumToArray(
2573 1, this_._internal_point_type(), target);
2574 }
2575
2576 // repeated double random_primal_projections = 2 [packed = true];
2577 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
2578 if (this_._internal_random_primal_projections_size() > 0) {
2579 target = stream->WriteFixedPacked(2, this_._internal_random_primal_projections(), target);
2580 }
2581 }
2582
2583 // repeated double random_dual_projections = 3 [packed = true];
2584 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
2585 if (this_._internal_random_dual_projections_size() > 0) {
2586 target = stream->WriteFixedPacked(3, this_._internal_random_dual_projections(), target);
2587 }
2588 }
2589
2590 // optional int64 active_primal_variable_count = 4;
2591 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
2592 target =
2593 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<4>(
2594 stream, this_._internal_active_primal_variable_count(), target);
2595 }
2596
2597 // optional int64 active_dual_variable_count = 5;
2598 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
2599 target =
2600 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<5>(
2601 stream, this_._internal_active_dual_variable_count(), target);
2602 }
2603
2604 // optional int64 active_primal_variable_change = 6;
2605 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
2606 target =
2607 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<6>(
2608 stream, this_._internal_active_primal_variable_change(), target);
2609 }
2610
2611 // optional int64 active_dual_variable_change = 7;
2612 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2613 target =
2614 ::google::protobuf::internal::WireFormatLite::WriteInt64ToArrayWithField<7>(
2615 stream, this_._internal_active_dual_variable_change(), target);
2616 }
2617
2618 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2619 target =
2620 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2621 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2622 }
2623 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.PointMetadata)
2624 return target;
2625}
2626
2627#if defined(PROTOBUF_CUSTOM_VTABLE)
2628::size_t PointMetadata::ByteSizeLong(const MessageLite& base) {
2629 const PointMetadata& this_ = static_cast<const PointMetadata&>(base);
2630#else // PROTOBUF_CUSTOM_VTABLE
2631::size_t PointMetadata::ByteSizeLong() const {
2632 const PointMetadata& this_ = *this;
2633#endif // PROTOBUF_CUSTOM_VTABLE
2634 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.PointMetadata)
2635 ::size_t total_size = 0;
2636
2637 ::uint32_t cached_has_bits = 0;
2638 // Prevent compiler warnings about cached_has_bits being unused
2639 (void)cached_has_bits;
2640
2641 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2642 cached_has_bits = this_._impl_._has_bits_[0];
2643 if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
2644 // repeated double random_primal_projections = 2 [packed = true];
2645 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
2646 ::size_t data_size = ::size_t{8} *
2647 ::_pbi::FromIntSize(this_._internal_random_primal_projections_size());
2648 ::size_t tag_size = data_size == 0
2649 ? 0
2650 : 1 + ::_pbi::WireFormatLite::Int32Size(
2651 static_cast<::int32_t>(data_size));
2652 total_size += tag_size + data_size;
2653 }
2654 // repeated double random_dual_projections = 3 [packed = true];
2655 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
2656 ::size_t data_size = ::size_t{8} *
2657 ::_pbi::FromIntSize(this_._internal_random_dual_projections_size());
2658 ::size_t tag_size = data_size == 0
2659 ? 0
2660 : 1 + ::_pbi::WireFormatLite::Int32Size(
2661 static_cast<::int32_t>(data_size));
2662 total_size += tag_size + data_size;
2663 }
2664 // optional int64 active_primal_variable_count = 4;
2665 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
2666 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2667 this_._internal_active_primal_variable_count());
2668 }
2669 // optional int64 active_dual_variable_count = 5;
2670 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
2671 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2672 this_._internal_active_dual_variable_count());
2673 }
2674 // optional int64 active_primal_variable_change = 6;
2675 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
2676 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2677 this_._internal_active_primal_variable_change());
2678 }
2679 // optional int64 active_dual_variable_change = 7;
2680 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2681 total_size += ::_pbi::WireFormatLite::Int64SizePlusOne(
2682 this_._internal_active_dual_variable_change());
2683 }
2684 // optional .operations_research.pdlp.PointType point_type = 1;
2685 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
2686 total_size += 1 +
2687 ::_pbi::WireFormatLite::EnumSize(this_._internal_point_type());
2688 }
2689 }
2690 return this_.MaybeComputeUnknownFieldsSize(total_size,
2691 &this_._impl_._cached_size_);
2692}
2693
2694void PointMetadata::MergeImpl(::google::protobuf::MessageLite& to_msg,
2695 const ::google::protobuf::MessageLite& from_msg) {
2696 auto* const _this =
2697 static_cast<PointMetadata*>(&to_msg);
2698 auto& from = static_cast<const PointMetadata&>(from_msg);
2699 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2700 from.CheckHasBitConsistency();
2701 }
2702 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.PointMetadata)
2703 ABSL_DCHECK_NE(&from, _this);
2704 ::uint32_t cached_has_bits = 0;
2705 (void)cached_has_bits;
2706
2707 cached_has_bits = from._impl_._has_bits_[0];
2708 if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
2709 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
2710 _this->_internal_mutable_random_primal_projections()->MergeFrom(from._internal_random_primal_projections());
2711 }
2712 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
2713 _this->_internal_mutable_random_dual_projections()->MergeFrom(from._internal_random_dual_projections());
2714 }
2715 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
2716 _this->_impl_.active_primal_variable_count_ = from._impl_.active_primal_variable_count_;
2717 }
2718 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
2719 _this->_impl_.active_dual_variable_count_ = from._impl_.active_dual_variable_count_;
2720 }
2721 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
2722 _this->_impl_.active_primal_variable_change_ = from._impl_.active_primal_variable_change_;
2723 }
2724 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
2725 _this->_impl_.active_dual_variable_change_ = from._impl_.active_dual_variable_change_;
2726 }
2727 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
2728 _this->_impl_.point_type_ = from._impl_.point_type_;
2729 }
2730 }
2731 _this->_impl_._has_bits_[0] |= cached_has_bits;
2732 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2733 from._internal_metadata_);
2734}
2735
2736void PointMetadata::CopyFrom(const PointMetadata& from) {
2737 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.PointMetadata)
2738 if (&from == this) return;
2739 Clear();
2741}
2742
2743
2744void PointMetadata::InternalSwap(PointMetadata* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2745 using ::std::swap;
2746 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2747 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2748 _impl_.random_primal_projections_.InternalSwap(&other->_impl_.random_primal_projections_);
2749 _impl_.random_dual_projections_.InternalSwap(&other->_impl_.random_dual_projections_);
2750 ::google::protobuf::internal::memswap<
2751 PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.point_type_)
2752 + sizeof(PointMetadata::_impl_.point_type_)
2753 - PROTOBUF_FIELD_OFFSET(PointMetadata, _impl_.active_primal_variable_count_)>(
2754 reinterpret_cast<char*>(&_impl_.active_primal_variable_count_),
2755 reinterpret_cast<char*>(&other->_impl_.active_primal_variable_count_));
2756}
2757
2758::google::protobuf::Metadata PointMetadata::GetMetadata() const {
2759 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
2760}
2761// ===================================================================
2764 public:
2765 using HasBits =
2766 decltype(::std::declval<IterationStats>()._impl_._has_bits_);
2767 static constexpr ::int32_t kHasBitsOffset =
2768 8 * PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._has_bits_);
2769};
2771IterationStats::IterationStats(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2772#if defined(PROTOBUF_CUSTOM_VTABLE)
2773 : ::google::protobuf::Message(arena, IterationStats_class_data_.base()) {
2774#else // PROTOBUF_CUSTOM_VTABLE
2775 : ::google::protobuf::Message(arena) {
2776#endif // PROTOBUF_CUSTOM_VTABLE
2777 SharedCtor(arena);
2778 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.IterationStats)
2779}
2780PROTOBUF_NDEBUG_INLINE IterationStats::Impl_::Impl_(
2781 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
2782 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
2783 [[maybe_unused]] const ::operations_research::pdlp::IterationStats& from_msg)
2784 : _has_bits_{from._has_bits_},
2785 _cached_size_{0},
2786 convergence_information_{visibility, arena, from.convergence_information_},
2787 infeasibility_information_{visibility, arena, from.infeasibility_information_},
2788 point_metadata_{visibility, arena, from.point_metadata_} {}
2789
2791 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2792 const IterationStats& from)
2793#if defined(PROTOBUF_CUSTOM_VTABLE)
2794 : ::google::protobuf::Message(arena, IterationStats_class_data_.base()) {
2795#else // PROTOBUF_CUSTOM_VTABLE
2796 : ::google::protobuf::Message(arena) {
2797#endif // PROTOBUF_CUSTOM_VTABLE
2798 IterationStats* const _this = this;
2799 (void)_this;
2800 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2801 from._internal_metadata_);
2802 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2803 ::memcpy(reinterpret_cast<char*>(&_impl_) +
2804 offsetof(Impl_, iteration_number_),
2805 reinterpret_cast<const char*>(&from._impl_) +
2806 offsetof(Impl_, iteration_number_),
2807 offsetof(Impl_, restart_used_) -
2808 offsetof(Impl_, iteration_number_) +
2809 sizeof(Impl_::restart_used_));
2810
2811 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.IterationStats)
2812}
2813PROTOBUF_NDEBUG_INLINE IterationStats::Impl_::Impl_(
2814 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
2815 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2816 : _cached_size_{0},
2817 convergence_information_{visibility, arena},
2818 infeasibility_information_{visibility, arena},
2819 point_metadata_{visibility, arena} {}
2820
2821inline void IterationStats::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2822 new (&_impl_) Impl_(internal_visibility(), arena);
2823 ::memset(reinterpret_cast<char*>(&_impl_) +
2824 offsetof(Impl_, iteration_number_),
2825 0,
2826 offsetof(Impl_, restart_used_) -
2827 offsetof(Impl_, iteration_number_) +
2828 sizeof(Impl_::restart_used_));
2829}
2831 // @@protoc_insertion_point(destructor:operations_research.pdlp.IterationStats)
2832 SharedDtor(*this);
2833}
2834inline void IterationStats::SharedDtor(MessageLite& self) {
2835 IterationStats& this_ = static_cast<IterationStats&>(self);
2836 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
2837 this_.CheckHasBitConsistency();
2838 }
2839 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2840 ABSL_DCHECK(this_.GetArena() == nullptr);
2841 this_._impl_.~Impl_();
2842}
2843
2844inline void* PROTOBUF_NONNULL IterationStats::PlacementNew_(
2845 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
2846 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2847 return ::new (mem) IterationStats(arena);
2848}
2849constexpr auto IterationStats::InternalNewImpl_() {
2850 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2851 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_) +
2852 decltype(IterationStats::_impl_.convergence_information_)::
2853 InternalGetArenaOffset(
2854 ::google::protobuf::Message::internal_visibility()),
2855 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_) +
2856 decltype(IterationStats::_impl_.infeasibility_information_)::
2857 InternalGetArenaOffset(
2858 ::google::protobuf::Message::internal_visibility()),
2859 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_) +
2860 decltype(IterationStats::_impl_.point_metadata_)::
2861 InternalGetArenaOffset(
2862 ::google::protobuf::Message::internal_visibility()),
2863 });
2864 if (arena_bits.has_value()) {
2865 return ::google::protobuf::internal::MessageCreator::ZeroInit(
2866 sizeof(IterationStats), alignof(IterationStats), *arena_bits);
2867 } else {
2868 return ::google::protobuf::internal::MessageCreator(&IterationStats::PlacementNew_,
2869 sizeof(IterationStats),
2870 alignof(IterationStats));
2871 }
2872}
2874 return ::google::protobuf::internal::ClassDataFull{
2875 ::google::protobuf::internal::ClassData{
2877 &_table_.header,
2878 nullptr, // OnDemandRegisterArenaDtor
2879 nullptr, // IsInitialized
2880 &IterationStats::MergeImpl,
2881 ::google::protobuf::Message::GetNewImpl<IterationStats>(),
2882#if defined(PROTOBUF_CUSTOM_VTABLE)
2883 &IterationStats::SharedDtor,
2884 ::google::protobuf::Message::GetClearImpl<IterationStats>(), &IterationStats::ByteSizeLong,
2886#endif // PROTOBUF_CUSTOM_VTABLE
2887 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._cached_size_),
2888 false,
2889 },
2890 &IterationStats::kDescriptorMethods,
2892 nullptr, // tracker
2893 };
2894}
2895
2896PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2897 ::google::protobuf::internal::ClassDataFull IterationStats_class_data_ =
2899
2900PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2901IterationStats::GetClassData() const {
2902 ::google::protobuf::internal::PrefetchToLocalCache(&IterationStats_class_data_);
2903 ::google::protobuf::internal::PrefetchToLocalCache(IterationStats_class_data_.tc_table);
2904 return IterationStats_class_data_.base();
2905}
2906PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2907const ::_pbi::TcParseTable<4, 10, 4, 0, 2>
2908IterationStats::_table_ = {
2909 {
2910 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_._has_bits_),
2911 0, // no _extensions_
2912 11, 120, // max_field_number, fast_idx_mask
2913 offsetof(decltype(_table_), field_lookup_table),
2914 4294965760, // skipmap
2915 offsetof(decltype(_table_), field_entries),
2916 10, // num_field_entries
2917 4, // num_aux_entries
2918 offsetof(decltype(_table_), aux_entries),
2920 nullptr, // post_loop_handler
2921 ::_pbi::TcParser::GenericFallback, // fallback
2922 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2923 ::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>(), // to_prefetch
2924 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
2925 }, {{
2926 {::_pbi::TcParser::MiniParse, {}},
2927 // optional int32 iteration_number = 1;
2928 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(IterationStats, _impl_.iteration_number_), 3>(),
2929 {8, 3, 0,
2930 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_)}},
2931 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
2932 {::_pbi::TcParser::FastMtR1,
2933 {18, 0, 0,
2934 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_)}},
2935 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
2936 {::_pbi::TcParser::FastMtR1,
2937 {26, 1, 1,
2938 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_)}},
2939 // optional double cumulative_kkt_matrix_passes = 4;
2940 {::_pbi::TcParser::FastF64S1,
2941 {33, 5, 0,
2942 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_kkt_matrix_passes_)}},
2943 // optional int32 cumulative_rejected_steps = 5;
2944 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(IterationStats, _impl_.cumulative_rejected_steps_), 4>(),
2945 {40, 4, 0,
2946 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_rejected_steps_)}},
2947 // optional double cumulative_time_sec = 6;
2948 {::_pbi::TcParser::FastF64S1,
2949 {49, 6, 0,
2950 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_time_sec_)}},
2951 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
2952 {::_pbi::TcParser::FastEr0S1,
2953 {56, 9, 3,
2954 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_)}},
2955 // optional double step_size = 8;
2956 {::_pbi::TcParser::FastF64S1,
2957 {65, 7, 0,
2958 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.step_size_)}},
2959 // optional double primal_weight = 9;
2960 {::_pbi::TcParser::FastF64S1,
2961 {73, 8, 0,
2962 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.primal_weight_)}},
2963 {::_pbi::TcParser::MiniParse, {}},
2964 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
2965 {::_pbi::TcParser::FastMtR1,
2966 {90, 2, 2,
2967 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_)}},
2968 {::_pbi::TcParser::MiniParse, {}},
2969 {::_pbi::TcParser::MiniParse, {}},
2970 {::_pbi::TcParser::MiniParse, {}},
2971 {::_pbi::TcParser::MiniParse, {}},
2972 }}, {{
2973 65535, 65535
2974 }}, {{
2975 // optional int32 iteration_number = 1;
2976 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2977 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
2978 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.convergence_information_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2979 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
2980 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.infeasibility_information_), _Internal::kHasBitsOffset + 1, 1, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2981 // optional double cumulative_kkt_matrix_passes = 4;
2982 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_kkt_matrix_passes_), _Internal::kHasBitsOffset + 5, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2983 // optional int32 cumulative_rejected_steps = 5;
2984 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_rejected_steps_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2985 // optional double cumulative_time_sec = 6;
2986 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.cumulative_time_sec_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2987 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
2988 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_), _Internal::kHasBitsOffset + 9, 3, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
2989 // optional double step_size = 8;
2990 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.step_size_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2991 // optional double primal_weight = 9;
2992 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.primal_weight_), _Internal::kHasBitsOffset + 8, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
2993 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
2994 {PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.point_metadata_), _Internal::kHasBitsOffset + 2, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
2995 }},
2996 {{
2997 {::_pbi::TcParser::GetTable<::operations_research::pdlp::ConvergenceInformation>()},
2998 {::_pbi::TcParser::GetTable<::operations_research::pdlp::InfeasibilityInformation>()},
2999 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PointMetadata>()},
3000 {0, 3},
3001 }},
3002 {{
3003 }},
3004};
3005PROTOBUF_NOINLINE void IterationStats::Clear() {
3006// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.IterationStats)
3007 ::google::protobuf::internal::TSanWrite(&_impl_);
3008 ::uint32_t cached_has_bits = 0;
3009 // Prevent compiler warnings about cached_has_bits being unused
3010 (void) cached_has_bits;
3011
3012 cached_has_bits = _impl_._has_bits_[0];
3013 if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
3014 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3015 _impl_.convergence_information_.Clear();
3016 }
3017 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
3018 _impl_.infeasibility_information_.Clear();
3019 }
3020 if (CheckHasBitForRepeated(cached_has_bits, 0x00000004U)) {
3021 _impl_.point_metadata_.Clear();
3022 }
3023 }
3024 if (BatchCheckHasBit(cached_has_bits, 0x000000f8U)) {
3025 ::memset(&_impl_.iteration_number_, 0, static_cast<::size_t>(
3026 reinterpret_cast<char*>(&_impl_.step_size_) -
3027 reinterpret_cast<char*>(&_impl_.iteration_number_)) + sizeof(_impl_.step_size_));
3028 }
3029 if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
3030 ::memset(&_impl_.primal_weight_, 0, static_cast<::size_t>(
3031 reinterpret_cast<char*>(&_impl_.restart_used_) -
3032 reinterpret_cast<char*>(&_impl_.primal_weight_)) + sizeof(_impl_.restart_used_));
3033 }
3034 _impl_._has_bits_.Clear();
3035 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
3036}
3037
3038#if defined(PROTOBUF_CUSTOM_VTABLE)
3039::uint8_t* PROTOBUF_NONNULL IterationStats::_InternalSerialize(
3040 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
3041 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
3042 const IterationStats& this_ = static_cast<const IterationStats&>(base);
3043#else // PROTOBUF_CUSTOM_VTABLE
3044::uint8_t* PROTOBUF_NONNULL IterationStats::_InternalSerialize(
3045 ::uint8_t* PROTOBUF_NONNULL target,
3046 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
3047 const IterationStats& this_ = *this;
3048#endif // PROTOBUF_CUSTOM_VTABLE
3049 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3050 this_.CheckHasBitConsistency();
3051 }
3052 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.IterationStats)
3053 ::uint32_t cached_has_bits = 0;
3054 (void)cached_has_bits;
3055
3056 cached_has_bits = this_._impl_._has_bits_[0];
3057 // optional int32 iteration_number = 1;
3058 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3059 target =
3060 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
3061 stream, this_._internal_iteration_number(), target);
3062 }
3063
3064 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
3065 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3066 for (unsigned i = 0, n = static_cast<unsigned>(
3067 this_._internal_convergence_information_size());
3068 i < n; i++) {
3069 const auto& repfield = this_._internal_convergence_information().Get(i);
3070 target =
3071 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3072 2, repfield, repfield.GetCachedSize(),
3073 target, stream);
3074 }
3075 }
3076
3077 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
3078 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
3079 for (unsigned i = 0, n = static_cast<unsigned>(
3080 this_._internal_infeasibility_information_size());
3081 i < n; i++) {
3082 const auto& repfield = this_._internal_infeasibility_information().Get(i);
3083 target =
3084 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3085 3, repfield, repfield.GetCachedSize(),
3086 target, stream);
3087 }
3088 }
3089
3090 // optional double cumulative_kkt_matrix_passes = 4;
3091 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
3092 target = stream->EnsureSpace(target);
3093 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3094 4, this_._internal_cumulative_kkt_matrix_passes(), target);
3095 }
3096
3097 // optional int32 cumulative_rejected_steps = 5;
3098 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3099 target =
3100 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
3101 stream, this_._internal_cumulative_rejected_steps(), target);
3102 }
3103
3104 // optional double cumulative_time_sec = 6;
3105 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
3106 target = stream->EnsureSpace(target);
3107 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3108 6, this_._internal_cumulative_time_sec(), target);
3109 }
3110
3111 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
3112 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
3113 target = stream->EnsureSpace(target);
3114 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3115 7, this_._internal_restart_used(), target);
3116 }
3117
3118 // optional double step_size = 8;
3119 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
3120 target = stream->EnsureSpace(target);
3121 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3122 8, this_._internal_step_size(), target);
3123 }
3124
3125 // optional double primal_weight = 9;
3126 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
3127 target = stream->EnsureSpace(target);
3128 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3129 9, this_._internal_primal_weight(), target);
3130 }
3131
3132 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
3133 if (CheckHasBitForRepeated(cached_has_bits, 0x00000004U)) {
3134 for (unsigned i = 0, n = static_cast<unsigned>(
3135 this_._internal_point_metadata_size());
3136 i < n; i++) {
3137 const auto& repfield = this_._internal_point_metadata().Get(i);
3138 target =
3139 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3140 11, repfield, repfield.GetCachedSize(),
3141 target, stream);
3142 }
3143 }
3144
3145 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3146 target =
3147 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3148 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3149 }
3150 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.IterationStats)
3151 return target;
3152}
3153
3154#if defined(PROTOBUF_CUSTOM_VTABLE)
3155::size_t IterationStats::ByteSizeLong(const MessageLite& base) {
3156 const IterationStats& this_ = static_cast<const IterationStats&>(base);
3157#else // PROTOBUF_CUSTOM_VTABLE
3158::size_t IterationStats::ByteSizeLong() const {
3159 const IterationStats& this_ = *this;
3160#endif // PROTOBUF_CUSTOM_VTABLE
3161 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.IterationStats)
3162 ::size_t total_size = 0;
3164 ::uint32_t cached_has_bits = 0;
3165 // Prevent compiler warnings about cached_has_bits being unused
3166 (void)cached_has_bits;
3167
3168 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3169 cached_has_bits = this_._impl_._has_bits_[0];
3170 total_size += ::absl::popcount(0x000001e0U & cached_has_bits) * 9;
3171 if (BatchCheckHasBit(cached_has_bits, 0x0000001fU)) {
3172 // repeated .operations_research.pdlp.ConvergenceInformation convergence_information = 2;
3173 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3174 total_size += 1UL * this_._internal_convergence_information_size();
3175 for (const auto& msg : this_._internal_convergence_information()) {
3176 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3177 }
3178 }
3179 // repeated .operations_research.pdlp.InfeasibilityInformation infeasibility_information = 3;
3180 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
3181 total_size += 1UL * this_._internal_infeasibility_information_size();
3182 for (const auto& msg : this_._internal_infeasibility_information()) {
3183 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3184 }
3185 }
3186 // repeated .operations_research.pdlp.PointMetadata point_metadata = 11;
3187 if (CheckHasBitForRepeated(cached_has_bits, 0x00000004U)) {
3188 total_size += 1UL * this_._internal_point_metadata_size();
3189 for (const auto& msg : this_._internal_point_metadata()) {
3190 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3191 }
3192 }
3193 // optional int32 iteration_number = 1;
3194 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3195 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3196 this_._internal_iteration_number());
3197 }
3198 // optional int32 cumulative_rejected_steps = 5;
3199 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3200 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3201 this_._internal_cumulative_rejected_steps());
3202 }
3203 }
3204 {
3205 // optional .operations_research.pdlp.RestartChoice restart_used = 7;
3206 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
3207 total_size += 1 +
3208 ::_pbi::WireFormatLite::EnumSize(this_._internal_restart_used());
3209 }
3210 }
3211 return this_.MaybeComputeUnknownFieldsSize(total_size,
3212 &this_._impl_._cached_size_);
3213}
3214
3215void IterationStats::MergeImpl(::google::protobuf::MessageLite& to_msg,
3216 const ::google::protobuf::MessageLite& from_msg) {
3217 auto* const _this =
3218 static_cast<IterationStats*>(&to_msg);
3219 auto& from = static_cast<const IterationStats&>(from_msg);
3220 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3221 from.CheckHasBitConsistency();
3222 }
3223 ::google::protobuf::Arena* arena = _this->GetArena();
3224 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.IterationStats)
3225 ABSL_DCHECK_NE(&from, _this);
3226 ::uint32_t cached_has_bits = 0;
3227 (void)cached_has_bits;
3228
3229 cached_has_bits = from._impl_._has_bits_[0];
3230 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
3231 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3232 _this->_internal_mutable_convergence_information()->InternalMergeFromWithArena(
3233 ::google::protobuf::MessageLite::internal_visibility(), arena,
3234 from._internal_convergence_information());
3235 }
3236 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
3237 _this->_internal_mutable_infeasibility_information()->InternalMergeFromWithArena(
3238 ::google::protobuf::MessageLite::internal_visibility(), arena,
3239 from._internal_infeasibility_information());
3240 }
3241 if (CheckHasBitForRepeated(cached_has_bits, 0x00000004U)) {
3242 _this->_internal_mutable_point_metadata()->InternalMergeFromWithArena(
3243 ::google::protobuf::MessageLite::internal_visibility(), arena,
3244 from._internal_point_metadata());
3245 }
3246 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3247 _this->_impl_.iteration_number_ = from._impl_.iteration_number_;
3248 }
3249 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3250 _this->_impl_.cumulative_rejected_steps_ = from._impl_.cumulative_rejected_steps_;
3251 }
3252 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
3253 _this->_impl_.cumulative_kkt_matrix_passes_ = from._impl_.cumulative_kkt_matrix_passes_;
3254 }
3255 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
3256 _this->_impl_.cumulative_time_sec_ = from._impl_.cumulative_time_sec_;
3257 }
3258 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
3259 _this->_impl_.step_size_ = from._impl_.step_size_;
3260 }
3261 }
3262 if (BatchCheckHasBit(cached_has_bits, 0x00000300U)) {
3263 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
3264 _this->_impl_.primal_weight_ = from._impl_.primal_weight_;
3265 }
3266 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
3267 _this->_impl_.restart_used_ = from._impl_.restart_used_;
3268 }
3269 }
3270 _this->_impl_._has_bits_[0] |= cached_has_bits;
3271 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3272 from._internal_metadata_);
3273}
3274
3275void IterationStats::CopyFrom(const IterationStats& from) {
3276 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.IterationStats)
3277 if (&from == this) return;
3278 Clear();
3279 MergeFrom(from);
3281
3282
3283void IterationStats::InternalSwap(IterationStats* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3284 using ::std::swap;
3285 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3286 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3287 _impl_.convergence_information_.InternalSwap(&other->_impl_.convergence_information_);
3288 _impl_.infeasibility_information_.InternalSwap(&other->_impl_.infeasibility_information_);
3289 _impl_.point_metadata_.InternalSwap(&other->_impl_.point_metadata_);
3290 ::google::protobuf::internal::memswap<
3291 PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.restart_used_)
3292 + sizeof(IterationStats::_impl_.restart_used_)
3293 - PROTOBUF_FIELD_OFFSET(IterationStats, _impl_.iteration_number_)>(
3294 reinterpret_cast<char*>(&_impl_.iteration_number_),
3295 reinterpret_cast<char*>(&other->_impl_.iteration_number_));
3296}
3297
3298::google::protobuf::Metadata IterationStats::GetMetadata() const {
3299 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
3300}
3301// ===================================================================
3302
3304 public:
3305 using HasBits =
3306 decltype(::std::declval<FeasibilityPolishingDetails>()._impl_._has_bits_);
3307 static constexpr ::int32_t kHasBitsOffset =
3308 8 * PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._has_bits_);
3310
3312 ::google::protobuf::internal::TSanWrite(&_impl_);
3313 if (_impl_.params_ != nullptr) _impl_.params_->Clear();
3314 ClearHasBit(_impl_._has_bits_[0],
3315 0x00000002U);
3316}
3317FeasibilityPolishingDetails::FeasibilityPolishingDetails(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3318#if defined(PROTOBUF_CUSTOM_VTABLE)
3319 : ::google::protobuf::Message(arena, FeasibilityPolishingDetails_class_data_.base()) {
3320#else // PROTOBUF_CUSTOM_VTABLE
3321 : ::google::protobuf::Message(arena) {
3322#endif // PROTOBUF_CUSTOM_VTABLE
3323 SharedCtor(arena);
3324 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.FeasibilityPolishingDetails)
3325}
3326PROTOBUF_NDEBUG_INLINE FeasibilityPolishingDetails::Impl_::Impl_(
3327 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
3328 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
3329 [[maybe_unused]] const ::operations_research::pdlp::FeasibilityPolishingDetails& from_msg)
3330 : _has_bits_{from._has_bits_},
3331 _cached_size_{0},
3332 iteration_stats_{visibility, arena, from.iteration_stats_} {}
3333
3335 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
3336 const FeasibilityPolishingDetails& from)
3337#if defined(PROTOBUF_CUSTOM_VTABLE)
3338 : ::google::protobuf::Message(arena, FeasibilityPolishingDetails_class_data_.base()) {
3339#else // PROTOBUF_CUSTOM_VTABLE
3340 : ::google::protobuf::Message(arena) {
3341#endif // PROTOBUF_CUSTOM_VTABLE
3342 FeasibilityPolishingDetails* const _this = this;
3343 (void)_this;
3344 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3345 from._internal_metadata_);
3346 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
3347 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
3348 _impl_.params_ = (CheckHasBit(cached_has_bits, 0x00000002U))
3349 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_)
3350 : nullptr;
3351 _impl_.solution_stats_ = (CheckHasBit(cached_has_bits, 0x00000004U))
3352 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_)
3353 : nullptr;
3354 ::memcpy(reinterpret_cast<char*>(&_impl_) +
3355 offsetof(Impl_, polishing_phase_type_),
3356 reinterpret_cast<const char*>(&from._impl_) +
3357 offsetof(Impl_, polishing_phase_type_),
3358 offsetof(Impl_, solution_type_) -
3359 offsetof(Impl_, polishing_phase_type_) +
3360 sizeof(Impl_::solution_type_));
3361
3362 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.FeasibilityPolishingDetails)
3363}
3364PROTOBUF_NDEBUG_INLINE FeasibilityPolishingDetails::Impl_::Impl_(
3365 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
3366 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3367 : _cached_size_{0},
3368 iteration_stats_{visibility, arena} {}
3369
3370inline void FeasibilityPolishingDetails::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
3371 new (&_impl_) Impl_(internal_visibility(), arena);
3372 ::memset(reinterpret_cast<char*>(&_impl_) +
3373 offsetof(Impl_, params_),
3374 0,
3375 offsetof(Impl_, solution_type_) -
3376 offsetof(Impl_, params_) +
3377 sizeof(Impl_::solution_type_));
3378}
3380 // @@protoc_insertion_point(destructor:operations_research.pdlp.FeasibilityPolishingDetails)
3381 SharedDtor(*this);
3382}
3383inline void FeasibilityPolishingDetails::SharedDtor(MessageLite& self) {
3384 FeasibilityPolishingDetails& this_ = static_cast<FeasibilityPolishingDetails&>(self);
3385 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3386 this_.CheckHasBitConsistency();
3387 }
3388 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
3389 ABSL_DCHECK(this_.GetArena() == nullptr);
3390 delete this_._impl_.params_;
3391 delete this_._impl_.solution_stats_;
3392 this_._impl_.~Impl_();
3393}
3394
3395inline void* PROTOBUF_NONNULL FeasibilityPolishingDetails::PlacementNew_(
3396 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
3397 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
3398 return ::new (mem) FeasibilityPolishingDetails(arena);
3399}
3400constexpr auto FeasibilityPolishingDetails::InternalNewImpl_() {
3401 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
3402 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_) +
3403 decltype(FeasibilityPolishingDetails::_impl_.iteration_stats_)::
3404 InternalGetArenaOffset(
3405 ::google::protobuf::Message::internal_visibility()),
3406 });
3407 if (arena_bits.has_value()) {
3408 return ::google::protobuf::internal::MessageCreator::ZeroInit(
3409 sizeof(FeasibilityPolishingDetails), alignof(FeasibilityPolishingDetails), *arena_bits);
3410 } else {
3411 return ::google::protobuf::internal::MessageCreator(&FeasibilityPolishingDetails::PlacementNew_,
3412 sizeof(FeasibilityPolishingDetails),
3413 alignof(FeasibilityPolishingDetails));
3414 }
3415}
3417 return ::google::protobuf::internal::ClassDataFull{
3418 ::google::protobuf::internal::ClassData{
3420 &_table_.header,
3421 nullptr, // OnDemandRegisterArenaDtor
3422 nullptr, // IsInitialized
3423 &FeasibilityPolishingDetails::MergeImpl,
3424 ::google::protobuf::Message::GetNewImpl<FeasibilityPolishingDetails>(),
3425#if defined(PROTOBUF_CUSTOM_VTABLE)
3426 &FeasibilityPolishingDetails::SharedDtor,
3427 ::google::protobuf::Message::GetClearImpl<FeasibilityPolishingDetails>(), &FeasibilityPolishingDetails::ByteSizeLong,
3429#endif // PROTOBUF_CUSTOM_VTABLE
3430 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._cached_size_),
3431 false,
3432 },
3433 &FeasibilityPolishingDetails::kDescriptorMethods,
3435 nullptr, // tracker
3436 };
3437}
3438
3439PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
3440 ::google::protobuf::internal::ClassDataFull FeasibilityPolishingDetails_class_data_ =
3442
3443PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
3444FeasibilityPolishingDetails::GetClassData() const {
3445 ::google::protobuf::internal::PrefetchToLocalCache(&FeasibilityPolishingDetails_class_data_);
3446 ::google::protobuf::internal::PrefetchToLocalCache(FeasibilityPolishingDetails_class_data_.tc_table);
3448}
3449PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
3450const ::_pbi::TcParseTable<4, 9, 6, 0, 2>
3451FeasibilityPolishingDetails::_table_ = {
3452 {
3453 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_._has_bits_),
3454 0, // no _extensions_
3455 9, 120, // max_field_number, fast_idx_mask
3456 offsetof(decltype(_table_), field_lookup_table),
3457 4294966784, // skipmap
3458 offsetof(decltype(_table_), field_entries),
3459 9, // num_field_entries
3460 6, // num_aux_entries
3461 offsetof(decltype(_table_), aux_entries),
3463 nullptr, // post_loop_handler
3464 ::_pbi::TcParser::GenericFallback, // fallback
3465 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
3466 ::_pbi::TcParser::GetTable<::operations_research::pdlp::FeasibilityPolishingDetails>(), // to_prefetch
3467 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
3468 }, {{
3469 {::_pbi::TcParser::MiniParse, {}},
3470 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3471 {::_pbi::TcParser::FastEr0S1,
3472 {8, 3, 2,
3473 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.polishing_phase_type_)}},
3474 // optional int32 main_iteration_count = 2;
3475 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(FeasibilityPolishingDetails, _impl_.main_iteration_count_), 4>(),
3476 {16, 4, 0,
3477 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.main_iteration_count_)}},
3478 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3479 {::_pbi::TcParser::FastMtS1,
3480 {26, 1, 0,
3481 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_)}},
3482 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3483 {::_pbi::TcParser::FastEr0S1,
3484 {32, 5, 13,
3485 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.termination_reason_)}},
3486 // optional int32 iteration_count = 5;
3487 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(FeasibilityPolishingDetails, _impl_.iteration_count_), 6>(),
3488 {40, 6, 0,
3489 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_count_)}},
3490 // optional double solve_time_sec = 6;
3491 {::_pbi::TcParser::FastF64S1,
3492 {49, 7, 0,
3493 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solve_time_sec_)}},
3494 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3495 {::_pbi::TcParser::FastMtS1,
3496 {58, 2, 1,
3497 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_stats_)}},
3498 // optional .operations_research.pdlp.PointType solution_type = 8;
3499 {::_pbi::TcParser::FastEr0S1,
3500 {64, 8, 6,
3501 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_)}},
3502 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3503 {::_pbi::TcParser::FastMtR1,
3504 {74, 0, 2,
3505 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_)}},
3506 {::_pbi::TcParser::MiniParse, {}},
3507 {::_pbi::TcParser::MiniParse, {}},
3508 {::_pbi::TcParser::MiniParse, {}},
3509 {::_pbi::TcParser::MiniParse, {}},
3510 {::_pbi::TcParser::MiniParse, {}},
3511 {::_pbi::TcParser::MiniParse, {}},
3512 }}, {{
3513 65535, 65535
3514 }}, {{
3515 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3516 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.polishing_phase_type_), _Internal::kHasBitsOffset + 3, 3, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3517 // optional int32 main_iteration_count = 2;
3518 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.main_iteration_count_), _Internal::kHasBitsOffset + 4, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3519 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3520 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_), _Internal::kHasBitsOffset + 1, 0, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3521 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3522 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.termination_reason_), _Internal::kHasBitsOffset + 5, 4, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3523 // optional int32 iteration_count = 5;
3524 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_count_), _Internal::kHasBitsOffset + 6, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3525 // optional double solve_time_sec = 6;
3526 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solve_time_sec_), _Internal::kHasBitsOffset + 7, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
3527 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3528 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_stats_), _Internal::kHasBitsOffset + 2, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
3529 // optional .operations_research.pdlp.PointType solution_type = 8;
3530 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_), _Internal::kHasBitsOffset + 8, 5, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
3531 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3532 {PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.iteration_stats_), _Internal::kHasBitsOffset + 0, 2, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
3533 }},
3534 {{
3535 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PrimalDualHybridGradientParams>()},
3536 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3537 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
3538 {0, 2},
3539 {0, 13},
3540 {0, 6},
3541 }},
3542 {{
3543 }},
3544};
3545PROTOBUF_NOINLINE void FeasibilityPolishingDetails::Clear() {
3546// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.FeasibilityPolishingDetails)
3547 ::google::protobuf::internal::TSanWrite(&_impl_);
3548 ::uint32_t cached_has_bits = 0;
3549 // Prevent compiler warnings about cached_has_bits being unused
3550 (void) cached_has_bits;
3552 cached_has_bits = _impl_._has_bits_[0];
3553 if (BatchCheckHasBit(cached_has_bits, 0x00000007U)) {
3554 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3555 _impl_.iteration_stats_.Clear();
3556 }
3557 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
3558 ABSL_DCHECK(_impl_.params_ != nullptr);
3559 _impl_.params_->Clear();
3560 }
3561 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
3562 ABSL_DCHECK(_impl_.solution_stats_ != nullptr);
3563 _impl_.solution_stats_->Clear();
3564 }
3565 }
3566 if (BatchCheckHasBit(cached_has_bits, 0x000000f8U)) {
3567 ::memset(&_impl_.polishing_phase_type_, 0, static_cast<::size_t>(
3568 reinterpret_cast<char*>(&_impl_.solve_time_sec_) -
3569 reinterpret_cast<char*>(&_impl_.polishing_phase_type_)) + sizeof(_impl_.solve_time_sec_));
3570 }
3571 _impl_.solution_type_ = 0;
3572 _impl_._has_bits_.Clear();
3573 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
3574}
3575
3576#if defined(PROTOBUF_CUSTOM_VTABLE)
3577::uint8_t* PROTOBUF_NONNULL FeasibilityPolishingDetails::_InternalSerialize(
3578 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
3579 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
3580 const FeasibilityPolishingDetails& this_ = static_cast<const FeasibilityPolishingDetails&>(base);
3581#else // PROTOBUF_CUSTOM_VTABLE
3582::uint8_t* PROTOBUF_NONNULL FeasibilityPolishingDetails::_InternalSerialize(
3583 ::uint8_t* PROTOBUF_NONNULL target,
3584 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
3585 const FeasibilityPolishingDetails& this_ = *this;
3586#endif // PROTOBUF_CUSTOM_VTABLE
3587 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3588 this_.CheckHasBitConsistency();
3589 }
3590 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.FeasibilityPolishingDetails)
3591 ::uint32_t cached_has_bits = 0;
3592 (void)cached_has_bits;
3593
3594 cached_has_bits = this_._impl_._has_bits_[0];
3595 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3596 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3597 target = stream->EnsureSpace(target);
3598 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3599 1, this_._internal_polishing_phase_type(), target);
3600 }
3601
3602 // optional int32 main_iteration_count = 2;
3603 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3604 target =
3605 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
3606 stream, this_._internal_main_iteration_count(), target);
3607 }
3608
3609 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3610 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
3611 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3612 3, *this_._impl_.params_, this_._impl_.params_->GetCachedSize(), target,
3613 stream);
3614 }
3615
3616 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3617 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
3618 target = stream->EnsureSpace(target);
3619 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3620 4, this_._internal_termination_reason(), target);
3621 }
3622
3623 // optional int32 iteration_count = 5;
3624 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
3625 target =
3626 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
3627 stream, this_._internal_iteration_count(), target);
3628 }
3629
3630 // optional double solve_time_sec = 6;
3631 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
3632 target = stream->EnsureSpace(target);
3633 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
3634 6, this_._internal_solve_time_sec(), target);
3635 }
3636
3637 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3638 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
3639 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3640 7, *this_._impl_.solution_stats_, this_._impl_.solution_stats_->GetCachedSize(), target,
3641 stream);
3642 }
3643
3644 // optional .operations_research.pdlp.PointType solution_type = 8;
3645 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
3646 target = stream->EnsureSpace(target);
3647 target = ::_pbi::WireFormatLite::WriteEnumToArray(
3648 8, this_._internal_solution_type(), target);
3649 }
3650
3651 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3652 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3653 for (unsigned i = 0, n = static_cast<unsigned>(
3654 this_._internal_iteration_stats_size());
3655 i < n; i++) {
3656 const auto& repfield = this_._internal_iteration_stats().Get(i);
3657 target =
3658 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
3659 9, repfield, repfield.GetCachedSize(),
3660 target, stream);
3661 }
3662 }
3663
3664 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3665 target =
3666 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3667 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3668 }
3669 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.FeasibilityPolishingDetails)
3670 return target;
3671}
3672
3673#if defined(PROTOBUF_CUSTOM_VTABLE)
3675 const FeasibilityPolishingDetails& this_ = static_cast<const FeasibilityPolishingDetails&>(base);
3676#else // PROTOBUF_CUSTOM_VTABLE
3678 const FeasibilityPolishingDetails& this_ = *this;
3679#endif // PROTOBUF_CUSTOM_VTABLE
3680 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.FeasibilityPolishingDetails)
3681 ::size_t total_size = 0;
3682
3683 ::uint32_t cached_has_bits = 0;
3684 // Prevent compiler warnings about cached_has_bits being unused
3685 (void)cached_has_bits;
3686
3687 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3688 cached_has_bits = this_._impl_._has_bits_[0];
3689 total_size += static_cast<bool>(0x00000080U & cached_has_bits) * 9;
3690 if (BatchCheckHasBit(cached_has_bits, 0x0000007fU)) {
3691 // repeated .operations_research.pdlp.IterationStats iteration_stats = 9;
3692 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3693 total_size += 1UL * this_._internal_iteration_stats_size();
3694 for (const auto& msg : this_._internal_iteration_stats()) {
3695 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
3696 }
3697 }
3698 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 3;
3699 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
3700 total_size += 1 +
3701 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.params_);
3702 }
3703 // optional .operations_research.pdlp.IterationStats solution_stats = 7;
3704 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
3705 total_size += 1 +
3706 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.solution_stats_);
3707 }
3708 // optional .operations_research.pdlp.PolishingPhaseType polishing_phase_type = 1;
3709 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3710 total_size += 1 +
3711 ::_pbi::WireFormatLite::EnumSize(this_._internal_polishing_phase_type());
3712 }
3713 // optional int32 main_iteration_count = 2;
3714 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3715 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3716 this_._internal_main_iteration_count());
3717 }
3718 // optional .operations_research.pdlp.TerminationReason termination_reason = 4;
3719 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
3720 total_size += 1 +
3721 ::_pbi::WireFormatLite::EnumSize(this_._internal_termination_reason());
3722 }
3723 // optional int32 iteration_count = 5;
3724 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
3725 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3726 this_._internal_iteration_count());
3727 }
3728 }
3729 {
3730 // optional .operations_research.pdlp.PointType solution_type = 8;
3731 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
3732 total_size += 1 +
3733 ::_pbi::WireFormatLite::EnumSize(this_._internal_solution_type());
3734 }
3735 }
3736 return this_.MaybeComputeUnknownFieldsSize(total_size,
3737 &this_._impl_._cached_size_);
3738}
3739
3740void FeasibilityPolishingDetails::MergeImpl(::google::protobuf::MessageLite& to_msg,
3741 const ::google::protobuf::MessageLite& from_msg) {
3742 auto* const _this =
3743 static_cast<FeasibilityPolishingDetails*>(&to_msg);
3744 auto& from = static_cast<const FeasibilityPolishingDetails&>(from_msg);
3745 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3746 from.CheckHasBitConsistency();
3747 }
3748 ::google::protobuf::Arena* arena = _this->GetArena();
3749 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.FeasibilityPolishingDetails)
3750 ABSL_DCHECK_NE(&from, _this);
3751 ::uint32_t cached_has_bits = 0;
3752 (void)cached_has_bits;
3753
3754 cached_has_bits = from._impl_._has_bits_[0];
3755 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
3756 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
3757 _this->_internal_mutable_iteration_stats()->InternalMergeFromWithArena(
3758 ::google::protobuf::MessageLite::internal_visibility(), arena,
3759 from._internal_iteration_stats());
3760 }
3761 if (CheckHasBit(cached_has_bits, 0x00000002U)) {
3762 ABSL_DCHECK(from._impl_.params_ != nullptr);
3763 if (_this->_impl_.params_ == nullptr) {
3764 _this->_impl_.params_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_);
3765 } else {
3766 _this->_impl_.params_->MergeFrom(*from._impl_.params_);
3767 }
3768 }
3769 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
3770 ABSL_DCHECK(from._impl_.solution_stats_ != nullptr);
3771 if (_this->_impl_.solution_stats_ == nullptr) {
3772 _this->_impl_.solution_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_);
3773 } else {
3774 _this->_impl_.solution_stats_->MergeFrom(*from._impl_.solution_stats_);
3775 }
3776 }
3777 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
3778 _this->_impl_.polishing_phase_type_ = from._impl_.polishing_phase_type_;
3779 }
3780 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
3781 _this->_impl_.main_iteration_count_ = from._impl_.main_iteration_count_;
3782 }
3783 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
3784 _this->_impl_.termination_reason_ = from._impl_.termination_reason_;
3785 }
3786 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
3787 _this->_impl_.iteration_count_ = from._impl_.iteration_count_;
3788 }
3789 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
3790 _this->_impl_.solve_time_sec_ = from._impl_.solve_time_sec_;
3791 }
3792 }
3793 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
3794 _this->_impl_.solution_type_ = from._impl_.solution_type_;
3795 }
3796 _this->_impl_._has_bits_[0] |= cached_has_bits;
3797 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3798 from._internal_metadata_);
3799}
3800
3801void FeasibilityPolishingDetails::CopyFrom(const FeasibilityPolishingDetails& from) {
3802 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.FeasibilityPolishingDetails)
3803 if (&from == this) return;
3804 Clear();
3805 MergeFrom(from);
3806}
3808
3809void FeasibilityPolishingDetails::InternalSwap(FeasibilityPolishingDetails* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3810 using ::std::swap;
3811 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3812 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3813 _impl_.iteration_stats_.InternalSwap(&other->_impl_.iteration_stats_);
3814 ::google::protobuf::internal::memswap<
3815 PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.solution_type_)
3816 + sizeof(FeasibilityPolishingDetails::_impl_.solution_type_)
3817 - PROTOBUF_FIELD_OFFSET(FeasibilityPolishingDetails, _impl_.params_)>(
3818 reinterpret_cast<char*>(&_impl_.params_),
3819 reinterpret_cast<char*>(&other->_impl_.params_));
3820}
3821
3822::google::protobuf::Metadata FeasibilityPolishingDetails::GetMetadata() const {
3823 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
3824}
3825// ===================================================================
3826
3827class SolveLog::_Internal {
3828 public:
3829 using HasBits =
3830 decltype(::std::declval<SolveLog>()._impl_._has_bits_);
3831 static constexpr ::int32_t kHasBitsOffset =
3832 8 * PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._has_bits_);
3833};
3836 ::google::protobuf::internal::TSanWrite(&_impl_);
3837 if (_impl_.params_ != nullptr) _impl_.params_->Clear();
3838 ClearHasBit(_impl_._has_bits_[0],
3839 0x00000080U);
3840}
3841SolveLog::SolveLog(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3842#if defined(PROTOBUF_CUSTOM_VTABLE)
3843 : ::google::protobuf::Message(arena, SolveLog_class_data_.base()) {
3844#else // PROTOBUF_CUSTOM_VTABLE
3845 : ::google::protobuf::Message(arena) {
3846#endif // PROTOBUF_CUSTOM_VTABLE
3847 SharedCtor(arena);
3848 // @@protoc_insertion_point(arena_constructor:operations_research.pdlp.SolveLog)
3849}
3850PROTOBUF_NDEBUG_INLINE SolveLog::Impl_::Impl_(
3851 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
3852 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena, const Impl_& from,
3853 [[maybe_unused]] const ::operations_research::pdlp::SolveLog& from_msg)
3854 : _has_bits_{from._has_bits_},
3855 _cached_size_{0},
3856 iteration_stats_{visibility, arena, from.iteration_stats_},
3857 feasibility_polishing_details_{visibility, arena, from.feasibility_polishing_details_},
3858 instance_name_(arena, from.instance_name_),
3859 termination_string_(arena, from.termination_string_) {}
3860
3862 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
3863 const SolveLog& from)
3864#if defined(PROTOBUF_CUSTOM_VTABLE)
3865 : ::google::protobuf::Message(arena, SolveLog_class_data_.base()) {
3866#else // PROTOBUF_CUSTOM_VTABLE
3867 : ::google::protobuf::Message(arena) {
3868#endif // PROTOBUF_CUSTOM_VTABLE
3869 SolveLog* const _this = this;
3870 (void)_this;
3871 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
3872 from._internal_metadata_);
3873 new (&_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
3874 ::uint32_t cached_has_bits = _impl_._has_bits_[0];
3875 _impl_.solution_stats_ = (CheckHasBit(cached_has_bits, 0x00000010U))
3876 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_)
3877 : nullptr;
3878 _impl_.original_problem_stats_ = (CheckHasBit(cached_has_bits, 0x00000020U))
3879 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.original_problem_stats_)
3880 : nullptr;
3881 _impl_.preprocessed_problem_stats_ = (CheckHasBit(cached_has_bits, 0x00000040U))
3882 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.preprocessed_problem_stats_)
3883 : nullptr;
3884 _impl_.params_ = (CheckHasBit(cached_has_bits, 0x00000080U))
3885 ? ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_)
3886 : nullptr;
3887 ::memcpy(reinterpret_cast<char*>(&_impl_) +
3888 offsetof(Impl_, termination_reason_),
3889 reinterpret_cast<const char*>(&from._impl_) +
3890 offsetof(Impl_, termination_reason_),
3891 offsetof(Impl_, solution_type_) -
3892 offsetof(Impl_, termination_reason_) +
3893 sizeof(Impl_::solution_type_));
3894
3895 // @@protoc_insertion_point(copy_constructor:operations_research.pdlp.SolveLog)
3896}
3897PROTOBUF_NDEBUG_INLINE SolveLog::Impl_::Impl_(
3898 [[maybe_unused]] ::google::protobuf::internal::InternalVisibility visibility,
3899 [[maybe_unused]] ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3900 : _cached_size_{0},
3901 iteration_stats_{visibility, arena},
3902 feasibility_polishing_details_{visibility, arena},
3903 instance_name_(arena),
3904 termination_string_(arena) {}
3905
3906inline void SolveLog::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
3907 new (&_impl_) Impl_(internal_visibility(), arena);
3908 ::memset(reinterpret_cast<char*>(&_impl_) +
3909 offsetof(Impl_, solution_stats_),
3910 0,
3911 offsetof(Impl_, solution_type_) -
3912 offsetof(Impl_, solution_stats_) +
3913 sizeof(Impl_::solution_type_));
3914}
3916 // @@protoc_insertion_point(destructor:operations_research.pdlp.SolveLog)
3917 SharedDtor(*this);
3918}
3919inline void SolveLog::SharedDtor(MessageLite& self) {
3920 SolveLog& this_ = static_cast<SolveLog&>(self);
3921 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
3922 this_.CheckHasBitConsistency();
3923 }
3924 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
3925 ABSL_DCHECK(this_.GetArena() == nullptr);
3926 this_._impl_.instance_name_.Destroy();
3927 this_._impl_.termination_string_.Destroy();
3928 delete this_._impl_.solution_stats_;
3929 delete this_._impl_.original_problem_stats_;
3930 delete this_._impl_.preprocessed_problem_stats_;
3931 delete this_._impl_.params_;
3932 this_._impl_.~Impl_();
3933}
3934
3935inline void* PROTOBUF_NONNULL SolveLog::PlacementNew_(
3936 const void* PROTOBUF_NONNULL, void* PROTOBUF_NONNULL mem,
3937 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
3938 return ::new (mem) SolveLog(arena);
3939}
3940constexpr auto SolveLog::InternalNewImpl_() {
3941 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
3942 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_) +
3943 decltype(SolveLog::_impl_.iteration_stats_)::
3944 InternalGetArenaOffset(
3945 ::google::protobuf::Message::internal_visibility()),
3946 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_) +
3947 decltype(SolveLog::_impl_.feasibility_polishing_details_)::
3948 InternalGetArenaOffset(
3949 ::google::protobuf::Message::internal_visibility()),
3950 });
3951 if (arena_bits.has_value()) {
3952 return ::google::protobuf::internal::MessageCreator::CopyInit(
3953 sizeof(SolveLog), alignof(SolveLog), *arena_bits);
3954 } else {
3955 return ::google::protobuf::internal::MessageCreator(&SolveLog::PlacementNew_,
3956 sizeof(SolveLog),
3957 alignof(SolveLog));
3958 }
3959}
3960constexpr auto SolveLog::InternalGenerateClassData_() {
3961 return ::google::protobuf::internal::ClassDataFull{
3962 ::google::protobuf::internal::ClassData{
3964 &_table_.header,
3965 nullptr, // OnDemandRegisterArenaDtor
3966 nullptr, // IsInitialized
3967 &SolveLog::MergeImpl,
3968 ::google::protobuf::Message::GetNewImpl<SolveLog>(),
3969#if defined(PROTOBUF_CUSTOM_VTABLE)
3970 &SolveLog::SharedDtor,
3971 ::google::protobuf::Message::GetClearImpl<SolveLog>(), &SolveLog::ByteSizeLong,
3973#endif // PROTOBUF_CUSTOM_VTABLE
3974 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._cached_size_),
3975 false,
3976 },
3977 &SolveLog::kDescriptorMethods,
3979 nullptr, // tracker
3980 };
3981}
3982
3983PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
3984 ::google::protobuf::internal::ClassDataFull SolveLog_class_data_ =
3986
3987PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
3988SolveLog::GetClassData() const {
3989 ::google::protobuf::internal::PrefetchToLocalCache(&SolveLog_class_data_);
3990 ::google::protobuf::internal::PrefetchToLocalCache(SolveLog_class_data_.tc_table);
3992}
3993PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
3994const ::_pbi::TcParseTable<4, 13, 8, 0, 2>
3995SolveLog::_table_ = {
3996 {
3997 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_._has_bits_),
3998 0, // no _extensions_
3999 15, 120, // max_field_number, fast_idx_mask
4000 offsetof(decltype(_table_), field_lookup_table),
4001 4294934786, // skipmap
4002 offsetof(decltype(_table_), field_entries),
4003 13, // num_field_entries
4004 8, // num_aux_entries
4005 offsetof(decltype(_table_), aux_entries),
4006 SolveLog_class_data_.base(),
4007 nullptr, // post_loop_handler
4008 ::_pbi::TcParser::GenericFallback, // fallback
4009 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
4010 ::_pbi::TcParser::GetTable<::operations_research::pdlp::SolveLog>(), // to_prefetch
4011 #endif // PROTOBUF_PREFETCH_PARSE_TABLE
4012 }, {{
4013 {::_pbi::TcParser::MiniParse, {}},
4014 // optional string instance_name = 1;
4015 {::_pbi::TcParser::FastBS1,
4016 {10, 2, 0,
4017 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.instance_name_)}},
4018 {::_pbi::TcParser::MiniParse, {}},
4019 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4020 {::_pbi::TcParser::FastEr0S1,
4021 {24, 8, 13,
4022 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_reason_)}},
4023 // optional string termination_string = 4;
4024 {::_pbi::TcParser::FastBS1,
4025 {34, 3, 0,
4026 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_string_)}},
4027 // optional int32 iteration_count = 5;
4028 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(SolveLog, _impl_.iteration_count_), 9>(),
4029 {40, 9, 0,
4030 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_count_)}},
4031 // optional double solve_time_sec = 6;
4032 {::_pbi::TcParser::FastF64S1,
4033 {49, 10, 0,
4034 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solve_time_sec_)}},
4035 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4036 {::_pbi::TcParser::FastMtR1,
4037 {58, 0, 0,
4038 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_)}},
4039 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4040 {::_pbi::TcParser::FastMtS1,
4041 {66, 4, 1,
4042 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_)}},
4043 {::_pbi::TcParser::MiniParse, {}},
4044 // optional .operations_research.pdlp.PointType solution_type = 10;
4045 {::_pbi::TcParser::FastEr0S1,
4046 {80, 12, 6,
4047 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_)}},
4048 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4049 {::_pbi::TcParser::FastMtS1,
4050 {90, 5, 2,
4051 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.original_problem_stats_)}},
4052 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4053 {::_pbi::TcParser::FastMtS1,
4054 {98, 6, 3,
4055 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessed_problem_stats_)}},
4056 // optional double preprocessing_time_sec = 13;
4057 {::_pbi::TcParser::FastF64S1,
4058 {105, 11, 0,
4059 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessing_time_sec_)}},
4060 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4061 {::_pbi::TcParser::FastMtS1,
4062 {114, 7, 4,
4063 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.params_)}},
4064 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4065 {::_pbi::TcParser::FastMtR1,
4066 {122, 1, 5,
4067 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_)}},
4068 }}, {{
4069 65535, 65535
4070 }}, {{
4071 // optional string instance_name = 1;
4072 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.instance_name_), _Internal::kHasBitsOffset + 2, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
4073 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4074 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_reason_), _Internal::kHasBitsOffset + 8, 6, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
4075 // optional string termination_string = 4;
4076 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.termination_string_), _Internal::kHasBitsOffset + 3, 0, (0 | ::_fl::kFcOptional | ::_fl::kBytes | ::_fl::kRepAString)},
4077 // optional int32 iteration_count = 5;
4078 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_count_), _Internal::kHasBitsOffset + 9, 0, (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
4079 // optional double solve_time_sec = 6;
4080 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solve_time_sec_), _Internal::kHasBitsOffset + 10, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
4081 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4082 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.iteration_stats_), _Internal::kHasBitsOffset + 0, 0, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
4083 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4084 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_), _Internal::kHasBitsOffset + 4, 1, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
4085 // optional .operations_research.pdlp.PointType solution_type = 10;
4086 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_), _Internal::kHasBitsOffset + 12, 7, (0 | ::_fl::kFcOptional | ::_fl::kEnumRange)},
4087 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4088 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.original_problem_stats_), _Internal::kHasBitsOffset + 5, 2, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
4089 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4090 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessed_problem_stats_), _Internal::kHasBitsOffset + 6, 3, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
4091 // optional double preprocessing_time_sec = 13;
4092 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.preprocessing_time_sec_), _Internal::kHasBitsOffset + 11, 0, (0 | ::_fl::kFcOptional | ::_fl::kDouble)},
4093 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4094 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.params_), _Internal::kHasBitsOffset + 7, 4, (0 | ::_fl::kFcOptional | ::_fl::kMessage | ::_fl::kTvTable)},
4095 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4096 {PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.feasibility_polishing_details_), _Internal::kHasBitsOffset + 1, 5, (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
4097 }},
4098 {{
4099 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
4100 {::_pbi::TcParser::GetTable<::operations_research::pdlp::IterationStats>()},
4101 {::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>()},
4102 {::_pbi::TcParser::GetTable<::operations_research::pdlp::QuadraticProgramStats>()},
4103 {::_pbi::TcParser::GetTable<::operations_research::pdlp::PrimalDualHybridGradientParams>()},
4104 {::_pbi::TcParser::GetTable<::operations_research::pdlp::FeasibilityPolishingDetails>()},
4105 {0, 13},
4106 {0, 6},
4107 }},
4108 {{
4109 }},
4110};
4111PROTOBUF_NOINLINE void SolveLog::Clear() {
4112// @@protoc_insertion_point(message_clear_start:operations_research.pdlp.SolveLog)
4113 ::google::protobuf::internal::TSanWrite(&_impl_);
4114 ::uint32_t cached_has_bits = 0;
4115 // Prevent compiler warnings about cached_has_bits being unused
4116 (void) cached_has_bits;
4117
4118 cached_has_bits = _impl_._has_bits_[0];
4119 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
4120 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
4121 _impl_.iteration_stats_.Clear();
4122 }
4123 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
4124 _impl_.feasibility_polishing_details_.Clear();
4125 }
4126 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
4127 _impl_.instance_name_.ClearNonDefaultToEmpty();
4128 }
4129 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
4130 _impl_.termination_string_.ClearNonDefaultToEmpty();
4131 }
4132 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
4133 ABSL_DCHECK(_impl_.solution_stats_ != nullptr);
4134 _impl_.solution_stats_->Clear();
4135 }
4136 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
4137 ABSL_DCHECK(_impl_.original_problem_stats_ != nullptr);
4138 _impl_.original_problem_stats_->Clear();
4139 }
4140 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
4141 ABSL_DCHECK(_impl_.preprocessed_problem_stats_ != nullptr);
4142 _impl_.preprocessed_problem_stats_->Clear();
4143 }
4144 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
4145 ABSL_DCHECK(_impl_.params_ != nullptr);
4146 _impl_.params_->Clear();
4147 }
4148 }
4149 if (BatchCheckHasBit(cached_has_bits, 0x00001f00U)) {
4150 ::memset(&_impl_.termination_reason_, 0, static_cast<::size_t>(
4151 reinterpret_cast<char*>(&_impl_.solution_type_) -
4152 reinterpret_cast<char*>(&_impl_.termination_reason_)) + sizeof(_impl_.solution_type_));
4153 }
4154 _impl_._has_bits_.Clear();
4155 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
4156}
4157
4158#if defined(PROTOBUF_CUSTOM_VTABLE)
4159::uint8_t* PROTOBUF_NONNULL SolveLog::_InternalSerialize(
4160 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
4161 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
4162 const SolveLog& this_ = static_cast<const SolveLog&>(base);
4163#else // PROTOBUF_CUSTOM_VTABLE
4164::uint8_t* PROTOBUF_NONNULL SolveLog::_InternalSerialize(
4165 ::uint8_t* PROTOBUF_NONNULL target,
4166 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) const {
4167 const SolveLog& this_ = *this;
4168#endif // PROTOBUF_CUSTOM_VTABLE
4169 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
4170 this_.CheckHasBitConsistency();
4172 // @@protoc_insertion_point(serialize_to_array_start:operations_research.pdlp.SolveLog)
4173 ::uint32_t cached_has_bits = 0;
4174 (void)cached_has_bits;
4175
4176 cached_has_bits = this_._impl_._has_bits_[0];
4177 // optional string instance_name = 1;
4178 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
4179 const ::std::string& _s = this_._internal_instance_name();
4180 target = stream->WriteStringMaybeAliased(1, _s, target);
4181 }
4182
4183 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4184 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
4185 target = stream->EnsureSpace(target);
4186 target = ::_pbi::WireFormatLite::WriteEnumToArray(
4187 3, this_._internal_termination_reason(), target);
4188 }
4189
4190 // optional string termination_string = 4;
4191 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
4192 const ::std::string& _s = this_._internal_termination_string();
4193 target = stream->WriteStringMaybeAliased(4, _s, target);
4194 }
4195
4196 // optional int32 iteration_count = 5;
4197 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
4198 target =
4199 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
4200 stream, this_._internal_iteration_count(), target);
4201 }
4202
4203 // optional double solve_time_sec = 6;
4204 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
4205 target = stream->EnsureSpace(target);
4206 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
4207 6, this_._internal_solve_time_sec(), target);
4208 }
4209
4210 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4211 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
4212 for (unsigned i = 0, n = static_cast<unsigned>(
4213 this_._internal_iteration_stats_size());
4214 i < n; i++) {
4215 const auto& repfield = this_._internal_iteration_stats().Get(i);
4216 target =
4217 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4218 7, repfield, repfield.GetCachedSize(),
4219 target, stream);
4220 }
4221 }
4222
4223 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4224 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
4225 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4226 8, *this_._impl_.solution_stats_, this_._impl_.solution_stats_->GetCachedSize(), target,
4227 stream);
4228 }
4229
4230 // optional .operations_research.pdlp.PointType solution_type = 10;
4231 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
4232 target = stream->EnsureSpace(target);
4233 target = ::_pbi::WireFormatLite::WriteEnumToArray(
4234 10, this_._internal_solution_type(), target);
4235 }
4236
4237 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4238 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
4239 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4240 11, *this_._impl_.original_problem_stats_, this_._impl_.original_problem_stats_->GetCachedSize(), target,
4241 stream);
4242 }
4243
4244 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4245 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
4246 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4247 12, *this_._impl_.preprocessed_problem_stats_, this_._impl_.preprocessed_problem_stats_->GetCachedSize(), target,
4248 stream);
4249 }
4250
4251 // optional double preprocessing_time_sec = 13;
4252 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
4253 target = stream->EnsureSpace(target);
4254 target = ::_pbi::WireFormatLite::WriteDoubleToArray(
4255 13, this_._internal_preprocessing_time_sec(), target);
4256 }
4257
4258 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4259 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
4260 target = ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4261 14, *this_._impl_.params_, this_._impl_.params_->GetCachedSize(), target,
4262 stream);
4263 }
4264
4265 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4266 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
4267 for (unsigned i = 0, n = static_cast<unsigned>(
4268 this_._internal_feasibility_polishing_details_size());
4269 i < n; i++) {
4270 const auto& repfield = this_._internal_feasibility_polishing_details().Get(i);
4271 target =
4272 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
4273 15, repfield, repfield.GetCachedSize(),
4274 target, stream);
4275 }
4276 }
4277
4278 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
4279 target =
4280 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
4281 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
4282 }
4283 // @@protoc_insertion_point(serialize_to_array_end:operations_research.pdlp.SolveLog)
4284 return target;
4285}
4286
4287#if defined(PROTOBUF_CUSTOM_VTABLE)
4288::size_t SolveLog::ByteSizeLong(const MessageLite& base) {
4289 const SolveLog& this_ = static_cast<const SolveLog&>(base);
4290#else // PROTOBUF_CUSTOM_VTABLE
4291::size_t SolveLog::ByteSizeLong() const {
4292 const SolveLog& this_ = *this;
4293#endif // PROTOBUF_CUSTOM_VTABLE
4294 // @@protoc_insertion_point(message_byte_size_start:operations_research.pdlp.SolveLog)
4295 ::size_t total_size = 0;
4296
4297 ::uint32_t cached_has_bits = 0;
4298 // Prevent compiler warnings about cached_has_bits being unused
4299 (void)cached_has_bits;
4300
4301 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
4302 cached_has_bits = this_._impl_._has_bits_[0];
4303 total_size += ::absl::popcount(0x00000c00U & cached_has_bits) * 9;
4304 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
4305 // repeated .operations_research.pdlp.IterationStats iteration_stats = 7;
4306 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
4307 total_size += 1UL * this_._internal_iteration_stats_size();
4308 for (const auto& msg : this_._internal_iteration_stats()) {
4309 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
4310 }
4311 }
4312 // repeated .operations_research.pdlp.FeasibilityPolishingDetails feasibility_polishing_details = 15;
4313 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
4314 total_size += 1UL * this_._internal_feasibility_polishing_details_size();
4315 for (const auto& msg : this_._internal_feasibility_polishing_details()) {
4316 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
4317 }
4318 }
4319 // optional string instance_name = 1;
4320 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
4321 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
4322 this_._internal_instance_name());
4323 }
4324 // optional string termination_string = 4;
4325 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
4326 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
4327 this_._internal_termination_string());
4328 }
4329 // optional .operations_research.pdlp.IterationStats solution_stats = 8;
4330 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
4331 total_size += 1 +
4332 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.solution_stats_);
4333 }
4334 // optional .operations_research.pdlp.QuadraticProgramStats original_problem_stats = 11;
4335 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
4336 total_size += 1 +
4337 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.original_problem_stats_);
4338 }
4339 // optional .operations_research.pdlp.QuadraticProgramStats preprocessed_problem_stats = 12;
4340 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
4341 total_size += 1 +
4342 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.preprocessed_problem_stats_);
4343 }
4344 // optional .operations_research.pdlp.PrimalDualHybridGradientParams params = 14;
4345 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
4346 total_size += 1 +
4347 ::google::protobuf::internal::WireFormatLite::MessageSize(*this_._impl_.params_);
4348 }
4349 }
4350 if (BatchCheckHasBit(cached_has_bits, 0x00001300U)) {
4351 // optional .operations_research.pdlp.TerminationReason termination_reason = 3;
4352 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
4353 total_size += 1 +
4354 ::_pbi::WireFormatLite::EnumSize(this_._internal_termination_reason());
4355 }
4356 // optional int32 iteration_count = 5;
4357 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
4358 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
4359 this_._internal_iteration_count());
4360 }
4361 // optional .operations_research.pdlp.PointType solution_type = 10;
4362 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
4363 total_size += 1 +
4364 ::_pbi::WireFormatLite::EnumSize(this_._internal_solution_type());
4365 }
4366 }
4367 return this_.MaybeComputeUnknownFieldsSize(total_size,
4368 &this_._impl_._cached_size_);
4369}
4370
4371void SolveLog::MergeImpl(::google::protobuf::MessageLite& to_msg,
4372 const ::google::protobuf::MessageLite& from_msg) {
4373 auto* const _this =
4374 static_cast<SolveLog*>(&to_msg);
4375 auto& from = static_cast<const SolveLog&>(from_msg);
4376 if constexpr (::_pbi::DebugHardenCheckHasBitConsistency()) {
4377 from.CheckHasBitConsistency();
4378 }
4379 ::google::protobuf::Arena* arena = _this->GetArena();
4380 // @@protoc_insertion_point(class_specific_merge_from_start:operations_research.pdlp.SolveLog)
4381 ABSL_DCHECK_NE(&from, _this);
4382 ::uint32_t cached_has_bits = 0;
4383 (void)cached_has_bits;
4384
4385 cached_has_bits = from._impl_._has_bits_[0];
4386 if (BatchCheckHasBit(cached_has_bits, 0x000000ffU)) {
4387 if (CheckHasBitForRepeated(cached_has_bits, 0x00000001U)) {
4388 _this->_internal_mutable_iteration_stats()->InternalMergeFromWithArena(
4389 ::google::protobuf::MessageLite::internal_visibility(), arena,
4390 from._internal_iteration_stats());
4391 }
4392 if (CheckHasBitForRepeated(cached_has_bits, 0x00000002U)) {
4393 _this->_internal_mutable_feasibility_polishing_details()->InternalMergeFromWithArena(
4394 ::google::protobuf::MessageLite::internal_visibility(), arena,
4395 from._internal_feasibility_polishing_details());
4396 }
4397 if (CheckHasBit(cached_has_bits, 0x00000004U)) {
4398 _this->_internal_set_instance_name(from._internal_instance_name());
4399 }
4400 if (CheckHasBit(cached_has_bits, 0x00000008U)) {
4401 _this->_internal_set_termination_string(from._internal_termination_string());
4402 }
4403 if (CheckHasBit(cached_has_bits, 0x00000010U)) {
4404 ABSL_DCHECK(from._impl_.solution_stats_ != nullptr);
4405 if (_this->_impl_.solution_stats_ == nullptr) {
4406 _this->_impl_.solution_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.solution_stats_);
4407 } else {
4408 _this->_impl_.solution_stats_->MergeFrom(*from._impl_.solution_stats_);
4409 }
4410 }
4411 if (CheckHasBit(cached_has_bits, 0x00000020U)) {
4412 ABSL_DCHECK(from._impl_.original_problem_stats_ != nullptr);
4413 if (_this->_impl_.original_problem_stats_ == nullptr) {
4414 _this->_impl_.original_problem_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.original_problem_stats_);
4415 } else {
4416 _this->_impl_.original_problem_stats_->MergeFrom(*from._impl_.original_problem_stats_);
4417 }
4418 }
4419 if (CheckHasBit(cached_has_bits, 0x00000040U)) {
4420 ABSL_DCHECK(from._impl_.preprocessed_problem_stats_ != nullptr);
4421 if (_this->_impl_.preprocessed_problem_stats_ == nullptr) {
4422 _this->_impl_.preprocessed_problem_stats_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.preprocessed_problem_stats_);
4423 } else {
4424 _this->_impl_.preprocessed_problem_stats_->MergeFrom(*from._impl_.preprocessed_problem_stats_);
4425 }
4426 }
4427 if (CheckHasBit(cached_has_bits, 0x00000080U)) {
4428 ABSL_DCHECK(from._impl_.params_ != nullptr);
4429 if (_this->_impl_.params_ == nullptr) {
4430 _this->_impl_.params_ = ::google::protobuf::Message::CopyConstruct(arena, *from._impl_.params_);
4431 } else {
4432 _this->_impl_.params_->MergeFrom(*from._impl_.params_);
4433 }
4434 }
4435 }
4436 if (BatchCheckHasBit(cached_has_bits, 0x00001f00U)) {
4437 if (CheckHasBit(cached_has_bits, 0x00000100U)) {
4438 _this->_impl_.termination_reason_ = from._impl_.termination_reason_;
4439 }
4440 if (CheckHasBit(cached_has_bits, 0x00000200U)) {
4441 _this->_impl_.iteration_count_ = from._impl_.iteration_count_;
4442 }
4443 if (CheckHasBit(cached_has_bits, 0x00000400U)) {
4444 _this->_impl_.solve_time_sec_ = from._impl_.solve_time_sec_;
4445 }
4446 if (CheckHasBit(cached_has_bits, 0x00000800U)) {
4447 _this->_impl_.preprocessing_time_sec_ = from._impl_.preprocessing_time_sec_;
4448 }
4449 if (CheckHasBit(cached_has_bits, 0x00001000U)) {
4450 _this->_impl_.solution_type_ = from._impl_.solution_type_;
4451 }
4452 }
4453 _this->_impl_._has_bits_[0] |= cached_has_bits;
4454 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
4455 from._internal_metadata_);
4456}
4457
4458void SolveLog::CopyFrom(const SolveLog& from) {
4459 // @@protoc_insertion_point(class_specific_copy_from_start:operations_research.pdlp.SolveLog)
4460 if (&from == this) return;
4461 Clear();
4462 MergeFrom(from);
4463}
4464
4466void SolveLog::InternalSwap(SolveLog* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
4467 using ::std::swap;
4468 auto* arena = GetArena();
4469 ABSL_DCHECK_EQ(arena, other->GetArena());
4470 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
4471 swap(_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
4472 _impl_.iteration_stats_.InternalSwap(&other->_impl_.iteration_stats_);
4473 _impl_.feasibility_polishing_details_.InternalSwap(&other->_impl_.feasibility_polishing_details_);
4474 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.instance_name_, &other->_impl_.instance_name_, arena);
4475 ::_pbi::ArenaStringPtr::InternalSwap(&_impl_.termination_string_, &other->_impl_.termination_string_, arena);
4476 ::google::protobuf::internal::memswap<
4477 PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_type_)
4478 + sizeof(SolveLog::_impl_.solution_type_)
4479 - PROTOBUF_FIELD_OFFSET(SolveLog, _impl_.solution_stats_)>(
4480 reinterpret_cast<char*>(&_impl_.solution_stats_),
4481 reinterpret_cast<char*>(&other->_impl_.solution_stats_));
4482}
4483
4484::google::protobuf::Metadata SolveLog::GetMetadata() const {
4485 return ::google::protobuf::Message::GetMetadataImpl(GetClassData()->full());
4486}
4487// @@protoc_insertion_point(namespace_scope)
4488} // namespace pdlp
4489} // namespace operations_research
4490namespace google {
4491namespace protobuf {
4492} // namespace protobuf
4493} // namespace google
4494// @@protoc_insertion_point(global_scope)
4495PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
4496 _static_init2_ [[maybe_unused]] =
4498 ::std::false_type{});
4499#include "google/protobuf/port_undef.inc"
static PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 ::std::false_type _static_init2_
static const ::_pb::Message *PROTOBUF_NONNULL const file_default_instances[]
decltype(::std::declval< ConvergenceInformation >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
::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
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void MergeFrom(const ConvergenceInformation &from)
void MergeFrom(const FeasibilityPolishingDetails &from)
::google::protobuf::Metadata GetMetadata() const
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
ABSL_ATTRIBUTE_REINITIALIZES void Clear() 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
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::MessageLite
void CopyFrom(const IterationStats &from)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static constexpr auto InternalGenerateClassData_()
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)
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 PointMetadata &from)
::google::protobuf::Metadata GetMetadata() const
decltype(::std::declval< QuadraticProgramStats >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
::google::protobuf::Metadata GetMetadata() const
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::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
friend class ::google::protobuf::MessageLite
::google::protobuf::Metadata GetMetadata() const
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::size_t ByteSizeLong() const final
static constexpr auto InternalGenerateClassData_()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const SolveLog &from)
void CopyFrom(const SolveLog &from)
static constexpr ::_pbi::MigrationSchema *PROTOBUF_NULLABLE schemas
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_
OR-Tools root namespace.
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