OR-Tools  9.1
linear_solver.pb.cc
Go to the documentation of this file.
1// Generated by the protocol buffer compiler. DO NOT EDIT!
2// source: ortools/linear_solver/linear_solver.proto
3
5
6#include <algorithm>
7
8#include <google/protobuf/io/coded_stream.h>
9#include <google/protobuf/extension_set.h>
10#include <google/protobuf/wire_format_lite.h>
11#include <google/protobuf/descriptor.h>
12#include <google/protobuf/generated_message_reflection.h>
13#include <google/protobuf/reflection_ops.h>
14#include <google/protobuf/wire_format.h>
15// @@protoc_insertion_point(includes)
16#include <google/protobuf/port_def.inc>
17
18PROTOBUF_PRAGMA_INIT_SEG
19namespace operations_research {
21 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
22 : name_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
23 , objective_coefficient_(0)
24 , is_integer_(false)
25 , branching_priority_(0)
26 , lower_bound_(-std::numeric_limits<double>::infinity())
27 , upper_bound_(std::numeric_limits<double>::infinity()){}
30 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
32 union {
34 };
35};
36PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_;
38 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
39 : var_index_()
40 , _var_index_cached_byte_size_(0)
41 , coefficient_()
42 , name_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
43 , is_lazy_(false)
44 , lower_bound_(-std::numeric_limits<double>::infinity())
45 , upper_bound_(std::numeric_limits<double>::infinity()){}
48 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
50 union {
52 };
53};
54PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_;
56 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
57 : name_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
58 , _oneof_case_{}{}
61 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
63 union {
65 };
66};
69 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
70 : constraint_(nullptr)
71 , var_index_(0)
72 , var_value_(0){}
75 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
77 union {
79 };
80};
83 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
84 : var_index_()
85 , weight_()
86 , type_(0)
87{}
90 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
92 union {
94 };
95};
96PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_;
98 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
99 : var_index_()
100 , coefficient_()
101 , qvar1_index_()
102 , qvar2_index_()
103 , qcoefficient_()
104 , lower_bound_(-std::numeric_limits<double>::infinity())
105 , upper_bound_(std::numeric_limits<double>::infinity()){}
108 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
110 union {
112 };
113};
116 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
117 : var_index_(0)
118 , resultant_var_index_(0){}
121 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
123 union {
125 };
126};
127PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPAbsConstraintDefaultTypeInternal _MPAbsConstraint_default_instance_;
129 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
130 : var_index_()
131 , resultant_var_index_(0){}
134 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
136 union {
138 };
139};
140PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPArrayConstraintDefaultTypeInternal _MPArrayConstraint_default_instance_;
142 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
143 : var_index_()
144 , constant_(0)
145 , resultant_var_index_(0){}
148 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
150 union {
152 };
153};
156 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
157 : qvar1_index_()
158 , qvar2_index_()
159 , coefficient_(){}
162 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
164 union {
166 };
167};
170 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
171 : var_index_()
172 , _var_index_cached_byte_size_(0)
173 , var_value_(){}
176 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
178 union {
180 };
181};
184 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
185 : variable_()
186 , constraint_()
187 , general_constraint_()
188 , name_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
189 , solution_hint_(nullptr)
190 , quadratic_objective_(nullptr)
191 , objective_offset_(0)
192 , maximize_(false){}
195 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
197 union {
199 };
200};
201PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_;
203 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
204 : value_(0){}
207 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
209 union {
211 };
212};
213PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_;
215 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
216 : relative_mip_gap_(nullptr)
217 , primal_tolerance_(nullptr)
218 , dual_tolerance_(nullptr)
219 , lp_algorithm_(0)
220
221 , presolve_(0)
222
223 , scaling_(0)
224{}
227 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
229 union {
231 };
232};
235 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized){}
238 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
240 union {
242 };
243};
246 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized){}
249 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
251 union {
253 };
254};
257 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
258 : variable_overrides_(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{})
259 , constraint_overrides_(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{})
260 , baseline_model_file_path_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string){}
263 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
265 union {
267 };
268};
269PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelDeltaProtoDefaultTypeInternal _MPModelDeltaProto_default_instance_;
271 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
272 : solver_specific_parameters_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
273 , model_(nullptr)
274 , model_delta_(nullptr)
275 , solver_time_limit_seconds_(0)
276 , enable_internal_solver_output_(false)
277 , ignore_solver_specific_parameters_failure_(false)
278 , populate_additional_solutions_up_to_(0)
279 , solver_type_(2)
280{}
283 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
285 union {
287 };
288};
289PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_;
291 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
292 : variable_value_()
293 , objective_value_(0){}
296 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
298 union {
300 };
301};
302PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolutionDefaultTypeInternal _MPSolution_default_instance_;
304 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
305 : solve_wall_time_seconds_(0)
306 , solve_user_time_seconds_(0){}
309 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
311 union {
313 };
314};
315PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolveInfoDefaultTypeInternal _MPSolveInfo_default_instance_;
317 ::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized)
318 : variable_value_()
319 , dual_value_()
320 , reduced_cost_()
321 , additional_solutions_()
322 , status_str_(&::PROTOBUF_NAMESPACE_ID::internal::fixed_address_empty_string)
323 , solve_info_(nullptr)
324 , objective_value_(0)
325 , best_objective_bound_(0)
326 , status_(99)
327{}
330 : _instance(::PROTOBUF_NAMESPACE_ID::internal::ConstantInitialized{}) {}
332 union {
334 };
335};
337} // namespace operations_research
339static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* file_level_enum_descriptors_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto[4];
340static constexpr ::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const** file_level_service_descriptors_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto = nullptr;
341
343 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, _has_bits_),
344 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, _internal_metadata_),
345 ~0u, // no _extensions_
346 ~0u, // no _oneof_case_
347 ~0u, // no _weak_field_map_
348 ~0u, // no _inlined_string_donated_
349 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, lower_bound_),
350 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, upper_bound_),
351 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, objective_coefficient_),
352 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, is_integer_),
353 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, name_),
354 PROTOBUF_FIELD_OFFSET(::operations_research::MPVariableProto, branching_priority_),
355 4,
356 5,
357 1,
358 2,
359 0,
360 3,
361 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, _has_bits_),
362 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, _internal_metadata_),
363 ~0u, // no _extensions_
364 ~0u, // no _oneof_case_
365 ~0u, // no _weak_field_map_
366 ~0u, // no _inlined_string_donated_
367 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, var_index_),
368 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, coefficient_),
369 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, lower_bound_),
370 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, upper_bound_),
371 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, name_),
372 PROTOBUF_FIELD_OFFSET(::operations_research::MPConstraintProto, is_lazy_),
373 ~0u,
374 ~0u,
375 2,
376 3,
377 0,
378 1,
379 PROTOBUF_FIELD_OFFSET(::operations_research::MPGeneralConstraintProto, _has_bits_),
380 PROTOBUF_FIELD_OFFSET(::operations_research::MPGeneralConstraintProto, _internal_metadata_),
381 ~0u, // no _extensions_
382 PROTOBUF_FIELD_OFFSET(::operations_research::MPGeneralConstraintProto, _oneof_case_[0]),
383 ~0u, // no _weak_field_map_
384 ~0u, // no _inlined_string_donated_
385 PROTOBUF_FIELD_OFFSET(::operations_research::MPGeneralConstraintProto, name_),
386 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
387 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
388 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
389 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
390 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
391 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
392 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
393 ::PROTOBUF_NAMESPACE_ID::internal::kInvalidFieldOffsetTag,
394 PROTOBUF_FIELD_OFFSET(::operations_research::MPGeneralConstraintProto, general_constraint_),
395 0,
396 ~0u,
397 ~0u,
398 ~0u,
399 ~0u,
400 ~0u,
401 ~0u,
402 ~0u,
403 ~0u,
404 PROTOBUF_FIELD_OFFSET(::operations_research::MPIndicatorConstraint, _has_bits_),
405 PROTOBUF_FIELD_OFFSET(::operations_research::MPIndicatorConstraint, _internal_metadata_),
406 ~0u, // no _extensions_
407 ~0u, // no _oneof_case_
408 ~0u, // no _weak_field_map_
409 ~0u, // no _inlined_string_donated_
410 PROTOBUF_FIELD_OFFSET(::operations_research::MPIndicatorConstraint, var_index_),
411 PROTOBUF_FIELD_OFFSET(::operations_research::MPIndicatorConstraint, var_value_),
412 PROTOBUF_FIELD_OFFSET(::operations_research::MPIndicatorConstraint, constraint_),
413 1,
414 2,
415 0,
416 PROTOBUF_FIELD_OFFSET(::operations_research::MPSosConstraint, _has_bits_),
417 PROTOBUF_FIELD_OFFSET(::operations_research::MPSosConstraint, _internal_metadata_),
418 ~0u, // no _extensions_
419 ~0u, // no _oneof_case_
420 ~0u, // no _weak_field_map_
421 ~0u, // no _inlined_string_donated_
422 PROTOBUF_FIELD_OFFSET(::operations_research::MPSosConstraint, type_),
423 PROTOBUF_FIELD_OFFSET(::operations_research::MPSosConstraint, var_index_),
424 PROTOBUF_FIELD_OFFSET(::operations_research::MPSosConstraint, weight_),
425 0,
426 ~0u,
427 ~0u,
428 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, _has_bits_),
429 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, _internal_metadata_),
430 ~0u, // no _extensions_
431 ~0u, // no _oneof_case_
432 ~0u, // no _weak_field_map_
433 ~0u, // no _inlined_string_donated_
434 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, var_index_),
435 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, coefficient_),
436 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, qvar1_index_),
437 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, qvar2_index_),
438 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, qcoefficient_),
439 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, lower_bound_),
440 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticConstraint, upper_bound_),
441 ~0u,
442 ~0u,
443 ~0u,
444 ~0u,
445 ~0u,
446 0,
447 1,
448 PROTOBUF_FIELD_OFFSET(::operations_research::MPAbsConstraint, _has_bits_),
449 PROTOBUF_FIELD_OFFSET(::operations_research::MPAbsConstraint, _internal_metadata_),
450 ~0u, // no _extensions_
451 ~0u, // no _oneof_case_
452 ~0u, // no _weak_field_map_
453 ~0u, // no _inlined_string_donated_
454 PROTOBUF_FIELD_OFFSET(::operations_research::MPAbsConstraint, var_index_),
455 PROTOBUF_FIELD_OFFSET(::operations_research::MPAbsConstraint, resultant_var_index_),
456 0,
457 1,
458 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayConstraint, _has_bits_),
459 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayConstraint, _internal_metadata_),
460 ~0u, // no _extensions_
461 ~0u, // no _oneof_case_
462 ~0u, // no _weak_field_map_
463 ~0u, // no _inlined_string_donated_
464 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayConstraint, var_index_),
465 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayConstraint, resultant_var_index_),
466 ~0u,
467 0,
468 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayWithConstantConstraint, _has_bits_),
469 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayWithConstantConstraint, _internal_metadata_),
470 ~0u, // no _extensions_
471 ~0u, // no _oneof_case_
472 ~0u, // no _weak_field_map_
473 ~0u, // no _inlined_string_donated_
474 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayWithConstantConstraint, var_index_),
475 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayWithConstantConstraint, constant_),
476 PROTOBUF_FIELD_OFFSET(::operations_research::MPArrayWithConstantConstraint, resultant_var_index_),
477 ~0u,
478 0,
479 1,
480 ~0u, // no _has_bits_
481 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticObjective, _internal_metadata_),
482 ~0u, // no _extensions_
483 ~0u, // no _oneof_case_
484 ~0u, // no _weak_field_map_
485 ~0u, // no _inlined_string_donated_
486 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticObjective, qvar1_index_),
487 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticObjective, qvar2_index_),
488 PROTOBUF_FIELD_OFFSET(::operations_research::MPQuadraticObjective, coefficient_),
489 ~0u, // no _has_bits_
490 PROTOBUF_FIELD_OFFSET(::operations_research::PartialVariableAssignment, _internal_metadata_),
491 ~0u, // no _extensions_
492 ~0u, // no _oneof_case_
493 ~0u, // no _weak_field_map_
494 ~0u, // no _inlined_string_donated_
495 PROTOBUF_FIELD_OFFSET(::operations_research::PartialVariableAssignment, var_index_),
496 PROTOBUF_FIELD_OFFSET(::operations_research::PartialVariableAssignment, var_value_),
497 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, _has_bits_),
498 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, _internal_metadata_),
499 ~0u, // no _extensions_
500 ~0u, // no _oneof_case_
501 ~0u, // no _weak_field_map_
502 ~0u, // no _inlined_string_donated_
503 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, variable_),
504 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, constraint_),
505 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, general_constraint_),
506 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, maximize_),
507 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, objective_offset_),
508 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, quadratic_objective_),
509 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, name_),
510 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelProto, solution_hint_),
511 ~0u,
512 ~0u,
513 ~0u,
514 4,
515 3,
516 2,
517 0,
518 1,
519 PROTOBUF_FIELD_OFFSET(::operations_research::OptionalDouble, _has_bits_),
520 PROTOBUF_FIELD_OFFSET(::operations_research::OptionalDouble, _internal_metadata_),
521 ~0u, // no _extensions_
522 ~0u, // no _oneof_case_
523 ~0u, // no _weak_field_map_
524 ~0u, // no _inlined_string_donated_
525 PROTOBUF_FIELD_OFFSET(::operations_research::OptionalDouble, value_),
526 0,
527 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, _has_bits_),
528 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, _internal_metadata_),
529 ~0u, // no _extensions_
530 ~0u, // no _oneof_case_
531 ~0u, // no _weak_field_map_
532 ~0u, // no _inlined_string_donated_
533 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, relative_mip_gap_),
534 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, primal_tolerance_),
535 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, dual_tolerance_),
536 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, lp_algorithm_),
537 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, presolve_),
538 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolverCommonParameters, scaling_),
539 0,
540 1,
541 2,
542 3,
543 4,
544 5,
546 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse, _internal_metadata_),
547 ~0u, // no _extensions_
548 ~0u, // no _oneof_case_
549 ~0u, // no _weak_field_map_
550 ~0u, // no _inlined_string_donated_
553 0,
554 1,
556 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse, _internal_metadata_),
557 ~0u, // no _extensions_
558 ~0u, // no _oneof_case_
559 ~0u, // no _weak_field_map_
560 ~0u, // no _inlined_string_donated_
563 0,
564 1,
565 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto, _has_bits_),
566 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto, _internal_metadata_),
567 ~0u, // no _extensions_
568 ~0u, // no _oneof_case_
569 ~0u, // no _weak_field_map_
570 ~0u, // no _inlined_string_donated_
571 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto, baseline_model_file_path_),
572 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto, variable_overrides_),
573 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelDeltaProto, constraint_overrides_),
574 0,
575 ~0u,
576 ~0u,
577 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, _has_bits_),
578 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, _internal_metadata_),
579 ~0u, // no _extensions_
580 ~0u, // no _oneof_case_
581 ~0u, // no _weak_field_map_
582 ~0u, // no _inlined_string_donated_
583 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, model_),
584 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, solver_type_),
585 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, solver_time_limit_seconds_),
586 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, enable_internal_solver_output_),
587 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, solver_specific_parameters_),
588 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, ignore_solver_specific_parameters_failure_),
589 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, model_delta_),
590 PROTOBUF_FIELD_OFFSET(::operations_research::MPModelRequest, populate_additional_solutions_up_to_),
591 1,
592 7,
593 3,
594 4,
595 0,
596 5,
597 2,
598 6,
599 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolution, _has_bits_),
600 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolution, _internal_metadata_),
601 ~0u, // no _extensions_
602 ~0u, // no _oneof_case_
603 ~0u, // no _weak_field_map_
604 ~0u, // no _inlined_string_donated_
605 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolution, objective_value_),
606 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolution, variable_value_),
607 0,
608 ~0u,
609 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolveInfo, _has_bits_),
610 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolveInfo, _internal_metadata_),
611 ~0u, // no _extensions_
612 ~0u, // no _oneof_case_
613 ~0u, // no _weak_field_map_
614 ~0u, // no _inlined_string_donated_
615 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolveInfo, solve_wall_time_seconds_),
616 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolveInfo, solve_user_time_seconds_),
617 0,
618 1,
619 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, _has_bits_),
620 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, _internal_metadata_),
621 ~0u, // no _extensions_
622 ~0u, // no _oneof_case_
623 ~0u, // no _weak_field_map_
624 ~0u, // no _inlined_string_donated_
625 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, status_),
626 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, status_str_),
627 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, objective_value_),
628 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, best_objective_bound_),
629 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, variable_value_),
630 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, solve_info_),
631 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, dual_value_),
632 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, reduced_cost_),
633 PROTOBUF_FIELD_OFFSET(::operations_research::MPSolutionResponse, additional_solutions_),
634 4,
635 0,
636 2,
637 3,
638 ~0u,
639 1,
640 ~0u,
641 ~0u,
642 ~0u,
643};
644static const ::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema schemas[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) = {
645 { 0, 12, -1, sizeof(::operations_research::MPVariableProto)},
646 { 18, 30, -1, sizeof(::operations_research::MPConstraintProto)},
649 { 73, 82, -1, sizeof(::operations_research::MPSosConstraint)},
651 { 105, 113, -1, sizeof(::operations_research::MPAbsConstraint)},
652 { 115, 123, -1, sizeof(::operations_research::MPArrayConstraint)},
654 { 137, -1, -1, sizeof(::operations_research::MPQuadraticObjective)},
656 { 154, 168, -1, sizeof(::operations_research::MPModelProto)},
657 { 176, 183, -1, sizeof(::operations_research::OptionalDouble)},
661 { 222, 231, -1, sizeof(::operations_research::MPModelDeltaProto)},
662 { 234, 248, -1, sizeof(::operations_research::MPModelRequest)},
663 { 256, 264, -1, sizeof(::operations_research::MPSolution)},
664 { 266, 274, -1, sizeof(::operations_research::MPSolveInfo)},
665 { 276, 291, -1, sizeof(::operations_research::MPSolutionResponse)},
666};
667
668static ::PROTOBUF_NAMESPACE_ID::Message const * const file_default_instances[] = {
669 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPVariableProto_default_instance_),
670 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPConstraintProto_default_instance_),
671 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPGeneralConstraintProto_default_instance_),
672 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPIndicatorConstraint_default_instance_),
673 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPSosConstraint_default_instance_),
674 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPQuadraticConstraint_default_instance_),
675 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPAbsConstraint_default_instance_),
676 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPArrayConstraint_default_instance_),
677 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPArrayWithConstantConstraint_default_instance_),
678 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPQuadraticObjective_default_instance_),
679 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_PartialVariableAssignment_default_instance_),
680 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPModelProto_default_instance_),
681 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_OptionalDouble_default_instance_),
682 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPSolverCommonParameters_default_instance_),
683 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPModelDeltaProto_VariableOverridesEntry_DoNotUse_default_instance_),
684 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse_default_instance_),
685 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPModelDeltaProto_default_instance_),
686 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPModelRequest_default_instance_),
687 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPSolution_default_instance_),
688 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPSolveInfo_default_instance_),
689 reinterpret_cast<const ::PROTOBUF_NAMESPACE_ID::Message*>(&::operations_research::_MPSolutionResponse_default_instance_),
690};
691
692const char descriptor_table_protodef_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto[] PROTOBUF_SECTION_VARIABLE(protodesc_cold) =
693 "\n)ortools/linear_solver/linear_solver.pr"
694 "oto\022\023operations_research\032#ortools/util/o"
695 "ptional_boolean.proto\"\262\001\n\017MPVariableProt"
696 "o\022\031\n\013lower_bound\030\001 \001(\001:\004-inf\022\030\n\013upper_bo"
697 "und\030\002 \001(\001:\003inf\022 \n\025objective_coefficient\030"
698 "\003 \001(\001:\0010\022\031\n\nis_integer\030\004 \001(\010:\005false\022\016\n\004n"
699 "ame\030\005 \001(\t:\000\022\035\n\022branching_priority\030\006 \001(\005:"
700 "\0010\"\240\001\n\021MPConstraintProto\022\025\n\tvar_index\030\006 "
701 "\003(\005B\002\020\001\022\027\n\013coefficient\030\007 \003(\001B\002\020\001\022\031\n\013lowe"
702 "r_bound\030\002 \001(\001:\004-inf\022\030\n\013upper_bound\030\003 \001(\001"
703 ":\003inf\022\016\n\004name\030\004 \001(\t:\000\022\026\n\007is_lazy\030\005 \001(\010:\005"
704 "false\"\367\004\n\030MPGeneralConstraintProto\022\016\n\004na"
705 "me\030\001 \001(\t:\000\022J\n\024indicator_constraint\030\002 \001(\013"
706 "2*.operations_research.MPIndicatorConstr"
707 "aintH\000\022>\n\016sos_constraint\030\003 \001(\0132$.operati"
708 "ons_research.MPSosConstraintH\000\022J\n\024quadra"
709 "tic_constraint\030\004 \001(\0132*.operations_resear"
710 "ch.MPQuadraticConstraintH\000\022>\n\016abs_constr"
711 "aint\030\005 \001(\0132$.operations_research.MPAbsCo"
712 "nstraintH\000\022@\n\016and_constraint\030\006 \001(\0132&.ope"
713 "rations_research.MPArrayConstraintH\000\022\?\n\r"
714 "or_constraint\030\007 \001(\0132&.operations_researc"
715 "h.MPArrayConstraintH\000\022L\n\016min_constraint\030"
716 "\010 \001(\01322.operations_research.MPArrayWithC"
717 "onstantConstraintH\000\022L\n\016max_constraint\030\t "
718 "\001(\01322.operations_research.MPArrayWithCon"
719 "stantConstraintH\000B\024\n\022general_constraint\""
720 "y\n\025MPIndicatorConstraint\022\021\n\tvar_index\030\001 "
721 "\001(\005\022\021\n\tvar_value\030\002 \001(\005\022:\n\nconstraint\030\003 \001"
722 "(\0132&.operations_research.MPConstraintPro"
723 "to\"\237\001\n\017MPSosConstraint\022E\n\004type\030\001 \001(\0162).o"
724 "perations_research.MPSosConstraint.Type:"
725 "\014SOS1_DEFAULT\022\021\n\tvar_index\030\002 \003(\005\022\016\n\006weig"
726 "ht\030\003 \003(\001\"\"\n\004Type\022\020\n\014SOS1_DEFAULT\020\000\022\010\n\004SO"
727 "S2\020\001\"\264\001\n\025MPQuadraticConstraint\022\021\n\tvar_in"
728 "dex\030\001 \003(\005\022\023\n\013coefficient\030\002 \003(\001\022\023\n\013qvar1_"
729 "index\030\003 \003(\005\022\023\n\013qvar2_index\030\004 \003(\005\022\024\n\014qcoe"
730 "fficient\030\005 \003(\001\022\031\n\013lower_bound\030\006 \001(\001:\004-in"
731 "f\022\030\n\013upper_bound\030\007 \001(\001:\003inf\"A\n\017MPAbsCons"
732 "traint\022\021\n\tvar_index\030\001 \001(\005\022\033\n\023resultant_v"
733 "ar_index\030\002 \001(\005\"C\n\021MPArrayConstraint\022\021\n\tv"
734 "ar_index\030\001 \003(\005\022\033\n\023resultant_var_index\030\002 "
735 "\001(\005\"a\n\035MPArrayWithConstantConstraint\022\021\n\t"
736 "var_index\030\001 \003(\005\022\020\n\010constant\030\002 \001(\001\022\033\n\023res"
737 "ultant_var_index\030\003 \001(\005\"U\n\024MPQuadraticObj"
738 "ective\022\023\n\013qvar1_index\030\001 \003(\005\022\023\n\013qvar2_ind"
739 "ex\030\002 \003(\005\022\023\n\013coefficient\030\003 \003(\001\"I\n\031Partial"
740 "VariableAssignment\022\025\n\tvar_index\030\001 \003(\005B\002\020"
741 "\001\022\025\n\tvar_value\030\002 \003(\001B\002\020\001\"\242\003\n\014MPModelProt"
742 "o\0226\n\010variable\030\003 \003(\0132$.operations_researc"
743 "h.MPVariableProto\022:\n\nconstraint\030\004 \003(\0132&."
744 "operations_research.MPConstraintProto\022I\n"
745 "\022general_constraint\030\007 \003(\0132-.operations_r"
746 "esearch.MPGeneralConstraintProto\022\027\n\010maxi"
747 "mize\030\001 \001(\010:\005false\022\033\n\020objective_offset\030\002 "
748 "\001(\001:\0010\022F\n\023quadratic_objective\030\010 \001(\0132).op"
749 "erations_research.MPQuadraticObjective\022\016"
750 "\n\004name\030\005 \001(\t:\000\022E\n\rsolution_hint\030\006 \001(\0132.."
751 "operations_research.PartialVariableAssig"
752 "nment\"\037\n\016OptionalDouble\022\r\n\005value\030\001 \001(\001\"\275"
753 "\004\n\030MPSolverCommonParameters\022=\n\020relative_"
754 "mip_gap\030\001 \001(\0132#.operations_research.Opti"
755 "onalDouble\022=\n\020primal_tolerance\030\002 \001(\0132#.o"
756 "perations_research.OptionalDouble\022;\n\016dua"
757 "l_tolerance\030\003 \001(\0132#.operations_research."
758 "OptionalDouble\022j\n\014lp_algorithm\030\004 \001(\0162\?.o"
759 "perations_research.MPSolverCommonParamet"
760 "ers.LPAlgorithmValues:\023LP_ALGO_UNSPECIFI"
761 "ED\022H\n\010presolve\030\005 \001(\0162$.operations_resear"
762 "ch.OptionalBoolean:\020BOOL_UNSPECIFIED\022G\n\007"
763 "scaling\030\007 \001(\0162$.operations_research.Opti"
764 "onalBoolean:\020BOOL_UNSPECIFIED\"g\n\021LPAlgor"
765 "ithmValues\022\027\n\023LP_ALGO_UNSPECIFIED\020\000\022\020\n\014L"
766 "P_ALGO_DUAL\020\001\022\022\n\016LP_ALGO_PRIMAL\020\002\022\023\n\017LP_"
767 "ALGO_BARRIER\020\003\"\263\003\n\021MPModelDeltaProto\022 \n\030"
768 "baseline_model_file_path\030\001 \001(\t\022Y\n\022variab"
769 "le_overrides\030\002 \003(\0132=.operations_research"
770 ".MPModelDeltaProto.VariableOverridesEntr"
771 "y\022]\n\024constraint_overrides\030\003 \003(\0132\?.operat"
772 "ions_research.MPModelDeltaProto.Constrai"
773 "ntOverridesEntry\032^\n\026VariableOverridesEnt"
774 "ry\022\013\n\003key\030\001 \001(\005\0223\n\005value\030\002 \001(\0132$.operati"
775 "ons_research.MPVariableProto:\0028\001\032b\n\030Cons"
776 "traintOverridesEntry\022\013\n\003key\030\001 \001(\005\0225\n\005val"
777 "ue\030\002 \001(\0132&.operations_research.MPConstra"
778 "intProto:\0028\001\"\242\007\n\016MPModelRequest\0220\n\005model"
779 "\030\001 \001(\0132!.operations_research.MPModelProt"
780 "o\022C\n\013solver_type\030\002 \001(\0162..operations_rese"
781 "arch.MPModelRequest.SolverType\022!\n\031solver"
782 "_time_limit_seconds\030\003 \001(\001\022,\n\035enable_inte"
783 "rnal_solver_output\030\004 \001(\010:\005false\022\"\n\032solve"
784 "r_specific_parameters\030\005 \001(\t\0228\n)ignore_so"
785 "lver_specific_parameters_failure\030\t \001(\010:\005"
786 "false\022;\n\013model_delta\030\010 \001(\0132&.operations_"
787 "research.MPModelDeltaProto\022.\n#populate_a"
788 "dditional_solutions_up_to\030\013 \001(\005:\0010\"\374\003\n\nS"
789 "olverType\022\033\n\027GLOP_LINEAR_PROGRAMMING\020\002\022\032"
790 "\n\026CLP_LINEAR_PROGRAMMING\020\000\022\033\n\027GLPK_LINEA"
791 "R_PROGRAMMING\020\001\022\035\n\031GUROBI_LINEAR_PROGRAM"
792 "MING\020\006\022\035\n\031XPRESS_LINEAR_PROGRAMMING\020e\022\034\n"
793 "\030CPLEX_LINEAR_PROGRAMMING\020\n\022\"\n\036SCIP_MIXE"
794 "D_INTEGER_PROGRAMMING\020\003\022\"\n\036GLPK_MIXED_IN"
795 "TEGER_PROGRAMMING\020\004\022!\n\035CBC_MIXED_INTEGER"
796 "_PROGRAMMING\020\005\022$\n GUROBI_MIXED_INTEGER_P"
797 "ROGRAMMING\020\007\022$\n XPRESS_MIXED_INTEGER_PRO"
798 "GRAMMING\020f\022#\n\037CPLEX_MIXED_INTEGER_PROGRA"
799 "MMING\020\013\022\033\n\027BOP_INTEGER_PROGRAMMING\020\014\022\033\n\027"
800 "SAT_INTEGER_PROGRAMMING\020\016\022&\n\"KNAPSACK_MI"
801 "XED_INTEGER_PROGRAMMING\020\r\"A\n\nMPSolution\022"
802 "\027\n\017objective_value\030\001 \001(\001\022\032\n\016variable_val"
803 "ue\030\002 \003(\001B\002\020\001\"O\n\013MPSolveInfo\022\037\n\027solve_wal"
804 "l_time_seconds\030\001 \001(\001\022\037\n\027solve_user_time_"
805 "seconds\030\002 \001(\001\"\370\002\n\022MPSolutionResponse\022T\n\006"
806 "status\030\001 \001(\0162+.operations_research.MPSol"
807 "verResponseStatus:\027MPSOLVER_UNKNOWN_STAT"
808 "US\022\022\n\nstatus_str\030\007 \001(\t\022\027\n\017objective_valu"
809 "e\030\002 \001(\001\022\034\n\024best_objective_bound\030\005 \001(\001\022\032\n"
810 "\016variable_value\030\003 \003(\001B\002\020\001\0224\n\nsolve_info\030"
811 "\n \001(\0132 .operations_research.MPSolveInfo\022"
812 "\026\n\ndual_value\030\004 \003(\001B\002\020\001\022\030\n\014reduced_cost\030"
813 "\006 \003(\001B\002\020\001\022=\n\024additional_solutions\030\010 \003(\0132"
814 "\037.operations_research.MPSolution*\275\003\n\026MPS"
815 "olverResponseStatus\022\024\n\020MPSOLVER_OPTIMAL\020"
816 "\000\022\025\n\021MPSOLVER_FEASIBLE\020\001\022\027\n\023MPSOLVER_INF"
817 "EASIBLE\020\002\022\026\n\022MPSOLVER_UNBOUNDED\020\003\022\025\n\021MPS"
818 "OLVER_ABNORMAL\020\004\022\027\n\023MPSOLVER_NOT_SOLVED\020"
819 "\006\022\033\n\027MPSOLVER_MODEL_IS_VALID\020a\022\036\n\032MPSOLV"
820 "ER_CANCELLED_BY_USER\020b\022\033\n\027MPSOLVER_UNKNO"
821 "WN_STATUS\020c\022\032\n\026MPSOLVER_MODEL_INVALID\020\005\022"
822 "(\n$MPSOLVER_MODEL_INVALID_SOLUTION_HINT\020"
823 "T\022,\n(MPSOLVER_MODEL_INVALID_SOLVER_PARAM"
824 "ETERS\020U\022$\n MPSOLVER_SOLVER_TYPE_UNAVAILA"
825 "BLE\020\007\022!\n\035MPSOLVER_INCOMPATIBLE_OPTIONS\020q"
826 "B#\n\037com.google.ortools.linearsolverP\001"
827 ;
828static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable*const descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_deps[1] = {
830};
831static ::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_once;
832const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto = {
833 false, false, 5357, descriptor_table_protodef_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto, "ortools/linear_solver/linear_solver.proto",
837};
838PROTOBUF_ATTRIBUTE_WEAK const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable* descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_getter() {
840}
841
842// Force running AddDescriptors() at dynamic initialization time.
843PROTOBUF_ATTRIBUTE_INIT_PRIORITY static ::PROTOBUF_NAMESPACE_ID::internal::AddDescriptorsRunner dynamic_init_dummy_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto(&descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
844namespace operations_research {
845const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSosConstraint_Type_descriptor() {
846 ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
848}
850 switch (value) {
851 case 0:
852 case 1:
853 return true;
854 default:
855 return false;
856 }
857}
858
859#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
865#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
866const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverCommonParameters_LPAlgorithmValues_descriptor() {
867 ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
869}
871 switch (value) {
872 case 0:
873 case 1:
874 case 2:
875 case 3:
876 return true;
877 default:
878 return false;
879 }
880}
881
882#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
890#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
891const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPModelRequest_SolverType_descriptor() {
892 ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
894}
896 switch (value) {
897 case 0:
898 case 1:
899 case 2:
900 case 3:
901 case 4:
902 case 5:
903 case 6:
904 case 7:
905 case 10:
906 case 11:
907 case 12:
908 case 13:
909 case 14:
910 case 101:
911 case 102:
912 return true;
913 default:
914 return false;
915 }
916}
917
918#if (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
937#endif // (__cplusplus < 201703) && (!defined(_MSC_VER) || _MSC_VER >= 1900)
938const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor* MPSolverResponseStatus_descriptor() {
939 ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(&descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto);
941}
943 switch (value) {
944 case 0:
945 case 1:
946 case 2:
947 case 3:
948 case 4:
949 case 5:
950 case 6:
951 case 7:
952 case 84:
953 case 85:
954 case 97:
955 case 98:
956 case 99:
957 case 113:
958 return true;
959 default:
960 return false;
961 }
962}
963
964
965// ===================================================================
966
968 public:
969 using HasBits = decltype(std::declval<MPVariableProto>()._has_bits_);
970 static void set_has_lower_bound(HasBits* has_bits) {
971 (*has_bits)[0] |= 16u;
972 }
973 static void set_has_upper_bound(HasBits* has_bits) {
974 (*has_bits)[0] |= 32u;
975 }
976 static void set_has_objective_coefficient(HasBits* has_bits) {
977 (*has_bits)[0] |= 2u;
978 }
979 static void set_has_is_integer(HasBits* has_bits) {
980 (*has_bits)[0] |= 4u;
981 }
982 static void set_has_name(HasBits* has_bits) {
983 (*has_bits)[0] |= 1u;
984 }
985 static void set_has_branching_priority(HasBits* has_bits) {
986 (*has_bits)[0] |= 8u;
987 }
988};
989
990MPVariableProto::MPVariableProto(::PROTOBUF_NAMESPACE_ID::Arena* arena,
991 bool is_message_owned)
992 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
993 SharedCtor();
994 if (!is_message_owned) {
995 RegisterArenaDtor(arena);
996 }
997 // @@protoc_insertion_point(arena_constructor:operations_research.MPVariableProto)
998}
1000 : ::PROTOBUF_NAMESPACE_ID::Message(),
1001 _has_bits_(from._has_bits_) {
1002 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1003 name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1004 if (from._internal_has_name()) {
1005 name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_name(),
1006 GetArenaForAllocation());
1007 }
1008 ::memcpy(&objective_coefficient_, &from.objective_coefficient_,
1009 static_cast<size_t>(reinterpret_cast<char*>(&upper_bound_) -
1010 reinterpret_cast<char*>(&objective_coefficient_)) + sizeof(upper_bound_));
1011 // @@protoc_insertion_point(copy_constructor:operations_research.MPVariableProto)
1012}
1013
1014void MPVariableProto::SharedCtor() {
1015name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1016::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
1017 reinterpret_cast<char*>(&objective_coefficient_) - reinterpret_cast<char*>(this)),
1018 0, static_cast<size_t>(reinterpret_cast<char*>(&branching_priority_) -
1019 reinterpret_cast<char*>(&objective_coefficient_)) + sizeof(branching_priority_));
1020lower_bound_ = -std::numeric_limits<double>::infinity();
1021upper_bound_ = std::numeric_limits<double>::infinity();
1022}
1023
1025 // @@protoc_insertion_point(destructor:operations_research.MPVariableProto)
1026 if (GetArenaForAllocation() != nullptr) return;
1027 SharedDtor();
1028 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1029}
1030
1031inline void MPVariableProto::SharedDtor() {
1032 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1033 name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1034}
1035
1036void MPVariableProto::ArenaDtor(void* object) {
1037 MPVariableProto* _this = reinterpret_cast< MPVariableProto* >(object);
1038 (void)_this;
1039}
1040void MPVariableProto::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1041}
1042void MPVariableProto::SetCachedSize(int size) const {
1043 _cached_size_.Set(size);
1044}
1045
1047// @@protoc_insertion_point(message_clear_start:operations_research.MPVariableProto)
1048 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1049 // Prevent compiler warnings about cached_has_bits being unused
1050 (void) cached_has_bits;
1051
1052 cached_has_bits = _has_bits_[0];
1053 if (cached_has_bits & 0x00000001u) {
1054 name_.ClearNonDefaultToEmpty();
1055 }
1056 if (cached_has_bits & 0x0000003eu) {
1057 ::memset(&objective_coefficient_, 0, static_cast<size_t>(
1058 reinterpret_cast<char*>(&branching_priority_) -
1059 reinterpret_cast<char*>(&objective_coefficient_)) + sizeof(branching_priority_));
1060 lower_bound_ = -std::numeric_limits<double>::infinity();
1061 upper_bound_ = std::numeric_limits<double>::infinity();
1062 }
1063 _has_bits_.Clear();
1064 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1065}
1066
1067const char* MPVariableProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1068#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1069 _Internal::HasBits has_bits{};
1070 while (!ctx->Done(&ptr)) {
1071 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
1072 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1073 switch (tag >> 3) {
1074 // optional double lower_bound = 1 [default = -inf];
1075 case 1:
1076 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
1078 lower_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1079 ptr += sizeof(double);
1080 } else
1081 goto handle_unusual;
1082 continue;
1083 // optional double upper_bound = 2 [default = inf];
1084 case 2:
1085 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
1087 upper_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1088 ptr += sizeof(double);
1089 } else
1090 goto handle_unusual;
1091 continue;
1092 // optional double objective_coefficient = 3 [default = 0];
1093 case 3:
1094 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
1096 objective_coefficient_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1097 ptr += sizeof(double);
1098 } else
1099 goto handle_unusual;
1100 continue;
1101 // optional bool is_integer = 4 [default = false];
1102 case 4:
1103 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
1105 is_integer_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1106 CHK_(ptr);
1107 } else
1108 goto handle_unusual;
1109 continue;
1110 // optional string name = 5 [default = ""];
1111 case 5:
1112 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
1113 auto str = _internal_mutable_name();
1114 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
1115 #ifndef NDEBUG
1116 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPVariableProto.name");
1117 #endif // !NDEBUG
1118 CHK_(ptr);
1119 } else
1120 goto handle_unusual;
1121 continue;
1122 // optional int32 branching_priority = 6 [default = 0];
1123 case 6:
1124 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48)) {
1126 branching_priority_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1127 CHK_(ptr);
1128 } else
1129 goto handle_unusual;
1130 continue;
1131 default:
1132 goto handle_unusual;
1133 } // switch
1134 handle_unusual:
1135 if ((tag == 0) || ((tag & 7) == 4)) {
1136 CHK_(ptr);
1137 ctx->SetLastTag(tag);
1138 goto message_done;
1139 }
1140 ptr = UnknownFieldParse(
1141 tag,
1142 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1143 ptr, ctx);
1144 CHK_(ptr != nullptr);
1145 } // while
1146message_done:
1147 _has_bits_.Or(has_bits);
1148 return ptr;
1149failure:
1150 ptr = nullptr;
1151 goto message_done;
1152#undef CHK_
1153}
1154
1155::PROTOBUF_NAMESPACE_ID::uint8* MPVariableProto::_InternalSerialize(
1156 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1157 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPVariableProto)
1158 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1159 (void) cached_has_bits;
1160
1161 cached_has_bits = _has_bits_[0];
1162 // optional double lower_bound = 1 [default = -inf];
1163 if (cached_has_bits & 0x00000010u) {
1164 target = stream->EnsureSpace(target);
1165 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(1, this->_internal_lower_bound(), target);
1166 }
1167
1168 // optional double upper_bound = 2 [default = inf];
1169 if (cached_has_bits & 0x00000020u) {
1170 target = stream->EnsureSpace(target);
1171 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_upper_bound(), target);
1172 }
1173
1174 // optional double objective_coefficient = 3 [default = 0];
1175 if (cached_has_bits & 0x00000002u) {
1176 target = stream->EnsureSpace(target);
1177 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_objective_coefficient(), target);
1178 }
1179
1180 // optional bool is_integer = 4 [default = false];
1181 if (cached_has_bits & 0x00000004u) {
1182 target = stream->EnsureSpace(target);
1183 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_is_integer(), target);
1184 }
1185
1186 // optional string name = 5 [default = ""];
1187 if (cached_has_bits & 0x00000001u) {
1188 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
1189 this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
1190 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
1191 "operations_research.MPVariableProto.name");
1192 target = stream->WriteStringMaybeAliased(
1193 5, this->_internal_name(), target);
1194 }
1195
1196 // optional int32 branching_priority = 6 [default = 0];
1197 if (cached_has_bits & 0x00000008u) {
1198 target = stream->EnsureSpace(target);
1199 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(6, this->_internal_branching_priority(), target);
1200 }
1201
1202 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1203 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1204 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1205 }
1206 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPVariableProto)
1207 return target;
1208}
1209
1211// @@protoc_insertion_point(message_byte_size_start:operations_research.MPVariableProto)
1212 size_t total_size = 0;
1213
1214 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1215 // Prevent compiler warnings about cached_has_bits being unused
1216 (void) cached_has_bits;
1217
1218 cached_has_bits = _has_bits_[0];
1219 if (cached_has_bits & 0x0000003fu) {
1220 // optional string name = 5 [default = ""];
1221 if (cached_has_bits & 0x00000001u) {
1222 total_size += 1 +
1223 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
1224 this->_internal_name());
1225 }
1226
1227 // optional double objective_coefficient = 3 [default = 0];
1228 if (cached_has_bits & 0x00000002u) {
1229 total_size += 1 + 8;
1230 }
1231
1232 // optional bool is_integer = 4 [default = false];
1233 if (cached_has_bits & 0x00000004u) {
1234 total_size += 1 + 1;
1235 }
1236
1237 // optional int32 branching_priority = 6 [default = 0];
1238 if (cached_has_bits & 0x00000008u) {
1239 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_branching_priority());
1240 }
1241
1242 // optional double lower_bound = 1 [default = -inf];
1243 if (cached_has_bits & 0x00000010u) {
1244 total_size += 1 + 8;
1245 }
1246
1247 // optional double upper_bound = 2 [default = inf];
1248 if (cached_has_bits & 0x00000020u) {
1249 total_size += 1 + 8;
1250 }
1251
1252 }
1253 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1254}
1255
1256const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPVariableProto::_class_data_ = {
1257 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1258 MPVariableProto::MergeImpl
1259};
1260const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPVariableProto::GetClassData() const { return &_class_data_; }
1261
1262void MPVariableProto::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1263 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1264 static_cast<MPVariableProto *>(to)->MergeFrom(
1265 static_cast<const MPVariableProto &>(from));
1266}
1267
1268
1270// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPVariableProto)
1271 GOOGLE_DCHECK_NE(&from, this);
1272 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1273 (void) cached_has_bits;
1274
1275 cached_has_bits = from._has_bits_[0];
1276 if (cached_has_bits & 0x0000003fu) {
1277 if (cached_has_bits & 0x00000001u) {
1278 _internal_set_name(from._internal_name());
1279 }
1280 if (cached_has_bits & 0x00000002u) {
1281 objective_coefficient_ = from.objective_coefficient_;
1282 }
1283 if (cached_has_bits & 0x00000004u) {
1284 is_integer_ = from.is_integer_;
1285 }
1286 if (cached_has_bits & 0x00000008u) {
1287 branching_priority_ = from.branching_priority_;
1288 }
1289 if (cached_has_bits & 0x00000010u) {
1290 lower_bound_ = from.lower_bound_;
1291 }
1292 if (cached_has_bits & 0x00000020u) {
1293 upper_bound_ = from.upper_bound_;
1294 }
1295 _has_bits_[0] |= cached_has_bits;
1296 }
1297 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1298}
1299
1301// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPVariableProto)
1302 if (&from == this) return;
1303 Clear();
1304 MergeFrom(from);
1305}
1306
1308 return true;
1309}
1310
1311void MPVariableProto::InternalSwap(MPVariableProto* other) {
1312 using std::swap;
1313 auto* lhs_arena = GetArenaForAllocation();
1314 auto* rhs_arena = other->GetArenaForAllocation();
1315 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1316 swap(_has_bits_[0], other->_has_bits_[0]);
1317 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
1318 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1319 &name_, lhs_arena,
1320 &other->name_, rhs_arena
1321 );
1322 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
1323 PROTOBUF_FIELD_OFFSET(MPVariableProto, branching_priority_)
1324 + sizeof(MPVariableProto::branching_priority_)
1325 - PROTOBUF_FIELD_OFFSET(MPVariableProto, objective_coefficient_)>(
1326 reinterpret_cast<char*>(&objective_coefficient_),
1327 reinterpret_cast<char*>(&other->objective_coefficient_));
1328 swap(lower_bound_, other->lower_bound_);
1329 swap(upper_bound_, other->upper_bound_);
1330}
1331
1332::PROTOBUF_NAMESPACE_ID::Metadata MPVariableProto::GetMetadata() const {
1333 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1336}
1337
1338// ===================================================================
1339
1341 public:
1342 using HasBits = decltype(std::declval<MPConstraintProto>()._has_bits_);
1343 static void set_has_lower_bound(HasBits* has_bits) {
1344 (*has_bits)[0] |= 4u;
1345 }
1346 static void set_has_upper_bound(HasBits* has_bits) {
1347 (*has_bits)[0] |= 8u;
1348 }
1349 static void set_has_name(HasBits* has_bits) {
1350 (*has_bits)[0] |= 1u;
1351 }
1352 static void set_has_is_lazy(HasBits* has_bits) {
1353 (*has_bits)[0] |= 2u;
1354 }
1355};
1356
1357MPConstraintProto::MPConstraintProto(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1358 bool is_message_owned)
1359 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
1360 var_index_(arena),
1361 coefficient_(arena) {
1362 SharedCtor();
1363 if (!is_message_owned) {
1364 RegisterArenaDtor(arena);
1365 }
1366 // @@protoc_insertion_point(arena_constructor:operations_research.MPConstraintProto)
1367}
1369 : ::PROTOBUF_NAMESPACE_ID::Message(),
1370 _has_bits_(from._has_bits_),
1371 var_index_(from.var_index_),
1372 coefficient_(from.coefficient_) {
1373 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1374 name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1375 if (from._internal_has_name()) {
1376 name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_name(),
1377 GetArenaForAllocation());
1378 }
1379 ::memcpy(&is_lazy_, &from.is_lazy_,
1380 static_cast<size_t>(reinterpret_cast<char*>(&upper_bound_) -
1381 reinterpret_cast<char*>(&is_lazy_)) + sizeof(upper_bound_));
1382 // @@protoc_insertion_point(copy_constructor:operations_research.MPConstraintProto)
1383}
1384
1385void MPConstraintProto::SharedCtor() {
1386name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1387is_lazy_ = false;
1388lower_bound_ = -std::numeric_limits<double>::infinity();
1389upper_bound_ = std::numeric_limits<double>::infinity();
1390}
1391
1393 // @@protoc_insertion_point(destructor:operations_research.MPConstraintProto)
1394 if (GetArenaForAllocation() != nullptr) return;
1395 SharedDtor();
1396 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1397}
1398
1399inline void MPConstraintProto::SharedDtor() {
1400 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1401 name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1402}
1403
1404void MPConstraintProto::ArenaDtor(void* object) {
1405 MPConstraintProto* _this = reinterpret_cast< MPConstraintProto* >(object);
1406 (void)_this;
1407}
1408void MPConstraintProto::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1409}
1410void MPConstraintProto::SetCachedSize(int size) const {
1411 _cached_size_.Set(size);
1412}
1413
1415// @@protoc_insertion_point(message_clear_start:operations_research.MPConstraintProto)
1416 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1417 // Prevent compiler warnings about cached_has_bits being unused
1418 (void) cached_has_bits;
1419
1420 var_index_.Clear();
1421 coefficient_.Clear();
1422 cached_has_bits = _has_bits_[0];
1423 if (cached_has_bits & 0x00000001u) {
1424 name_.ClearNonDefaultToEmpty();
1425 }
1426 if (cached_has_bits & 0x0000000eu) {
1427 is_lazy_ = false;
1428 lower_bound_ = -std::numeric_limits<double>::infinity();
1429 upper_bound_ = std::numeric_limits<double>::infinity();
1430 }
1431 _has_bits_.Clear();
1432 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1433}
1434
1435const char* MPConstraintProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
1436#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
1437 _Internal::HasBits has_bits{};
1438 while (!ctx->Done(&ptr)) {
1439 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
1440 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
1441 switch (tag >> 3) {
1442 // optional double lower_bound = 2 [default = -inf];
1443 case 2:
1444 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
1446 lower_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1447 ptr += sizeof(double);
1448 } else
1449 goto handle_unusual;
1450 continue;
1451 // optional double upper_bound = 3 [default = inf];
1452 case 3:
1453 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
1455 upper_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
1456 ptr += sizeof(double);
1457 } else
1458 goto handle_unusual;
1459 continue;
1460 // optional string name = 4 [default = ""];
1461 case 4:
1462 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
1463 auto str = _internal_mutable_name();
1464 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
1465 #ifndef NDEBUG
1466 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPConstraintProto.name");
1467 #endif // !NDEBUG
1468 CHK_(ptr);
1469 } else
1470 goto handle_unusual;
1471 continue;
1472 // optional bool is_lazy = 5 [default = false];
1473 case 5:
1474 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
1475 _Internal::set_has_is_lazy(&has_bits);
1476 is_lazy_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
1477 CHK_(ptr);
1478 } else
1479 goto handle_unusual;
1480 continue;
1481 // repeated int32 var_index = 6 [packed = true];
1482 case 6:
1483 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
1484 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
1485 CHK_(ptr);
1486 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 48) {
1487 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
1488 CHK_(ptr);
1489 } else
1490 goto handle_unusual;
1491 continue;
1492 // repeated double coefficient = 7 [packed = true];
1493 case 7:
1494 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
1495 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_coefficient(), ptr, ctx);
1496 CHK_(ptr);
1497 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 57) {
1498 _internal_add_coefficient(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
1499 ptr += sizeof(double);
1500 } else
1501 goto handle_unusual;
1502 continue;
1503 default:
1504 goto handle_unusual;
1505 } // switch
1506 handle_unusual:
1507 if ((tag == 0) || ((tag & 7) == 4)) {
1508 CHK_(ptr);
1509 ctx->SetLastTag(tag);
1510 goto message_done;
1511 }
1512 ptr = UnknownFieldParse(
1513 tag,
1514 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
1515 ptr, ctx);
1516 CHK_(ptr != nullptr);
1517 } // while
1518message_done:
1519 _has_bits_.Or(has_bits);
1520 return ptr;
1521failure:
1522 ptr = nullptr;
1523 goto message_done;
1524#undef CHK_
1525}
1526
1527::PROTOBUF_NAMESPACE_ID::uint8* MPConstraintProto::_InternalSerialize(
1528 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
1529 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPConstraintProto)
1530 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1531 (void) cached_has_bits;
1532
1533 cached_has_bits = _has_bits_[0];
1534 // optional double lower_bound = 2 [default = -inf];
1535 if (cached_has_bits & 0x00000004u) {
1536 target = stream->EnsureSpace(target);
1537 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_lower_bound(), target);
1538 }
1539
1540 // optional double upper_bound = 3 [default = inf];
1541 if (cached_has_bits & 0x00000008u) {
1542 target = stream->EnsureSpace(target);
1543 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_upper_bound(), target);
1544 }
1545
1546 // optional string name = 4 [default = ""];
1547 if (cached_has_bits & 0x00000001u) {
1548 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
1549 this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
1550 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
1551 "operations_research.MPConstraintProto.name");
1552 target = stream->WriteStringMaybeAliased(
1553 4, this->_internal_name(), target);
1554 }
1555
1556 // optional bool is_lazy = 5 [default = false];
1557 if (cached_has_bits & 0x00000002u) {
1558 target = stream->EnsureSpace(target);
1559 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(5, this->_internal_is_lazy(), target);
1560 }
1561
1562 // repeated int32 var_index = 6 [packed = true];
1563 {
1564 int byte_size = _var_index_cached_byte_size_.load(std::memory_order_relaxed);
1565 if (byte_size > 0) {
1566 target = stream->WriteInt32Packed(
1567 6, _internal_var_index(), byte_size, target);
1568 }
1569 }
1570
1571 // repeated double coefficient = 7 [packed = true];
1572 if (this->_internal_coefficient_size() > 0) {
1573 target = stream->WriteFixedPacked(7, _internal_coefficient(), target);
1574 }
1575
1576 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
1577 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
1578 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
1579 }
1580 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPConstraintProto)
1581 return target;
1582}
1583
1585// @@protoc_insertion_point(message_byte_size_start:operations_research.MPConstraintProto)
1586 size_t total_size = 0;
1587
1588 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1589 // Prevent compiler warnings about cached_has_bits being unused
1590 (void) cached_has_bits;
1591
1592 // repeated int32 var_index = 6 [packed = true];
1593 {
1594 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
1595 Int32Size(this->var_index_);
1596 if (data_size > 0) {
1597 total_size += 1 +
1598 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
1599 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
1600 }
1601 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
1602 _var_index_cached_byte_size_.store(cached_size,
1603 std::memory_order_relaxed);
1604 total_size += data_size;
1605 }
1606
1607 // repeated double coefficient = 7 [packed = true];
1608 {
1609 unsigned int count = static_cast<unsigned int>(this->_internal_coefficient_size());
1610 size_t data_size = 8UL * count;
1611 if (data_size > 0) {
1612 total_size += 1 +
1613 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
1614 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
1615 }
1616 total_size += data_size;
1617 }
1618
1619 cached_has_bits = _has_bits_[0];
1620 if (cached_has_bits & 0x0000000fu) {
1621 // optional string name = 4 [default = ""];
1622 if (cached_has_bits & 0x00000001u) {
1623 total_size += 1 +
1624 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
1625 this->_internal_name());
1626 }
1627
1628 // optional bool is_lazy = 5 [default = false];
1629 if (cached_has_bits & 0x00000002u) {
1630 total_size += 1 + 1;
1631 }
1632
1633 // optional double lower_bound = 2 [default = -inf];
1634 if (cached_has_bits & 0x00000004u) {
1635 total_size += 1 + 8;
1636 }
1637
1638 // optional double upper_bound = 3 [default = inf];
1639 if (cached_has_bits & 0x00000008u) {
1640 total_size += 1 + 8;
1641 }
1642
1643 }
1644 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
1645}
1646
1647const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPConstraintProto::_class_data_ = {
1648 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
1649 MPConstraintProto::MergeImpl
1650};
1651const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPConstraintProto::GetClassData() const { return &_class_data_; }
1652
1653void MPConstraintProto::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
1654 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
1655 static_cast<MPConstraintProto *>(to)->MergeFrom(
1656 static_cast<const MPConstraintProto &>(from));
1657}
1658
1659
1661// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPConstraintProto)
1662 GOOGLE_DCHECK_NE(&from, this);
1663 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
1664 (void) cached_has_bits;
1665
1666 var_index_.MergeFrom(from.var_index_);
1667 coefficient_.MergeFrom(from.coefficient_);
1668 cached_has_bits = from._has_bits_[0];
1669 if (cached_has_bits & 0x0000000fu) {
1670 if (cached_has_bits & 0x00000001u) {
1671 _internal_set_name(from._internal_name());
1672 }
1673 if (cached_has_bits & 0x00000002u) {
1674 is_lazy_ = from.is_lazy_;
1675 }
1676 if (cached_has_bits & 0x00000004u) {
1677 lower_bound_ = from.lower_bound_;
1678 }
1679 if (cached_has_bits & 0x00000008u) {
1680 upper_bound_ = from.upper_bound_;
1681 }
1682 _has_bits_[0] |= cached_has_bits;
1683 }
1684 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1685}
1686
1688// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPConstraintProto)
1689 if (&from == this) return;
1690 Clear();
1691 MergeFrom(from);
1692}
1693
1695 return true;
1696}
1697
1698void MPConstraintProto::InternalSwap(MPConstraintProto* other) {
1699 using std::swap;
1700 auto* lhs_arena = GetArenaForAllocation();
1701 auto* rhs_arena = other->GetArenaForAllocation();
1702 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1703 swap(_has_bits_[0], other->_has_bits_[0]);
1704 var_index_.InternalSwap(&other->var_index_);
1705 coefficient_.InternalSwap(&other->coefficient_);
1706 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
1707 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
1708 &name_, lhs_arena,
1709 &other->name_, rhs_arena
1710 );
1711 swap(is_lazy_, other->is_lazy_);
1712 swap(lower_bound_, other->lower_bound_);
1713 swap(upper_bound_, other->upper_bound_);
1714}
1715
1716::PROTOBUF_NAMESPACE_ID::Metadata MPConstraintProto::GetMetadata() const {
1717 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
1720}
1721
1722// ===================================================================
1723
1725 public:
1726 using HasBits = decltype(std::declval<MPGeneralConstraintProto>()._has_bits_);
1727 static void set_has_name(HasBits* has_bits) {
1728 (*has_bits)[0] |= 1u;
1729 }
1730 static const ::operations_research::MPIndicatorConstraint& indicator_constraint(const MPGeneralConstraintProto* msg);
1731 static const ::operations_research::MPSosConstraint& sos_constraint(const MPGeneralConstraintProto* msg);
1732 static const ::operations_research::MPQuadraticConstraint& quadratic_constraint(const MPGeneralConstraintProto* msg);
1733 static const ::operations_research::MPAbsConstraint& abs_constraint(const MPGeneralConstraintProto* msg);
1734 static const ::operations_research::MPArrayConstraint& and_constraint(const MPGeneralConstraintProto* msg);
1735 static const ::operations_research::MPArrayConstraint& or_constraint(const MPGeneralConstraintProto* msg);
1736 static const ::operations_research::MPArrayWithConstantConstraint& min_constraint(const MPGeneralConstraintProto* msg);
1737 static const ::operations_research::MPArrayWithConstantConstraint& max_constraint(const MPGeneralConstraintProto* msg);
1738};
1739
1740const ::operations_research::MPIndicatorConstraint&
1742 return *msg->general_constraint_.indicator_constraint_;
1743}
1744const ::operations_research::MPSosConstraint&
1746 return *msg->general_constraint_.sos_constraint_;
1747}
1748const ::operations_research::MPQuadraticConstraint&
1750 return *msg->general_constraint_.quadratic_constraint_;
1751}
1752const ::operations_research::MPAbsConstraint&
1754 return *msg->general_constraint_.abs_constraint_;
1755}
1756const ::operations_research::MPArrayConstraint&
1758 return *msg->general_constraint_.and_constraint_;
1759}
1760const ::operations_research::MPArrayConstraint&
1762 return *msg->general_constraint_.or_constraint_;
1763}
1764const ::operations_research::MPArrayWithConstantConstraint&
1766 return *msg->general_constraint_.min_constraint_;
1767}
1768const ::operations_research::MPArrayWithConstantConstraint&
1770 return *msg->general_constraint_.max_constraint_;
1771}
1773 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1776 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1777 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPIndicatorConstraint>::GetOwningArena(indicator_constraint);
1778 if (message_arena != submessage_arena) {
1779 indicator_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1780 message_arena, indicator_constraint, submessage_arena);
1781 }
1782 set_has_indicator_constraint();
1783 general_constraint_.indicator_constraint_ = indicator_constraint;
1784 }
1785 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.indicator_constraint)
1786}
1788 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1790 if (sos_constraint) {
1791 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1792 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPSosConstraint>::GetOwningArena(sos_constraint);
1793 if (message_arena != submessage_arena) {
1794 sos_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1795 message_arena, sos_constraint, submessage_arena);
1796 }
1797 set_has_sos_constraint();
1798 general_constraint_.sos_constraint_ = sos_constraint;
1799 }
1800 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.sos_constraint)
1801}
1803 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1806 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1807 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPQuadraticConstraint>::GetOwningArena(quadratic_constraint);
1808 if (message_arena != submessage_arena) {
1809 quadratic_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1810 message_arena, quadratic_constraint, submessage_arena);
1811 }
1812 set_has_quadratic_constraint();
1813 general_constraint_.quadratic_constraint_ = quadratic_constraint;
1814 }
1815 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.quadratic_constraint)
1816}
1818 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1820 if (abs_constraint) {
1821 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1822 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPAbsConstraint>::GetOwningArena(abs_constraint);
1823 if (message_arena != submessage_arena) {
1824 abs_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1825 message_arena, abs_constraint, submessage_arena);
1826 }
1827 set_has_abs_constraint();
1828 general_constraint_.abs_constraint_ = abs_constraint;
1829 }
1830 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.abs_constraint)
1831}
1833 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1835 if (and_constraint) {
1836 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1837 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPArrayConstraint>::GetOwningArena(and_constraint);
1838 if (message_arena != submessage_arena) {
1839 and_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1840 message_arena, and_constraint, submessage_arena);
1841 }
1842 set_has_and_constraint();
1843 general_constraint_.and_constraint_ = and_constraint;
1844 }
1845 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.and_constraint)
1846}
1848 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1850 if (or_constraint) {
1851 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1852 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPArrayConstraint>::GetOwningArena(or_constraint);
1853 if (message_arena != submessage_arena) {
1854 or_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1855 message_arena, or_constraint, submessage_arena);
1856 }
1857 set_has_or_constraint();
1858 general_constraint_.or_constraint_ = or_constraint;
1859 }
1860 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.or_constraint)
1861}
1863 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1865 if (min_constraint) {
1866 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1867 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPArrayWithConstantConstraint>::GetOwningArena(min_constraint);
1868 if (message_arena != submessage_arena) {
1869 min_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1870 message_arena, min_constraint, submessage_arena);
1871 }
1872 set_has_min_constraint();
1873 general_constraint_.min_constraint_ = min_constraint;
1874 }
1875 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.min_constraint)
1876}
1878 ::PROTOBUF_NAMESPACE_ID::Arena* message_arena = GetArenaForAllocation();
1880 if (max_constraint) {
1881 ::PROTOBUF_NAMESPACE_ID::Arena* submessage_arena =
1882 ::PROTOBUF_NAMESPACE_ID::Arena::InternalHelper<::operations_research::MPArrayWithConstantConstraint>::GetOwningArena(max_constraint);
1883 if (message_arena != submessage_arena) {
1884 max_constraint = ::PROTOBUF_NAMESPACE_ID::internal::GetOwnedMessage(
1885 message_arena, max_constraint, submessage_arena);
1886 }
1887 set_has_max_constraint();
1888 general_constraint_.max_constraint_ = max_constraint;
1889 }
1890 // @@protoc_insertion_point(field_set_allocated:operations_research.MPGeneralConstraintProto.max_constraint)
1891}
1892MPGeneralConstraintProto::MPGeneralConstraintProto(::PROTOBUF_NAMESPACE_ID::Arena* arena,
1893 bool is_message_owned)
1894 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
1895 SharedCtor();
1896 if (!is_message_owned) {
1897 RegisterArenaDtor(arena);
1898 }
1899 // @@protoc_insertion_point(arena_constructor:operations_research.MPGeneralConstraintProto)
1900}
1902 : ::PROTOBUF_NAMESPACE_ID::Message(),
1903 _has_bits_(from._has_bits_) {
1904 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
1905 name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1906 if (from._internal_has_name()) {
1907 name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_name(),
1908 GetArenaForAllocation());
1909 }
1910 clear_has_general_constraint();
1911 switch (from.general_constraint_case()) {
1912 case kIndicatorConstraint: {
1913 _internal_mutable_indicator_constraint()->::operations_research::MPIndicatorConstraint::MergeFrom(from._internal_indicator_constraint());
1914 break;
1915 }
1916 case kSosConstraint: {
1917 _internal_mutable_sos_constraint()->::operations_research::MPSosConstraint::MergeFrom(from._internal_sos_constraint());
1918 break;
1919 }
1920 case kQuadraticConstraint: {
1921 _internal_mutable_quadratic_constraint()->::operations_research::MPQuadraticConstraint::MergeFrom(from._internal_quadratic_constraint());
1922 break;
1923 }
1924 case kAbsConstraint: {
1925 _internal_mutable_abs_constraint()->::operations_research::MPAbsConstraint::MergeFrom(from._internal_abs_constraint());
1926 break;
1927 }
1928 case kAndConstraint: {
1929 _internal_mutable_and_constraint()->::operations_research::MPArrayConstraint::MergeFrom(from._internal_and_constraint());
1930 break;
1931 }
1932 case kOrConstraint: {
1933 _internal_mutable_or_constraint()->::operations_research::MPArrayConstraint::MergeFrom(from._internal_or_constraint());
1934 break;
1935 }
1936 case kMinConstraint: {
1937 _internal_mutable_min_constraint()->::operations_research::MPArrayWithConstantConstraint::MergeFrom(from._internal_min_constraint());
1938 break;
1939 }
1940 case kMaxConstraint: {
1941 _internal_mutable_max_constraint()->::operations_research::MPArrayWithConstantConstraint::MergeFrom(from._internal_max_constraint());
1942 break;
1943 }
1945 break;
1946 }
1947 }
1948 // @@protoc_insertion_point(copy_constructor:operations_research.MPGeneralConstraintProto)
1949}
1950
1951void MPGeneralConstraintProto::SharedCtor() {
1952name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1953clear_has_general_constraint();
1954}
1955
1957 // @@protoc_insertion_point(destructor:operations_research.MPGeneralConstraintProto)
1958 if (GetArenaForAllocation() != nullptr) return;
1959 SharedDtor();
1960 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
1961}
1962
1963inline void MPGeneralConstraintProto::SharedDtor() {
1964 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
1965 name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
1966 if (has_general_constraint()) {
1968 }
1969}
1970
1971void MPGeneralConstraintProto::ArenaDtor(void* object) {
1972 MPGeneralConstraintProto* _this = reinterpret_cast< MPGeneralConstraintProto* >(object);
1973 (void)_this;
1974}
1975void MPGeneralConstraintProto::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
1976}
1977void MPGeneralConstraintProto::SetCachedSize(int size) const {
1978 _cached_size_.Set(size);
1979}
1980
1982// @@protoc_insertion_point(one_of_clear_start:operations_research.MPGeneralConstraintProto)
1983 switch (general_constraint_case()) {
1984 case kIndicatorConstraint: {
1985 if (GetArenaForAllocation() == nullptr) {
1986 delete general_constraint_.indicator_constraint_;
1987 }
1988 break;
1989 }
1990 case kSosConstraint: {
1991 if (GetArenaForAllocation() == nullptr) {
1992 delete general_constraint_.sos_constraint_;
1993 }
1994 break;
1995 }
1996 case kQuadraticConstraint: {
1997 if (GetArenaForAllocation() == nullptr) {
1998 delete general_constraint_.quadratic_constraint_;
1999 }
2000 break;
2001 }
2002 case kAbsConstraint: {
2003 if (GetArenaForAllocation() == nullptr) {
2004 delete general_constraint_.abs_constraint_;
2005 }
2006 break;
2007 }
2008 case kAndConstraint: {
2009 if (GetArenaForAllocation() == nullptr) {
2010 delete general_constraint_.and_constraint_;
2011 }
2012 break;
2013 }
2014 case kOrConstraint: {
2015 if (GetArenaForAllocation() == nullptr) {
2016 delete general_constraint_.or_constraint_;
2017 }
2018 break;
2019 }
2020 case kMinConstraint: {
2021 if (GetArenaForAllocation() == nullptr) {
2022 delete general_constraint_.min_constraint_;
2023 }
2024 break;
2025 }
2026 case kMaxConstraint: {
2027 if (GetArenaForAllocation() == nullptr) {
2028 delete general_constraint_.max_constraint_;
2029 }
2030 break;
2031 }
2033 break;
2034 }
2035 }
2036 _oneof_case_[0] = GENERAL_CONSTRAINT_NOT_SET;
2037}
2038
2039
2041// @@protoc_insertion_point(message_clear_start:operations_research.MPGeneralConstraintProto)
2042 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2043 // Prevent compiler warnings about cached_has_bits being unused
2044 (void) cached_has_bits;
2045
2046 cached_has_bits = _has_bits_[0];
2047 if (cached_has_bits & 0x00000001u) {
2048 name_.ClearNonDefaultToEmpty();
2049 }
2051 _has_bits_.Clear();
2052 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2053}
2054
2055const char* MPGeneralConstraintProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
2056#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
2057 _Internal::HasBits has_bits{};
2058 while (!ctx->Done(&ptr)) {
2059 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
2060 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
2061 switch (tag >> 3) {
2062 // optional string name = 1 [default = ""];
2063 case 1:
2064 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
2065 auto str = _internal_mutable_name();
2066 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
2067 #ifndef NDEBUG
2068 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPGeneralConstraintProto.name");
2069 #endif // !NDEBUG
2070 CHK_(ptr);
2071 } else
2072 goto handle_unusual;
2073 continue;
2074 // .operations_research.MPIndicatorConstraint indicator_constraint = 2;
2075 case 2:
2076 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
2077 ptr = ctx->ParseMessage(_internal_mutable_indicator_constraint(), ptr);
2078 CHK_(ptr);
2079 } else
2080 goto handle_unusual;
2081 continue;
2082 // .operations_research.MPSosConstraint sos_constraint = 3;
2083 case 3:
2084 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
2085 ptr = ctx->ParseMessage(_internal_mutable_sos_constraint(), ptr);
2086 CHK_(ptr);
2087 } else
2088 goto handle_unusual;
2089 continue;
2090 // .operations_research.MPQuadraticConstraint quadratic_constraint = 4;
2091 case 4:
2092 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
2093 ptr = ctx->ParseMessage(_internal_mutable_quadratic_constraint(), ptr);
2094 CHK_(ptr);
2095 } else
2096 goto handle_unusual;
2097 continue;
2098 // .operations_research.MPAbsConstraint abs_constraint = 5;
2099 case 5:
2100 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
2101 ptr = ctx->ParseMessage(_internal_mutable_abs_constraint(), ptr);
2102 CHK_(ptr);
2103 } else
2104 goto handle_unusual;
2105 continue;
2106 // .operations_research.MPArrayConstraint and_constraint = 6;
2107 case 6:
2108 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
2109 ptr = ctx->ParseMessage(_internal_mutable_and_constraint(), ptr);
2110 CHK_(ptr);
2111 } else
2112 goto handle_unusual;
2113 continue;
2114 // .operations_research.MPArrayConstraint or_constraint = 7;
2115 case 7:
2116 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
2117 ptr = ctx->ParseMessage(_internal_mutable_or_constraint(), ptr);
2118 CHK_(ptr);
2119 } else
2120 goto handle_unusual;
2121 continue;
2122 // .operations_research.MPArrayWithConstantConstraint min_constraint = 8;
2123 case 8:
2124 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
2125 ptr = ctx->ParseMessage(_internal_mutable_min_constraint(), ptr);
2126 CHK_(ptr);
2127 } else
2128 goto handle_unusual;
2129 continue;
2130 // .operations_research.MPArrayWithConstantConstraint max_constraint = 9;
2131 case 9:
2132 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 74)) {
2133 ptr = ctx->ParseMessage(_internal_mutable_max_constraint(), ptr);
2134 CHK_(ptr);
2135 } else
2136 goto handle_unusual;
2137 continue;
2138 default:
2139 goto handle_unusual;
2140 } // switch
2141 handle_unusual:
2142 if ((tag == 0) || ((tag & 7) == 4)) {
2143 CHK_(ptr);
2144 ctx->SetLastTag(tag);
2145 goto message_done;
2146 }
2147 ptr = UnknownFieldParse(
2148 tag,
2149 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
2150 ptr, ctx);
2151 CHK_(ptr != nullptr);
2152 } // while
2153message_done:
2154 _has_bits_.Or(has_bits);
2155 return ptr;
2156failure:
2157 ptr = nullptr;
2158 goto message_done;
2159#undef CHK_
2160}
2161
2162::PROTOBUF_NAMESPACE_ID::uint8* MPGeneralConstraintProto::_InternalSerialize(
2163 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
2164 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPGeneralConstraintProto)
2165 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2166 (void) cached_has_bits;
2167
2168 cached_has_bits = _has_bits_[0];
2169 // optional string name = 1 [default = ""];
2170 if (cached_has_bits & 0x00000001u) {
2171 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
2172 this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
2173 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
2174 "operations_research.MPGeneralConstraintProto.name");
2175 target = stream->WriteStringMaybeAliased(
2176 1, this->_internal_name(), target);
2177 }
2178
2179 switch (general_constraint_case()) {
2180 case kIndicatorConstraint: {
2181 target = stream->EnsureSpace(target);
2182 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2183 InternalWriteMessage(
2184 2, _Internal::indicator_constraint(this), target, stream);
2185 break;
2186 }
2187 case kSosConstraint: {
2188 target = stream->EnsureSpace(target);
2189 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2190 InternalWriteMessage(
2191 3, _Internal::sos_constraint(this), target, stream);
2192 break;
2193 }
2194 case kQuadraticConstraint: {
2195 target = stream->EnsureSpace(target);
2196 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2197 InternalWriteMessage(
2198 4, _Internal::quadratic_constraint(this), target, stream);
2199 break;
2200 }
2201 case kAbsConstraint: {
2202 target = stream->EnsureSpace(target);
2203 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2204 InternalWriteMessage(
2205 5, _Internal::abs_constraint(this), target, stream);
2206 break;
2207 }
2208 case kAndConstraint: {
2209 target = stream->EnsureSpace(target);
2210 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2211 InternalWriteMessage(
2212 6, _Internal::and_constraint(this), target, stream);
2213 break;
2214 }
2215 case kOrConstraint: {
2216 target = stream->EnsureSpace(target);
2217 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2218 InternalWriteMessage(
2219 7, _Internal::or_constraint(this), target, stream);
2220 break;
2221 }
2222 case kMinConstraint: {
2223 target = stream->EnsureSpace(target);
2224 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2225 InternalWriteMessage(
2226 8, _Internal::min_constraint(this), target, stream);
2227 break;
2228 }
2229 case kMaxConstraint: {
2230 target = stream->EnsureSpace(target);
2231 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2232 InternalWriteMessage(
2233 9, _Internal::max_constraint(this), target, stream);
2234 break;
2235 }
2236 default: ;
2237 }
2238 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2239 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
2240 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
2241 }
2242 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPGeneralConstraintProto)
2243 return target;
2244}
2245
2247// @@protoc_insertion_point(message_byte_size_start:operations_research.MPGeneralConstraintProto)
2248 size_t total_size = 0;
2249
2250 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2251 // Prevent compiler warnings about cached_has_bits being unused
2252 (void) cached_has_bits;
2253
2254 // optional string name = 1 [default = ""];
2255 cached_has_bits = _has_bits_[0];
2256 if (cached_has_bits & 0x00000001u) {
2257 total_size += 1 +
2258 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
2259 this->_internal_name());
2260 }
2261
2262 switch (general_constraint_case()) {
2263 // .operations_research.MPIndicatorConstraint indicator_constraint = 2;
2264 case kIndicatorConstraint: {
2265 total_size += 1 +
2266 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2267 *general_constraint_.indicator_constraint_);
2268 break;
2269 }
2270 // .operations_research.MPSosConstraint sos_constraint = 3;
2271 case kSosConstraint: {
2272 total_size += 1 +
2273 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2274 *general_constraint_.sos_constraint_);
2275 break;
2276 }
2277 // .operations_research.MPQuadraticConstraint quadratic_constraint = 4;
2278 case kQuadraticConstraint: {
2279 total_size += 1 +
2280 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2281 *general_constraint_.quadratic_constraint_);
2282 break;
2283 }
2284 // .operations_research.MPAbsConstraint abs_constraint = 5;
2285 case kAbsConstraint: {
2286 total_size += 1 +
2287 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2288 *general_constraint_.abs_constraint_);
2289 break;
2290 }
2291 // .operations_research.MPArrayConstraint and_constraint = 6;
2292 case kAndConstraint: {
2293 total_size += 1 +
2294 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2295 *general_constraint_.and_constraint_);
2296 break;
2297 }
2298 // .operations_research.MPArrayConstraint or_constraint = 7;
2299 case kOrConstraint: {
2300 total_size += 1 +
2301 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2302 *general_constraint_.or_constraint_);
2303 break;
2304 }
2305 // .operations_research.MPArrayWithConstantConstraint min_constraint = 8;
2306 case kMinConstraint: {
2307 total_size += 1 +
2308 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2309 *general_constraint_.min_constraint_);
2310 break;
2311 }
2312 // .operations_research.MPArrayWithConstantConstraint max_constraint = 9;
2313 case kMaxConstraint: {
2314 total_size += 1 +
2315 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2316 *general_constraint_.max_constraint_);
2317 break;
2318 }
2320 break;
2321 }
2322 }
2323 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
2324}
2325
2326const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPGeneralConstraintProto::_class_data_ = {
2327 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
2328 MPGeneralConstraintProto::MergeImpl
2329};
2330const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPGeneralConstraintProto::GetClassData() const { return &_class_data_; }
2331
2332void MPGeneralConstraintProto::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
2333 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2334 static_cast<MPGeneralConstraintProto *>(to)->MergeFrom(
2335 static_cast<const MPGeneralConstraintProto &>(from));
2336}
2337
2338
2340// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPGeneralConstraintProto)
2341 GOOGLE_DCHECK_NE(&from, this);
2342 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2343 (void) cached_has_bits;
2344
2345 if (from._internal_has_name()) {
2346 _internal_set_name(from._internal_name());
2347 }
2348 switch (from.general_constraint_case()) {
2349 case kIndicatorConstraint: {
2350 _internal_mutable_indicator_constraint()->::operations_research::MPIndicatorConstraint::MergeFrom(from._internal_indicator_constraint());
2351 break;
2352 }
2353 case kSosConstraint: {
2354 _internal_mutable_sos_constraint()->::operations_research::MPSosConstraint::MergeFrom(from._internal_sos_constraint());
2355 break;
2356 }
2357 case kQuadraticConstraint: {
2358 _internal_mutable_quadratic_constraint()->::operations_research::MPQuadraticConstraint::MergeFrom(from._internal_quadratic_constraint());
2359 break;
2360 }
2361 case kAbsConstraint: {
2362 _internal_mutable_abs_constraint()->::operations_research::MPAbsConstraint::MergeFrom(from._internal_abs_constraint());
2363 break;
2364 }
2365 case kAndConstraint: {
2366 _internal_mutable_and_constraint()->::operations_research::MPArrayConstraint::MergeFrom(from._internal_and_constraint());
2367 break;
2368 }
2369 case kOrConstraint: {
2370 _internal_mutable_or_constraint()->::operations_research::MPArrayConstraint::MergeFrom(from._internal_or_constraint());
2371 break;
2372 }
2373 case kMinConstraint: {
2374 _internal_mutable_min_constraint()->::operations_research::MPArrayWithConstantConstraint::MergeFrom(from._internal_min_constraint());
2375 break;
2376 }
2377 case kMaxConstraint: {
2378 _internal_mutable_max_constraint()->::operations_research::MPArrayWithConstantConstraint::MergeFrom(from._internal_max_constraint());
2379 break;
2380 }
2382 break;
2383 }
2384 }
2385 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2386}
2387
2389// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPGeneralConstraintProto)
2390 if (&from == this) return;
2391 Clear();
2392 MergeFrom(from);
2393}
2394
2396 return true;
2397}
2398
2399void MPGeneralConstraintProto::InternalSwap(MPGeneralConstraintProto* other) {
2400 using std::swap;
2401 auto* lhs_arena = GetArenaForAllocation();
2402 auto* rhs_arena = other->GetArenaForAllocation();
2403 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2404 swap(_has_bits_[0], other->_has_bits_[0]);
2405 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
2406 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
2407 &name_, lhs_arena,
2408 &other->name_, rhs_arena
2409 );
2410 swap(general_constraint_, other->general_constraint_);
2411 swap(_oneof_case_[0], other->_oneof_case_[0]);
2412}
2413
2414::PROTOBUF_NAMESPACE_ID::Metadata MPGeneralConstraintProto::GetMetadata() const {
2415 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
2418}
2419
2420// ===================================================================
2421
2423 public:
2424 using HasBits = decltype(std::declval<MPIndicatorConstraint>()._has_bits_);
2425 static void set_has_var_index(HasBits* has_bits) {
2426 (*has_bits)[0] |= 2u;
2427 }
2428 static void set_has_var_value(HasBits* has_bits) {
2429 (*has_bits)[0] |= 4u;
2430 }
2431 static const ::operations_research::MPConstraintProto& constraint(const MPIndicatorConstraint* msg);
2432 static void set_has_constraint(HasBits* has_bits) {
2433 (*has_bits)[0] |= 1u;
2434 }
2435};
2436
2437const ::operations_research::MPConstraintProto&
2439 return *msg->constraint_;
2440}
2441MPIndicatorConstraint::MPIndicatorConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2442 bool is_message_owned)
2443 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
2444 SharedCtor();
2445 if (!is_message_owned) {
2446 RegisterArenaDtor(arena);
2447 }
2448 // @@protoc_insertion_point(arena_constructor:operations_research.MPIndicatorConstraint)
2449}
2451 : ::PROTOBUF_NAMESPACE_ID::Message(),
2452 _has_bits_(from._has_bits_) {
2453 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2454 if (from._internal_has_constraint()) {
2455 constraint_ = new ::operations_research::MPConstraintProto(*from.constraint_);
2456 } else {
2457 constraint_ = nullptr;
2458 }
2459 ::memcpy(&var_index_, &from.var_index_,
2460 static_cast<size_t>(reinterpret_cast<char*>(&var_value_) -
2461 reinterpret_cast<char*>(&var_index_)) + sizeof(var_value_));
2462 // @@protoc_insertion_point(copy_constructor:operations_research.MPIndicatorConstraint)
2463}
2464
2465void MPIndicatorConstraint::SharedCtor() {
2466::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
2467 reinterpret_cast<char*>(&constraint_) - reinterpret_cast<char*>(this)),
2468 0, static_cast<size_t>(reinterpret_cast<char*>(&var_value_) -
2469 reinterpret_cast<char*>(&constraint_)) + sizeof(var_value_));
2470}
2471
2473 // @@protoc_insertion_point(destructor:operations_research.MPIndicatorConstraint)
2474 if (GetArenaForAllocation() != nullptr) return;
2475 SharedDtor();
2476 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2477}
2478
2479inline void MPIndicatorConstraint::SharedDtor() {
2480 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
2481 if (this != internal_default_instance()) delete constraint_;
2482}
2483
2484void MPIndicatorConstraint::ArenaDtor(void* object) {
2485 MPIndicatorConstraint* _this = reinterpret_cast< MPIndicatorConstraint* >(object);
2486 (void)_this;
2487}
2488void MPIndicatorConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
2489}
2490void MPIndicatorConstraint::SetCachedSize(int size) const {
2491 _cached_size_.Set(size);
2492}
2493
2495// @@protoc_insertion_point(message_clear_start:operations_research.MPIndicatorConstraint)
2496 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2497 // Prevent compiler warnings about cached_has_bits being unused
2498 (void) cached_has_bits;
2499
2500 cached_has_bits = _has_bits_[0];
2501 if (cached_has_bits & 0x00000001u) {
2502 GOOGLE_DCHECK(constraint_ != nullptr);
2503 constraint_->Clear();
2504 }
2505 if (cached_has_bits & 0x00000006u) {
2506 ::memset(&var_index_, 0, static_cast<size_t>(
2507 reinterpret_cast<char*>(&var_value_) -
2508 reinterpret_cast<char*>(&var_index_)) + sizeof(var_value_));
2509 }
2510 _has_bits_.Clear();
2511 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2512}
2513
2514const char* MPIndicatorConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
2515#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
2516 _Internal::HasBits has_bits{};
2517 while (!ctx->Done(&ptr)) {
2518 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
2519 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
2520 switch (tag >> 3) {
2521 // optional int32 var_index = 1;
2522 case 1:
2523 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
2525 var_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2526 CHK_(ptr);
2527 } else
2528 goto handle_unusual;
2529 continue;
2530 // optional int32 var_value = 2;
2531 case 2:
2532 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
2534 var_value_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2535 CHK_(ptr);
2536 } else
2537 goto handle_unusual;
2538 continue;
2539 // optional .operations_research.MPConstraintProto constraint = 3;
2540 case 3:
2541 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
2542 ptr = ctx->ParseMessage(_internal_mutable_constraint(), ptr);
2543 CHK_(ptr);
2544 } else
2545 goto handle_unusual;
2546 continue;
2547 default:
2548 goto handle_unusual;
2549 } // switch
2550 handle_unusual:
2551 if ((tag == 0) || ((tag & 7) == 4)) {
2552 CHK_(ptr);
2553 ctx->SetLastTag(tag);
2554 goto message_done;
2555 }
2556 ptr = UnknownFieldParse(
2557 tag,
2558 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
2559 ptr, ctx);
2560 CHK_(ptr != nullptr);
2561 } // while
2562message_done:
2563 _has_bits_.Or(has_bits);
2564 return ptr;
2565failure:
2566 ptr = nullptr;
2567 goto message_done;
2568#undef CHK_
2569}
2570
2571::PROTOBUF_NAMESPACE_ID::uint8* MPIndicatorConstraint::_InternalSerialize(
2572 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
2573 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPIndicatorConstraint)
2574 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2575 (void) cached_has_bits;
2576
2577 cached_has_bits = _has_bits_[0];
2578 // optional int32 var_index = 1;
2579 if (cached_has_bits & 0x00000002u) {
2580 target = stream->EnsureSpace(target);
2581 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_var_index(), target);
2582 }
2583
2584 // optional int32 var_value = 2;
2585 if (cached_has_bits & 0x00000004u) {
2586 target = stream->EnsureSpace(target);
2587 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_var_value(), target);
2588 }
2589
2590 // optional .operations_research.MPConstraintProto constraint = 3;
2591 if (cached_has_bits & 0x00000001u) {
2592 target = stream->EnsureSpace(target);
2593 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2594 InternalWriteMessage(
2595 3, _Internal::constraint(this), target, stream);
2596 }
2597
2598 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2599 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
2600 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
2601 }
2602 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPIndicatorConstraint)
2603 return target;
2604}
2605
2607// @@protoc_insertion_point(message_byte_size_start:operations_research.MPIndicatorConstraint)
2608 size_t total_size = 0;
2609
2610 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2611 // Prevent compiler warnings about cached_has_bits being unused
2612 (void) cached_has_bits;
2613
2614 cached_has_bits = _has_bits_[0];
2615 if (cached_has_bits & 0x00000007u) {
2616 // optional .operations_research.MPConstraintProto constraint = 3;
2617 if (cached_has_bits & 0x00000001u) {
2618 total_size += 1 +
2619 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
2620 *constraint_);
2621 }
2622
2623 // optional int32 var_index = 1;
2624 if (cached_has_bits & 0x00000002u) {
2625 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_var_index());
2626 }
2627
2628 // optional int32 var_value = 2;
2629 if (cached_has_bits & 0x00000004u) {
2630 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_var_value());
2631 }
2632
2633 }
2634 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
2635}
2636
2637const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPIndicatorConstraint::_class_data_ = {
2638 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
2639 MPIndicatorConstraint::MergeImpl
2640};
2641const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPIndicatorConstraint::GetClassData() const { return &_class_data_; }
2642
2643void MPIndicatorConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
2644 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2645 static_cast<MPIndicatorConstraint *>(to)->MergeFrom(
2646 static_cast<const MPIndicatorConstraint &>(from));
2647}
2648
2649
2651// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPIndicatorConstraint)
2652 GOOGLE_DCHECK_NE(&from, this);
2653 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2654 (void) cached_has_bits;
2655
2656 cached_has_bits = from._has_bits_[0];
2657 if (cached_has_bits & 0x00000007u) {
2658 if (cached_has_bits & 0x00000001u) {
2659 _internal_mutable_constraint()->::operations_research::MPConstraintProto::MergeFrom(from._internal_constraint());
2660 }
2661 if (cached_has_bits & 0x00000002u) {
2662 var_index_ = from.var_index_;
2663 }
2664 if (cached_has_bits & 0x00000004u) {
2665 var_value_ = from.var_value_;
2666 }
2667 _has_bits_[0] |= cached_has_bits;
2668 }
2669 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2670}
2671
2673// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPIndicatorConstraint)
2674 if (&from == this) return;
2675 Clear();
2676 MergeFrom(from);
2677}
2678
2680 return true;
2681}
2682
2683void MPIndicatorConstraint::InternalSwap(MPIndicatorConstraint* other) {
2684 using std::swap;
2685 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2686 swap(_has_bits_[0], other->_has_bits_[0]);
2687 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
2688 PROTOBUF_FIELD_OFFSET(MPIndicatorConstraint, var_value_)
2689 + sizeof(MPIndicatorConstraint::var_value_)
2690 - PROTOBUF_FIELD_OFFSET(MPIndicatorConstraint, constraint_)>(
2691 reinterpret_cast<char*>(&constraint_),
2692 reinterpret_cast<char*>(&other->constraint_));
2693}
2694
2695::PROTOBUF_NAMESPACE_ID::Metadata MPIndicatorConstraint::GetMetadata() const {
2696 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
2699}
2700
2701// ===================================================================
2702
2704 public:
2705 using HasBits = decltype(std::declval<MPSosConstraint>()._has_bits_);
2706 static void set_has_type(HasBits* has_bits) {
2707 (*has_bits)[0] |= 1u;
2708 }
2709};
2710
2711MPSosConstraint::MPSosConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2712 bool is_message_owned)
2713 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
2714 var_index_(arena),
2715 weight_(arena) {
2716 SharedCtor();
2717 if (!is_message_owned) {
2718 RegisterArenaDtor(arena);
2719 }
2720 // @@protoc_insertion_point(arena_constructor:operations_research.MPSosConstraint)
2721}
2723 : ::PROTOBUF_NAMESPACE_ID::Message(),
2724 _has_bits_(from._has_bits_),
2725 var_index_(from.var_index_),
2726 weight_(from.weight_) {
2727 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2728 type_ = from.type_;
2729 // @@protoc_insertion_point(copy_constructor:operations_research.MPSosConstraint)
2730}
2731
2732void MPSosConstraint::SharedCtor() {
2733type_ = 0;
2734}
2735
2737 // @@protoc_insertion_point(destructor:operations_research.MPSosConstraint)
2738 if (GetArenaForAllocation() != nullptr) return;
2739 SharedDtor();
2740 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2741}
2742
2743inline void MPSosConstraint::SharedDtor() {
2744 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
2745}
2746
2747void MPSosConstraint::ArenaDtor(void* object) {
2748 MPSosConstraint* _this = reinterpret_cast< MPSosConstraint* >(object);
2749 (void)_this;
2750}
2751void MPSosConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
2752}
2753void MPSosConstraint::SetCachedSize(int size) const {
2754 _cached_size_.Set(size);
2755}
2756
2758// @@protoc_insertion_point(message_clear_start:operations_research.MPSosConstraint)
2759 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2760 // Prevent compiler warnings about cached_has_bits being unused
2761 (void) cached_has_bits;
2762
2763 var_index_.Clear();
2764 weight_.Clear();
2765 type_ = 0;
2766 _has_bits_.Clear();
2767 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
2768}
2769
2770const char* MPSosConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
2771#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
2772 _Internal::HasBits has_bits{};
2773 while (!ctx->Done(&ptr)) {
2774 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
2775 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
2776 switch (tag >> 3) {
2777 // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
2778 case 1:
2779 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
2780 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
2781 CHK_(ptr);
2782 if (PROTOBUF_PREDICT_TRUE(::operations_research::MPSosConstraint_Type_IsValid(val))) {
2783 _internal_set_type(static_cast<::operations_research::MPSosConstraint_Type>(val));
2784 } else {
2785 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
2786 }
2787 } else
2788 goto handle_unusual;
2789 continue;
2790 // repeated int32 var_index = 2;
2791 case 2:
2792 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
2793 ptr -= 1;
2794 do {
2795 ptr += 1;
2796 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
2797 CHK_(ptr);
2798 if (!ctx->DataAvailable(ptr)) break;
2799 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<16>(ptr));
2800 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18) {
2801 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
2802 CHK_(ptr);
2803 } else
2804 goto handle_unusual;
2805 continue;
2806 // repeated double weight = 3;
2807 case 3:
2808 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
2809 ptr -= 1;
2810 do {
2811 ptr += 1;
2812 _internal_add_weight(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
2813 ptr += sizeof(double);
2814 if (!ctx->DataAvailable(ptr)) break;
2815 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<25>(ptr));
2816 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
2817 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_weight(), ptr, ctx);
2818 CHK_(ptr);
2819 } else
2820 goto handle_unusual;
2821 continue;
2822 default:
2823 goto handle_unusual;
2824 } // switch
2825 handle_unusual:
2826 if ((tag == 0) || ((tag & 7) == 4)) {
2827 CHK_(ptr);
2828 ctx->SetLastTag(tag);
2829 goto message_done;
2830 }
2831 ptr = UnknownFieldParse(
2832 tag,
2833 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
2834 ptr, ctx);
2835 CHK_(ptr != nullptr);
2836 } // while
2837message_done:
2838 _has_bits_.Or(has_bits);
2839 return ptr;
2840failure:
2841 ptr = nullptr;
2842 goto message_done;
2843#undef CHK_
2844}
2845
2846::PROTOBUF_NAMESPACE_ID::uint8* MPSosConstraint::_InternalSerialize(
2847 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
2848 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPSosConstraint)
2849 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2850 (void) cached_has_bits;
2851
2852 cached_has_bits = _has_bits_[0];
2853 // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
2854 if (cached_has_bits & 0x00000001u) {
2855 target = stream->EnsureSpace(target);
2856 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
2857 1, this->_internal_type(), target);
2858 }
2859
2860 // repeated int32 var_index = 2;
2861 for (int i = 0, n = this->_internal_var_index_size(); i < n; i++) {
2862 target = stream->EnsureSpace(target);
2863 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_var_index(i), target);
2864 }
2865
2866 // repeated double weight = 3;
2867 for (int i = 0, n = this->_internal_weight_size(); i < n; i++) {
2868 target = stream->EnsureSpace(target);
2869 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_weight(i), target);
2870 }
2871
2872 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
2873 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
2874 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
2875 }
2876 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPSosConstraint)
2877 return target;
2878}
2879
2881// @@protoc_insertion_point(message_byte_size_start:operations_research.MPSosConstraint)
2882 size_t total_size = 0;
2883
2884 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2885 // Prevent compiler warnings about cached_has_bits being unused
2886 (void) cached_has_bits;
2887
2888 // repeated int32 var_index = 2;
2889 {
2890 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
2891 Int32Size(this->var_index_);
2892 total_size += 1 *
2893 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_var_index_size());
2894 total_size += data_size;
2895 }
2896
2897 // repeated double weight = 3;
2898 {
2899 unsigned int count = static_cast<unsigned int>(this->_internal_weight_size());
2900 size_t data_size = 8UL * count;
2901 total_size += 1 *
2902 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_weight_size());
2903 total_size += data_size;
2904 }
2905
2906 // optional .operations_research.MPSosConstraint.Type type = 1 [default = SOS1_DEFAULT];
2907 cached_has_bits = _has_bits_[0];
2908 if (cached_has_bits & 0x00000001u) {
2909 total_size += 1 +
2910 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_type());
2911 }
2912
2913 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
2914}
2915
2916const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPSosConstraint::_class_data_ = {
2917 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
2918 MPSosConstraint::MergeImpl
2919};
2920const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPSosConstraint::GetClassData() const { return &_class_data_; }
2921
2922void MPSosConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
2923 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
2924 static_cast<MPSosConstraint *>(to)->MergeFrom(
2925 static_cast<const MPSosConstraint &>(from));
2926}
2927
2928
2930// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPSosConstraint)
2931 GOOGLE_DCHECK_NE(&from, this);
2932 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
2933 (void) cached_has_bits;
2934
2935 var_index_.MergeFrom(from.var_index_);
2936 weight_.MergeFrom(from.weight_);
2937 if (from._internal_has_type()) {
2938 _internal_set_type(from._internal_type());
2939 }
2940 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
2941}
2942
2944// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPSosConstraint)
2945 if (&from == this) return;
2946 Clear();
2947 MergeFrom(from);
2948}
2949
2951 return true;
2952}
2953
2954void MPSosConstraint::InternalSwap(MPSosConstraint* other) {
2955 using std::swap;
2956 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2957 swap(_has_bits_[0], other->_has_bits_[0]);
2958 var_index_.InternalSwap(&other->var_index_);
2959 weight_.InternalSwap(&other->weight_);
2960 swap(type_, other->type_);
2961}
2962
2963::PROTOBUF_NAMESPACE_ID::Metadata MPSosConstraint::GetMetadata() const {
2964 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
2967}
2968
2969// ===================================================================
2970
2972 public:
2973 using HasBits = decltype(std::declval<MPQuadraticConstraint>()._has_bits_);
2974 static void set_has_lower_bound(HasBits* has_bits) {
2975 (*has_bits)[0] |= 1u;
2976 }
2977 static void set_has_upper_bound(HasBits* has_bits) {
2978 (*has_bits)[0] |= 2u;
2979 }
2980};
2981
2982MPQuadraticConstraint::MPQuadraticConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena,
2983 bool is_message_owned)
2984 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
2985 var_index_(arena),
2986 coefficient_(arena),
2987 qvar1_index_(arena),
2988 qvar2_index_(arena),
2989 qcoefficient_(arena) {
2990 SharedCtor();
2991 if (!is_message_owned) {
2992 RegisterArenaDtor(arena);
2993 }
2994 // @@protoc_insertion_point(arena_constructor:operations_research.MPQuadraticConstraint)
2995}
2997 : ::PROTOBUF_NAMESPACE_ID::Message(),
2998 _has_bits_(from._has_bits_),
2999 var_index_(from.var_index_),
3000 coefficient_(from.coefficient_),
3001 qvar1_index_(from.qvar1_index_),
3002 qvar2_index_(from.qvar2_index_),
3003 qcoefficient_(from.qcoefficient_) {
3004 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3005 ::memcpy(&lower_bound_, &from.lower_bound_,
3006 static_cast<size_t>(reinterpret_cast<char*>(&upper_bound_) -
3007 reinterpret_cast<char*>(&lower_bound_)) + sizeof(upper_bound_));
3008 // @@protoc_insertion_point(copy_constructor:operations_research.MPQuadraticConstraint)
3009}
3010
3011void MPQuadraticConstraint::SharedCtor() {
3012lower_bound_ = -std::numeric_limits<double>::infinity();
3013upper_bound_ = std::numeric_limits<double>::infinity();
3014}
3015
3017 // @@protoc_insertion_point(destructor:operations_research.MPQuadraticConstraint)
3018 if (GetArenaForAllocation() != nullptr) return;
3019 SharedDtor();
3020 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3021}
3022
3023inline void MPQuadraticConstraint::SharedDtor() {
3024 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
3025}
3026
3027void MPQuadraticConstraint::ArenaDtor(void* object) {
3028 MPQuadraticConstraint* _this = reinterpret_cast< MPQuadraticConstraint* >(object);
3029 (void)_this;
3030}
3031void MPQuadraticConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
3032}
3033void MPQuadraticConstraint::SetCachedSize(int size) const {
3034 _cached_size_.Set(size);
3035}
3036
3038// @@protoc_insertion_point(message_clear_start:operations_research.MPQuadraticConstraint)
3039 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3040 // Prevent compiler warnings about cached_has_bits being unused
3041 (void) cached_has_bits;
3042
3043 var_index_.Clear();
3044 coefficient_.Clear();
3045 qvar1_index_.Clear();
3046 qvar2_index_.Clear();
3047 qcoefficient_.Clear();
3048 cached_has_bits = _has_bits_[0];
3049 if (cached_has_bits & 0x00000003u) {
3050 lower_bound_ = -std::numeric_limits<double>::infinity();
3051 upper_bound_ = std::numeric_limits<double>::infinity();
3052 }
3053 _has_bits_.Clear();
3054 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3055}
3056
3057const char* MPQuadraticConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
3058#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
3059 _Internal::HasBits has_bits{};
3060 while (!ctx->Done(&ptr)) {
3061 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
3062 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
3063 switch (tag >> 3) {
3064 // repeated int32 var_index = 1;
3065 case 1:
3066 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
3067 ptr -= 1;
3068 do {
3069 ptr += 1;
3070 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
3071 CHK_(ptr);
3072 if (!ctx->DataAvailable(ptr)) break;
3073 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<8>(ptr));
3074 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10) {
3075 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
3076 CHK_(ptr);
3077 } else
3078 goto handle_unusual;
3079 continue;
3080 // repeated double coefficient = 2;
3081 case 2:
3082 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
3083 ptr -= 1;
3084 do {
3085 ptr += 1;
3086 _internal_add_coefficient(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
3087 ptr += sizeof(double);
3088 if (!ctx->DataAvailable(ptr)) break;
3089 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<17>(ptr));
3090 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18) {
3091 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_coefficient(), ptr, ctx);
3092 CHK_(ptr);
3093 } else
3094 goto handle_unusual;
3095 continue;
3096 // repeated int32 qvar1_index = 3;
3097 case 3:
3098 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
3099 ptr -= 1;
3100 do {
3101 ptr += 1;
3102 _internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
3103 CHK_(ptr);
3104 if (!ctx->DataAvailable(ptr)) break;
3105 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<24>(ptr));
3106 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
3107 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_qvar1_index(), ptr, ctx);
3108 CHK_(ptr);
3109 } else
3110 goto handle_unusual;
3111 continue;
3112 // repeated int32 qvar2_index = 4;
3113 case 4:
3114 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
3115 ptr -= 1;
3116 do {
3117 ptr += 1;
3118 _internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
3119 CHK_(ptr);
3120 if (!ctx->DataAvailable(ptr)) break;
3121 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<32>(ptr));
3122 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34) {
3123 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_qvar2_index(), ptr, ctx);
3124 CHK_(ptr);
3125 } else
3126 goto handle_unusual;
3127 continue;
3128 // repeated double qcoefficient = 5;
3129 case 5:
3130 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 41)) {
3131 ptr -= 1;
3132 do {
3133 ptr += 1;
3134 _internal_add_qcoefficient(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
3135 ptr += sizeof(double);
3136 if (!ctx->DataAvailable(ptr)) break;
3137 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<41>(ptr));
3138 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42) {
3139 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_qcoefficient(), ptr, ctx);
3140 CHK_(ptr);
3141 } else
3142 goto handle_unusual;
3143 continue;
3144 // optional double lower_bound = 6 [default = -inf];
3145 case 6:
3146 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 49)) {
3148 lower_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
3149 ptr += sizeof(double);
3150 } else
3151 goto handle_unusual;
3152 continue;
3153 // optional double upper_bound = 7 [default = inf];
3154 case 7:
3155 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 57)) {
3157 upper_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
3158 ptr += sizeof(double);
3159 } else
3160 goto handle_unusual;
3161 continue;
3162 default:
3163 goto handle_unusual;
3164 } // switch
3165 handle_unusual:
3166 if ((tag == 0) || ((tag & 7) == 4)) {
3167 CHK_(ptr);
3168 ctx->SetLastTag(tag);
3169 goto message_done;
3170 }
3171 ptr = UnknownFieldParse(
3172 tag,
3173 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
3174 ptr, ctx);
3175 CHK_(ptr != nullptr);
3176 } // while
3177message_done:
3178 _has_bits_.Or(has_bits);
3179 return ptr;
3180failure:
3181 ptr = nullptr;
3182 goto message_done;
3183#undef CHK_
3184}
3185
3186::PROTOBUF_NAMESPACE_ID::uint8* MPQuadraticConstraint::_InternalSerialize(
3187 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
3188 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPQuadraticConstraint)
3189 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3190 (void) cached_has_bits;
3191
3192 // repeated int32 var_index = 1;
3193 for (int i = 0, n = this->_internal_var_index_size(); i < n; i++) {
3194 target = stream->EnsureSpace(target);
3195 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_var_index(i), target);
3196 }
3197
3198 // repeated double coefficient = 2;
3199 for (int i = 0, n = this->_internal_coefficient_size(); i < n; i++) {
3200 target = stream->EnsureSpace(target);
3201 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_coefficient(i), target);
3202 }
3203
3204 // repeated int32 qvar1_index = 3;
3205 for (int i = 0, n = this->_internal_qvar1_index_size(); i < n; i++) {
3206 target = stream->EnsureSpace(target);
3207 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_qvar1_index(i), target);
3208 }
3209
3210 // repeated int32 qvar2_index = 4;
3211 for (int i = 0, n = this->_internal_qvar2_index_size(); i < n; i++) {
3212 target = stream->EnsureSpace(target);
3213 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(4, this->_internal_qvar2_index(i), target);
3214 }
3215
3216 // repeated double qcoefficient = 5;
3217 for (int i = 0, n = this->_internal_qcoefficient_size(); i < n; i++) {
3218 target = stream->EnsureSpace(target);
3219 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(5, this->_internal_qcoefficient(i), target);
3220 }
3221
3222 cached_has_bits = _has_bits_[0];
3223 // optional double lower_bound = 6 [default = -inf];
3224 if (cached_has_bits & 0x00000001u) {
3225 target = stream->EnsureSpace(target);
3226 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(6, this->_internal_lower_bound(), target);
3227 }
3228
3229 // optional double upper_bound = 7 [default = inf];
3230 if (cached_has_bits & 0x00000002u) {
3231 target = stream->EnsureSpace(target);
3232 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(7, this->_internal_upper_bound(), target);
3233 }
3234
3235 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
3236 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
3237 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
3238 }
3239 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPQuadraticConstraint)
3240 return target;
3241}
3242
3244// @@protoc_insertion_point(message_byte_size_start:operations_research.MPQuadraticConstraint)
3245 size_t total_size = 0;
3246
3247 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3248 // Prevent compiler warnings about cached_has_bits being unused
3249 (void) cached_has_bits;
3250
3251 // repeated int32 var_index = 1;
3252 {
3253 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
3254 Int32Size(this->var_index_);
3255 total_size += 1 *
3256 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_var_index_size());
3257 total_size += data_size;
3258 }
3259
3260 // repeated double coefficient = 2;
3261 {
3262 unsigned int count = static_cast<unsigned int>(this->_internal_coefficient_size());
3263 size_t data_size = 8UL * count;
3264 total_size += 1 *
3265 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_coefficient_size());
3266 total_size += data_size;
3267 }
3268
3269 // repeated int32 qvar1_index = 3;
3270 {
3271 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
3272 Int32Size(this->qvar1_index_);
3273 total_size += 1 *
3274 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_qvar1_index_size());
3275 total_size += data_size;
3276 }
3277
3278 // repeated int32 qvar2_index = 4;
3279 {
3280 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
3281 Int32Size(this->qvar2_index_);
3282 total_size += 1 *
3283 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_qvar2_index_size());
3284 total_size += data_size;
3285 }
3286
3287 // repeated double qcoefficient = 5;
3288 {
3289 unsigned int count = static_cast<unsigned int>(this->_internal_qcoefficient_size());
3290 size_t data_size = 8UL * count;
3291 total_size += 1 *
3292 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_qcoefficient_size());
3293 total_size += data_size;
3294 }
3295
3296 cached_has_bits = _has_bits_[0];
3297 if (cached_has_bits & 0x00000003u) {
3298 // optional double lower_bound = 6 [default = -inf];
3299 if (cached_has_bits & 0x00000001u) {
3300 total_size += 1 + 8;
3301 }
3302
3303 // optional double upper_bound = 7 [default = inf];
3304 if (cached_has_bits & 0x00000002u) {
3305 total_size += 1 + 8;
3306 }
3307
3308 }
3309 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
3310}
3311
3312const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPQuadraticConstraint::_class_data_ = {
3313 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
3314 MPQuadraticConstraint::MergeImpl
3315};
3316const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPQuadraticConstraint::GetClassData() const { return &_class_data_; }
3317
3318void MPQuadraticConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
3319 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
3320 static_cast<MPQuadraticConstraint *>(to)->MergeFrom(
3321 static_cast<const MPQuadraticConstraint &>(from));
3322}
3323
3324
3326// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPQuadraticConstraint)
3327 GOOGLE_DCHECK_NE(&from, this);
3328 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3329 (void) cached_has_bits;
3330
3331 var_index_.MergeFrom(from.var_index_);
3332 coefficient_.MergeFrom(from.coefficient_);
3333 qvar1_index_.MergeFrom(from.qvar1_index_);
3334 qvar2_index_.MergeFrom(from.qvar2_index_);
3335 qcoefficient_.MergeFrom(from.qcoefficient_);
3336 cached_has_bits = from._has_bits_[0];
3337 if (cached_has_bits & 0x00000003u) {
3338 if (cached_has_bits & 0x00000001u) {
3339 lower_bound_ = from.lower_bound_;
3340 }
3341 if (cached_has_bits & 0x00000002u) {
3342 upper_bound_ = from.upper_bound_;
3343 }
3344 _has_bits_[0] |= cached_has_bits;
3345 }
3346 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3347}
3348
3350// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPQuadraticConstraint)
3351 if (&from == this) return;
3352 Clear();
3353 MergeFrom(from);
3354}
3355
3357 return true;
3358}
3359
3360void MPQuadraticConstraint::InternalSwap(MPQuadraticConstraint* other) {
3361 using std::swap;
3362 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3363 swap(_has_bits_[0], other->_has_bits_[0]);
3364 var_index_.InternalSwap(&other->var_index_);
3365 coefficient_.InternalSwap(&other->coefficient_);
3366 qvar1_index_.InternalSwap(&other->qvar1_index_);
3367 qvar2_index_.InternalSwap(&other->qvar2_index_);
3368 qcoefficient_.InternalSwap(&other->qcoefficient_);
3369 swap(lower_bound_, other->lower_bound_);
3370 swap(upper_bound_, other->upper_bound_);
3371}
3372
3373::PROTOBUF_NAMESPACE_ID::Metadata MPQuadraticConstraint::GetMetadata() const {
3374 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
3377}
3378
3379// ===================================================================
3380
3382 public:
3383 using HasBits = decltype(std::declval<MPAbsConstraint>()._has_bits_);
3384 static void set_has_var_index(HasBits* has_bits) {
3385 (*has_bits)[0] |= 1u;
3386 }
3387 static void set_has_resultant_var_index(HasBits* has_bits) {
3388 (*has_bits)[0] |= 2u;
3389 }
3390};
3391
3392MPAbsConstraint::MPAbsConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena,
3393 bool is_message_owned)
3394 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
3395 SharedCtor();
3396 if (!is_message_owned) {
3397 RegisterArenaDtor(arena);
3398 }
3399 // @@protoc_insertion_point(arena_constructor:operations_research.MPAbsConstraint)
3400}
3402 : ::PROTOBUF_NAMESPACE_ID::Message(),
3403 _has_bits_(from._has_bits_) {
3404 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3405 ::memcpy(&var_index_, &from.var_index_,
3406 static_cast<size_t>(reinterpret_cast<char*>(&resultant_var_index_) -
3407 reinterpret_cast<char*>(&var_index_)) + sizeof(resultant_var_index_));
3408 // @@protoc_insertion_point(copy_constructor:operations_research.MPAbsConstraint)
3409}
3410
3411void MPAbsConstraint::SharedCtor() {
3412::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
3413 reinterpret_cast<char*>(&var_index_) - reinterpret_cast<char*>(this)),
3414 0, static_cast<size_t>(reinterpret_cast<char*>(&resultant_var_index_) -
3415 reinterpret_cast<char*>(&var_index_)) + sizeof(resultant_var_index_));
3416}
3417
3419 // @@protoc_insertion_point(destructor:operations_research.MPAbsConstraint)
3420 if (GetArenaForAllocation() != nullptr) return;
3421 SharedDtor();
3422 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3423}
3424
3425inline void MPAbsConstraint::SharedDtor() {
3426 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
3427}
3428
3429void MPAbsConstraint::ArenaDtor(void* object) {
3430 MPAbsConstraint* _this = reinterpret_cast< MPAbsConstraint* >(object);
3431 (void)_this;
3432}
3433void MPAbsConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
3434}
3435void MPAbsConstraint::SetCachedSize(int size) const {
3436 _cached_size_.Set(size);
3437}
3438
3440// @@protoc_insertion_point(message_clear_start:operations_research.MPAbsConstraint)
3441 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3442 // Prevent compiler warnings about cached_has_bits being unused
3443 (void) cached_has_bits;
3444
3445 cached_has_bits = _has_bits_[0];
3446 if (cached_has_bits & 0x00000003u) {
3447 ::memset(&var_index_, 0, static_cast<size_t>(
3448 reinterpret_cast<char*>(&resultant_var_index_) -
3449 reinterpret_cast<char*>(&var_index_)) + sizeof(resultant_var_index_));
3450 }
3451 _has_bits_.Clear();
3452 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3453}
3454
3455const char* MPAbsConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
3456#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
3457 _Internal::HasBits has_bits{};
3458 while (!ctx->Done(&ptr)) {
3459 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
3460 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
3461 switch (tag >> 3) {
3462 // optional int32 var_index = 1;
3463 case 1:
3464 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
3466 var_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
3467 CHK_(ptr);
3468 } else
3469 goto handle_unusual;
3470 continue;
3471 // optional int32 resultant_var_index = 2;
3472 case 2:
3473 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
3475 resultant_var_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
3476 CHK_(ptr);
3477 } else
3478 goto handle_unusual;
3479 continue;
3480 default:
3481 goto handle_unusual;
3482 } // switch
3483 handle_unusual:
3484 if ((tag == 0) || ((tag & 7) == 4)) {
3485 CHK_(ptr);
3486 ctx->SetLastTag(tag);
3487 goto message_done;
3488 }
3489 ptr = UnknownFieldParse(
3490 tag,
3491 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
3492 ptr, ctx);
3493 CHK_(ptr != nullptr);
3494 } // while
3495message_done:
3496 _has_bits_.Or(has_bits);
3497 return ptr;
3498failure:
3499 ptr = nullptr;
3500 goto message_done;
3501#undef CHK_
3502}
3503
3504::PROTOBUF_NAMESPACE_ID::uint8* MPAbsConstraint::_InternalSerialize(
3505 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
3506 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPAbsConstraint)
3507 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3508 (void) cached_has_bits;
3509
3510 cached_has_bits = _has_bits_[0];
3511 // optional int32 var_index = 1;
3512 if (cached_has_bits & 0x00000001u) {
3513 target = stream->EnsureSpace(target);
3514 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_var_index(), target);
3515 }
3516
3517 // optional int32 resultant_var_index = 2;
3518 if (cached_has_bits & 0x00000002u) {
3519 target = stream->EnsureSpace(target);
3520 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_resultant_var_index(), target);
3521 }
3522
3523 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
3524 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
3525 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
3526 }
3527 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPAbsConstraint)
3528 return target;
3529}
3530
3532// @@protoc_insertion_point(message_byte_size_start:operations_research.MPAbsConstraint)
3533 size_t total_size = 0;
3534
3535 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3536 // Prevent compiler warnings about cached_has_bits being unused
3537 (void) cached_has_bits;
3538
3539 cached_has_bits = _has_bits_[0];
3540 if (cached_has_bits & 0x00000003u) {
3541 // optional int32 var_index = 1;
3542 if (cached_has_bits & 0x00000001u) {
3543 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_var_index());
3544 }
3545
3546 // optional int32 resultant_var_index = 2;
3547 if (cached_has_bits & 0x00000002u) {
3548 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_resultant_var_index());
3549 }
3550
3551 }
3552 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
3553}
3554
3555const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPAbsConstraint::_class_data_ = {
3556 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
3557 MPAbsConstraint::MergeImpl
3558};
3559const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPAbsConstraint::GetClassData() const { return &_class_data_; }
3560
3561void MPAbsConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
3562 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
3563 static_cast<MPAbsConstraint *>(to)->MergeFrom(
3564 static_cast<const MPAbsConstraint &>(from));
3565}
3566
3567
3569// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPAbsConstraint)
3570 GOOGLE_DCHECK_NE(&from, this);
3571 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3572 (void) cached_has_bits;
3573
3574 cached_has_bits = from._has_bits_[0];
3575 if (cached_has_bits & 0x00000003u) {
3576 if (cached_has_bits & 0x00000001u) {
3577 var_index_ = from.var_index_;
3578 }
3579 if (cached_has_bits & 0x00000002u) {
3580 resultant_var_index_ = from.resultant_var_index_;
3581 }
3582 _has_bits_[0] |= cached_has_bits;
3583 }
3584 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3585}
3586
3588// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPAbsConstraint)
3589 if (&from == this) return;
3590 Clear();
3591 MergeFrom(from);
3592}
3593
3595 return true;
3596}
3597
3598void MPAbsConstraint::InternalSwap(MPAbsConstraint* other) {
3599 using std::swap;
3600 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3601 swap(_has_bits_[0], other->_has_bits_[0]);
3602 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
3603 PROTOBUF_FIELD_OFFSET(MPAbsConstraint, resultant_var_index_)
3604 + sizeof(MPAbsConstraint::resultant_var_index_)
3605 - PROTOBUF_FIELD_OFFSET(MPAbsConstraint, var_index_)>(
3606 reinterpret_cast<char*>(&var_index_),
3607 reinterpret_cast<char*>(&other->var_index_));
3608}
3609
3610::PROTOBUF_NAMESPACE_ID::Metadata MPAbsConstraint::GetMetadata() const {
3611 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
3614}
3615
3616// ===================================================================
3617
3619 public:
3620 using HasBits = decltype(std::declval<MPArrayConstraint>()._has_bits_);
3621 static void set_has_resultant_var_index(HasBits* has_bits) {
3622 (*has_bits)[0] |= 1u;
3623 }
3624};
3625
3626MPArrayConstraint::MPArrayConstraint(::PROTOBUF_NAMESPACE_ID::Arena* arena,
3627 bool is_message_owned)
3628 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
3629 var_index_(arena) {
3630 SharedCtor();
3631 if (!is_message_owned) {
3632 RegisterArenaDtor(arena);
3633 }
3634 // @@protoc_insertion_point(arena_constructor:operations_research.MPArrayConstraint)
3635}
3637 : ::PROTOBUF_NAMESPACE_ID::Message(),
3638 _has_bits_(from._has_bits_),
3639 var_index_(from.var_index_) {
3640 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3641 resultant_var_index_ = from.resultant_var_index_;
3642 // @@protoc_insertion_point(copy_constructor:operations_research.MPArrayConstraint)
3643}
3644
3645void MPArrayConstraint::SharedCtor() {
3646resultant_var_index_ = 0;
3647}
3648
3650 // @@protoc_insertion_point(destructor:operations_research.MPArrayConstraint)
3651 if (GetArenaForAllocation() != nullptr) return;
3652 SharedDtor();
3653 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3654}
3655
3656inline void MPArrayConstraint::SharedDtor() {
3657 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
3658}
3659
3660void MPArrayConstraint::ArenaDtor(void* object) {
3661 MPArrayConstraint* _this = reinterpret_cast< MPArrayConstraint* >(object);
3662 (void)_this;
3663}
3664void MPArrayConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
3665}
3666void MPArrayConstraint::SetCachedSize(int size) const {
3667 _cached_size_.Set(size);
3668}
3669
3671// @@protoc_insertion_point(message_clear_start:operations_research.MPArrayConstraint)
3672 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3673 // Prevent compiler warnings about cached_has_bits being unused
3674 (void) cached_has_bits;
3675
3676 var_index_.Clear();
3677 resultant_var_index_ = 0;
3678 _has_bits_.Clear();
3679 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3680}
3681
3682const char* MPArrayConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
3683#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
3684 _Internal::HasBits has_bits{};
3685 while (!ctx->Done(&ptr)) {
3686 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
3687 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
3688 switch (tag >> 3) {
3689 // repeated int32 var_index = 1;
3690 case 1:
3691 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
3692 ptr -= 1;
3693 do {
3694 ptr += 1;
3695 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
3696 CHK_(ptr);
3697 if (!ctx->DataAvailable(ptr)) break;
3698 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<8>(ptr));
3699 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10) {
3700 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
3701 CHK_(ptr);
3702 } else
3703 goto handle_unusual;
3704 continue;
3705 // optional int32 resultant_var_index = 2;
3706 case 2:
3707 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
3709 resultant_var_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
3710 CHK_(ptr);
3711 } else
3712 goto handle_unusual;
3713 continue;
3714 default:
3715 goto handle_unusual;
3716 } // switch
3717 handle_unusual:
3718 if ((tag == 0) || ((tag & 7) == 4)) {
3719 CHK_(ptr);
3720 ctx->SetLastTag(tag);
3721 goto message_done;
3722 }
3723 ptr = UnknownFieldParse(
3724 tag,
3725 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
3726 ptr, ctx);
3727 CHK_(ptr != nullptr);
3728 } // while
3729message_done:
3730 _has_bits_.Or(has_bits);
3731 return ptr;
3732failure:
3733 ptr = nullptr;
3734 goto message_done;
3735#undef CHK_
3736}
3737
3738::PROTOBUF_NAMESPACE_ID::uint8* MPArrayConstraint::_InternalSerialize(
3739 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
3740 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPArrayConstraint)
3741 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3742 (void) cached_has_bits;
3743
3744 // repeated int32 var_index = 1;
3745 for (int i = 0, n = this->_internal_var_index_size(); i < n; i++) {
3746 target = stream->EnsureSpace(target);
3747 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_var_index(i), target);
3748 }
3749
3750 cached_has_bits = _has_bits_[0];
3751 // optional int32 resultant_var_index = 2;
3752 if (cached_has_bits & 0x00000001u) {
3753 target = stream->EnsureSpace(target);
3754 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_resultant_var_index(), target);
3755 }
3756
3757 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
3758 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
3759 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
3760 }
3761 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPArrayConstraint)
3762 return target;
3763}
3764
3766// @@protoc_insertion_point(message_byte_size_start:operations_research.MPArrayConstraint)
3767 size_t total_size = 0;
3768
3769 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3770 // Prevent compiler warnings about cached_has_bits being unused
3771 (void) cached_has_bits;
3772
3773 // repeated int32 var_index = 1;
3774 {
3775 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
3776 Int32Size(this->var_index_);
3777 total_size += 1 *
3778 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_var_index_size());
3779 total_size += data_size;
3780 }
3781
3782 // optional int32 resultant_var_index = 2;
3783 cached_has_bits = _has_bits_[0];
3784 if (cached_has_bits & 0x00000001u) {
3785 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_resultant_var_index());
3786 }
3787
3788 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
3789}
3790
3791const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPArrayConstraint::_class_data_ = {
3792 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
3793 MPArrayConstraint::MergeImpl
3794};
3795const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPArrayConstraint::GetClassData() const { return &_class_data_; }
3796
3797void MPArrayConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
3798 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
3799 static_cast<MPArrayConstraint *>(to)->MergeFrom(
3800 static_cast<const MPArrayConstraint &>(from));
3801}
3802
3803
3805// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPArrayConstraint)
3806 GOOGLE_DCHECK_NE(&from, this);
3807 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3808 (void) cached_has_bits;
3809
3810 var_index_.MergeFrom(from.var_index_);
3811 if (from._internal_has_resultant_var_index()) {
3812 _internal_set_resultant_var_index(from._internal_resultant_var_index());
3813 }
3814 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3815}
3816
3818// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPArrayConstraint)
3819 if (&from == this) return;
3820 Clear();
3821 MergeFrom(from);
3822}
3823
3825 return true;
3826}
3827
3828void MPArrayConstraint::InternalSwap(MPArrayConstraint* other) {
3829 using std::swap;
3830 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3831 swap(_has_bits_[0], other->_has_bits_[0]);
3832 var_index_.InternalSwap(&other->var_index_);
3833 swap(resultant_var_index_, other->resultant_var_index_);
3834}
3835
3836::PROTOBUF_NAMESPACE_ID::Metadata MPArrayConstraint::GetMetadata() const {
3837 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
3840}
3841
3842// ===================================================================
3843
3845 public:
3846 using HasBits = decltype(std::declval<MPArrayWithConstantConstraint>()._has_bits_);
3847 static void set_has_constant(HasBits* has_bits) {
3848 (*has_bits)[0] |= 1u;
3849 }
3850 static void set_has_resultant_var_index(HasBits* has_bits) {
3851 (*has_bits)[0] |= 2u;
3852 }
3853};
3854
3856 bool is_message_owned)
3857 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
3858 var_index_(arena) {
3859 SharedCtor();
3860 if (!is_message_owned) {
3861 RegisterArenaDtor(arena);
3862 }
3863 // @@protoc_insertion_point(arena_constructor:operations_research.MPArrayWithConstantConstraint)
3864}
3866 : ::PROTOBUF_NAMESPACE_ID::Message(),
3867 _has_bits_(from._has_bits_),
3868 var_index_(from.var_index_) {
3869 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
3870 ::memcpy(&constant_, &from.constant_,
3871 static_cast<size_t>(reinterpret_cast<char*>(&resultant_var_index_) -
3872 reinterpret_cast<char*>(&constant_)) + sizeof(resultant_var_index_));
3873 // @@protoc_insertion_point(copy_constructor:operations_research.MPArrayWithConstantConstraint)
3874}
3875
3876void MPArrayWithConstantConstraint::SharedCtor() {
3877::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
3878 reinterpret_cast<char*>(&constant_) - reinterpret_cast<char*>(this)),
3879 0, static_cast<size_t>(reinterpret_cast<char*>(&resultant_var_index_) -
3880 reinterpret_cast<char*>(&constant_)) + sizeof(resultant_var_index_));
3881}
3882
3884 // @@protoc_insertion_point(destructor:operations_research.MPArrayWithConstantConstraint)
3885 if (GetArenaForAllocation() != nullptr) return;
3886 SharedDtor();
3887 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3888}
3889
3890inline void MPArrayWithConstantConstraint::SharedDtor() {
3891 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
3892}
3893
3894void MPArrayWithConstantConstraint::ArenaDtor(void* object) {
3895 MPArrayWithConstantConstraint* _this = reinterpret_cast< MPArrayWithConstantConstraint* >(object);
3896 (void)_this;
3897}
3898void MPArrayWithConstantConstraint::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
3899}
3900void MPArrayWithConstantConstraint::SetCachedSize(int size) const {
3901 _cached_size_.Set(size);
3902}
3903
3905// @@protoc_insertion_point(message_clear_start:operations_research.MPArrayWithConstantConstraint)
3906 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3907 // Prevent compiler warnings about cached_has_bits being unused
3908 (void) cached_has_bits;
3909
3910 var_index_.Clear();
3911 cached_has_bits = _has_bits_[0];
3912 if (cached_has_bits & 0x00000003u) {
3913 ::memset(&constant_, 0, static_cast<size_t>(
3914 reinterpret_cast<char*>(&resultant_var_index_) -
3915 reinterpret_cast<char*>(&constant_)) + sizeof(resultant_var_index_));
3916 }
3917 _has_bits_.Clear();
3918 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
3919}
3920
3921const char* MPArrayWithConstantConstraint::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
3922#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
3923 _Internal::HasBits has_bits{};
3924 while (!ctx->Done(&ptr)) {
3925 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
3926 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
3927 switch (tag >> 3) {
3928 // repeated int32 var_index = 1;
3929 case 1:
3930 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
3931 ptr -= 1;
3932 do {
3933 ptr += 1;
3934 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
3935 CHK_(ptr);
3936 if (!ctx->DataAvailable(ptr)) break;
3937 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<8>(ptr));
3938 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10) {
3939 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
3940 CHK_(ptr);
3941 } else
3942 goto handle_unusual;
3943 continue;
3944 // optional double constant = 2;
3945 case 2:
3946 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
3947 _Internal::set_has_constant(&has_bits);
3948 constant_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
3949 ptr += sizeof(double);
3950 } else
3951 goto handle_unusual;
3952 continue;
3953 // optional int32 resultant_var_index = 3;
3954 case 3:
3955 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 24)) {
3957 resultant_var_index_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
3958 CHK_(ptr);
3959 } else
3960 goto handle_unusual;
3961 continue;
3962 default:
3963 goto handle_unusual;
3964 } // switch
3965 handle_unusual:
3966 if ((tag == 0) || ((tag & 7) == 4)) {
3967 CHK_(ptr);
3968 ctx->SetLastTag(tag);
3969 goto message_done;
3970 }
3971 ptr = UnknownFieldParse(
3972 tag,
3973 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
3974 ptr, ctx);
3975 CHK_(ptr != nullptr);
3976 } // while
3977message_done:
3978 _has_bits_.Or(has_bits);
3979 return ptr;
3980failure:
3981 ptr = nullptr;
3982 goto message_done;
3983#undef CHK_
3984}
3985
3987 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
3988 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPArrayWithConstantConstraint)
3989 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
3990 (void) cached_has_bits;
3991
3992 // repeated int32 var_index = 1;
3993 for (int i = 0, n = this->_internal_var_index_size(); i < n; i++) {
3994 target = stream->EnsureSpace(target);
3995 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_var_index(i), target);
3996 }
3997
3998 cached_has_bits = _has_bits_[0];
3999 // optional double constant = 2;
4000 if (cached_has_bits & 0x00000001u) {
4001 target = stream->EnsureSpace(target);
4002 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_constant(), target);
4003 }
4004
4005 // optional int32 resultant_var_index = 3;
4006 if (cached_has_bits & 0x00000002u) {
4007 target = stream->EnsureSpace(target);
4008 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(3, this->_internal_resultant_var_index(), target);
4009 }
4010
4011 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
4012 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
4013 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
4014 }
4015 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPArrayWithConstantConstraint)
4016 return target;
4017}
4018
4020// @@protoc_insertion_point(message_byte_size_start:operations_research.MPArrayWithConstantConstraint)
4021 size_t total_size = 0;
4022
4023 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4024 // Prevent compiler warnings about cached_has_bits being unused
4025 (void) cached_has_bits;
4026
4027 // repeated int32 var_index = 1;
4028 {
4029 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4030 Int32Size(this->var_index_);
4031 total_size += 1 *
4032 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_var_index_size());
4033 total_size += data_size;
4034 }
4035
4036 cached_has_bits = _has_bits_[0];
4037 if (cached_has_bits & 0x00000003u) {
4038 // optional double constant = 2;
4039 if (cached_has_bits & 0x00000001u) {
4040 total_size += 1 + 8;
4041 }
4042
4043 // optional int32 resultant_var_index = 3;
4044 if (cached_has_bits & 0x00000002u) {
4045 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_resultant_var_index());
4046 }
4047
4048 }
4049 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
4050}
4051
4052const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPArrayWithConstantConstraint::_class_data_ = {
4053 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
4054 MPArrayWithConstantConstraint::MergeImpl
4055};
4056const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPArrayWithConstantConstraint::GetClassData() const { return &_class_data_; }
4057
4058void MPArrayWithConstantConstraint::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
4059 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
4060 static_cast<MPArrayWithConstantConstraint *>(to)->MergeFrom(
4061 static_cast<const MPArrayWithConstantConstraint &>(from));
4062}
4063
4064
4066// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPArrayWithConstantConstraint)
4067 GOOGLE_DCHECK_NE(&from, this);
4068 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4069 (void) cached_has_bits;
4070
4071 var_index_.MergeFrom(from.var_index_);
4072 cached_has_bits = from._has_bits_[0];
4073 if (cached_has_bits & 0x00000003u) {
4074 if (cached_has_bits & 0x00000001u) {
4075 constant_ = from.constant_;
4076 }
4077 if (cached_has_bits & 0x00000002u) {
4078 resultant_var_index_ = from.resultant_var_index_;
4079 }
4080 _has_bits_[0] |= cached_has_bits;
4081 }
4082 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4083}
4084
4086// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPArrayWithConstantConstraint)
4087 if (&from == this) return;
4088 Clear();
4089 MergeFrom(from);
4090}
4091
4093 return true;
4094}
4095
4096void MPArrayWithConstantConstraint::InternalSwap(MPArrayWithConstantConstraint* other) {
4097 using std::swap;
4098 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
4099 swap(_has_bits_[0], other->_has_bits_[0]);
4100 var_index_.InternalSwap(&other->var_index_);
4101 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
4102 PROTOBUF_FIELD_OFFSET(MPArrayWithConstantConstraint, resultant_var_index_)
4103 + sizeof(MPArrayWithConstantConstraint::resultant_var_index_)
4104 - PROTOBUF_FIELD_OFFSET(MPArrayWithConstantConstraint, constant_)>(
4105 reinterpret_cast<char*>(&constant_),
4106 reinterpret_cast<char*>(&other->constant_));
4107}
4108
4109::PROTOBUF_NAMESPACE_ID::Metadata MPArrayWithConstantConstraint::GetMetadata() const {
4110 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
4113}
4114
4115// ===================================================================
4116
4118 public:
4119};
4120
4121MPQuadraticObjective::MPQuadraticObjective(::PROTOBUF_NAMESPACE_ID::Arena* arena,
4122 bool is_message_owned)
4123 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
4124 qvar1_index_(arena),
4125 qvar2_index_(arena),
4126 coefficient_(arena) {
4127 SharedCtor();
4128 if (!is_message_owned) {
4129 RegisterArenaDtor(arena);
4130 }
4131 // @@protoc_insertion_point(arena_constructor:operations_research.MPQuadraticObjective)
4132}
4134 : ::PROTOBUF_NAMESPACE_ID::Message(),
4135 qvar1_index_(from.qvar1_index_),
4136 qvar2_index_(from.qvar2_index_),
4137 coefficient_(from.coefficient_) {
4138 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4139 // @@protoc_insertion_point(copy_constructor:operations_research.MPQuadraticObjective)
4140}
4141
4142void MPQuadraticObjective::SharedCtor() {
4143}
4144
4146 // @@protoc_insertion_point(destructor:operations_research.MPQuadraticObjective)
4147 if (GetArenaForAllocation() != nullptr) return;
4148 SharedDtor();
4149 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4150}
4151
4152inline void MPQuadraticObjective::SharedDtor() {
4153 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
4154}
4155
4156void MPQuadraticObjective::ArenaDtor(void* object) {
4157 MPQuadraticObjective* _this = reinterpret_cast< MPQuadraticObjective* >(object);
4158 (void)_this;
4159}
4160void MPQuadraticObjective::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
4161}
4162void MPQuadraticObjective::SetCachedSize(int size) const {
4163 _cached_size_.Set(size);
4164}
4165
4167// @@protoc_insertion_point(message_clear_start:operations_research.MPQuadraticObjective)
4168 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4169 // Prevent compiler warnings about cached_has_bits being unused
4170 (void) cached_has_bits;
4171
4172 qvar1_index_.Clear();
4173 qvar2_index_.Clear();
4174 coefficient_.Clear();
4175 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4176}
4177
4178const char* MPQuadraticObjective::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
4179#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
4180 while (!ctx->Done(&ptr)) {
4181 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
4182 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
4183 switch (tag >> 3) {
4184 // repeated int32 qvar1_index = 1;
4185 case 1:
4186 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
4187 ptr -= 1;
4188 do {
4189 ptr += 1;
4190 _internal_add_qvar1_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
4191 CHK_(ptr);
4192 if (!ctx->DataAvailable(ptr)) break;
4193 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<8>(ptr));
4194 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10) {
4195 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_qvar1_index(), ptr, ctx);
4196 CHK_(ptr);
4197 } else
4198 goto handle_unusual;
4199 continue;
4200 // repeated int32 qvar2_index = 2;
4201 case 2:
4202 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
4203 ptr -= 1;
4204 do {
4205 ptr += 1;
4206 _internal_add_qvar2_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
4207 CHK_(ptr);
4208 if (!ctx->DataAvailable(ptr)) break;
4209 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<16>(ptr));
4210 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18) {
4211 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_qvar2_index(), ptr, ctx);
4212 CHK_(ptr);
4213 } else
4214 goto handle_unusual;
4215 continue;
4216 // repeated double coefficient = 3;
4217 case 3:
4218 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
4219 ptr -= 1;
4220 do {
4221 ptr += 1;
4222 _internal_add_coefficient(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
4223 ptr += sizeof(double);
4224 if (!ctx->DataAvailable(ptr)) break;
4225 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<25>(ptr));
4226 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26) {
4227 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_coefficient(), ptr, ctx);
4228 CHK_(ptr);
4229 } else
4230 goto handle_unusual;
4231 continue;
4232 default:
4233 goto handle_unusual;
4234 } // switch
4235 handle_unusual:
4236 if ((tag == 0) || ((tag & 7) == 4)) {
4237 CHK_(ptr);
4238 ctx->SetLastTag(tag);
4239 goto message_done;
4240 }
4241 ptr = UnknownFieldParse(
4242 tag,
4243 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
4244 ptr, ctx);
4245 CHK_(ptr != nullptr);
4246 } // while
4247message_done:
4248 return ptr;
4249failure:
4250 ptr = nullptr;
4251 goto message_done;
4252#undef CHK_
4253}
4254
4255::PROTOBUF_NAMESPACE_ID::uint8* MPQuadraticObjective::_InternalSerialize(
4256 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
4257 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPQuadraticObjective)
4258 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4259 (void) cached_has_bits;
4260
4261 // repeated int32 qvar1_index = 1;
4262 for (int i = 0, n = this->_internal_qvar1_index_size(); i < n; i++) {
4263 target = stream->EnsureSpace(target);
4264 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(1, this->_internal_qvar1_index(i), target);
4265 }
4266
4267 // repeated int32 qvar2_index = 2;
4268 for (int i = 0, n = this->_internal_qvar2_index_size(); i < n; i++) {
4269 target = stream->EnsureSpace(target);
4270 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(2, this->_internal_qvar2_index(i), target);
4271 }
4272
4273 // repeated double coefficient = 3;
4274 for (int i = 0, n = this->_internal_coefficient_size(); i < n; i++) {
4275 target = stream->EnsureSpace(target);
4276 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_coefficient(i), target);
4277 }
4278
4279 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
4280 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
4281 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
4282 }
4283 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPQuadraticObjective)
4284 return target;
4285}
4286
4288// @@protoc_insertion_point(message_byte_size_start:operations_research.MPQuadraticObjective)
4289 size_t total_size = 0;
4290
4291 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4292 // Prevent compiler warnings about cached_has_bits being unused
4293 (void) cached_has_bits;
4294
4295 // repeated int32 qvar1_index = 1;
4296 {
4297 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4298 Int32Size(this->qvar1_index_);
4299 total_size += 1 *
4300 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_qvar1_index_size());
4301 total_size += data_size;
4302 }
4303
4304 // repeated int32 qvar2_index = 2;
4305 {
4306 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4307 Int32Size(this->qvar2_index_);
4308 total_size += 1 *
4309 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_qvar2_index_size());
4310 total_size += data_size;
4311 }
4312
4313 // repeated double coefficient = 3;
4314 {
4315 unsigned int count = static_cast<unsigned int>(this->_internal_coefficient_size());
4316 size_t data_size = 8UL * count;
4317 total_size += 1 *
4318 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_coefficient_size());
4319 total_size += data_size;
4320 }
4321
4322 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
4323}
4324
4325const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPQuadraticObjective::_class_data_ = {
4326 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
4327 MPQuadraticObjective::MergeImpl
4328};
4329const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPQuadraticObjective::GetClassData() const { return &_class_data_; }
4330
4331void MPQuadraticObjective::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
4332 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
4333 static_cast<MPQuadraticObjective *>(to)->MergeFrom(
4334 static_cast<const MPQuadraticObjective &>(from));
4335}
4336
4337
4339// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPQuadraticObjective)
4340 GOOGLE_DCHECK_NE(&from, this);
4341 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4342 (void) cached_has_bits;
4343
4344 qvar1_index_.MergeFrom(from.qvar1_index_);
4345 qvar2_index_.MergeFrom(from.qvar2_index_);
4346 coefficient_.MergeFrom(from.coefficient_);
4347 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4348}
4349
4351// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPQuadraticObjective)
4352 if (&from == this) return;
4353 Clear();
4354 MergeFrom(from);
4355}
4356
4358 return true;
4359}
4360
4361void MPQuadraticObjective::InternalSwap(MPQuadraticObjective* other) {
4362 using std::swap;
4363 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
4364 qvar1_index_.InternalSwap(&other->qvar1_index_);
4365 qvar2_index_.InternalSwap(&other->qvar2_index_);
4366 coefficient_.InternalSwap(&other->coefficient_);
4367}
4368
4369::PROTOBUF_NAMESPACE_ID::Metadata MPQuadraticObjective::GetMetadata() const {
4370 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
4373}
4374
4375// ===================================================================
4376
4378 public:
4379};
4380
4381PartialVariableAssignment::PartialVariableAssignment(::PROTOBUF_NAMESPACE_ID::Arena* arena,
4382 bool is_message_owned)
4383 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
4384 var_index_(arena),
4385 var_value_(arena) {
4386 SharedCtor();
4387 if (!is_message_owned) {
4388 RegisterArenaDtor(arena);
4389 }
4390 // @@protoc_insertion_point(arena_constructor:operations_research.PartialVariableAssignment)
4391}
4393 : ::PROTOBUF_NAMESPACE_ID::Message(),
4394 var_index_(from.var_index_),
4395 var_value_(from.var_value_) {
4396 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4397 // @@protoc_insertion_point(copy_constructor:operations_research.PartialVariableAssignment)
4398}
4399
4400void PartialVariableAssignment::SharedCtor() {
4401}
4402
4404 // @@protoc_insertion_point(destructor:operations_research.PartialVariableAssignment)
4405 if (GetArenaForAllocation() != nullptr) return;
4406 SharedDtor();
4407 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4408}
4409
4410inline void PartialVariableAssignment::SharedDtor() {
4411 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
4412}
4413
4414void PartialVariableAssignment::ArenaDtor(void* object) {
4415 PartialVariableAssignment* _this = reinterpret_cast< PartialVariableAssignment* >(object);
4416 (void)_this;
4417}
4418void PartialVariableAssignment::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
4419}
4420void PartialVariableAssignment::SetCachedSize(int size) const {
4421 _cached_size_.Set(size);
4422}
4423
4425// @@protoc_insertion_point(message_clear_start:operations_research.PartialVariableAssignment)
4426 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4427 // Prevent compiler warnings about cached_has_bits being unused
4428 (void) cached_has_bits;
4429
4430 var_index_.Clear();
4431 var_value_.Clear();
4432 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4433}
4434
4435const char* PartialVariableAssignment::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
4436#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
4437 while (!ctx->Done(&ptr)) {
4438 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
4439 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
4440 switch (tag >> 3) {
4441 // repeated int32 var_index = 1 [packed = true];
4442 case 1:
4443 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
4444 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedInt32Parser(_internal_mutable_var_index(), ptr, ctx);
4445 CHK_(ptr);
4446 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8) {
4447 _internal_add_var_index(::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr));
4448 CHK_(ptr);
4449 } else
4450 goto handle_unusual;
4451 continue;
4452 // repeated double var_value = 2 [packed = true];
4453 case 2:
4454 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
4455 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_var_value(), ptr, ctx);
4456 CHK_(ptr);
4457 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17) {
4458 _internal_add_var_value(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
4459 ptr += sizeof(double);
4460 } else
4461 goto handle_unusual;
4462 continue;
4463 default:
4464 goto handle_unusual;
4465 } // switch
4466 handle_unusual:
4467 if ((tag == 0) || ((tag & 7) == 4)) {
4468 CHK_(ptr);
4469 ctx->SetLastTag(tag);
4470 goto message_done;
4471 }
4472 ptr = UnknownFieldParse(
4473 tag,
4474 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
4475 ptr, ctx);
4476 CHK_(ptr != nullptr);
4477 } // while
4478message_done:
4479 return ptr;
4480failure:
4481 ptr = nullptr;
4482 goto message_done;
4483#undef CHK_
4484}
4485
4487 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
4488 // @@protoc_insertion_point(serialize_to_array_start:operations_research.PartialVariableAssignment)
4489 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4490 (void) cached_has_bits;
4491
4492 // repeated int32 var_index = 1 [packed = true];
4493 {
4494 int byte_size = _var_index_cached_byte_size_.load(std::memory_order_relaxed);
4495 if (byte_size > 0) {
4496 target = stream->WriteInt32Packed(
4497 1, _internal_var_index(), byte_size, target);
4498 }
4499 }
4500
4501 // repeated double var_value = 2 [packed = true];
4502 if (this->_internal_var_value_size() > 0) {
4503 target = stream->WriteFixedPacked(2, _internal_var_value(), target);
4504 }
4505
4506 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
4507 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
4508 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
4509 }
4510 // @@protoc_insertion_point(serialize_to_array_end:operations_research.PartialVariableAssignment)
4511 return target;
4512}
4513
4515// @@protoc_insertion_point(message_byte_size_start:operations_research.PartialVariableAssignment)
4516 size_t total_size = 0;
4517
4518 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4519 // Prevent compiler warnings about cached_has_bits being unused
4520 (void) cached_has_bits;
4521
4522 // repeated int32 var_index = 1 [packed = true];
4523 {
4524 size_t data_size = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4525 Int32Size(this->var_index_);
4526 if (data_size > 0) {
4527 total_size += 1 +
4528 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
4529 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
4530 }
4531 int cached_size = ::PROTOBUF_NAMESPACE_ID::internal::ToCachedSize(data_size);
4532 _var_index_cached_byte_size_.store(cached_size,
4533 std::memory_order_relaxed);
4534 total_size += data_size;
4535 }
4536
4537 // repeated double var_value = 2 [packed = true];
4538 {
4539 unsigned int count = static_cast<unsigned int>(this->_internal_var_value_size());
4540 size_t data_size = 8UL * count;
4541 if (data_size > 0) {
4542 total_size += 1 +
4543 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
4544 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
4545 }
4546 total_size += data_size;
4547 }
4548
4549 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
4550}
4551
4552const ::PROTOBUF_NAMESPACE_ID::Message::ClassData PartialVariableAssignment::_class_data_ = {
4553 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
4554 PartialVariableAssignment::MergeImpl
4555};
4556const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*PartialVariableAssignment::GetClassData() const { return &_class_data_; }
4557
4558void PartialVariableAssignment::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
4559 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
4560 static_cast<PartialVariableAssignment *>(to)->MergeFrom(
4561 static_cast<const PartialVariableAssignment &>(from));
4562}
4563
4564
4566// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.PartialVariableAssignment)
4567 GOOGLE_DCHECK_NE(&from, this);
4568 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4569 (void) cached_has_bits;
4570
4571 var_index_.MergeFrom(from.var_index_);
4572 var_value_.MergeFrom(from.var_value_);
4573 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4574}
4575
4577// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.PartialVariableAssignment)
4578 if (&from == this) return;
4579 Clear();
4580 MergeFrom(from);
4581}
4582
4584 return true;
4585}
4586
4587void PartialVariableAssignment::InternalSwap(PartialVariableAssignment* other) {
4588 using std::swap;
4589 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
4590 var_index_.InternalSwap(&other->var_index_);
4591 var_value_.InternalSwap(&other->var_value_);
4592}
4593
4594::PROTOBUF_NAMESPACE_ID::Metadata PartialVariableAssignment::GetMetadata() const {
4595 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
4598}
4599
4600// ===================================================================
4601
4603 public:
4604 using HasBits = decltype(std::declval<MPModelProto>()._has_bits_);
4605 static void set_has_maximize(HasBits* has_bits) {
4606 (*has_bits)[0] |= 16u;
4607 }
4608 static void set_has_objective_offset(HasBits* has_bits) {
4609 (*has_bits)[0] |= 8u;
4610 }
4611 static const ::operations_research::MPQuadraticObjective& quadratic_objective(const MPModelProto* msg);
4612 static void set_has_quadratic_objective(HasBits* has_bits) {
4613 (*has_bits)[0] |= 4u;
4614 }
4615 static void set_has_name(HasBits* has_bits) {
4616 (*has_bits)[0] |= 1u;
4617 }
4618 static const ::operations_research::PartialVariableAssignment& solution_hint(const MPModelProto* msg);
4619 static void set_has_solution_hint(HasBits* has_bits) {
4620 (*has_bits)[0] |= 2u;
4621 }
4622};
4623
4624const ::operations_research::MPQuadraticObjective&
4626 return *msg->quadratic_objective_;
4627}
4628const ::operations_research::PartialVariableAssignment&
4630 return *msg->solution_hint_;
4631}
4632MPModelProto::MPModelProto(::PROTOBUF_NAMESPACE_ID::Arena* arena,
4633 bool is_message_owned)
4634 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
4635 variable_(arena),
4636 constraint_(arena),
4637 general_constraint_(arena) {
4638 SharedCtor();
4639 if (!is_message_owned) {
4640 RegisterArenaDtor(arena);
4641 }
4642 // @@protoc_insertion_point(arena_constructor:operations_research.MPModelProto)
4643}
4645 : ::PROTOBUF_NAMESPACE_ID::Message(),
4646 _has_bits_(from._has_bits_),
4647 variable_(from.variable_),
4648 constraint_(from.constraint_),
4649 general_constraint_(from.general_constraint_) {
4650 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
4651 name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4652 if (from._internal_has_name()) {
4653 name_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_name(),
4654 GetArenaForAllocation());
4655 }
4656 if (from._internal_has_solution_hint()) {
4657 solution_hint_ = new ::operations_research::PartialVariableAssignment(*from.solution_hint_);
4658 } else {
4659 solution_hint_ = nullptr;
4660 }
4661 if (from._internal_has_quadratic_objective()) {
4662 quadratic_objective_ = new ::operations_research::MPQuadraticObjective(*from.quadratic_objective_);
4663 } else {
4664 quadratic_objective_ = nullptr;
4665 }
4666 ::memcpy(&objective_offset_, &from.objective_offset_,
4667 static_cast<size_t>(reinterpret_cast<char*>(&maximize_) -
4668 reinterpret_cast<char*>(&objective_offset_)) + sizeof(maximize_));
4669 // @@protoc_insertion_point(copy_constructor:operations_research.MPModelProto)
4670}
4671
4672void MPModelProto::SharedCtor() {
4673name_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4674::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
4675 reinterpret_cast<char*>(&solution_hint_) - reinterpret_cast<char*>(this)),
4676 0, static_cast<size_t>(reinterpret_cast<char*>(&maximize_) -
4677 reinterpret_cast<char*>(&solution_hint_)) + sizeof(maximize_));
4678}
4679
4681 // @@protoc_insertion_point(destructor:operations_research.MPModelProto)
4682 if (GetArenaForAllocation() != nullptr) return;
4683 SharedDtor();
4684 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4685}
4686
4687inline void MPModelProto::SharedDtor() {
4688 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
4689 name_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
4690 if (this != internal_default_instance()) delete solution_hint_;
4691 if (this != internal_default_instance()) delete quadratic_objective_;
4692}
4693
4694void MPModelProto::ArenaDtor(void* object) {
4695 MPModelProto* _this = reinterpret_cast< MPModelProto* >(object);
4696 (void)_this;
4697}
4698void MPModelProto::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
4699}
4700void MPModelProto::SetCachedSize(int size) const {
4701 _cached_size_.Set(size);
4702}
4703
4705// @@protoc_insertion_point(message_clear_start:operations_research.MPModelProto)
4706 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4707 // Prevent compiler warnings about cached_has_bits being unused
4708 (void) cached_has_bits;
4709
4710 variable_.Clear();
4711 constraint_.Clear();
4712 general_constraint_.Clear();
4713 cached_has_bits = _has_bits_[0];
4714 if (cached_has_bits & 0x00000007u) {
4715 if (cached_has_bits & 0x00000001u) {
4716 name_.ClearNonDefaultToEmpty();
4717 }
4718 if (cached_has_bits & 0x00000002u) {
4719 GOOGLE_DCHECK(solution_hint_ != nullptr);
4720 solution_hint_->Clear();
4721 }
4722 if (cached_has_bits & 0x00000004u) {
4723 GOOGLE_DCHECK(quadratic_objective_ != nullptr);
4724 quadratic_objective_->Clear();
4725 }
4726 }
4727 if (cached_has_bits & 0x00000018u) {
4728 ::memset(&objective_offset_, 0, static_cast<size_t>(
4729 reinterpret_cast<char*>(&maximize_) -
4730 reinterpret_cast<char*>(&objective_offset_)) + sizeof(maximize_));
4731 }
4732 _has_bits_.Clear();
4733 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
4734}
4735
4736const char* MPModelProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
4737#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
4738 _Internal::HasBits has_bits{};
4739 while (!ctx->Done(&ptr)) {
4740 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
4741 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
4742 switch (tag >> 3) {
4743 // optional bool maximize = 1 [default = false];
4744 case 1:
4745 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
4746 _Internal::set_has_maximize(&has_bits);
4747 maximize_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
4748 CHK_(ptr);
4749 } else
4750 goto handle_unusual;
4751 continue;
4752 // optional double objective_offset = 2 [default = 0];
4753 case 2:
4754 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
4756 objective_offset_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
4757 ptr += sizeof(double);
4758 } else
4759 goto handle_unusual;
4760 continue;
4761 // repeated .operations_research.MPVariableProto variable = 3;
4762 case 3:
4763 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
4764 ptr -= 1;
4765 do {
4766 ptr += 1;
4767 ptr = ctx->ParseMessage(_internal_add_variable(), ptr);
4768 CHK_(ptr);
4769 if (!ctx->DataAvailable(ptr)) break;
4770 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
4771 } else
4772 goto handle_unusual;
4773 continue;
4774 // repeated .operations_research.MPConstraintProto constraint = 4;
4775 case 4:
4776 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
4777 ptr -= 1;
4778 do {
4779 ptr += 1;
4780 ptr = ctx->ParseMessage(_internal_add_constraint(), ptr);
4781 CHK_(ptr);
4782 if (!ctx->DataAvailable(ptr)) break;
4783 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<34>(ptr));
4784 } else
4785 goto handle_unusual;
4786 continue;
4787 // optional string name = 5 [default = ""];
4788 case 5:
4789 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
4790 auto str = _internal_mutable_name();
4791 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
4792 #ifndef NDEBUG
4793 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPModelProto.name");
4794 #endif // !NDEBUG
4795 CHK_(ptr);
4796 } else
4797 goto handle_unusual;
4798 continue;
4799 // optional .operations_research.PartialVariableAssignment solution_hint = 6;
4800 case 6:
4801 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
4802 ptr = ctx->ParseMessage(_internal_mutable_solution_hint(), ptr);
4803 CHK_(ptr);
4804 } else
4805 goto handle_unusual;
4806 continue;
4807 // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
4808 case 7:
4809 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
4810 ptr -= 1;
4811 do {
4812 ptr += 1;
4813 ptr = ctx->ParseMessage(_internal_add_general_constraint(), ptr);
4814 CHK_(ptr);
4815 if (!ctx->DataAvailable(ptr)) break;
4816 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<58>(ptr));
4817 } else
4818 goto handle_unusual;
4819 continue;
4820 // optional .operations_research.MPQuadraticObjective quadratic_objective = 8;
4821 case 8:
4822 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
4823 ptr = ctx->ParseMessage(_internal_mutable_quadratic_objective(), ptr);
4824 CHK_(ptr);
4825 } else
4826 goto handle_unusual;
4827 continue;
4828 default:
4829 goto handle_unusual;
4830 } // switch
4831 handle_unusual:
4832 if ((tag == 0) || ((tag & 7) == 4)) {
4833 CHK_(ptr);
4834 ctx->SetLastTag(tag);
4835 goto message_done;
4836 }
4837 ptr = UnknownFieldParse(
4838 tag,
4839 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
4840 ptr, ctx);
4841 CHK_(ptr != nullptr);
4842 } // while
4843message_done:
4844 _has_bits_.Or(has_bits);
4845 return ptr;
4846failure:
4847 ptr = nullptr;
4848 goto message_done;
4849#undef CHK_
4850}
4851
4852::PROTOBUF_NAMESPACE_ID::uint8* MPModelProto::_InternalSerialize(
4853 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
4854 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPModelProto)
4855 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4856 (void) cached_has_bits;
4857
4858 cached_has_bits = _has_bits_[0];
4859 // optional bool maximize = 1 [default = false];
4860 if (cached_has_bits & 0x00000010u) {
4861 target = stream->EnsureSpace(target);
4862 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(1, this->_internal_maximize(), target);
4863 }
4864
4865 // optional double objective_offset = 2 [default = 0];
4866 if (cached_has_bits & 0x00000008u) {
4867 target = stream->EnsureSpace(target);
4868 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_objective_offset(), target);
4869 }
4870
4871 // repeated .operations_research.MPVariableProto variable = 3;
4872 for (unsigned int i = 0,
4873 n = static_cast<unsigned int>(this->_internal_variable_size()); i < n; i++) {
4874 target = stream->EnsureSpace(target);
4875 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4876 InternalWriteMessage(3, this->_internal_variable(i), target, stream);
4877 }
4878
4879 // repeated .operations_research.MPConstraintProto constraint = 4;
4880 for (unsigned int i = 0,
4881 n = static_cast<unsigned int>(this->_internal_constraint_size()); i < n; i++) {
4882 target = stream->EnsureSpace(target);
4883 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4884 InternalWriteMessage(4, this->_internal_constraint(i), target, stream);
4885 }
4886
4887 // optional string name = 5 [default = ""];
4888 if (cached_has_bits & 0x00000001u) {
4889 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
4890 this->_internal_name().data(), static_cast<int>(this->_internal_name().length()),
4891 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
4892 "operations_research.MPModelProto.name");
4893 target = stream->WriteStringMaybeAliased(
4894 5, this->_internal_name(), target);
4895 }
4896
4897 // optional .operations_research.PartialVariableAssignment solution_hint = 6;
4898 if (cached_has_bits & 0x00000002u) {
4899 target = stream->EnsureSpace(target);
4900 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4901 InternalWriteMessage(
4902 6, _Internal::solution_hint(this), target, stream);
4903 }
4904
4905 // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
4906 for (unsigned int i = 0,
4907 n = static_cast<unsigned int>(this->_internal_general_constraint_size()); i < n; i++) {
4908 target = stream->EnsureSpace(target);
4909 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4910 InternalWriteMessage(7, this->_internal_general_constraint(i), target, stream);
4911 }
4912
4913 // optional .operations_research.MPQuadraticObjective quadratic_objective = 8;
4914 if (cached_has_bits & 0x00000004u) {
4915 target = stream->EnsureSpace(target);
4916 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
4917 InternalWriteMessage(
4918 8, _Internal::quadratic_objective(this), target, stream);
4919 }
4920
4921 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
4922 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
4923 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
4924 }
4925 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPModelProto)
4926 return target;
4927}
4928
4930// @@protoc_insertion_point(message_byte_size_start:operations_research.MPModelProto)
4931 size_t total_size = 0;
4932
4933 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
4934 // Prevent compiler warnings about cached_has_bits being unused
4935 (void) cached_has_bits;
4936
4937 // repeated .operations_research.MPVariableProto variable = 3;
4938 total_size += 1UL * this->_internal_variable_size();
4939 for (const auto& msg : this->variable_) {
4940 total_size +=
4941 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
4942 }
4943
4944 // repeated .operations_research.MPConstraintProto constraint = 4;
4945 total_size += 1UL * this->_internal_constraint_size();
4946 for (const auto& msg : this->constraint_) {
4947 total_size +=
4948 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
4949 }
4950
4951 // repeated .operations_research.MPGeneralConstraintProto general_constraint = 7;
4952 total_size += 1UL * this->_internal_general_constraint_size();
4953 for (const auto& msg : this->general_constraint_) {
4954 total_size +=
4955 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
4956 }
4957
4958 cached_has_bits = _has_bits_[0];
4959 if (cached_has_bits & 0x0000001fu) {
4960 // optional string name = 5 [default = ""];
4961 if (cached_has_bits & 0x00000001u) {
4962 total_size += 1 +
4963 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
4964 this->_internal_name());
4965 }
4966
4967 // optional .operations_research.PartialVariableAssignment solution_hint = 6;
4968 if (cached_has_bits & 0x00000002u) {
4969 total_size += 1 +
4970 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
4971 *solution_hint_);
4972 }
4973
4974 // optional .operations_research.MPQuadraticObjective quadratic_objective = 8;
4975 if (cached_has_bits & 0x00000004u) {
4976 total_size += 1 +
4977 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
4978 *quadratic_objective_);
4979 }
4980
4981 // optional double objective_offset = 2 [default = 0];
4982 if (cached_has_bits & 0x00000008u) {
4983 total_size += 1 + 8;
4984 }
4985
4986 // optional bool maximize = 1 [default = false];
4987 if (cached_has_bits & 0x00000010u) {
4988 total_size += 1 + 1;
4989 }
4990
4991 }
4992 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
4993}
4994
4995const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPModelProto::_class_data_ = {
4996 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
4997 MPModelProto::MergeImpl
4998};
4999const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPModelProto::GetClassData() const { return &_class_data_; }
5000
5001void MPModelProto::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
5002 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
5003 static_cast<MPModelProto *>(to)->MergeFrom(
5004 static_cast<const MPModelProto &>(from));
5005}
5006
5007
5009// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPModelProto)
5010 GOOGLE_DCHECK_NE(&from, this);
5011 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5012 (void) cached_has_bits;
5013
5014 variable_.MergeFrom(from.variable_);
5015 constraint_.MergeFrom(from.constraint_);
5016 general_constraint_.MergeFrom(from.general_constraint_);
5017 cached_has_bits = from._has_bits_[0];
5018 if (cached_has_bits & 0x0000001fu) {
5019 if (cached_has_bits & 0x00000001u) {
5020 _internal_set_name(from._internal_name());
5021 }
5022 if (cached_has_bits & 0x00000002u) {
5023 _internal_mutable_solution_hint()->::operations_research::PartialVariableAssignment::MergeFrom(from._internal_solution_hint());
5024 }
5025 if (cached_has_bits & 0x00000004u) {
5026 _internal_mutable_quadratic_objective()->::operations_research::MPQuadraticObjective::MergeFrom(from._internal_quadratic_objective());
5027 }
5028 if (cached_has_bits & 0x00000008u) {
5029 objective_offset_ = from.objective_offset_;
5030 }
5031 if (cached_has_bits & 0x00000010u) {
5032 maximize_ = from.maximize_;
5033 }
5034 _has_bits_[0] |= cached_has_bits;
5035 }
5036 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5037}
5038
5040// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPModelProto)
5041 if (&from == this) return;
5042 Clear();
5043 MergeFrom(from);
5044}
5045
5047 return true;
5048}
5049
5050void MPModelProto::InternalSwap(MPModelProto* other) {
5051 using std::swap;
5052 auto* lhs_arena = GetArenaForAllocation();
5053 auto* rhs_arena = other->GetArenaForAllocation();
5054 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
5055 swap(_has_bits_[0], other->_has_bits_[0]);
5056 variable_.InternalSwap(&other->variable_);
5057 constraint_.InternalSwap(&other->constraint_);
5058 general_constraint_.InternalSwap(&other->general_constraint_);
5059 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
5060 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
5061 &name_, lhs_arena,
5062 &other->name_, rhs_arena
5063 );
5064 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
5065 PROTOBUF_FIELD_OFFSET(MPModelProto, maximize_)
5066 + sizeof(MPModelProto::maximize_)
5067 - PROTOBUF_FIELD_OFFSET(MPModelProto, solution_hint_)>(
5068 reinterpret_cast<char*>(&solution_hint_),
5069 reinterpret_cast<char*>(&other->solution_hint_));
5070}
5071
5072::PROTOBUF_NAMESPACE_ID::Metadata MPModelProto::GetMetadata() const {
5073 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
5076}
5077
5078// ===================================================================
5079
5081 public:
5082 using HasBits = decltype(std::declval<OptionalDouble>()._has_bits_);
5083 static void set_has_value(HasBits* has_bits) {
5084 (*has_bits)[0] |= 1u;
5085 }
5086};
5087
5088OptionalDouble::OptionalDouble(::PROTOBUF_NAMESPACE_ID::Arena* arena,
5089 bool is_message_owned)
5090 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
5091 SharedCtor();
5092 if (!is_message_owned) {
5093 RegisterArenaDtor(arena);
5094 }
5095 // @@protoc_insertion_point(arena_constructor:operations_research.OptionalDouble)
5096}
5098 : ::PROTOBUF_NAMESPACE_ID::Message(),
5099 _has_bits_(from._has_bits_) {
5100 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5101 value_ = from.value_;
5102 // @@protoc_insertion_point(copy_constructor:operations_research.OptionalDouble)
5103}
5104
5105void OptionalDouble::SharedCtor() {
5106value_ = 0;
5107}
5108
5110 // @@protoc_insertion_point(destructor:operations_research.OptionalDouble)
5111 if (GetArenaForAllocation() != nullptr) return;
5112 SharedDtor();
5113 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5114}
5115
5116inline void OptionalDouble::SharedDtor() {
5117 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
5118}
5119
5120void OptionalDouble::ArenaDtor(void* object) {
5121 OptionalDouble* _this = reinterpret_cast< OptionalDouble* >(object);
5122 (void)_this;
5123}
5124void OptionalDouble::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
5125}
5126void OptionalDouble::SetCachedSize(int size) const {
5127 _cached_size_.Set(size);
5128}
5129
5131// @@protoc_insertion_point(message_clear_start:operations_research.OptionalDouble)
5132 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5133 // Prevent compiler warnings about cached_has_bits being unused
5134 (void) cached_has_bits;
5135
5136 value_ = 0;
5137 _has_bits_.Clear();
5138 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5139}
5140
5141const char* OptionalDouble::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
5142#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
5143 _Internal::HasBits has_bits{};
5144 while (!ctx->Done(&ptr)) {
5145 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
5146 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
5147 switch (tag >> 3) {
5148 // optional double value = 1;
5149 case 1:
5150 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
5151 _Internal::set_has_value(&has_bits);
5152 value_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
5153 ptr += sizeof(double);
5154 } else
5155 goto handle_unusual;
5156 continue;
5157 default:
5158 goto handle_unusual;
5159 } // switch
5160 handle_unusual:
5161 if ((tag == 0) || ((tag & 7) == 4)) {
5162 CHK_(ptr);
5163 ctx->SetLastTag(tag);
5164 goto message_done;
5165 }
5166 ptr = UnknownFieldParse(
5167 tag,
5168 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
5169 ptr, ctx);
5170 CHK_(ptr != nullptr);
5171 } // while
5172message_done:
5173 _has_bits_.Or(has_bits);
5174 return ptr;
5175failure:
5176 ptr = nullptr;
5177 goto message_done;
5178#undef CHK_
5179}
5180
5181::PROTOBUF_NAMESPACE_ID::uint8* OptionalDouble::_InternalSerialize(
5182 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
5183 // @@protoc_insertion_point(serialize_to_array_start:operations_research.OptionalDouble)
5184 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5185 (void) cached_has_bits;
5186
5187 cached_has_bits = _has_bits_[0];
5188 // optional double value = 1;
5189 if (cached_has_bits & 0x00000001u) {
5190 target = stream->EnsureSpace(target);
5191 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(1, this->_internal_value(), target);
5192 }
5193
5194 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
5195 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
5196 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
5197 }
5198 // @@protoc_insertion_point(serialize_to_array_end:operations_research.OptionalDouble)
5199 return target;
5200}
5201
5203// @@protoc_insertion_point(message_byte_size_start:operations_research.OptionalDouble)
5204 size_t total_size = 0;
5205
5206 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5207 // Prevent compiler warnings about cached_has_bits being unused
5208 (void) cached_has_bits;
5209
5210 // optional double value = 1;
5211 cached_has_bits = _has_bits_[0];
5212 if (cached_has_bits & 0x00000001u) {
5213 total_size += 1 + 8;
5214 }
5215
5216 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
5217}
5218
5219const ::PROTOBUF_NAMESPACE_ID::Message::ClassData OptionalDouble::_class_data_ = {
5220 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
5221 OptionalDouble::MergeImpl
5222};
5223const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*OptionalDouble::GetClassData() const { return &_class_data_; }
5224
5225void OptionalDouble::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
5226 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
5227 static_cast<OptionalDouble *>(to)->MergeFrom(
5228 static_cast<const OptionalDouble &>(from));
5229}
5230
5231
5233// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.OptionalDouble)
5234 GOOGLE_DCHECK_NE(&from, this);
5235 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5236 (void) cached_has_bits;
5237
5238 if (from._internal_has_value()) {
5239 _internal_set_value(from._internal_value());
5240 }
5241 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5242}
5243
5245// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.OptionalDouble)
5246 if (&from == this) return;
5247 Clear();
5248 MergeFrom(from);
5249}
5250
5252 return true;
5253}
5254
5255void OptionalDouble::InternalSwap(OptionalDouble* other) {
5256 using std::swap;
5257 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
5258 swap(_has_bits_[0], other->_has_bits_[0]);
5259 swap(value_, other->value_);
5260}
5261
5262::PROTOBUF_NAMESPACE_ID::Metadata OptionalDouble::GetMetadata() const {
5263 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
5266}
5267
5268// ===================================================================
5269
5271 public:
5272 using HasBits = decltype(std::declval<MPSolverCommonParameters>()._has_bits_);
5273 static const ::operations_research::OptionalDouble& relative_mip_gap(const MPSolverCommonParameters* msg);
5274 static void set_has_relative_mip_gap(HasBits* has_bits) {
5275 (*has_bits)[0] |= 1u;
5276 }
5277 static const ::operations_research::OptionalDouble& primal_tolerance(const MPSolverCommonParameters* msg);
5278 static void set_has_primal_tolerance(HasBits* has_bits) {
5279 (*has_bits)[0] |= 2u;
5280 }
5281 static const ::operations_research::OptionalDouble& dual_tolerance(const MPSolverCommonParameters* msg);
5282 static void set_has_dual_tolerance(HasBits* has_bits) {
5283 (*has_bits)[0] |= 4u;
5284 }
5285 static void set_has_lp_algorithm(HasBits* has_bits) {
5286 (*has_bits)[0] |= 8u;
5287 }
5288 static void set_has_presolve(HasBits* has_bits) {
5289 (*has_bits)[0] |= 16u;
5290 }
5291 static void set_has_scaling(HasBits* has_bits) {
5292 (*has_bits)[0] |= 32u;
5293 }
5294};
5295
5296const ::operations_research::OptionalDouble&
5298 return *msg->relative_mip_gap_;
5299}
5300const ::operations_research::OptionalDouble&
5302 return *msg->primal_tolerance_;
5303}
5304const ::operations_research::OptionalDouble&
5306 return *msg->dual_tolerance_;
5307}
5308MPSolverCommonParameters::MPSolverCommonParameters(::PROTOBUF_NAMESPACE_ID::Arena* arena,
5309 bool is_message_owned)
5310 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
5311 SharedCtor();
5312 if (!is_message_owned) {
5313 RegisterArenaDtor(arena);
5314 }
5315 // @@protoc_insertion_point(arena_constructor:operations_research.MPSolverCommonParameters)
5316}
5318 : ::PROTOBUF_NAMESPACE_ID::Message(),
5319 _has_bits_(from._has_bits_) {
5320 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5321 if (from._internal_has_relative_mip_gap()) {
5322 relative_mip_gap_ = new ::operations_research::OptionalDouble(*from.relative_mip_gap_);
5323 } else {
5324 relative_mip_gap_ = nullptr;
5325 }
5326 if (from._internal_has_primal_tolerance()) {
5327 primal_tolerance_ = new ::operations_research::OptionalDouble(*from.primal_tolerance_);
5328 } else {
5329 primal_tolerance_ = nullptr;
5330 }
5331 if (from._internal_has_dual_tolerance()) {
5332 dual_tolerance_ = new ::operations_research::OptionalDouble(*from.dual_tolerance_);
5333 } else {
5334 dual_tolerance_ = nullptr;
5335 }
5336 ::memcpy(&lp_algorithm_, &from.lp_algorithm_,
5337 static_cast<size_t>(reinterpret_cast<char*>(&scaling_) -
5338 reinterpret_cast<char*>(&lp_algorithm_)) + sizeof(scaling_));
5339 // @@protoc_insertion_point(copy_constructor:operations_research.MPSolverCommonParameters)
5340}
5341
5342void MPSolverCommonParameters::SharedCtor() {
5343::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
5344 reinterpret_cast<char*>(&relative_mip_gap_) - reinterpret_cast<char*>(this)),
5345 0, static_cast<size_t>(reinterpret_cast<char*>(&scaling_) -
5346 reinterpret_cast<char*>(&relative_mip_gap_)) + sizeof(scaling_));
5347}
5348
5350 // @@protoc_insertion_point(destructor:operations_research.MPSolverCommonParameters)
5351 if (GetArenaForAllocation() != nullptr) return;
5352 SharedDtor();
5353 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5354}
5355
5356inline void MPSolverCommonParameters::SharedDtor() {
5357 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
5358 if (this != internal_default_instance()) delete relative_mip_gap_;
5359 if (this != internal_default_instance()) delete primal_tolerance_;
5360 if (this != internal_default_instance()) delete dual_tolerance_;
5361}
5362
5363void MPSolverCommonParameters::ArenaDtor(void* object) {
5364 MPSolverCommonParameters* _this = reinterpret_cast< MPSolverCommonParameters* >(object);
5365 (void)_this;
5366}
5367void MPSolverCommonParameters::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
5368}
5369void MPSolverCommonParameters::SetCachedSize(int size) const {
5370 _cached_size_.Set(size);
5371}
5372
5374// @@protoc_insertion_point(message_clear_start:operations_research.MPSolverCommonParameters)
5375 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5376 // Prevent compiler warnings about cached_has_bits being unused
5377 (void) cached_has_bits;
5378
5379 cached_has_bits = _has_bits_[0];
5380 if (cached_has_bits & 0x00000007u) {
5381 if (cached_has_bits & 0x00000001u) {
5382 GOOGLE_DCHECK(relative_mip_gap_ != nullptr);
5383 relative_mip_gap_->Clear();
5384 }
5385 if (cached_has_bits & 0x00000002u) {
5386 GOOGLE_DCHECK(primal_tolerance_ != nullptr);
5387 primal_tolerance_->Clear();
5388 }
5389 if (cached_has_bits & 0x00000004u) {
5390 GOOGLE_DCHECK(dual_tolerance_ != nullptr);
5391 dual_tolerance_->Clear();
5392 }
5393 }
5394 if (cached_has_bits & 0x00000038u) {
5395 ::memset(&lp_algorithm_, 0, static_cast<size_t>(
5396 reinterpret_cast<char*>(&scaling_) -
5397 reinterpret_cast<char*>(&lp_algorithm_)) + sizeof(scaling_));
5398 }
5399 _has_bits_.Clear();
5400 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5401}
5402
5403const char* MPSolverCommonParameters::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
5404#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
5405 _Internal::HasBits has_bits{};
5406 while (!ctx->Done(&ptr)) {
5407 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
5408 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
5409 switch (tag >> 3) {
5410 // optional .operations_research.OptionalDouble relative_mip_gap = 1;
5411 case 1:
5412 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
5413 ptr = ctx->ParseMessage(_internal_mutable_relative_mip_gap(), ptr);
5414 CHK_(ptr);
5415 } else
5416 goto handle_unusual;
5417 continue;
5418 // optional .operations_research.OptionalDouble primal_tolerance = 2;
5419 case 2:
5420 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
5421 ptr = ctx->ParseMessage(_internal_mutable_primal_tolerance(), ptr);
5422 CHK_(ptr);
5423 } else
5424 goto handle_unusual;
5425 continue;
5426 // optional .operations_research.OptionalDouble dual_tolerance = 3;
5427 case 3:
5428 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
5429 ptr = ctx->ParseMessage(_internal_mutable_dual_tolerance(), ptr);
5430 CHK_(ptr);
5431 } else
5432 goto handle_unusual;
5433 continue;
5434 // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
5435 case 4:
5436 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
5437 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
5438 CHK_(ptr);
5440 _internal_set_lp_algorithm(static_cast<::operations_research::MPSolverCommonParameters_LPAlgorithmValues>(val));
5441 } else {
5442 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(4, val, mutable_unknown_fields());
5443 }
5444 } else
5445 goto handle_unusual;
5446 continue;
5447 // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
5448 case 5:
5449 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 40)) {
5450 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
5451 CHK_(ptr);
5452 if (PROTOBUF_PREDICT_TRUE(::operations_research::OptionalBoolean_IsValid(val))) {
5453 _internal_set_presolve(static_cast<::operations_research::OptionalBoolean>(val));
5454 } else {
5455 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(5, val, mutable_unknown_fields());
5456 }
5457 } else
5458 goto handle_unusual;
5459 continue;
5460 // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
5461 case 7:
5462 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 56)) {
5463 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
5464 CHK_(ptr);
5465 if (PROTOBUF_PREDICT_TRUE(::operations_research::OptionalBoolean_IsValid(val))) {
5466 _internal_set_scaling(static_cast<::operations_research::OptionalBoolean>(val));
5467 } else {
5468 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(7, val, mutable_unknown_fields());
5469 }
5470 } else
5471 goto handle_unusual;
5472 continue;
5473 default:
5474 goto handle_unusual;
5475 } // switch
5476 handle_unusual:
5477 if ((tag == 0) || ((tag & 7) == 4)) {
5478 CHK_(ptr);
5479 ctx->SetLastTag(tag);
5480 goto message_done;
5481 }
5482 ptr = UnknownFieldParse(
5483 tag,
5484 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
5485 ptr, ctx);
5486 CHK_(ptr != nullptr);
5487 } // while
5488message_done:
5489 _has_bits_.Or(has_bits);
5490 return ptr;
5491failure:
5492 ptr = nullptr;
5493 goto message_done;
5494#undef CHK_
5495}
5496
5497::PROTOBUF_NAMESPACE_ID::uint8* MPSolverCommonParameters::_InternalSerialize(
5498 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
5499 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPSolverCommonParameters)
5500 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5501 (void) cached_has_bits;
5502
5503 cached_has_bits = _has_bits_[0];
5504 // optional .operations_research.OptionalDouble relative_mip_gap = 1;
5505 if (cached_has_bits & 0x00000001u) {
5506 target = stream->EnsureSpace(target);
5507 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
5508 InternalWriteMessage(
5509 1, _Internal::relative_mip_gap(this), target, stream);
5510 }
5511
5512 // optional .operations_research.OptionalDouble primal_tolerance = 2;
5513 if (cached_has_bits & 0x00000002u) {
5514 target = stream->EnsureSpace(target);
5515 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
5516 InternalWriteMessage(
5517 2, _Internal::primal_tolerance(this), target, stream);
5518 }
5519
5520 // optional .operations_research.OptionalDouble dual_tolerance = 3;
5521 if (cached_has_bits & 0x00000004u) {
5522 target = stream->EnsureSpace(target);
5523 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
5524 InternalWriteMessage(
5525 3, _Internal::dual_tolerance(this), target, stream);
5526 }
5527
5528 // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
5529 if (cached_has_bits & 0x00000008u) {
5530 target = stream->EnsureSpace(target);
5531 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
5532 4, this->_internal_lp_algorithm(), target);
5533 }
5534
5535 // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
5536 if (cached_has_bits & 0x00000010u) {
5537 target = stream->EnsureSpace(target);
5538 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
5539 5, this->_internal_presolve(), target);
5540 }
5541
5542 // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
5543 if (cached_has_bits & 0x00000020u) {
5544 target = stream->EnsureSpace(target);
5545 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
5546 7, this->_internal_scaling(), target);
5547 }
5548
5549 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
5550 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
5551 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
5552 }
5553 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPSolverCommonParameters)
5554 return target;
5555}
5556
5558// @@protoc_insertion_point(message_byte_size_start:operations_research.MPSolverCommonParameters)
5559 size_t total_size = 0;
5560
5561 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5562 // Prevent compiler warnings about cached_has_bits being unused
5563 (void) cached_has_bits;
5564
5565 cached_has_bits = _has_bits_[0];
5566 if (cached_has_bits & 0x0000003fu) {
5567 // optional .operations_research.OptionalDouble relative_mip_gap = 1;
5568 if (cached_has_bits & 0x00000001u) {
5569 total_size += 1 +
5570 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
5571 *relative_mip_gap_);
5572 }
5573
5574 // optional .operations_research.OptionalDouble primal_tolerance = 2;
5575 if (cached_has_bits & 0x00000002u) {
5576 total_size += 1 +
5577 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
5578 *primal_tolerance_);
5579 }
5580
5581 // optional .operations_research.OptionalDouble dual_tolerance = 3;
5582 if (cached_has_bits & 0x00000004u) {
5583 total_size += 1 +
5584 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
5585 *dual_tolerance_);
5586 }
5587
5588 // optional .operations_research.MPSolverCommonParameters.LPAlgorithmValues lp_algorithm = 4 [default = LP_ALGO_UNSPECIFIED];
5589 if (cached_has_bits & 0x00000008u) {
5590 total_size += 1 +
5591 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_lp_algorithm());
5592 }
5593
5594 // optional .operations_research.OptionalBoolean presolve = 5 [default = BOOL_UNSPECIFIED];
5595 if (cached_has_bits & 0x00000010u) {
5596 total_size += 1 +
5597 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_presolve());
5598 }
5599
5600 // optional .operations_research.OptionalBoolean scaling = 7 [default = BOOL_UNSPECIFIED];
5601 if (cached_has_bits & 0x00000020u) {
5602 total_size += 1 +
5603 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_scaling());
5604 }
5605
5606 }
5607 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
5608}
5609
5610const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPSolverCommonParameters::_class_data_ = {
5611 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
5612 MPSolverCommonParameters::MergeImpl
5613};
5614const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPSolverCommonParameters::GetClassData() const { return &_class_data_; }
5615
5616void MPSolverCommonParameters::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
5617 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
5618 static_cast<MPSolverCommonParameters *>(to)->MergeFrom(
5619 static_cast<const MPSolverCommonParameters &>(from));
5620}
5621
5622
5624// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPSolverCommonParameters)
5625 GOOGLE_DCHECK_NE(&from, this);
5626 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5627 (void) cached_has_bits;
5628
5629 cached_has_bits = from._has_bits_[0];
5630 if (cached_has_bits & 0x0000003fu) {
5631 if (cached_has_bits & 0x00000001u) {
5632 _internal_mutable_relative_mip_gap()->::operations_research::OptionalDouble::MergeFrom(from._internal_relative_mip_gap());
5633 }
5634 if (cached_has_bits & 0x00000002u) {
5635 _internal_mutable_primal_tolerance()->::operations_research::OptionalDouble::MergeFrom(from._internal_primal_tolerance());
5636 }
5637 if (cached_has_bits & 0x00000004u) {
5638 _internal_mutable_dual_tolerance()->::operations_research::OptionalDouble::MergeFrom(from._internal_dual_tolerance());
5639 }
5640 if (cached_has_bits & 0x00000008u) {
5641 lp_algorithm_ = from.lp_algorithm_;
5642 }
5643 if (cached_has_bits & 0x00000010u) {
5644 presolve_ = from.presolve_;
5645 }
5646 if (cached_has_bits & 0x00000020u) {
5647 scaling_ = from.scaling_;
5648 }
5649 _has_bits_[0] |= cached_has_bits;
5650 }
5651 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5652}
5653
5655// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPSolverCommonParameters)
5656 if (&from == this) return;
5657 Clear();
5658 MergeFrom(from);
5659}
5660
5662 return true;
5663}
5664
5665void MPSolverCommonParameters::InternalSwap(MPSolverCommonParameters* other) {
5666 using std::swap;
5667 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
5668 swap(_has_bits_[0], other->_has_bits_[0]);
5669 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
5670 PROTOBUF_FIELD_OFFSET(MPSolverCommonParameters, scaling_)
5671 + sizeof(MPSolverCommonParameters::scaling_)
5672 - PROTOBUF_FIELD_OFFSET(MPSolverCommonParameters, relative_mip_gap_)>(
5673 reinterpret_cast<char*>(&relative_mip_gap_),
5674 reinterpret_cast<char*>(&other->relative_mip_gap_));
5675}
5676
5677::PROTOBUF_NAMESPACE_ID::Metadata MPSolverCommonParameters::GetMetadata() const {
5678 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
5681}
5682
5683// ===================================================================
5684
5687 : SuperType(arena) {}
5689 MergeFromInternal(other);
5690}
5692 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
5695}
5696
5697// ===================================================================
5698
5701 : SuperType(arena) {}
5703 MergeFromInternal(other);
5704}
5706 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
5709}
5710
5711// ===================================================================
5712
5714 public:
5715 using HasBits = decltype(std::declval<MPModelDeltaProto>()._has_bits_);
5717 (*has_bits)[0] |= 1u;
5718 }
5719};
5720
5721MPModelDeltaProto::MPModelDeltaProto(::PROTOBUF_NAMESPACE_ID::Arena* arena,
5722 bool is_message_owned)
5723 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
5724 variable_overrides_(arena),
5725 constraint_overrides_(arena) {
5726 SharedCtor();
5727 if (!is_message_owned) {
5728 RegisterArenaDtor(arena);
5729 }
5730 // @@protoc_insertion_point(arena_constructor:operations_research.MPModelDeltaProto)
5731}
5733 : ::PROTOBUF_NAMESPACE_ID::Message(),
5734 _has_bits_(from._has_bits_) {
5735 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
5736 variable_overrides_.MergeFrom(from.variable_overrides_);
5737 constraint_overrides_.MergeFrom(from.constraint_overrides_);
5738 baseline_model_file_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5739 if (from._internal_has_baseline_model_file_path()) {
5740 baseline_model_file_path_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_baseline_model_file_path(),
5741 GetArenaForAllocation());
5742 }
5743 // @@protoc_insertion_point(copy_constructor:operations_research.MPModelDeltaProto)
5744}
5745
5746void MPModelDeltaProto::SharedCtor() {
5747baseline_model_file_path_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5748}
5749
5751 // @@protoc_insertion_point(destructor:operations_research.MPModelDeltaProto)
5752 if (GetArenaForAllocation() != nullptr) return;
5753 SharedDtor();
5754 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5755}
5756
5757inline void MPModelDeltaProto::SharedDtor() {
5758 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
5759 baseline_model_file_path_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
5760}
5761
5762void MPModelDeltaProto::ArenaDtor(void* object) {
5763 MPModelDeltaProto* _this = reinterpret_cast< MPModelDeltaProto* >(object);
5764 (void)_this;
5765 _this->variable_overrides_. ~MapField();
5766 _this->constraint_overrides_. ~MapField();
5767}
5768inline void MPModelDeltaProto::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena* arena) {
5769 if (arena != nullptr) {
5770 arena->OwnCustomDestructor(this, &MPModelDeltaProto::ArenaDtor);
5771 }
5772}
5773void MPModelDeltaProto::SetCachedSize(int size) const {
5774 _cached_size_.Set(size);
5775}
5776
5778// @@protoc_insertion_point(message_clear_start:operations_research.MPModelDeltaProto)
5779 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5780 // Prevent compiler warnings about cached_has_bits being unused
5781 (void) cached_has_bits;
5782
5783 variable_overrides_.Clear();
5784 constraint_overrides_.Clear();
5785 cached_has_bits = _has_bits_[0];
5786 if (cached_has_bits & 0x00000001u) {
5787 baseline_model_file_path_.ClearNonDefaultToEmpty();
5788 }
5789 _has_bits_.Clear();
5790 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
5791}
5792
5793const char* MPModelDeltaProto::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
5794#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
5795 _Internal::HasBits has_bits{};
5796 while (!ctx->Done(&ptr)) {
5797 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
5798 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
5799 switch (tag >> 3) {
5800 // optional string baseline_model_file_path = 1;
5801 case 1:
5802 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
5803 auto str = _internal_mutable_baseline_model_file_path();
5804 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
5805 #ifndef NDEBUG
5806 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPModelDeltaProto.baseline_model_file_path");
5807 #endif // !NDEBUG
5808 CHK_(ptr);
5809 } else
5810 goto handle_unusual;
5811 continue;
5812 // map<int32, .operations_research.MPVariableProto> variable_overrides = 2;
5813 case 2:
5814 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
5815 ptr -= 1;
5816 do {
5817 ptr += 1;
5818 ptr = ctx->ParseMessage(&variable_overrides_, ptr);
5819 CHK_(ptr);
5820 if (!ctx->DataAvailable(ptr)) break;
5821 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<18>(ptr));
5822 } else
5823 goto handle_unusual;
5824 continue;
5825 // map<int32, .operations_research.MPConstraintProto> constraint_overrides = 3;
5826 case 3:
5827 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
5828 ptr -= 1;
5829 do {
5830 ptr += 1;
5831 ptr = ctx->ParseMessage(&constraint_overrides_, ptr);
5832 CHK_(ptr);
5833 if (!ctx->DataAvailable(ptr)) break;
5834 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<26>(ptr));
5835 } else
5836 goto handle_unusual;
5837 continue;
5838 default:
5839 goto handle_unusual;
5840 } // switch
5841 handle_unusual:
5842 if ((tag == 0) || ((tag & 7) == 4)) {
5843 CHK_(ptr);
5844 ctx->SetLastTag(tag);
5845 goto message_done;
5846 }
5847 ptr = UnknownFieldParse(
5848 tag,
5849 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
5850 ptr, ctx);
5851 CHK_(ptr != nullptr);
5852 } // while
5853message_done:
5854 _has_bits_.Or(has_bits);
5855 return ptr;
5856failure:
5857 ptr = nullptr;
5858 goto message_done;
5859#undef CHK_
5860}
5861
5862::PROTOBUF_NAMESPACE_ID::uint8* MPModelDeltaProto::_InternalSerialize(
5863 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
5864 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPModelDeltaProto)
5865 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5866 (void) cached_has_bits;
5867
5868 cached_has_bits = _has_bits_[0];
5869 // optional string baseline_model_file_path = 1;
5870 if (cached_has_bits & 0x00000001u) {
5871 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
5872 this->_internal_baseline_model_file_path().data(), static_cast<int>(this->_internal_baseline_model_file_path().length()),
5873 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
5874 "operations_research.MPModelDeltaProto.baseline_model_file_path");
5875 target = stream->WriteStringMaybeAliased(
5876 1, this->_internal_baseline_model_file_path(), target);
5877 }
5878
5879 // map<int32, .operations_research.MPVariableProto> variable_overrides = 2;
5880 if (!this->_internal_variable_overrides().empty()) {
5881 typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >::const_pointer
5882 ConstPtr;
5883 typedef ::PROTOBUF_NAMESPACE_ID::internal::SortItem< ::PROTOBUF_NAMESPACE_ID::int32, ConstPtr > SortItem;
5884 typedef ::PROTOBUF_NAMESPACE_ID::internal::CompareByFirstField<SortItem> Less;
5885
5886 if (stream->IsSerializationDeterministic() &&
5887 this->_internal_variable_overrides().size() > 1) {
5888 ::std::unique_ptr<SortItem[]> items(
5889 new SortItem[this->_internal_variable_overrides().size()]);
5890 typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >::size_type size_type;
5891 size_type n = 0;
5892 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >::const_iterator
5893 it = this->_internal_variable_overrides().begin();
5894 it != this->_internal_variable_overrides().end(); ++it, ++n) {
5895 items[static_cast<ptrdiff_t>(n)] = SortItem(&*it);
5896 }
5897 ::std::sort(&items[0], &items[static_cast<ptrdiff_t>(n)], Less());
5898 for (size_type i = 0; i < n; i++) {
5899 target = MPModelDeltaProto_VariableOverridesEntry_DoNotUse::Funcs::InternalSerialize(2, items[static_cast<ptrdiff_t>(i)].second->first, items[static_cast<ptrdiff_t>(i)].second->second, target, stream);
5900 }
5901 } else {
5902 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >::const_iterator
5903 it = this->_internal_variable_overrides().begin();
5904 it != this->_internal_variable_overrides().end(); ++it) {
5905 target = MPModelDeltaProto_VariableOverridesEntry_DoNotUse::Funcs::InternalSerialize(2, it->first, it->second, target, stream);
5906 }
5907 }
5908 }
5909
5910 // map<int32, .operations_research.MPConstraintProto> constraint_overrides = 3;
5911 if (!this->_internal_constraint_overrides().empty()) {
5912 typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >::const_pointer
5913 ConstPtr;
5914 typedef ::PROTOBUF_NAMESPACE_ID::internal::SortItem< ::PROTOBUF_NAMESPACE_ID::int32, ConstPtr > SortItem;
5915 typedef ::PROTOBUF_NAMESPACE_ID::internal::CompareByFirstField<SortItem> Less;
5916
5917 if (stream->IsSerializationDeterministic() &&
5918 this->_internal_constraint_overrides().size() > 1) {
5919 ::std::unique_ptr<SortItem[]> items(
5920 new SortItem[this->_internal_constraint_overrides().size()]);
5921 typedef ::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >::size_type size_type;
5922 size_type n = 0;
5923 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >::const_iterator
5924 it = this->_internal_constraint_overrides().begin();
5925 it != this->_internal_constraint_overrides().end(); ++it, ++n) {
5926 items[static_cast<ptrdiff_t>(n)] = SortItem(&*it);
5927 }
5928 ::std::sort(&items[0], &items[static_cast<ptrdiff_t>(n)], Less());
5929 for (size_type i = 0; i < n; i++) {
5930 target = MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse::Funcs::InternalSerialize(3, items[static_cast<ptrdiff_t>(i)].second->first, items[static_cast<ptrdiff_t>(i)].second->second, target, stream);
5931 }
5932 } else {
5933 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >::const_iterator
5934 it = this->_internal_constraint_overrides().begin();
5935 it != this->_internal_constraint_overrides().end(); ++it) {
5936 target = MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse::Funcs::InternalSerialize(3, it->first, it->second, target, stream);
5937 }
5938 }
5939 }
5940
5941 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
5942 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
5943 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
5944 }
5945 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPModelDeltaProto)
5946 return target;
5947}
5948
5950// @@protoc_insertion_point(message_byte_size_start:operations_research.MPModelDeltaProto)
5951 size_t total_size = 0;
5952
5953 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
5954 // Prevent compiler warnings about cached_has_bits being unused
5955 (void) cached_has_bits;
5956
5957 // map<int32, .operations_research.MPVariableProto> variable_overrides = 2;
5958 total_size += 1 *
5959 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_variable_overrides_size());
5960 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto >::const_iterator
5961 it = this->_internal_variable_overrides().begin();
5962 it != this->_internal_variable_overrides().end(); ++it) {
5963 total_size += MPModelDeltaProto_VariableOverridesEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
5964 }
5965
5966 // map<int32, .operations_research.MPConstraintProto> constraint_overrides = 3;
5967 total_size += 1 *
5968 ::PROTOBUF_NAMESPACE_ID::internal::FromIntSize(this->_internal_constraint_overrides_size());
5969 for (::PROTOBUF_NAMESPACE_ID::Map< ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto >::const_iterator
5970 it = this->_internal_constraint_overrides().begin();
5971 it != this->_internal_constraint_overrides().end(); ++it) {
5972 total_size += MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse::Funcs::ByteSizeLong(it->first, it->second);
5973 }
5974
5975 // optional string baseline_model_file_path = 1;
5976 cached_has_bits = _has_bits_[0];
5977 if (cached_has_bits & 0x00000001u) {
5978 total_size += 1 +
5979 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
5980 this->_internal_baseline_model_file_path());
5981 }
5982
5983 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
5984}
5985
5986const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPModelDeltaProto::_class_data_ = {
5987 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
5988 MPModelDeltaProto::MergeImpl
5989};
5990const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPModelDeltaProto::GetClassData() const { return &_class_data_; }
5991
5992void MPModelDeltaProto::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
5993 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
5994 static_cast<MPModelDeltaProto *>(to)->MergeFrom(
5995 static_cast<const MPModelDeltaProto &>(from));
5996}
5997
5998
6000// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPModelDeltaProto)
6001 GOOGLE_DCHECK_NE(&from, this);
6002 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6003 (void) cached_has_bits;
6004
6005 variable_overrides_.MergeFrom(from.variable_overrides_);
6006 constraint_overrides_.MergeFrom(from.constraint_overrides_);
6007 if (from._internal_has_baseline_model_file_path()) {
6008 _internal_set_baseline_model_file_path(from._internal_baseline_model_file_path());
6009 }
6010 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6011}
6012
6014// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPModelDeltaProto)
6015 if (&from == this) return;
6016 Clear();
6017 MergeFrom(from);
6018}
6019
6021 return true;
6022}
6023
6024void MPModelDeltaProto::InternalSwap(MPModelDeltaProto* other) {
6025 using std::swap;
6026 auto* lhs_arena = GetArenaForAllocation();
6027 auto* rhs_arena = other->GetArenaForAllocation();
6028 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
6029 swap(_has_bits_[0], other->_has_bits_[0]);
6030 variable_overrides_.InternalSwap(&other->variable_overrides_);
6031 constraint_overrides_.InternalSwap(&other->constraint_overrides_);
6032 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
6033 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
6034 &baseline_model_file_path_, lhs_arena,
6035 &other->baseline_model_file_path_, rhs_arena
6036 );
6037}
6038
6039::PROTOBUF_NAMESPACE_ID::Metadata MPModelDeltaProto::GetMetadata() const {
6040 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
6043}
6044
6045// ===================================================================
6046
6048 public:
6049 using HasBits = decltype(std::declval<MPModelRequest>()._has_bits_);
6050 static const ::operations_research::MPModelProto& model(const MPModelRequest* msg);
6051 static void set_has_model(HasBits* has_bits) {
6052 (*has_bits)[0] |= 2u;
6053 }
6054 static void set_has_solver_type(HasBits* has_bits) {
6055 (*has_bits)[0] |= 128u;
6056 }
6058 (*has_bits)[0] |= 8u;
6059 }
6061 (*has_bits)[0] |= 16u;
6062 }
6064 (*has_bits)[0] |= 1u;
6065 }
6067 (*has_bits)[0] |= 32u;
6068 }
6069 static const ::operations_research::MPModelDeltaProto& model_delta(const MPModelRequest* msg);
6070 static void set_has_model_delta(HasBits* has_bits) {
6071 (*has_bits)[0] |= 4u;
6072 }
6074 (*has_bits)[0] |= 64u;
6075 }
6076};
6077
6078const ::operations_research::MPModelProto&
6080 return *msg->model_;
6081}
6082const ::operations_research::MPModelDeltaProto&
6084 return *msg->model_delta_;
6085}
6086MPModelRequest::MPModelRequest(::PROTOBUF_NAMESPACE_ID::Arena* arena,
6087 bool is_message_owned)
6088 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
6089 SharedCtor();
6090 if (!is_message_owned) {
6091 RegisterArenaDtor(arena);
6092 }
6093 // @@protoc_insertion_point(arena_constructor:operations_research.MPModelRequest)
6094}
6096 : ::PROTOBUF_NAMESPACE_ID::Message(),
6097 _has_bits_(from._has_bits_) {
6098 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6099 solver_specific_parameters_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6100 if (from._internal_has_solver_specific_parameters()) {
6101 solver_specific_parameters_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_solver_specific_parameters(),
6102 GetArenaForAllocation());
6103 }
6104 if (from._internal_has_model()) {
6105 model_ = new ::operations_research::MPModelProto(*from.model_);
6106 } else {
6107 model_ = nullptr;
6108 }
6109 if (from._internal_has_model_delta()) {
6110 model_delta_ = new ::operations_research::MPModelDeltaProto(*from.model_delta_);
6111 } else {
6112 model_delta_ = nullptr;
6113 }
6114 ::memcpy(&solver_time_limit_seconds_, &from.solver_time_limit_seconds_,
6115 static_cast<size_t>(reinterpret_cast<char*>(&solver_type_) -
6116 reinterpret_cast<char*>(&solver_time_limit_seconds_)) + sizeof(solver_type_));
6117 // @@protoc_insertion_point(copy_constructor:operations_research.MPModelRequest)
6118}
6119
6120void MPModelRequest::SharedCtor() {
6121solver_specific_parameters_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6122::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
6123 reinterpret_cast<char*>(&model_) - reinterpret_cast<char*>(this)),
6124 0, static_cast<size_t>(reinterpret_cast<char*>(&populate_additional_solutions_up_to_) -
6125 reinterpret_cast<char*>(&model_)) + sizeof(populate_additional_solutions_up_to_));
6126solver_type_ = 2;
6127}
6128
6130 // @@protoc_insertion_point(destructor:operations_research.MPModelRequest)
6131 if (GetArenaForAllocation() != nullptr) return;
6132 SharedDtor();
6133 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6134}
6135
6136inline void MPModelRequest::SharedDtor() {
6137 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
6138 solver_specific_parameters_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
6139 if (this != internal_default_instance()) delete model_;
6140 if (this != internal_default_instance()) delete model_delta_;
6141}
6142
6143void MPModelRequest::ArenaDtor(void* object) {
6144 MPModelRequest* _this = reinterpret_cast< MPModelRequest* >(object);
6145 (void)_this;
6146}
6147void MPModelRequest::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
6148}
6149void MPModelRequest::SetCachedSize(int size) const {
6150 _cached_size_.Set(size);
6151}
6152
6154// @@protoc_insertion_point(message_clear_start:operations_research.MPModelRequest)
6155 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6156 // Prevent compiler warnings about cached_has_bits being unused
6157 (void) cached_has_bits;
6158
6159 cached_has_bits = _has_bits_[0];
6160 if (cached_has_bits & 0x00000007u) {
6161 if (cached_has_bits & 0x00000001u) {
6162 solver_specific_parameters_.ClearNonDefaultToEmpty();
6163 }
6164 if (cached_has_bits & 0x00000002u) {
6165 GOOGLE_DCHECK(model_ != nullptr);
6166 model_->Clear();
6167 }
6168 if (cached_has_bits & 0x00000004u) {
6169 GOOGLE_DCHECK(model_delta_ != nullptr);
6170 model_delta_->Clear();
6171 }
6172 }
6173 if (cached_has_bits & 0x000000f8u) {
6174 ::memset(&solver_time_limit_seconds_, 0, static_cast<size_t>(
6175 reinterpret_cast<char*>(&populate_additional_solutions_up_to_) -
6176 reinterpret_cast<char*>(&solver_time_limit_seconds_)) + sizeof(populate_additional_solutions_up_to_));
6177 solver_type_ = 2;
6178 }
6179 _has_bits_.Clear();
6180 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6181}
6182
6183const char* MPModelRequest::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
6184#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
6185 _Internal::HasBits has_bits{};
6186 while (!ctx->Done(&ptr)) {
6187 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
6188 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
6189 switch (tag >> 3) {
6190 // optional .operations_research.MPModelProto model = 1;
6191 case 1:
6192 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 10)) {
6193 ptr = ctx->ParseMessage(_internal_mutable_model(), ptr);
6194 CHK_(ptr);
6195 } else
6196 goto handle_unusual;
6197 continue;
6198 // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
6199 case 2:
6200 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 16)) {
6201 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
6202 CHK_(ptr);
6203 if (PROTOBUF_PREDICT_TRUE(::operations_research::MPModelRequest_SolverType_IsValid(val))) {
6204 _internal_set_solver_type(static_cast<::operations_research::MPModelRequest_SolverType>(val));
6205 } else {
6206 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(2, val, mutable_unknown_fields());
6207 }
6208 } else
6209 goto handle_unusual;
6210 continue;
6211 // optional double solver_time_limit_seconds = 3;
6212 case 3:
6213 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25)) {
6215 solver_time_limit_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
6216 ptr += sizeof(double);
6217 } else
6218 goto handle_unusual;
6219 continue;
6220 // optional bool enable_internal_solver_output = 4 [default = false];
6221 case 4:
6222 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 32)) {
6224 enable_internal_solver_output_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
6225 CHK_(ptr);
6226 } else
6227 goto handle_unusual;
6228 continue;
6229 // optional string solver_specific_parameters = 5;
6230 case 5:
6231 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 42)) {
6232 auto str = _internal_mutable_solver_specific_parameters();
6233 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
6234 #ifndef NDEBUG
6235 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPModelRequest.solver_specific_parameters");
6236 #endif // !NDEBUG
6237 CHK_(ptr);
6238 } else
6239 goto handle_unusual;
6240 continue;
6241 // optional .operations_research.MPModelDeltaProto model_delta = 8;
6242 case 8:
6243 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
6244 ptr = ctx->ParseMessage(_internal_mutable_model_delta(), ptr);
6245 CHK_(ptr);
6246 } else
6247 goto handle_unusual;
6248 continue;
6249 // optional bool ignore_solver_specific_parameters_failure = 9 [default = false];
6250 case 9:
6251 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 72)) {
6253 ignore_solver_specific_parameters_failure_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
6254 CHK_(ptr);
6255 } else
6256 goto handle_unusual;
6257 continue;
6258 // optional int32 populate_additional_solutions_up_to = 11 [default = 0];
6259 case 11:
6260 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 88)) {
6262 populate_additional_solutions_up_to_ = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
6263 CHK_(ptr);
6264 } else
6265 goto handle_unusual;
6266 continue;
6267 default:
6268 goto handle_unusual;
6269 } // switch
6270 handle_unusual:
6271 if ((tag == 0) || ((tag & 7) == 4)) {
6272 CHK_(ptr);
6273 ctx->SetLastTag(tag);
6274 goto message_done;
6275 }
6276 ptr = UnknownFieldParse(
6277 tag,
6278 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
6279 ptr, ctx);
6280 CHK_(ptr != nullptr);
6281 } // while
6282message_done:
6283 _has_bits_.Or(has_bits);
6284 return ptr;
6285failure:
6286 ptr = nullptr;
6287 goto message_done;
6288#undef CHK_
6289}
6290
6291::PROTOBUF_NAMESPACE_ID::uint8* MPModelRequest::_InternalSerialize(
6292 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
6293 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPModelRequest)
6294 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6295 (void) cached_has_bits;
6296
6297 cached_has_bits = _has_bits_[0];
6298 // optional .operations_research.MPModelProto model = 1;
6299 if (cached_has_bits & 0x00000002u) {
6300 target = stream->EnsureSpace(target);
6301 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
6302 InternalWriteMessage(
6303 1, _Internal::model(this), target, stream);
6304 }
6305
6306 // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
6307 if (cached_has_bits & 0x00000080u) {
6308 target = stream->EnsureSpace(target);
6309 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
6310 2, this->_internal_solver_type(), target);
6311 }
6312
6313 // optional double solver_time_limit_seconds = 3;
6314 if (cached_has_bits & 0x00000008u) {
6315 target = stream->EnsureSpace(target);
6316 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(3, this->_internal_solver_time_limit_seconds(), target);
6317 }
6318
6319 // optional bool enable_internal_solver_output = 4 [default = false];
6320 if (cached_has_bits & 0x00000010u) {
6321 target = stream->EnsureSpace(target);
6322 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(4, this->_internal_enable_internal_solver_output(), target);
6323 }
6324
6325 // optional string solver_specific_parameters = 5;
6326 if (cached_has_bits & 0x00000001u) {
6327 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
6328 this->_internal_solver_specific_parameters().data(), static_cast<int>(this->_internal_solver_specific_parameters().length()),
6329 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
6330 "operations_research.MPModelRequest.solver_specific_parameters");
6331 target = stream->WriteStringMaybeAliased(
6332 5, this->_internal_solver_specific_parameters(), target);
6333 }
6334
6335 // optional .operations_research.MPModelDeltaProto model_delta = 8;
6336 if (cached_has_bits & 0x00000004u) {
6337 target = stream->EnsureSpace(target);
6338 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
6339 InternalWriteMessage(
6340 8, _Internal::model_delta(this), target, stream);
6341 }
6342
6343 // optional bool ignore_solver_specific_parameters_failure = 9 [default = false];
6344 if (cached_has_bits & 0x00000020u) {
6345 target = stream->EnsureSpace(target);
6346 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteBoolToArray(9, this->_internal_ignore_solver_specific_parameters_failure(), target);
6347 }
6348
6349 // optional int32 populate_additional_solutions_up_to = 11 [default = 0];
6350 if (cached_has_bits & 0x00000040u) {
6351 target = stream->EnsureSpace(target);
6352 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteInt32ToArray(11, this->_internal_populate_additional_solutions_up_to(), target);
6353 }
6354
6355 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
6356 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
6357 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
6358 }
6359 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPModelRequest)
6360 return target;
6361}
6362
6364// @@protoc_insertion_point(message_byte_size_start:operations_research.MPModelRequest)
6365 size_t total_size = 0;
6366
6367 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6368 // Prevent compiler warnings about cached_has_bits being unused
6369 (void) cached_has_bits;
6370
6371 cached_has_bits = _has_bits_[0];
6372 if (cached_has_bits & 0x000000ffu) {
6373 // optional string solver_specific_parameters = 5;
6374 if (cached_has_bits & 0x00000001u) {
6375 total_size += 1 +
6376 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
6377 this->_internal_solver_specific_parameters());
6378 }
6379
6380 // optional .operations_research.MPModelProto model = 1;
6381 if (cached_has_bits & 0x00000002u) {
6382 total_size += 1 +
6383 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
6384 *model_);
6385 }
6386
6387 // optional .operations_research.MPModelDeltaProto model_delta = 8;
6388 if (cached_has_bits & 0x00000004u) {
6389 total_size += 1 +
6390 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
6391 *model_delta_);
6392 }
6393
6394 // optional double solver_time_limit_seconds = 3;
6395 if (cached_has_bits & 0x00000008u) {
6396 total_size += 1 + 8;
6397 }
6398
6399 // optional bool enable_internal_solver_output = 4 [default = false];
6400 if (cached_has_bits & 0x00000010u) {
6401 total_size += 1 + 1;
6402 }
6403
6404 // optional bool ignore_solver_specific_parameters_failure = 9 [default = false];
6405 if (cached_has_bits & 0x00000020u) {
6406 total_size += 1 + 1;
6407 }
6408
6409 // optional int32 populate_additional_solutions_up_to = 11 [default = 0];
6410 if (cached_has_bits & 0x00000040u) {
6411 total_size += ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32SizePlusOne(this->_internal_populate_additional_solutions_up_to());
6412 }
6413
6414 // optional .operations_research.MPModelRequest.SolverType solver_type = 2;
6415 if (cached_has_bits & 0x00000080u) {
6416 total_size += 1 +
6417 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_solver_type());
6418 }
6419
6420 }
6421 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
6422}
6423
6424const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPModelRequest::_class_data_ = {
6425 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
6426 MPModelRequest::MergeImpl
6427};
6428const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPModelRequest::GetClassData() const { return &_class_data_; }
6429
6430void MPModelRequest::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
6431 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
6432 static_cast<MPModelRequest *>(to)->MergeFrom(
6433 static_cast<const MPModelRequest &>(from));
6434}
6435
6436
6438// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPModelRequest)
6439 GOOGLE_DCHECK_NE(&from, this);
6440 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6441 (void) cached_has_bits;
6442
6443 cached_has_bits = from._has_bits_[0];
6444 if (cached_has_bits & 0x000000ffu) {
6445 if (cached_has_bits & 0x00000001u) {
6446 _internal_set_solver_specific_parameters(from._internal_solver_specific_parameters());
6447 }
6448 if (cached_has_bits & 0x00000002u) {
6449 _internal_mutable_model()->::operations_research::MPModelProto::MergeFrom(from._internal_model());
6450 }
6451 if (cached_has_bits & 0x00000004u) {
6452 _internal_mutable_model_delta()->::operations_research::MPModelDeltaProto::MergeFrom(from._internal_model_delta());
6453 }
6454 if (cached_has_bits & 0x00000008u) {
6455 solver_time_limit_seconds_ = from.solver_time_limit_seconds_;
6456 }
6457 if (cached_has_bits & 0x00000010u) {
6458 enable_internal_solver_output_ = from.enable_internal_solver_output_;
6459 }
6460 if (cached_has_bits & 0x00000020u) {
6461 ignore_solver_specific_parameters_failure_ = from.ignore_solver_specific_parameters_failure_;
6462 }
6463 if (cached_has_bits & 0x00000040u) {
6464 populate_additional_solutions_up_to_ = from.populate_additional_solutions_up_to_;
6465 }
6466 if (cached_has_bits & 0x00000080u) {
6467 solver_type_ = from.solver_type_;
6468 }
6469 _has_bits_[0] |= cached_has_bits;
6470 }
6471 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6472}
6473
6475// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPModelRequest)
6476 if (&from == this) return;
6477 Clear();
6478 MergeFrom(from);
6479}
6480
6482 return true;
6483}
6484
6485void MPModelRequest::InternalSwap(MPModelRequest* other) {
6486 using std::swap;
6487 auto* lhs_arena = GetArenaForAllocation();
6488 auto* rhs_arena = other->GetArenaForAllocation();
6489 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
6490 swap(_has_bits_[0], other->_has_bits_[0]);
6491 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
6492 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
6493 &solver_specific_parameters_, lhs_arena,
6494 &other->solver_specific_parameters_, rhs_arena
6495 );
6496 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
6497 PROTOBUF_FIELD_OFFSET(MPModelRequest, populate_additional_solutions_up_to_)
6498 + sizeof(MPModelRequest::populate_additional_solutions_up_to_)
6499 - PROTOBUF_FIELD_OFFSET(MPModelRequest, model_)>(
6500 reinterpret_cast<char*>(&model_),
6501 reinterpret_cast<char*>(&other->model_));
6502 swap(solver_type_, other->solver_type_);
6503}
6504
6505::PROTOBUF_NAMESPACE_ID::Metadata MPModelRequest::GetMetadata() const {
6506 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
6509}
6510
6511// ===================================================================
6512
6514 public:
6515 using HasBits = decltype(std::declval<MPSolution>()._has_bits_);
6516 static void set_has_objective_value(HasBits* has_bits) {
6517 (*has_bits)[0] |= 1u;
6518 }
6519};
6520
6521MPSolution::MPSolution(::PROTOBUF_NAMESPACE_ID::Arena* arena,
6522 bool is_message_owned)
6523 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
6524 variable_value_(arena) {
6525 SharedCtor();
6526 if (!is_message_owned) {
6527 RegisterArenaDtor(arena);
6528 }
6529 // @@protoc_insertion_point(arena_constructor:operations_research.MPSolution)
6530}
6532 : ::PROTOBUF_NAMESPACE_ID::Message(),
6533 _has_bits_(from._has_bits_),
6534 variable_value_(from.variable_value_) {
6535 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6536 objective_value_ = from.objective_value_;
6537 // @@protoc_insertion_point(copy_constructor:operations_research.MPSolution)
6538}
6539
6540void MPSolution::SharedCtor() {
6541objective_value_ = 0;
6542}
6543
6545 // @@protoc_insertion_point(destructor:operations_research.MPSolution)
6546 if (GetArenaForAllocation() != nullptr) return;
6547 SharedDtor();
6548 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6549}
6550
6551inline void MPSolution::SharedDtor() {
6552 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
6553}
6554
6555void MPSolution::ArenaDtor(void* object) {
6556 MPSolution* _this = reinterpret_cast< MPSolution* >(object);
6557 (void)_this;
6558}
6559void MPSolution::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
6560}
6561void MPSolution::SetCachedSize(int size) const {
6562 _cached_size_.Set(size);
6563}
6564
6566// @@protoc_insertion_point(message_clear_start:operations_research.MPSolution)
6567 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6568 // Prevent compiler warnings about cached_has_bits being unused
6569 (void) cached_has_bits;
6570
6571 variable_value_.Clear();
6572 objective_value_ = 0;
6573 _has_bits_.Clear();
6574 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6575}
6576
6577const char* MPSolution::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
6578#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
6579 _Internal::HasBits has_bits{};
6580 while (!ctx->Done(&ptr)) {
6581 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
6582 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
6583 switch (tag >> 3) {
6584 // optional double objective_value = 1;
6585 case 1:
6586 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
6588 objective_value_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
6589 ptr += sizeof(double);
6590 } else
6591 goto handle_unusual;
6592 continue;
6593 // repeated double variable_value = 2 [packed = true];
6594 case 2:
6595 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 18)) {
6596 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_variable_value(), ptr, ctx);
6597 CHK_(ptr);
6598 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17) {
6599 _internal_add_variable_value(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
6600 ptr += sizeof(double);
6601 } else
6602 goto handle_unusual;
6603 continue;
6604 default:
6605 goto handle_unusual;
6606 } // switch
6607 handle_unusual:
6608 if ((tag == 0) || ((tag & 7) == 4)) {
6609 CHK_(ptr);
6610 ctx->SetLastTag(tag);
6611 goto message_done;
6612 }
6613 ptr = UnknownFieldParse(
6614 tag,
6615 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
6616 ptr, ctx);
6617 CHK_(ptr != nullptr);
6618 } // while
6619message_done:
6620 _has_bits_.Or(has_bits);
6621 return ptr;
6622failure:
6623 ptr = nullptr;
6624 goto message_done;
6625#undef CHK_
6626}
6627
6628::PROTOBUF_NAMESPACE_ID::uint8* MPSolution::_InternalSerialize(
6629 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
6630 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPSolution)
6631 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6632 (void) cached_has_bits;
6633
6634 cached_has_bits = _has_bits_[0];
6635 // optional double objective_value = 1;
6636 if (cached_has_bits & 0x00000001u) {
6637 target = stream->EnsureSpace(target);
6638 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(1, this->_internal_objective_value(), target);
6639 }
6640
6641 // repeated double variable_value = 2 [packed = true];
6642 if (this->_internal_variable_value_size() > 0) {
6643 target = stream->WriteFixedPacked(2, _internal_variable_value(), target);
6644 }
6645
6646 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
6647 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
6648 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
6649 }
6650 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPSolution)
6651 return target;
6652}
6653
6655// @@protoc_insertion_point(message_byte_size_start:operations_research.MPSolution)
6656 size_t total_size = 0;
6657
6658 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6659 // Prevent compiler warnings about cached_has_bits being unused
6660 (void) cached_has_bits;
6661
6662 // repeated double variable_value = 2 [packed = true];
6663 {
6664 unsigned int count = static_cast<unsigned int>(this->_internal_variable_value_size());
6665 size_t data_size = 8UL * count;
6666 if (data_size > 0) {
6667 total_size += 1 +
6668 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
6669 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
6670 }
6671 total_size += data_size;
6672 }
6673
6674 // optional double objective_value = 1;
6675 cached_has_bits = _has_bits_[0];
6676 if (cached_has_bits & 0x00000001u) {
6677 total_size += 1 + 8;
6678 }
6679
6680 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
6681}
6682
6683const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPSolution::_class_data_ = {
6684 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
6685 MPSolution::MergeImpl
6686};
6687const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPSolution::GetClassData() const { return &_class_data_; }
6688
6689void MPSolution::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
6690 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
6691 static_cast<MPSolution *>(to)->MergeFrom(
6692 static_cast<const MPSolution &>(from));
6693}
6694
6695
6697// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPSolution)
6698 GOOGLE_DCHECK_NE(&from, this);
6699 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6700 (void) cached_has_bits;
6701
6702 variable_value_.MergeFrom(from.variable_value_);
6703 if (from._internal_has_objective_value()) {
6704 _internal_set_objective_value(from._internal_objective_value());
6705 }
6706 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6707}
6708
6710// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPSolution)
6711 if (&from == this) return;
6712 Clear();
6713 MergeFrom(from);
6714}
6715
6717 return true;
6718}
6719
6720void MPSolution::InternalSwap(MPSolution* other) {
6721 using std::swap;
6722 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
6723 swap(_has_bits_[0], other->_has_bits_[0]);
6724 variable_value_.InternalSwap(&other->variable_value_);
6725 swap(objective_value_, other->objective_value_);
6726}
6727
6728::PROTOBUF_NAMESPACE_ID::Metadata MPSolution::GetMetadata() const {
6729 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
6732}
6733
6734// ===================================================================
6735
6737 public:
6738 using HasBits = decltype(std::declval<MPSolveInfo>()._has_bits_);
6740 (*has_bits)[0] |= 1u;
6741 }
6743 (*has_bits)[0] |= 2u;
6744 }
6745};
6746
6747MPSolveInfo::MPSolveInfo(::PROTOBUF_NAMESPACE_ID::Arena* arena,
6748 bool is_message_owned)
6749 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned) {
6750 SharedCtor();
6751 if (!is_message_owned) {
6752 RegisterArenaDtor(arena);
6753 }
6754 // @@protoc_insertion_point(arena_constructor:operations_research.MPSolveInfo)
6755}
6757 : ::PROTOBUF_NAMESPACE_ID::Message(),
6758 _has_bits_(from._has_bits_) {
6759 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6760 ::memcpy(&solve_wall_time_seconds_, &from.solve_wall_time_seconds_,
6761 static_cast<size_t>(reinterpret_cast<char*>(&solve_user_time_seconds_) -
6762 reinterpret_cast<char*>(&solve_wall_time_seconds_)) + sizeof(solve_user_time_seconds_));
6763 // @@protoc_insertion_point(copy_constructor:operations_research.MPSolveInfo)
6764}
6765
6766void MPSolveInfo::SharedCtor() {
6767::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
6768 reinterpret_cast<char*>(&solve_wall_time_seconds_) - reinterpret_cast<char*>(this)),
6769 0, static_cast<size_t>(reinterpret_cast<char*>(&solve_user_time_seconds_) -
6770 reinterpret_cast<char*>(&solve_wall_time_seconds_)) + sizeof(solve_user_time_seconds_));
6771}
6772
6774 // @@protoc_insertion_point(destructor:operations_research.MPSolveInfo)
6775 if (GetArenaForAllocation() != nullptr) return;
6776 SharedDtor();
6777 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6778}
6779
6780inline void MPSolveInfo::SharedDtor() {
6781 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
6782}
6783
6784void MPSolveInfo::ArenaDtor(void* object) {
6785 MPSolveInfo* _this = reinterpret_cast< MPSolveInfo* >(object);
6786 (void)_this;
6787}
6788void MPSolveInfo::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
6789}
6790void MPSolveInfo::SetCachedSize(int size) const {
6791 _cached_size_.Set(size);
6792}
6793
6795// @@protoc_insertion_point(message_clear_start:operations_research.MPSolveInfo)
6796 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6797 // Prevent compiler warnings about cached_has_bits being unused
6798 (void) cached_has_bits;
6799
6800 cached_has_bits = _has_bits_[0];
6801 if (cached_has_bits & 0x00000003u) {
6802 ::memset(&solve_wall_time_seconds_, 0, static_cast<size_t>(
6803 reinterpret_cast<char*>(&solve_user_time_seconds_) -
6804 reinterpret_cast<char*>(&solve_wall_time_seconds_)) + sizeof(solve_user_time_seconds_));
6805 }
6806 _has_bits_.Clear();
6807 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
6808}
6809
6810const char* MPSolveInfo::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
6811#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
6812 _Internal::HasBits has_bits{};
6813 while (!ctx->Done(&ptr)) {
6814 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
6815 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
6816 switch (tag >> 3) {
6817 // optional double solve_wall_time_seconds = 1;
6818 case 1:
6819 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 9)) {
6821 solve_wall_time_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
6822 ptr += sizeof(double);
6823 } else
6824 goto handle_unusual;
6825 continue;
6826 // optional double solve_user_time_seconds = 2;
6827 case 2:
6828 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
6830 solve_user_time_seconds_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
6831 ptr += sizeof(double);
6832 } else
6833 goto handle_unusual;
6834 continue;
6835 default:
6836 goto handle_unusual;
6837 } // switch
6838 handle_unusual:
6839 if ((tag == 0) || ((tag & 7) == 4)) {
6840 CHK_(ptr);
6841 ctx->SetLastTag(tag);
6842 goto message_done;
6843 }
6844 ptr = UnknownFieldParse(
6845 tag,
6846 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
6847 ptr, ctx);
6848 CHK_(ptr != nullptr);
6849 } // while
6850message_done:
6851 _has_bits_.Or(has_bits);
6852 return ptr;
6853failure:
6854 ptr = nullptr;
6855 goto message_done;
6856#undef CHK_
6857}
6858
6859::PROTOBUF_NAMESPACE_ID::uint8* MPSolveInfo::_InternalSerialize(
6860 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
6861 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPSolveInfo)
6862 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6863 (void) cached_has_bits;
6864
6865 cached_has_bits = _has_bits_[0];
6866 // optional double solve_wall_time_seconds = 1;
6867 if (cached_has_bits & 0x00000001u) {
6868 target = stream->EnsureSpace(target);
6869 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(1, this->_internal_solve_wall_time_seconds(), target);
6870 }
6871
6872 // optional double solve_user_time_seconds = 2;
6873 if (cached_has_bits & 0x00000002u) {
6874 target = stream->EnsureSpace(target);
6875 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_solve_user_time_seconds(), target);
6876 }
6877
6878 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
6879 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
6880 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
6881 }
6882 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPSolveInfo)
6883 return target;
6884}
6885
6887// @@protoc_insertion_point(message_byte_size_start:operations_research.MPSolveInfo)
6888 size_t total_size = 0;
6889
6890 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6891 // Prevent compiler warnings about cached_has_bits being unused
6892 (void) cached_has_bits;
6893
6894 cached_has_bits = _has_bits_[0];
6895 if (cached_has_bits & 0x00000003u) {
6896 // optional double solve_wall_time_seconds = 1;
6897 if (cached_has_bits & 0x00000001u) {
6898 total_size += 1 + 8;
6899 }
6900
6901 // optional double solve_user_time_seconds = 2;
6902 if (cached_has_bits & 0x00000002u) {
6903 total_size += 1 + 8;
6904 }
6905
6906 }
6907 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
6908}
6909
6910const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPSolveInfo::_class_data_ = {
6911 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
6912 MPSolveInfo::MergeImpl
6913};
6914const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPSolveInfo::GetClassData() const { return &_class_data_; }
6915
6916void MPSolveInfo::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
6917 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
6918 static_cast<MPSolveInfo *>(to)->MergeFrom(
6919 static_cast<const MPSolveInfo &>(from));
6920}
6921
6922
6924// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPSolveInfo)
6925 GOOGLE_DCHECK_NE(&from, this);
6926 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
6927 (void) cached_has_bits;
6928
6929 cached_has_bits = from._has_bits_[0];
6930 if (cached_has_bits & 0x00000003u) {
6931 if (cached_has_bits & 0x00000001u) {
6932 solve_wall_time_seconds_ = from.solve_wall_time_seconds_;
6933 }
6934 if (cached_has_bits & 0x00000002u) {
6935 solve_user_time_seconds_ = from.solve_user_time_seconds_;
6936 }
6937 _has_bits_[0] |= cached_has_bits;
6938 }
6939 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
6940}
6941
6943// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPSolveInfo)
6944 if (&from == this) return;
6945 Clear();
6946 MergeFrom(from);
6947}
6948
6950 return true;
6951}
6952
6953void MPSolveInfo::InternalSwap(MPSolveInfo* other) {
6954 using std::swap;
6955 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
6956 swap(_has_bits_[0], other->_has_bits_[0]);
6957 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
6958 PROTOBUF_FIELD_OFFSET(MPSolveInfo, solve_user_time_seconds_)
6959 + sizeof(MPSolveInfo::solve_user_time_seconds_)
6960 - PROTOBUF_FIELD_OFFSET(MPSolveInfo, solve_wall_time_seconds_)>(
6961 reinterpret_cast<char*>(&solve_wall_time_seconds_),
6962 reinterpret_cast<char*>(&other->solve_wall_time_seconds_));
6963}
6964
6965::PROTOBUF_NAMESPACE_ID::Metadata MPSolveInfo::GetMetadata() const {
6966 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
6969}
6970
6971// ===================================================================
6972
6974 public:
6975 using HasBits = decltype(std::declval<MPSolutionResponse>()._has_bits_);
6976 static void set_has_status(HasBits* has_bits) {
6977 (*has_bits)[0] |= 16u;
6978 }
6979 static void set_has_status_str(HasBits* has_bits) {
6980 (*has_bits)[0] |= 1u;
6981 }
6982 static void set_has_objective_value(HasBits* has_bits) {
6983 (*has_bits)[0] |= 4u;
6984 }
6985 static void set_has_best_objective_bound(HasBits* has_bits) {
6986 (*has_bits)[0] |= 8u;
6987 }
6988 static const ::operations_research::MPSolveInfo& solve_info(const MPSolutionResponse* msg);
6989 static void set_has_solve_info(HasBits* has_bits) {
6990 (*has_bits)[0] |= 2u;
6991 }
6992};
6993
6994const ::operations_research::MPSolveInfo&
6996 return *msg->solve_info_;
6997}
6998MPSolutionResponse::MPSolutionResponse(::PROTOBUF_NAMESPACE_ID::Arena* arena,
6999 bool is_message_owned)
7000 : ::PROTOBUF_NAMESPACE_ID::Message(arena, is_message_owned),
7001 variable_value_(arena),
7002 dual_value_(arena),
7003 reduced_cost_(arena),
7004 additional_solutions_(arena) {
7005 SharedCtor();
7006 if (!is_message_owned) {
7007 RegisterArenaDtor(arena);
7008 }
7009 // @@protoc_insertion_point(arena_constructor:operations_research.MPSolutionResponse)
7010}
7012 : ::PROTOBUF_NAMESPACE_ID::Message(),
7013 _has_bits_(from._has_bits_),
7014 variable_value_(from.variable_value_),
7015 dual_value_(from.dual_value_),
7016 reduced_cost_(from.reduced_cost_),
7017 additional_solutions_(from.additional_solutions_) {
7018 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
7019 status_str_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7020 if (from._internal_has_status_str()) {
7021 status_str_.Set(::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::EmptyDefault{}, from._internal_status_str(),
7022 GetArenaForAllocation());
7023 }
7024 if (from._internal_has_solve_info()) {
7025 solve_info_ = new ::operations_research::MPSolveInfo(*from.solve_info_);
7026 } else {
7027 solve_info_ = nullptr;
7028 }
7029 ::memcpy(&objective_value_, &from.objective_value_,
7030 static_cast<size_t>(reinterpret_cast<char*>(&status_) -
7031 reinterpret_cast<char*>(&objective_value_)) + sizeof(status_));
7032 // @@protoc_insertion_point(copy_constructor:operations_research.MPSolutionResponse)
7033}
7034
7035void MPSolutionResponse::SharedCtor() {
7036status_str_.UnsafeSetDefault(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7037::memset(reinterpret_cast<char*>(this) + static_cast<size_t>(
7038 reinterpret_cast<char*>(&solve_info_) - reinterpret_cast<char*>(this)),
7039 0, static_cast<size_t>(reinterpret_cast<char*>(&best_objective_bound_) -
7040 reinterpret_cast<char*>(&solve_info_)) + sizeof(best_objective_bound_));
7041status_ = 99;
7042}
7043
7045 // @@protoc_insertion_point(destructor:operations_research.MPSolutionResponse)
7046 if (GetArenaForAllocation() != nullptr) return;
7047 SharedDtor();
7048 _internal_metadata_.Delete<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
7049}
7050
7051inline void MPSolutionResponse::SharedDtor() {
7052 GOOGLE_DCHECK(GetArenaForAllocation() == nullptr);
7053 status_str_.DestroyNoArena(&::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited());
7054 if (this != internal_default_instance()) delete solve_info_;
7055}
7056
7057void MPSolutionResponse::ArenaDtor(void* object) {
7058 MPSolutionResponse* _this = reinterpret_cast< MPSolutionResponse* >(object);
7059 (void)_this;
7060}
7061void MPSolutionResponse::RegisterArenaDtor(::PROTOBUF_NAMESPACE_ID::Arena*) {
7062}
7063void MPSolutionResponse::SetCachedSize(int size) const {
7064 _cached_size_.Set(size);
7065}
7066
7068// @@protoc_insertion_point(message_clear_start:operations_research.MPSolutionResponse)
7069 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
7070 // Prevent compiler warnings about cached_has_bits being unused
7071 (void) cached_has_bits;
7072
7073 variable_value_.Clear();
7074 dual_value_.Clear();
7075 reduced_cost_.Clear();
7076 additional_solutions_.Clear();
7077 cached_has_bits = _has_bits_[0];
7078 if (cached_has_bits & 0x00000003u) {
7079 if (cached_has_bits & 0x00000001u) {
7080 status_str_.ClearNonDefaultToEmpty();
7081 }
7082 if (cached_has_bits & 0x00000002u) {
7083 GOOGLE_DCHECK(solve_info_ != nullptr);
7084 solve_info_->Clear();
7085 }
7086 }
7087 if (cached_has_bits & 0x0000001cu) {
7088 ::memset(&objective_value_, 0, static_cast<size_t>(
7089 reinterpret_cast<char*>(&best_objective_bound_) -
7090 reinterpret_cast<char*>(&objective_value_)) + sizeof(best_objective_bound_));
7091 status_ = 99;
7092 }
7093 _has_bits_.Clear();
7094 _internal_metadata_.Clear<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>();
7095}
7096
7097const char* MPSolutionResponse::_InternalParse(const char* ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext* ctx) {
7098#define CHK_(x) if (PROTOBUF_PREDICT_FALSE(!(x))) goto failure
7099 _Internal::HasBits has_bits{};
7100 while (!ctx->Done(&ptr)) {
7101 ::PROTOBUF_NAMESPACE_ID::uint32 tag;
7102 ptr = ::PROTOBUF_NAMESPACE_ID::internal::ReadTag(ptr, &tag);
7103 switch (tag >> 3) {
7104 // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
7105 case 1:
7106 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 8)) {
7107 ::PROTOBUF_NAMESPACE_ID::uint64 val = ::PROTOBUF_NAMESPACE_ID::internal::ReadVarint64(&ptr);
7108 CHK_(ptr);
7109 if (PROTOBUF_PREDICT_TRUE(::operations_research::MPSolverResponseStatus_IsValid(val))) {
7110 _internal_set_status(static_cast<::operations_research::MPSolverResponseStatus>(val));
7111 } else {
7112 ::PROTOBUF_NAMESPACE_ID::internal::WriteVarint(1, val, mutable_unknown_fields());
7113 }
7114 } else
7115 goto handle_unusual;
7116 continue;
7117 // optional double objective_value = 2;
7118 case 2:
7119 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 17)) {
7121 objective_value_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
7122 ptr += sizeof(double);
7123 } else
7124 goto handle_unusual;
7125 continue;
7126 // repeated double variable_value = 3 [packed = true];
7127 case 3:
7128 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 26)) {
7129 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_variable_value(), ptr, ctx);
7130 CHK_(ptr);
7131 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 25) {
7132 _internal_add_variable_value(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
7133 ptr += sizeof(double);
7134 } else
7135 goto handle_unusual;
7136 continue;
7137 // repeated double dual_value = 4 [packed = true];
7138 case 4:
7139 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 34)) {
7140 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_dual_value(), ptr, ctx);
7141 CHK_(ptr);
7142 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 33) {
7143 _internal_add_dual_value(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
7144 ptr += sizeof(double);
7145 } else
7146 goto handle_unusual;
7147 continue;
7148 // optional double best_objective_bound = 5;
7149 case 5:
7150 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 41)) {
7152 best_objective_bound_ = ::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr);
7153 ptr += sizeof(double);
7154 } else
7155 goto handle_unusual;
7156 continue;
7157 // repeated double reduced_cost = 6 [packed = true];
7158 case 6:
7159 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 50)) {
7160 ptr = ::PROTOBUF_NAMESPACE_ID::internal::PackedDoubleParser(_internal_mutable_reduced_cost(), ptr, ctx);
7161 CHK_(ptr);
7162 } else if (static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 49) {
7163 _internal_add_reduced_cost(::PROTOBUF_NAMESPACE_ID::internal::UnalignedLoad<double>(ptr));
7164 ptr += sizeof(double);
7165 } else
7166 goto handle_unusual;
7167 continue;
7168 // optional string status_str = 7;
7169 case 7:
7170 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 58)) {
7171 auto str = _internal_mutable_status_str();
7172 ptr = ::PROTOBUF_NAMESPACE_ID::internal::InlineGreedyStringParser(str, ptr, ctx);
7173 #ifndef NDEBUG
7174 ::PROTOBUF_NAMESPACE_ID::internal::VerifyUTF8(str, "operations_research.MPSolutionResponse.status_str");
7175 #endif // !NDEBUG
7176 CHK_(ptr);
7177 } else
7178 goto handle_unusual;
7179 continue;
7180 // repeated .operations_research.MPSolution additional_solutions = 8;
7181 case 8:
7182 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 66)) {
7183 ptr -= 1;
7184 do {
7185 ptr += 1;
7186 ptr = ctx->ParseMessage(_internal_add_additional_solutions(), ptr);
7187 CHK_(ptr);
7188 if (!ctx->DataAvailable(ptr)) break;
7189 } while (::PROTOBUF_NAMESPACE_ID::internal::ExpectTag<66>(ptr));
7190 } else
7191 goto handle_unusual;
7192 continue;
7193 // optional .operations_research.MPSolveInfo solve_info = 10;
7194 case 10:
7195 if (PROTOBUF_PREDICT_TRUE(static_cast<::PROTOBUF_NAMESPACE_ID::uint8>(tag) == 82)) {
7196 ptr = ctx->ParseMessage(_internal_mutable_solve_info(), ptr);
7197 CHK_(ptr);
7198 } else
7199 goto handle_unusual;
7200 continue;
7201 default:
7202 goto handle_unusual;
7203 } // switch
7204 handle_unusual:
7205 if ((tag == 0) || ((tag & 7) == 4)) {
7206 CHK_(ptr);
7207 ctx->SetLastTag(tag);
7208 goto message_done;
7209 }
7210 ptr = UnknownFieldParse(
7211 tag,
7212 _internal_metadata_.mutable_unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(),
7213 ptr, ctx);
7214 CHK_(ptr != nullptr);
7215 } // while
7216message_done:
7217 _has_bits_.Or(has_bits);
7218 return ptr;
7219failure:
7220 ptr = nullptr;
7221 goto message_done;
7222#undef CHK_
7223}
7224
7225::PROTOBUF_NAMESPACE_ID::uint8* MPSolutionResponse::_InternalSerialize(
7226 ::PROTOBUF_NAMESPACE_ID::uint8* target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream* stream) const {
7227 // @@protoc_insertion_point(serialize_to_array_start:operations_research.MPSolutionResponse)
7228 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
7229 (void) cached_has_bits;
7230
7231 cached_has_bits = _has_bits_[0];
7232 // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
7233 if (cached_has_bits & 0x00000010u) {
7234 target = stream->EnsureSpace(target);
7235 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteEnumToArray(
7236 1, this->_internal_status(), target);
7237 }
7238
7239 // optional double objective_value = 2;
7240 if (cached_has_bits & 0x00000004u) {
7241 target = stream->EnsureSpace(target);
7242 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(2, this->_internal_objective_value(), target);
7243 }
7244
7245 // repeated double variable_value = 3 [packed = true];
7246 if (this->_internal_variable_value_size() > 0) {
7247 target = stream->WriteFixedPacked(3, _internal_variable_value(), target);
7248 }
7249
7250 // repeated double dual_value = 4 [packed = true];
7251 if (this->_internal_dual_value_size() > 0) {
7252 target = stream->WriteFixedPacked(4, _internal_dual_value(), target);
7253 }
7254
7255 // optional double best_objective_bound = 5;
7256 if (cached_has_bits & 0x00000008u) {
7257 target = stream->EnsureSpace(target);
7258 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::WriteDoubleToArray(5, this->_internal_best_objective_bound(), target);
7259 }
7260
7261 // repeated double reduced_cost = 6 [packed = true];
7262 if (this->_internal_reduced_cost_size() > 0) {
7263 target = stream->WriteFixedPacked(6, _internal_reduced_cost(), target);
7264 }
7265
7266 // optional string status_str = 7;
7267 if (cached_has_bits & 0x00000001u) {
7268 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::VerifyUTF8StringNamedField(
7269 this->_internal_status_str().data(), static_cast<int>(this->_internal_status_str().length()),
7270 ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::SERIALIZE,
7271 "operations_research.MPSolutionResponse.status_str");
7272 target = stream->WriteStringMaybeAliased(
7273 7, this->_internal_status_str(), target);
7274 }
7275
7276 // repeated .operations_research.MPSolution additional_solutions = 8;
7277 for (unsigned int i = 0,
7278 n = static_cast<unsigned int>(this->_internal_additional_solutions_size()); i < n; i++) {
7279 target = stream->EnsureSpace(target);
7280 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
7281 InternalWriteMessage(8, this->_internal_additional_solutions(i), target, stream);
7282 }
7283
7284 // optional .operations_research.MPSolveInfo solve_info = 10;
7285 if (cached_has_bits & 0x00000002u) {
7286 target = stream->EnsureSpace(target);
7287 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::
7288 InternalWriteMessage(
7289 10, _Internal::solve_info(this), target, stream);
7290 }
7291
7292 if (PROTOBUF_PREDICT_FALSE(_internal_metadata_.have_unknown_fields())) {
7293 target = ::PROTOBUF_NAMESPACE_ID::internal::WireFormat::InternalSerializeUnknownFieldsToArray(
7294 _internal_metadata_.unknown_fields<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(::PROTOBUF_NAMESPACE_ID::UnknownFieldSet::default_instance), target, stream);
7295 }
7296 // @@protoc_insertion_point(serialize_to_array_end:operations_research.MPSolutionResponse)
7297 return target;
7298}
7299
7301// @@protoc_insertion_point(message_byte_size_start:operations_research.MPSolutionResponse)
7302 size_t total_size = 0;
7303
7304 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
7305 // Prevent compiler warnings about cached_has_bits being unused
7306 (void) cached_has_bits;
7307
7308 // repeated double variable_value = 3 [packed = true];
7309 {
7310 unsigned int count = static_cast<unsigned int>(this->_internal_variable_value_size());
7311 size_t data_size = 8UL * count;
7312 if (data_size > 0) {
7313 total_size += 1 +
7314 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
7315 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
7316 }
7317 total_size += data_size;
7318 }
7319
7320 // repeated double dual_value = 4 [packed = true];
7321 {
7322 unsigned int count = static_cast<unsigned int>(this->_internal_dual_value_size());
7323 size_t data_size = 8UL * count;
7324 if (data_size > 0) {
7325 total_size += 1 +
7326 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
7327 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
7328 }
7329 total_size += data_size;
7330 }
7331
7332 // repeated double reduced_cost = 6 [packed = true];
7333 {
7334 unsigned int count = static_cast<unsigned int>(this->_internal_reduced_cost_size());
7335 size_t data_size = 8UL * count;
7336 if (data_size > 0) {
7337 total_size += 1 +
7338 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::Int32Size(
7339 static_cast<::PROTOBUF_NAMESPACE_ID::int32>(data_size));
7340 }
7341 total_size += data_size;
7342 }
7343
7344 // repeated .operations_research.MPSolution additional_solutions = 8;
7345 total_size += 1UL * this->_internal_additional_solutions_size();
7346 for (const auto& msg : this->additional_solutions_) {
7347 total_size +=
7348 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(msg);
7349 }
7350
7351 cached_has_bits = _has_bits_[0];
7352 if (cached_has_bits & 0x0000001fu) {
7353 // optional string status_str = 7;
7354 if (cached_has_bits & 0x00000001u) {
7355 total_size += 1 +
7356 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::StringSize(
7357 this->_internal_status_str());
7358 }
7359
7360 // optional .operations_research.MPSolveInfo solve_info = 10;
7361 if (cached_has_bits & 0x00000002u) {
7362 total_size += 1 +
7363 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::MessageSize(
7364 *solve_info_);
7365 }
7366
7367 // optional double objective_value = 2;
7368 if (cached_has_bits & 0x00000004u) {
7369 total_size += 1 + 8;
7370 }
7371
7372 // optional double best_objective_bound = 5;
7373 if (cached_has_bits & 0x00000008u) {
7374 total_size += 1 + 8;
7375 }
7376
7377 // optional .operations_research.MPSolverResponseStatus status = 1 [default = MPSOLVER_UNKNOWN_STATUS];
7378 if (cached_has_bits & 0x00000010u) {
7379 total_size += 1 +
7380 ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::EnumSize(this->_internal_status());
7381 }
7382
7383 }
7384 return MaybeComputeUnknownFieldsSize(total_size, &_cached_size_);
7385}
7386
7387const ::PROTOBUF_NAMESPACE_ID::Message::ClassData MPSolutionResponse::_class_data_ = {
7388 ::PROTOBUF_NAMESPACE_ID::Message::CopyWithSizeCheck,
7389 MPSolutionResponse::MergeImpl
7390};
7391const ::PROTOBUF_NAMESPACE_ID::Message::ClassData*MPSolutionResponse::GetClassData() const { return &_class_data_; }
7392
7393void MPSolutionResponse::MergeImpl(::PROTOBUF_NAMESPACE_ID::Message* to,
7394 const ::PROTOBUF_NAMESPACE_ID::Message& from) {
7395 static_cast<MPSolutionResponse *>(to)->MergeFrom(
7396 static_cast<const MPSolutionResponse &>(from));
7397}
7398
7399
7401// @@protoc_insertion_point(class_specific_merge_from_start:operations_research.MPSolutionResponse)
7402 GOOGLE_DCHECK_NE(&from, this);
7403 ::PROTOBUF_NAMESPACE_ID::uint32 cached_has_bits = 0;
7404 (void) cached_has_bits;
7405
7406 variable_value_.MergeFrom(from.variable_value_);
7407 dual_value_.MergeFrom(from.dual_value_);
7408 reduced_cost_.MergeFrom(from.reduced_cost_);
7409 additional_solutions_.MergeFrom(from.additional_solutions_);
7410 cached_has_bits = from._has_bits_[0];
7411 if (cached_has_bits & 0x0000001fu) {
7412 if (cached_has_bits & 0x00000001u) {
7413 _internal_set_status_str(from._internal_status_str());
7414 }
7415 if (cached_has_bits & 0x00000002u) {
7416 _internal_mutable_solve_info()->::operations_research::MPSolveInfo::MergeFrom(from._internal_solve_info());
7417 }
7418 if (cached_has_bits & 0x00000004u) {
7419 objective_value_ = from.objective_value_;
7420 }
7421 if (cached_has_bits & 0x00000008u) {
7422 best_objective_bound_ = from.best_objective_bound_;
7423 }
7424 if (cached_has_bits & 0x00000010u) {
7425 status_ = from.status_;
7426 }
7427 _has_bits_[0] |= cached_has_bits;
7428 }
7429 _internal_metadata_.MergeFrom<::PROTOBUF_NAMESPACE_ID::UnknownFieldSet>(from._internal_metadata_);
7430}
7431
7433// @@protoc_insertion_point(class_specific_copy_from_start:operations_research.MPSolutionResponse)
7434 if (&from == this) return;
7435 Clear();
7436 MergeFrom(from);
7437}
7438
7440 return true;
7441}
7442
7443void MPSolutionResponse::InternalSwap(MPSolutionResponse* other) {
7444 using std::swap;
7445 auto* lhs_arena = GetArenaForAllocation();
7446 auto* rhs_arena = other->GetArenaForAllocation();
7447 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
7448 swap(_has_bits_[0], other->_has_bits_[0]);
7449 variable_value_.InternalSwap(&other->variable_value_);
7450 dual_value_.InternalSwap(&other->dual_value_);
7451 reduced_cost_.InternalSwap(&other->reduced_cost_);
7452 additional_solutions_.InternalSwap(&other->additional_solutions_);
7453 ::PROTOBUF_NAMESPACE_ID::internal::ArenaStringPtr::InternalSwap(
7454 &::PROTOBUF_NAMESPACE_ID::internal::GetEmptyStringAlreadyInited(),
7455 &status_str_, lhs_arena,
7456 &other->status_str_, rhs_arena
7457 );
7458 ::PROTOBUF_NAMESPACE_ID::internal::memswap<
7459 PROTOBUF_FIELD_OFFSET(MPSolutionResponse, best_objective_bound_)
7460 + sizeof(MPSolutionResponse::best_objective_bound_)
7461 - PROTOBUF_FIELD_OFFSET(MPSolutionResponse, solve_info_)>(
7462 reinterpret_cast<char*>(&solve_info_),
7463 reinterpret_cast<char*>(&other->solve_info_));
7464 swap(status_, other->status_);
7465}
7466
7467::PROTOBUF_NAMESPACE_ID::Metadata MPSolutionResponse::GetMetadata() const {
7468 return ::PROTOBUF_NAMESPACE_ID::internal::AssignDescriptors(
7471}
7472
7473// @@protoc_insertion_point(namespace_scope)
7474} // namespace operations_research
7475PROTOBUF_NAMESPACE_OPEN
7476template<> PROTOBUF_NOINLINE ::operations_research::MPVariableProto* Arena::CreateMaybeMessage< ::operations_research::MPVariableProto >(Arena* arena) {
7477 return Arena::CreateMessageInternal< ::operations_research::MPVariableProto >(arena);
7478}
7479template<> PROTOBUF_NOINLINE ::operations_research::MPConstraintProto* Arena::CreateMaybeMessage< ::operations_research::MPConstraintProto >(Arena* arena) {
7480 return Arena::CreateMessageInternal< ::operations_research::MPConstraintProto >(arena);
7481}
7482template<> PROTOBUF_NOINLINE ::operations_research::MPGeneralConstraintProto* Arena::CreateMaybeMessage< ::operations_research::MPGeneralConstraintProto >(Arena* arena) {
7483 return Arena::CreateMessageInternal< ::operations_research::MPGeneralConstraintProto >(arena);
7484}
7485template<> PROTOBUF_NOINLINE ::operations_research::MPIndicatorConstraint* Arena::CreateMaybeMessage< ::operations_research::MPIndicatorConstraint >(Arena* arena) {
7486 return Arena::CreateMessageInternal< ::operations_research::MPIndicatorConstraint >(arena);
7487}
7488template<> PROTOBUF_NOINLINE ::operations_research::MPSosConstraint* Arena::CreateMaybeMessage< ::operations_research::MPSosConstraint >(Arena* arena) {
7489 return Arena::CreateMessageInternal< ::operations_research::MPSosConstraint >(arena);
7490}
7491template<> PROTOBUF_NOINLINE ::operations_research::MPQuadraticConstraint* Arena::CreateMaybeMessage< ::operations_research::MPQuadraticConstraint >(Arena* arena) {
7492 return Arena::CreateMessageInternal< ::operations_research::MPQuadraticConstraint >(arena);
7493}
7494template<> PROTOBUF_NOINLINE ::operations_research::MPAbsConstraint* Arena::CreateMaybeMessage< ::operations_research::MPAbsConstraint >(Arena* arena) {
7495 return Arena::CreateMessageInternal< ::operations_research::MPAbsConstraint >(arena);
7496}
7497template<> PROTOBUF_NOINLINE ::operations_research::MPArrayConstraint* Arena::CreateMaybeMessage< ::operations_research::MPArrayConstraint >(Arena* arena) {
7498 return Arena::CreateMessageInternal< ::operations_research::MPArrayConstraint >(arena);
7499}
7500template<> PROTOBUF_NOINLINE ::operations_research::MPArrayWithConstantConstraint* Arena::CreateMaybeMessage< ::operations_research::MPArrayWithConstantConstraint >(Arena* arena) {
7501 return Arena::CreateMessageInternal< ::operations_research::MPArrayWithConstantConstraint >(arena);
7502}
7503template<> PROTOBUF_NOINLINE ::operations_research::MPQuadraticObjective* Arena::CreateMaybeMessage< ::operations_research::MPQuadraticObjective >(Arena* arena) {
7504 return Arena::CreateMessageInternal< ::operations_research::MPQuadraticObjective >(arena);
7505}
7506template<> PROTOBUF_NOINLINE ::operations_research::PartialVariableAssignment* Arena::CreateMaybeMessage< ::operations_research::PartialVariableAssignment >(Arena* arena) {
7507 return Arena::CreateMessageInternal< ::operations_research::PartialVariableAssignment >(arena);
7508}
7509template<> PROTOBUF_NOINLINE ::operations_research::MPModelProto* Arena::CreateMaybeMessage< ::operations_research::MPModelProto >(Arena* arena) {
7510 return Arena::CreateMessageInternal< ::operations_research::MPModelProto >(arena);
7511}
7512template<> PROTOBUF_NOINLINE ::operations_research::OptionalDouble* Arena::CreateMaybeMessage< ::operations_research::OptionalDouble >(Arena* arena) {
7513 return Arena::CreateMessageInternal< ::operations_research::OptionalDouble >(arena);
7514}
7515template<> PROTOBUF_NOINLINE ::operations_research::MPSolverCommonParameters* Arena::CreateMaybeMessage< ::operations_research::MPSolverCommonParameters >(Arena* arena) {
7516 return Arena::CreateMessageInternal< ::operations_research::MPSolverCommonParameters >(arena);
7517}
7518template<> PROTOBUF_NOINLINE ::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse* Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse >(Arena* arena) {
7519 return Arena::CreateMessageInternal< ::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse >(arena);
7520}
7521template<> PROTOBUF_NOINLINE ::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse* Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse >(Arena* arena) {
7522 return Arena::CreateMessageInternal< ::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse >(arena);
7523}
7524template<> PROTOBUF_NOINLINE ::operations_research::MPModelDeltaProto* Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto >(Arena* arena) {
7525 return Arena::CreateMessageInternal< ::operations_research::MPModelDeltaProto >(arena);
7526}
7527template<> PROTOBUF_NOINLINE ::operations_research::MPModelRequest* Arena::CreateMaybeMessage< ::operations_research::MPModelRequest >(Arena* arena) {
7528 return Arena::CreateMessageInternal< ::operations_research::MPModelRequest >(arena);
7529}
7530template<> PROTOBUF_NOINLINE ::operations_research::MPSolution* Arena::CreateMaybeMessage< ::operations_research::MPSolution >(Arena* arena) {
7531 return Arena::CreateMessageInternal< ::operations_research::MPSolution >(arena);
7532}
7533template<> PROTOBUF_NOINLINE ::operations_research::MPSolveInfo* Arena::CreateMaybeMessage< ::operations_research::MPSolveInfo >(Arena* arena) {
7534 return Arena::CreateMessageInternal< ::operations_research::MPSolveInfo >(arena);
7535}
7536template<> PROTOBUF_NOINLINE ::operations_research::MPSolutionResponse* Arena::CreateMaybeMessage< ::operations_research::MPSolutionResponse >(Arena* arena) {
7537 return Arena::CreateMessageInternal< ::operations_research::MPSolutionResponse >(arena);
7538}
7539PROTOBUF_NAMESPACE_CLOSE
7540
7541// @@protoc_insertion_point(global_scope)
7542#include <google/protobuf/port_undef.inc>
static void set_has_resultant_var_index(HasBits *has_bits)
decltype(std::declval< MPAbsConstraint >()._has_bits_) HasBits
static void set_has_var_index(HasBits *has_bits)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void MergeFrom(const MPAbsConstraint &from)
friend void swap(MPAbsConstraint &a, MPAbsConstraint &b)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void CopyFrom(const MPAbsConstraint &from)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_resultant_var_index(HasBits *has_bits)
decltype(std::declval< MPArrayConstraint >()._has_bits_) HasBits
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const MPArrayConstraint &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
friend void swap(MPArrayConstraint &a, MPArrayConstraint &b)
void MergeFrom(const MPArrayConstraint &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPArrayWithConstantConstraint >()._has_bits_) HasBits
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void CopyFrom(const MPArrayWithConstantConstraint &from)
void MergeFrom(const MPArrayWithConstantConstraint &from)
friend void swap(MPArrayWithConstantConstraint &a, MPArrayWithConstantConstraint &b)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPConstraintProto >()._has_bits_) HasBits
void MergeFrom(const MPConstraintProto &from)
void CopyFrom(const MPConstraintProto &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
friend void swap(MPConstraintProto &a, MPConstraintProto &b)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::operations_research::MPArrayWithConstantConstraint & max_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPQuadraticConstraint & quadratic_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPArrayConstraint & and_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPAbsConstraint & abs_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPIndicatorConstraint & indicator_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPArrayWithConstantConstraint & min_constraint(const MPGeneralConstraintProto *msg)
static const ::operations_research::MPArrayConstraint & or_constraint(const MPGeneralConstraintProto *msg)
decltype(std::declval< MPGeneralConstraintProto >()._has_bits_) HasBits
static const ::operations_research::MPSosConstraint & sos_constraint(const MPGeneralConstraintProto *msg)
void set_allocated_min_constraint(::operations_research::MPArrayWithConstantConstraint *min_constraint)
void CopyFrom(const MPGeneralConstraintProto &from)
const ::operations_research::MPIndicatorConstraint & indicator_constraint() const
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void set_allocated_quadratic_constraint(::operations_research::MPQuadraticConstraint *quadratic_constraint)
void MergeFrom(const MPGeneralConstraintProto &from)
const ::operations_research::MPQuadraticConstraint & quadratic_constraint() const
const ::operations_research::MPAbsConstraint & abs_constraint() const
void set_allocated_indicator_constraint(::operations_research::MPIndicatorConstraint *indicator_constraint)
const ::operations_research::MPArrayWithConstantConstraint & max_constraint() const
friend void swap(MPGeneralConstraintProto &a, MPGeneralConstraintProto &b)
void set_allocated_abs_constraint(::operations_research::MPAbsConstraint *abs_constraint)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::operations_research::MPSosConstraint & sos_constraint() const
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void set_allocated_and_constraint(::operations_research::MPArrayConstraint *and_constraint)
const ::operations_research::MPArrayConstraint & and_constraint() const
const ::operations_research::MPArrayWithConstantConstraint & min_constraint() const
GeneralConstraintCase general_constraint_case() const
void set_allocated_or_constraint(::operations_research::MPArrayConstraint *or_constraint)
const ::operations_research::MPArrayConstraint & or_constraint() const
void set_allocated_max_constraint(::operations_research::MPArrayWithConstantConstraint *max_constraint)
void set_allocated_sos_constraint(::operations_research::MPSosConstraint *sos_constraint)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::operations_research::MPConstraintProto & constraint(const MPIndicatorConstraint *msg)
decltype(std::declval< MPIndicatorConstraint >()._has_bits_) HasBits
friend void swap(MPIndicatorConstraint &a, MPIndicatorConstraint &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const MPIndicatorConstraint &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
void MergeFrom(const MPIndicatorConstraint &from)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MPIndicatorConstraint * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_baseline_model_file_path(HasBits *has_bits)
decltype(std::declval< MPModelDeltaProto >()._has_bits_) HasBits
void MergeFrom(const MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse &other)
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse()
::PROTOBUF_NAMESPACE_ID::internal::MapEntry< MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse, ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPConstraintProto, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE > SuperType
void MergeFrom(const MPModelDeltaProto_VariableOverridesEntry_DoNotUse &other)
::PROTOBUF_NAMESPACE_ID::internal::MapEntry< MPModelDeltaProto_VariableOverridesEntry_DoNotUse, ::PROTOBUF_NAMESPACE_ID::int32, ::operations_research::MPVariableProto, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_INT32, ::PROTOBUF_NAMESPACE_ID::internal::WireFormatLite::TYPE_MESSAGE > SuperType
MPModelDeltaProto_VariableOverridesEntry_DoNotUse()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(MPModelDeltaProto &a, MPModelDeltaProto &b)
void MergeFrom(const MPModelDeltaProto &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void CopyFrom(const MPModelDeltaProto &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static const ::operations_research::PartialVariableAssignment & solution_hint(const MPModelProto *msg)
static void set_has_solution_hint(HasBits *has_bits)
static void set_has_maximize(HasBits *has_bits)
static const ::operations_research::MPQuadraticObjective & quadratic_objective(const MPModelProto *msg)
static void set_has_quadratic_objective(HasBits *has_bits)
decltype(std::declval< MPModelProto >()._has_bits_) HasBits
static void set_has_objective_offset(HasBits *has_bits)
static void set_has_name(HasBits *has_bits)
friend void swap(MPModelProto &a, MPModelProto &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
void MergeFrom(const MPModelProto &from)
void CopyFrom(const MPModelProto &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static const MPModelProto * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPModelRequest >()._has_bits_) HasBits
static const ::operations_research::MPModelDeltaProto & model_delta(const MPModelRequest *msg)
static void set_has_enable_internal_solver_output(HasBits *has_bits)
static void set_has_solver_specific_parameters(HasBits *has_bits)
static const ::operations_research::MPModelProto & model(const MPModelRequest *msg)
static void set_has_ignore_solver_specific_parameters_failure(HasBits *has_bits)
static void set_has_populate_additional_solutions_up_to(HasBits *has_bits)
static void set_has_solver_time_limit_seconds(HasBits *has_bits)
static void set_has_solver_type(HasBits *has_bits)
static void set_has_model_delta(HasBits *has_bits)
static constexpr SolverType CPLEX_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType GLOP_LINEAR_PROGRAMMING
static constexpr SolverType KNAPSACK_MIXED_INTEGER_PROGRAMMING
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const MPModelRequest * internal_default_instance()
static constexpr SolverType CLP_LINEAR_PROGRAMMING
static constexpr SolverType BOP_INTEGER_PROGRAMMING
static constexpr SolverType CPLEX_LINEAR_PROGRAMMING
static constexpr SolverType SCIP_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType GUROBI_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType SolverType_MIN
static constexpr SolverType XPRESS_MIXED_INTEGER_PROGRAMMING
void MergeFrom(const MPModelRequest &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static constexpr SolverType SAT_INTEGER_PROGRAMMING
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
static constexpr SolverType GUROBI_LINEAR_PROGRAMMING
static constexpr SolverType GLPK_MIXED_INTEGER_PROGRAMMING
static constexpr SolverType XPRESS_LINEAR_PROGRAMMING
static constexpr SolverType GLPK_LINEAR_PROGRAMMING
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
friend void swap(MPModelRequest &a, MPModelRequest &b)
void CopyFrom(const MPModelRequest &from)
static constexpr SolverType SolverType_MAX
static constexpr SolverType CBC_MIXED_INTEGER_PROGRAMMING
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPQuadraticConstraint >()._has_bits_) HasBits
friend void swap(MPQuadraticConstraint &a, MPQuadraticConstraint &b)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void MergeFrom(const MPQuadraticConstraint &from)
void CopyFrom(const MPQuadraticConstraint &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
void CopyFrom(const MPQuadraticObjective &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void MergeFrom(const MPQuadraticObjective &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPSolution >()._has_bits_) HasBits
static void set_has_objective_value(HasBits *has_bits)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
void MergeFrom(const MPSolution &from)
void CopyFrom(const MPSolution &from)
friend void swap(MPSolution &a, MPSolution &b)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_best_objective_bound(HasBits *has_bits)
decltype(std::declval< MPSolutionResponse >()._has_bits_) HasBits
static const ::operations_research::MPSolveInfo & solve_info(const MPSolutionResponse *msg)
static void set_has_objective_value(HasBits *has_bits)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const MPSolutionResponse &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
static const MPSolutionResponse * internal_default_instance()
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
friend void swap(MPSolutionResponse &a, MPSolutionResponse &b)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void MergeFrom(const MPSolutionResponse &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_solve_wall_time_seconds(HasBits *has_bits)
static void set_has_solve_user_time_seconds(HasBits *has_bits)
decltype(std::declval< MPSolveInfo >()._has_bits_) HasBits
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
static const ClassData _class_data_
friend void swap(MPSolveInfo &a, MPSolveInfo &b)
void CopyFrom(const MPSolveInfo &from)
void MergeFrom(const MPSolveInfo &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPSolverCommonParameters >()._has_bits_) HasBits
static const ::operations_research::OptionalDouble & dual_tolerance(const MPSolverCommonParameters *msg)
static const ::operations_research::OptionalDouble & relative_mip_gap(const MPSolverCommonParameters *msg)
static const ::operations_research::OptionalDouble & primal_tolerance(const MPSolverCommonParameters *msg)
void MergeFrom(const MPSolverCommonParameters &from)
static constexpr LPAlgorithmValues LP_ALGO_UNSPECIFIED
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(MPSolverCommonParameters &a, MPSolverCommonParameters &b)
static constexpr LPAlgorithmValues LP_ALGO_BARRIER
static constexpr LPAlgorithmValues LP_ALGO_DUAL
static constexpr LPAlgorithmValues LP_ALGO_PRIMAL
static constexpr LPAlgorithmValues LPAlgorithmValues_MAX
void CopyFrom(const MPSolverCommonParameters &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
static const MPSolverCommonParameters * internal_default_instance()
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
static constexpr LPAlgorithmValues LPAlgorithmValues_MIN
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< MPSosConstraint >()._has_bits_) HasBits
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(MPSosConstraint &a, MPSosConstraint &b)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const MPSosConstraint &from)
inline ::PROTOBUF_NAMESPACE_ID::UnknownFieldSet * mutable_unknown_fields()
void CopyFrom(const MPSosConstraint &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
static void set_has_is_integer(HasBits *has_bits)
static void set_has_objective_coefficient(HasBits *has_bits)
static void set_has_branching_priority(HasBits *has_bits)
decltype(std::declval< MPVariableProto >()._has_bits_) HasBits
static void set_has_upper_bound(HasBits *has_bits)
static void set_has_lower_bound(HasBits *has_bits)
void CopyFrom(const MPVariableProto &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void MergeFrom(const MPVariableProto &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
friend void swap(MPVariableProto &a, MPVariableProto &b)
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
decltype(std::declval< OptionalDouble >()._has_bits_) HasBits
void MergeFrom(const OptionalDouble &from)
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
friend void swap(OptionalDouble &a, OptionalDouble &b)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void CopyFrom(const OptionalDouble &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
const char * _InternalParse(const char *ptr, ::PROTOBUF_NAMESPACE_ID::internal::ParseContext *ctx) final
void CopyFrom(const PartialVariableAssignment &from)
PROTOBUF_ATTRIBUTE_REINITIALIZES void Clear() final
const ::PROTOBUF_NAMESPACE_ID::Message::ClassData * GetClassData() const final
::PROTOBUF_NAMESPACE_ID::Metadata GetMetadata() const final
void MergeFrom(const PartialVariableAssignment &from)
::PROTOBUF_NAMESPACE_ID::uint8 * _InternalSerialize(::PROTOBUF_NAMESPACE_ID::uint8 *target, ::PROTOBUF_NAMESPACE_ID::io::EpsCopyOutputStream *stream) const final
int64_t value
#define CHK_(x)
PROTOBUF_NOINLINE::operations_research::MPSolveInfo * Arena::CreateMaybeMessage< ::operations_research::MPSolveInfo >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::OptionalDouble * Arena::CreateMaybeMessage< ::operations_research::OptionalDouble >(Arena *arena)
const ::PROTOBUF_NAMESPACE_ID::uint32 TableStruct_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto::offsets[] PROTOBUF_SECTION_VARIABLE(protodesc_cold)
PROTOBUF_NOINLINE::operations_research::MPGeneralConstraintProto * Arena::CreateMaybeMessage< ::operations_research::MPGeneralConstraintProto >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPModelDeltaProto * Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto >(Arena *arena)
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
PROTOBUF_NOINLINE::operations_research::MPSolution * Arena::CreateMaybeMessage< ::operations_research::MPSolution >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPAbsConstraint * Arena::CreateMaybeMessage< ::operations_research::MPAbsConstraint >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse * Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::PartialVariableAssignment * Arena::CreateMaybeMessage< ::operations_research::PartialVariableAssignment >(Arena *arena)
static const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * file_level_enum_descriptors_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto[4]
static constexpr::PROTOBUF_NAMESPACE_ID::ServiceDescriptor const ** file_level_service_descriptors_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto
PROTOBUF_NOINLINE::operations_research::MPSolverCommonParameters * Arena::CreateMaybeMessage< ::operations_research::MPSolverCommonParameters >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPArrayConstraint * Arena::CreateMaybeMessage< ::operations_research::MPArrayConstraint >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::internal::once_flag descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_once
PROTOBUF_NOINLINE::operations_research::MPModelProto * Arena::CreateMaybeMessage< ::operations_research::MPModelProto >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse * Arena::CreateMaybeMessage< ::operations_research::MPModelDeltaProto_VariableOverridesEntry_DoNotUse >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPSolutionResponse * Arena::CreateMaybeMessage< ::operations_research::MPSolutionResponse >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPSosConstraint * Arena::CreateMaybeMessage< ::operations_research::MPSosConstraint >(Arena *arena)
static const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable *const descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_deps[1]
::PROTOBUF_NAMESPACE_ID::Message const *const file_default_instances[]
PROTOBUF_NOINLINE::operations_research::MPIndicatorConstraint * Arena::CreateMaybeMessage< ::operations_research::MPIndicatorConstraint >(Arena *arena)
::PROTOBUF_NAMESPACE_ID::Metadata file_level_metadata_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto[21]
PROTOBUF_NOINLINE::operations_research::MPModelRequest * Arena::CreateMaybeMessage< ::operations_research::MPModelRequest >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPConstraintProto * Arena::CreateMaybeMessage< ::operations_research::MPConstraintProto >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPQuadraticObjective * Arena::CreateMaybeMessage< ::operations_research::MPQuadraticObjective >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPArrayWithConstantConstraint * Arena::CreateMaybeMessage< ::operations_research::MPArrayWithConstantConstraint >(Arena *arena)
PROTOBUF_ATTRIBUTE_WEAKconst ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable * descriptor_table_ortools_2flinear_5fsolver_2flinear_5fsolver_2eproto_getter()
PROTOBUF_NAMESPACE_OPEN PROTOBUF_NOINLINE::operations_research::MPVariableProto * Arena::CreateMaybeMessage< ::operations_research::MPVariableProto >(Arena *arena)
PROTOBUF_NOINLINE::operations_research::MPQuadraticConstraint * Arena::CreateMaybeMessage< ::operations_research::MPQuadraticConstraint >(Arena *arena)
void swap(IdMap< K, V > &a, IdMap< K, V > &b)
Definition: id_map.h:263
Collection of objects used to extend the Constraint Solver library.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_VariableOverridesEntry_DoNotUse_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal _MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolveInfoDefaultTypeInternal _MPSolveInfo_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelRequestDefaultTypeInternal _MPModelRequest_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPModelRequest_SolverType_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPVariableProtoDefaultTypeInternal _MPVariableProto_default_instance_
bool OptionalBoolean_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolutionResponseDefaultTypeInternal _MPSolutionResponse_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPArrayWithConstantConstraintDefaultTypeInternal _MPArrayWithConstantConstraint_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPGeneralConstraintProtoDefaultTypeInternal _MPGeneralConstraintProto_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPIndicatorConstraintDefaultTypeInternal _MPIndicatorConstraint_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPQuadraticConstraintDefaultTypeInternal _MPQuadraticConstraint_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelProtoDefaultTypeInternal _MPModelProto_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverCommonParameters_LPAlgorithmValues_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPConstraintProtoDefaultTypeInternal _MPConstraintProto_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSosConstraint_Type_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPQuadraticObjectiveDefaultTypeInternal _MPQuadraticObjective_default_instance_
bool MPSolverCommonParameters_LPAlgorithmValues_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPModelDeltaProtoDefaultTypeInternal _MPModelDeltaProto_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPArrayConstraintDefaultTypeInternal _MPArrayConstraint_default_instance_
bool MPSolverResponseStatus_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolutionDefaultTypeInternal _MPSolution_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPAbsConstraintDefaultTypeInternal _MPAbsConstraint_default_instance_
const ::PROTOBUF_NAMESPACE_ID::EnumDescriptor * MPSolverResponseStatus_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OptionalDoubleDefaultTypeInternal _OptionalDouble_default_instance_
bool MPSosConstraint_Type_IsValid(int value)
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSosConstraintDefaultTypeInternal _MPSosConstraint_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT MPSolverCommonParametersDefaultTypeInternal _MPSolverCommonParameters_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT PartialVariableAssignmentDefaultTypeInternal _PartialVariableAssignment_default_instance_
bool MPModelRequest_SolverType_IsValid(int value)
STL namespace.
const ::PROTOBUF_NAMESPACE_ID::internal::DescriptorTable descriptor_table_ortools_2futil_2foptional_5fboolean_2eproto
static constexpr::PROTOBUF_NAMESPACE_ID::internal::MigrationSchema * schemas
const bool maximize_
Definition: search.cc:2508
static const ::PROTOBUF_NAMESPACE_ID::uint32 offsets[]
MPModelDeltaProto_ConstraintOverridesEntry_DoNotUse _instance
constexpr MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal()
~MPModelDeltaProto_ConstraintOverridesEntry_DoNotUseDefaultTypeInternal()
MPModelDeltaProto_VariableOverridesEntry_DoNotUse _instance
constexpr MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal()
~MPModelDeltaProto_VariableOverridesEntry_DoNotUseDefaultTypeInternal()