10#include "google/protobuf/io/coded_stream.h"
11#include "google/protobuf/generated_message_tctable_impl.h"
12#include "google/protobuf/extension_set.h"
13#include "google/protobuf/generated_message_util.h"
14#include "google/protobuf/wire_format_lite.h"
15#include "google/protobuf/descriptor.h"
16#include "google/protobuf/generated_message_reflection.h"
17#include "google/protobuf/reflection_ops.h"
18#include "google/protobuf/wire_format.h"
22#include "google/protobuf/port_def.inc"
23PROTOBUF_PRAGMA_INIT_SEG
26namespace _fl = ::google::protobuf::internal::field_layout;
29inline constexpr Teacher::Impl_::Impl_(
30 ::_pbi::ConstantInitialized) noexcept
32 restricted_time_slots_{},
33 _restricted_time_slots_cached_byte_size_{0},
35 &::google::protobuf::internal::fixed_address_empty_string,
36 ::_pbi::ConstantInitialized()) {}
40#if defined(PROTOBUF_CUSTOM_VTABLE)
43 : ::google::protobuf::Message(),
45 _impl_(::_pbi::ConstantInitialized()) {
55PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
58inline constexpr StudentAssignment::Impl_::Impl_(
59 ::_pbi::ConstantInitialized) noexcept
62 _course_indices_cached_byte_size_{0},
64 _section_indices_cached_byte_size_{0},
69#if defined(PROTOBUF_CUSTOM_VTABLE)
72 : ::google::protobuf::Message(),
74 _impl_(::_pbi::ConstantInitialized()) {
84PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
87inline constexpr Student::Impl_::Impl_(
88 ::_pbi::ConstantInitialized) noexcept
91 _course_indices_cached_byte_size_{0},
93 &::google::protobuf::internal::fixed_address_empty_string,
94 ::_pbi::ConstantInitialized()) {}
98#if defined(PROTOBUF_CUSTOM_VTABLE)
101 : ::google::protobuf::Message(),
103 _impl_(::_pbi::ConstantInitialized()) {
113PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
116inline constexpr Room::Impl_::Impl_(
117 ::_pbi::ConstantInitialized) noexcept
120 &::google::protobuf::internal::fixed_address_empty_string,
121 ::_pbi::ConstantInitialized()),
126#if defined(PROTOBUF_CUSTOM_VTABLE)
129 : ::google::protobuf::Message(),
131 _impl_(::_pbi::ConstantInitialized()) {
141PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
144inline constexpr Course::Impl_::Impl_(
145 ::_pbi::ConstantInitialized) noexcept
148 _teacher_indices_cached_byte_size_{0},
149 teacher_section_counts_{},
150 _teacher_section_counts_cached_byte_size_{0},
152 _room_indices_cached_byte_size_{0},
154 &::google::protobuf::internal::fixed_address_empty_string,
155 ::_pbi::ConstantInitialized()),
159 consecutive_slots_count_{0} {}
163#if defined(PROTOBUF_CUSTOM_VTABLE)
166 : ::google::protobuf::Message(),
168 _impl_(::_pbi::ConstantInitialized()) {
178PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
181inline constexpr ClassAssignment::Impl_::Impl_(
182 ::_pbi::ConstantInitialized) noexcept
185 _time_slots_cached_byte_size_{0},
187 _room_indices_cached_byte_size_{0},
189 section_number_{0} {}
193#if defined(PROTOBUF_CUSTOM_VTABLE)
196 : ::google::protobuf::Message(),
198 _impl_(::_pbi::ConstantInitialized()) {
208PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
211inline constexpr CourseSchedulingResult::Impl_::Impl_(
212 ::_pbi::ConstantInitialized) noexcept
214 class_assignments_{},
215 student_assignments_{},
217 &::google::protobuf::internal::fixed_address_empty_string,
218 ::_pbi::ConstantInitialized()),
223#if defined(PROTOBUF_CUSTOM_VTABLE)
226 : ::google::protobuf::Message(),
228 _impl_(::_pbi::ConstantInitialized()) {
238PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
241inline constexpr CourseSchedulingModel::Impl_::Impl_(
242 ::_pbi::ConstantInitialized) noexcept
249 &::google::protobuf::internal::fixed_address_empty_string,
250 ::_pbi::ConstantInitialized()),
252 daily_time_slot_count_{0} {}
256#if defined(PROTOBUF_CUSTOM_VTABLE)
259 : ::google::protobuf::Message(),
261 _impl_(::_pbi::ConstantInitialized()) {
271PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL
274static const ::_pb::EnumDescriptor* PROTOBUF_NONNULL
276static constexpr const ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE
371static const ::_pbi::MigrationSchema
394 "\n*ortools/scheduling/course_scheduling.p"
395 "roto\022\023operations_research\"\230\002\n\025CourseSche"
396 "dulingModel\022\024\n\014display_name\030\001 \001(\t\022\022\n\nday"
397 "s_count\030\002 \001(\005\022\035\n\025daily_time_slot_count\030\003"
398 " \001(\005\022,\n\007courses\030\004 \003(\0132\033.operations_resea"
399 "rch.Course\022.\n\010teachers\030\005 \003(\0132\034.operation"
400 "s_research.Teacher\022.\n\010students\030\006 \003(\0132\034.o"
401 "perations_research.Student\022(\n\005rooms\030\007 \003("
402 "\0132\031.operations_research.Room\"\371\001\n\026CourseS"
403 "chedulingResult\022\017\n\007message\030\001 \001(\t\022H\n\rsolv"
404 "er_status\030\002 \001(\01621.operations_research.Co"
405 "urseSchedulingResultStatus\022\?\n\021class_assi"
406 "gnments\030\003 \003(\0132$.operations_research.Clas"
407 "sAssignment\022C\n\023student_assignments\030\004 \003(\013"
408 "2&.operations_research.StudentAssignment"
409 "\"i\n\017ClassAssignment\022\024\n\014course_index\030\001 \001("
410 "\005\022\026\n\016section_number\030\002 \001(\005\022\022\n\ntime_slots\030"
411 "\003 \003(\005\022\024\n\014room_indices\030\004 \003(\005\"[\n\021StudentAs"
412 "signment\022\025\n\rstudent_index\030\001 \001(\005\022\026\n\016cours"
413 "e_indices\030\002 \003(\005\022\027\n\017section_indices\030\003 \003(\005"
414 "\"\322\001\n\006Course\022\024\n\014display_name\030\001 \001(\t\022\026\n\016mee"
415 "tings_count\030\002 \001(\005\022\024\n\014max_capacity\030\003 \001(\005\022"
416 "\024\n\014min_capacity\030\004 \001(\005\022\037\n\027consecutive_slo"
417 "ts_count\030\005 \001(\005\022\027\n\017teacher_indices\030\006 \003(\005\022"
418 "\036\n\026teacher_section_counts\030\007 \003(\005\022\024\n\014room_"
419 "indices\030\010 \003(\005\">\n\007Teacher\022\024\n\014display_name"
420 "\030\001 \001(\t\022\035\n\025restricted_time_slots\030\002 \003(\005\"7\n"
421 "\007Student\022\024\n\014display_name\030\001 \001(\t\022\026\n\016course"
422 "_indices\030\002 \003(\005\".\n\004Room\022\024\n\014display_name\030\001"
423 " \001(\t\022\020\n\010capacity\030\002 \001(\005*\316\001\n\034CourseSchedul"
424 "ingResultStatus\022/\n+COURSE_SCHEDULING_RES"
425 "ULT_STATUS_UNSPECIFIED\020\000\022\023\n\017SOLVER_FEASI"
426 "BLE\020\001\022\022\n\016SOLVER_OPTIMAL\020\002\022\025\n\021SOLVER_INFE"
427 "ASIBLE\020\003\022\030\n\024SOLVER_MODEL_INVALID\020\004\022\025\n\021SO"
428 "LVER_NOT_SOLVED\020\005\022\014\n\010ABNORMAL\020\006b\006proto3"
435 descriptor_table_protodef_ortools_2fscheduling_2fcourse_5fscheduling_2eproto,
436 "ortools/scheduling/course_scheduling.proto",
456class CourseSchedulingModel::_Internal {
459 decltype(::std::declval<CourseSchedulingModel>()._impl_._has_bits_);
465#if defined(PROTOBUF_CUSTOM_VTABLE)
468 : ::google::protobuf::Message(arena) {
473PROTOBUF_NDEBUG_INLINE CourseSchedulingModel::Impl_::Impl_(
474 ::google::protobuf::internal::InternalVisibility visibility,
475 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
476 const ::operations_research::CourseSchedulingModel& from_msg)
477 : _has_bits_{from._has_bits_},
479 courses_{visibility, arena, from.courses_},
480 teachers_{visibility, arena, from.teachers_},
481 students_{visibility, arena, from.students_},
482 rooms_{visibility, arena, from.rooms_},
483 display_name_(arena, from.display_name_) {}
486 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
488#if defined(PROTOBUF_CUSTOM_VTABLE)
491 : ::google::protobuf::Message(arena) {
495 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
496 from._internal_metadata_);
497 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
498 ::memcpy(
reinterpret_cast<char *
>(&
_impl_) +
499 offsetof(Impl_, days_count_),
500 reinterpret_cast<const char *
>(&from._impl_) +
501 offsetof(Impl_, days_count_),
502 offsetof(Impl_, daily_time_slot_count_) -
503 offsetof(Impl_, days_count_) +
504 sizeof(Impl_::daily_time_slot_count_));
508PROTOBUF_NDEBUG_INLINE CourseSchedulingModel::Impl_::Impl_(
509 ::google::protobuf::internal::InternalVisibility visibility,
510 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
512 courses_{visibility, arena},
513 teachers_{visibility, arena},
514 students_{visibility, arena},
515 rooms_{visibility, arena},
516 display_name_(arena) {}
518inline void CourseSchedulingModel::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
519 new (&
_impl_) Impl_(internal_visibility(), arena);
520 ::memset(
reinterpret_cast<char *
>(&
_impl_) +
521 offsetof(Impl_, days_count_),
523 offsetof(Impl_, daily_time_slot_count_) -
524 offsetof(Impl_, days_count_) +
525 sizeof(Impl_::daily_time_slot_count_));
531inline void CourseSchedulingModel::SharedDtor(MessageLite& self) {
533 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
534 ABSL_DCHECK(this_.GetArena() ==
nullptr);
535 this_.
_impl_.display_name_.Destroy();
540 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
541 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
545 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
548 InternalGetArenaOffset(
549 ::google::protobuf::Message::internal_visibility()),
552 InternalGetArenaOffset(
553 ::google::protobuf::Message::internal_visibility()),
556 InternalGetArenaOffset(
557 ::google::protobuf::Message::internal_visibility()),
560 InternalGetArenaOffset(
561 ::google::protobuf::Message::internal_visibility()),
563 if (arena_bits.has_value()) {
564 return ::google::protobuf::internal::MessageCreator::CopyInit(
573 return ::google::protobuf::internal::ClassDataFull{
574 ::google::protobuf::internal::ClassData{
579 &CourseSchedulingModel::MergeImpl,
580 ::google::protobuf::Message::GetNewImpl<CourseSchedulingModel>(),
581#if defined(PROTOBUF_CUSTOM_VTABLE)
582 &CourseSchedulingModel::SharedDtor,
589 &CourseSchedulingModel::kDescriptorMethods,
595PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
599PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
605PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
606const ::_pbi::TcParseTable<3, 7, 4, 62, 2>
607CourseSchedulingModel::_table_ = {
612 offsetof(
decltype(_table_), field_lookup_table),
614 offsetof(
decltype(_table_), field_entries),
617 offsetof(
decltype(_table_), aux_entries),
620 ::_pbi::TcParser::GenericFallback,
621 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
622 ::_pbi::TcParser::GetTable<::operations_research::CourseSchedulingModel>(),
625 {::_pbi::TcParser::MiniParse, {}},
627 {::_pbi::TcParser::FastUS1,
630 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
CourseSchedulingModel, _impl_.days_count_), 1>(),
633 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
CourseSchedulingModel, _impl_.daily_time_slot_count_), 2>(),
636 {::_pbi::TcParser::FastMtR1,
639 {::_pbi::TcParser::FastMtR1,
642 {::_pbi::TcParser::FastMtR1,
645 {::_pbi::TcParser::FastMtR1,
651 {PROTOBUF_FIELD_OFFSET(
CourseSchedulingModel, _impl_.display_name_), _Internal::kHasBitsOffset + 0, 0,
652 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
655 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
657 {PROTOBUF_FIELD_OFFSET(
CourseSchedulingModel, _impl_.daily_time_slot_count_), _Internal::kHasBitsOffset + 2, 0,
658 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
661 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
664 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
667 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
670 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
673 {::_pbi::TcParser::GetTable<::operations_research::Course>()},
674 {::_pbi::TcParser::GetTable<::operations_research::Teacher>()},
675 {::_pbi::TcParser::GetTable<::operations_research::Student>()},
676 {::_pbi::TcParser::GetTable<::operations_research::Room>()},
680 "operations_research.CourseSchedulingModel"
686 ::google::protobuf::internal::TSanWrite(&
_impl_);
687 ::uint32_t cached_has_bits = 0;
689 (void) cached_has_bits;
695 cached_has_bits =
_impl_._has_bits_[0];
696 if ((cached_has_bits & 0x00000001u) != 0) {
697 _impl_.display_name_.ClearNonDefaultToEmpty();
699 if ((cached_has_bits & 0x00000006u) != 0) {
700 ::memset(&
_impl_.days_count_, 0,
static_cast<::
size_t>(
701 reinterpret_cast<char*
>(&
_impl_.daily_time_slot_count_) -
702 reinterpret_cast<char*
>(&
_impl_.days_count_)) +
sizeof(
_impl_.daily_time_slot_count_));
704 _impl_._has_bits_.Clear();
705 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
708#if defined(PROTOBUF_CUSTOM_VTABLE)
710 const ::google::protobuf::MessageLite&
base, ::uint8_t* PROTOBUF_NONNULL target,
711 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
715 ::uint8_t* PROTOBUF_NONNULL target,
716 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
720 ::uint32_t cached_has_bits = 0;
721 (void)cached_has_bits;
724 if ((this_.
_impl_._has_bits_[0] & 0x00000001u) != 0) {
725 if (!this_._internal_display_name().empty()) {
726 const ::std::string& _s = this_._internal_display_name();
727 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
728 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.CourseSchedulingModel.display_name");
729 target = stream->WriteStringMaybeAliased(1, _s, target);
734 if ((this_.
_impl_._has_bits_[0] & 0x00000002u) != 0) {
735 if (this_._internal_days_count() != 0) {
737 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
738 stream, this_._internal_days_count(), target);
743 if ((this_.
_impl_._has_bits_[0] & 0x00000004u) != 0) {
744 if (this_._internal_daily_time_slot_count() != 0) {
746 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<3>(
747 stream, this_._internal_daily_time_slot_count(), target);
752 for (
unsigned i = 0, n =
static_cast<unsigned>(
753 this_._internal_courses_size());
755 const auto& repfield = this_._internal_courses().Get(i);
757 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
758 4, repfield, repfield.GetCachedSize(),
763 for (
unsigned i = 0, n =
static_cast<unsigned>(
764 this_._internal_teachers_size());
766 const auto& repfield = this_._internal_teachers().Get(i);
768 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
769 5, repfield, repfield.GetCachedSize(),
774 for (
unsigned i = 0, n =
static_cast<unsigned>(
775 this_._internal_students_size());
777 const auto& repfield = this_._internal_students().Get(i);
779 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
780 6, repfield, repfield.GetCachedSize(),
785 for (
unsigned i = 0, n =
static_cast<unsigned>(
786 this_._internal_rooms_size());
788 const auto& repfield = this_._internal_rooms().Get(i);
790 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
791 7, repfield, repfield.GetCachedSize(),
795 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
797 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
798 this_._internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
804#if defined(PROTOBUF_CUSTOM_VTABLE)
812 ::size_t total_size = 0;
814 ::uint32_t cached_has_bits = 0;
816 (void)cached_has_bits;
818 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
822 total_size += 1UL * this_._internal_courses_size();
823 for (
const auto& msg : this_._internal_courses()) {
824 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
829 total_size += 1UL * this_._internal_teachers_size();
830 for (
const auto& msg : this_._internal_teachers()) {
831 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
836 total_size += 1UL * this_._internal_students_size();
837 for (
const auto& msg : this_._internal_students()) {
838 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
843 total_size += 1UL * this_._internal_rooms_size();
844 for (
const auto& msg : this_._internal_rooms()) {
845 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
849 cached_has_bits = this_.
_impl_._has_bits_[0];
850 if ((cached_has_bits & 0x00000007u) != 0) {
852 if ((cached_has_bits & 0x00000001u) != 0) {
853 if (!this_._internal_display_name().empty()) {
854 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
855 this_._internal_display_name());
859 if ((cached_has_bits & 0x00000002u) != 0) {
860 if (this_._internal_days_count() != 0) {
861 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
862 this_._internal_days_count());
866 if ((cached_has_bits & 0x00000004u) != 0) {
867 if (this_._internal_daily_time_slot_count() != 0) {
868 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
869 this_._internal_daily_time_slot_count());
873 return this_.MaybeComputeUnknownFieldsSize(total_size,
874 &this_.
_impl_._cached_size_);
877void CourseSchedulingModel::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
881 ABSL_DCHECK_NE(&from, _this);
882 ::uint32_t cached_has_bits = 0;
883 (void) cached_has_bits;
885 _this->_internal_mutable_courses()->MergeFrom(
886 from._internal_courses());
887 _this->_internal_mutable_teachers()->MergeFrom(
888 from._internal_teachers());
889 _this->_internal_mutable_students()->MergeFrom(
890 from._internal_students());
891 _this->_internal_mutable_rooms()->MergeFrom(
892 from._internal_rooms());
893 cached_has_bits = from._impl_._has_bits_[0];
894 if ((cached_has_bits & 0x00000007u) != 0) {
895 if ((cached_has_bits & 0x00000001u) != 0) {
896 if (!from._internal_display_name().empty()) {
897 _this->_internal_set_display_name(from._internal_display_name());
899 if (_this->_impl_.display_name_.IsDefault()) {
900 _this->_internal_set_display_name(
"");
904 if ((cached_has_bits & 0x00000002u) != 0) {
905 if (from._internal_days_count() != 0) {
906 _this->_impl_.days_count_ = from._impl_.days_count_;
909 if ((cached_has_bits & 0x00000004u) != 0) {
910 if (from._internal_daily_time_slot_count() != 0) {
911 _this->_impl_.daily_time_slot_count_ = from._impl_.daily_time_slot_count_;
915 _this->_impl_._has_bits_[0] |= cached_has_bits;
916 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
921 if (&from ==
this)
return;
927void CourseSchedulingModel::InternalSwap(
CourseSchedulingModel* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
929 auto* arena = GetArena();
930 ABSL_DCHECK_EQ(arena, other->GetArena());
931 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
932 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
933 _impl_.courses_.InternalSwap(&other->_impl_.courses_);
934 _impl_.teachers_.InternalSwap(&other->_impl_.teachers_);
935 _impl_.students_.InternalSwap(&other->_impl_.students_);
936 _impl_.rooms_.InternalSwap(&other->_impl_.rooms_);
937 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.display_name_, &other->_impl_.display_name_, arena);
938 ::google::protobuf::internal::memswap<
942 reinterpret_cast<char*
>(&
_impl_.days_count_),
943 reinterpret_cast<char*
>(&other->_impl_.days_count_));
947 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
954 decltype(::std::declval<CourseSchedulingResult>()._impl_._has_bits_);
960#if defined(PROTOBUF_CUSTOM_VTABLE)
963 : ::google::protobuf::Message(arena) {
968PROTOBUF_NDEBUG_INLINE CourseSchedulingResult::Impl_::Impl_(
969 ::google::protobuf::internal::InternalVisibility visibility,
970 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
971 const ::operations_research::CourseSchedulingResult& from_msg)
972 : _has_bits_{from._has_bits_},
974 class_assignments_{visibility, arena, from.class_assignments_},
975 student_assignments_{visibility, arena, from.student_assignments_},
976 message_(arena, from.message_) {}
979 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
981#if defined(PROTOBUF_CUSTOM_VTABLE)
984 : ::google::protobuf::Message(arena) {
988 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
989 from._internal_metadata_);
990 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
991 _impl_.solver_status_ = from._impl_.solver_status_;
995PROTOBUF_NDEBUG_INLINE CourseSchedulingResult::Impl_::Impl_(
996 ::google::protobuf::internal::InternalVisibility visibility,
997 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
999 class_assignments_{visibility, arena},
1000 student_assignments_{visibility, arena},
1003inline void CourseSchedulingResult::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1004 new (&
_impl_) Impl_(internal_visibility(), arena);
1005 _impl_.solver_status_ = {};
1011inline void CourseSchedulingResult::SharedDtor(
MessageLite& self) {
1013 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1014 ABSL_DCHECK(this_.GetArena() ==
nullptr);
1015 this_.
_impl_.message_.Destroy();
1020 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1021 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1025 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1028 InternalGetArenaOffset(
1032 InternalGetArenaOffset(
1035 if (arena_bits.has_value()) {
1036 return ::google::protobuf::internal::MessageCreator::CopyInit(
1037 sizeof(CourseSchedulingResult), alignof(CourseSchedulingResult), *arena_bits);
1039 return ::google::protobuf::internal::MessageCreator(&CourseSchedulingResult::PlacementNew_,
1040 sizeof(CourseSchedulingResult),
1041 alignof(CourseSchedulingResult));
1045 return ::google::protobuf::internal::ClassDataFull{
1046 ::google::protobuf::internal::ClassData{
1051 &CourseSchedulingResult::MergeImpl,
1052 ::google::protobuf::Message::GetNewImpl<CourseSchedulingResult>(),
1053#if defined(PROTOBUF_CUSTOM_VTABLE)
1054 &CourseSchedulingResult::SharedDtor,
1061 &CourseSchedulingResult::kDescriptorMethods,
1067PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1071PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1077PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1078const ::_pbi::TcParseTable<2, 4, 2, 58, 2>
1079CourseSchedulingResult::_table_ = {
1084 offsetof(
decltype(_table_), field_lookup_table),
1086 offsetof(
decltype(_table_), field_entries),
1089 offsetof(
decltype(_table_), aux_entries),
1092 ::_pbi::TcParser::GenericFallback,
1093 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1094 ::_pbi::TcParser::GetTable<::operations_research::CourseSchedulingResult>(),
1098 {::_pbi::TcParser::FastMtR1,
1099 {34, 63, 1, PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.student_assignments_)}},
1101 {::_pbi::TcParser::FastUS1,
1102 {10, 0, 0, PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.message_)}},
1104 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(CourseSchedulingResult,
_impl_.solver_status_), 1>(),
1105 {16, 1, 0, PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.solver_status_)}},
1107 {::_pbi::TcParser::FastMtR1,
1108 {26, 63, 0, PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.class_assignments_)}},
1114 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
1117 (0 | ::_fl::kFcOptional | ::_fl::kOpenEnum)},
1119 {PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.class_assignments_), -1, 0,
1120 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
1122 {PROTOBUF_FIELD_OFFSET(CourseSchedulingResult,
_impl_.student_assignments_), -1, 1,
1123 (0 | ::_fl::kFcRepeated | ::_fl::kMessage | ::_fl::kTvTable)},
1126 {::_pbi::TcParser::GetTable<::operations_research::ClassAssignment>()},
1127 {::_pbi::TcParser::GetTable<::operations_research::StudentAssignment>()},
1131 "operations_research.CourseSchedulingResult"
1137 ::google::protobuf::internal::TSanWrite(&
_impl_);
1138 ::uint32_t cached_has_bits = 0;
1140 (void) cached_has_bits;
1142 _impl_.class_assignments_.Clear();
1143 _impl_.student_assignments_.Clear();
1144 cached_has_bits =
_impl_._has_bits_[0];
1145 if ((cached_has_bits & 0x00000001u) != 0) {
1146 _impl_.message_.ClearNonDefaultToEmpty();
1148 _impl_.solver_status_ = 0;
1149 _impl_._has_bits_.Clear();
1150 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1153#if defined(PROTOBUF_CUSTOM_VTABLE)
1155 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1156 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1157 const CourseSchedulingResult& this_ =
static_cast<const CourseSchedulingResult&
>(base);
1160 ::uint8_t* PROTOBUF_NONNULL target,
1161 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
1165 ::uint32_t cached_has_bits = 0;
1166 (void)cached_has_bits;
1169 if ((this_.
_impl_._has_bits_[0] & 0x00000001u) != 0) {
1170 if (!this_._internal_message().empty()) {
1171 const ::std::string& _s = this_._internal_message();
1172 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
1173 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.CourseSchedulingResult.message");
1174 target = stream->WriteStringMaybeAliased(1, _s, target);
1179 if ((this_.
_impl_._has_bits_[0] & 0x00000002u) != 0) {
1180 if (this_._internal_solver_status() != 0) {
1181 target = stream->EnsureSpace(target);
1182 target = ::_pbi::WireFormatLite::WriteEnumToArray(
1183 2, this_._internal_solver_status(), target);
1188 for (
unsigned i = 0, n =
static_cast<unsigned>(
1189 this_._internal_class_assignments_size());
1191 const auto& repfield = this_._internal_class_assignments().Get(i);
1193 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1194 3, repfield, repfield.GetCachedSize(),
1199 for (
unsigned i = 0, n =
static_cast<unsigned>(
1200 this_._internal_student_assignments_size());
1202 const auto& repfield = this_._internal_student_assignments().Get(i);
1204 ::google::protobuf::internal::WireFormatLite::InternalWriteMessage(
1205 4, repfield, repfield.GetCachedSize(),
1209 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1211 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1212 this_._internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1218#if defined(PROTOBUF_CUSTOM_VTABLE)
1226 ::size_t total_size = 0;
1228 ::uint32_t cached_has_bits = 0;
1230 (void)cached_has_bits;
1232 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1236 total_size += 1UL * this_._internal_class_assignments_size();
1237 for (
const auto& msg : this_._internal_class_assignments()) {
1238 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
1243 total_size += 1UL * this_._internal_student_assignments_size();
1244 for (
const auto& msg : this_._internal_student_assignments()) {
1245 total_size += ::google::protobuf::internal::WireFormatLite::MessageSize(msg);
1249 cached_has_bits = this_.
_impl_._has_bits_[0];
1250 if ((cached_has_bits & 0x00000003u) != 0) {
1252 if ((cached_has_bits & 0x00000001u) != 0) {
1253 if (!this_._internal_message().empty()) {
1254 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
1255 this_._internal_message());
1259 if ((cached_has_bits & 0x00000002u) != 0) {
1260 if (this_._internal_solver_status() != 0) {
1262 ::_pbi::WireFormatLite::EnumSize(this_._internal_solver_status());
1266 return this_.MaybeComputeUnknownFieldsSize(total_size,
1267 &this_.
_impl_._cached_size_);
1270void CourseSchedulingResult::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1271 auto*
const _this =
static_cast<CourseSchedulingResult*
>(&to_msg);
1272 auto& from =
static_cast<const CourseSchedulingResult&
>(from_msg);
1274 ABSL_DCHECK_NE(&from, _this);
1275 ::uint32_t cached_has_bits = 0;
1276 (void) cached_has_bits;
1278 _this->_internal_mutable_class_assignments()->MergeFrom(
1279 from._internal_class_assignments());
1280 _this->_internal_mutable_student_assignments()->MergeFrom(
1281 from._internal_student_assignments());
1282 cached_has_bits = from._impl_._has_bits_[0];
1283 if ((cached_has_bits & 0x00000003u) != 0) {
1284 if ((cached_has_bits & 0x00000001u) != 0) {
1285 if (!from._internal_message().empty()) {
1286 _this->_internal_set_message(from._internal_message());
1288 if (_this->_impl_.message_.IsDefault()) {
1289 _this->_internal_set_message(
"");
1293 if ((cached_has_bits & 0x00000002u) != 0) {
1294 if (from._internal_solver_status() != 0) {
1295 _this->_impl_.solver_status_ = from._impl_.solver_status_;
1299 _this->_impl_._has_bits_[0] |= cached_has_bits;
1300 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1305 if (&from ==
this)
return;
1311void CourseSchedulingResult::InternalSwap(
CourseSchedulingResult* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1313 auto* arena = GetArena();
1314 ABSL_DCHECK_EQ(arena, other->GetArena());
1315 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1316 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1317 _impl_.class_assignments_.InternalSwap(&other->_impl_.class_assignments_);
1318 _impl_.student_assignments_.InternalSwap(&other->_impl_.student_assignments_);
1319 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.message_, &other->_impl_.message_, arena);
1320 swap(
_impl_.solver_status_, other->_impl_.solver_status_);
1324 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
1331 decltype(::std::declval<ClassAssignment>()._impl_._has_bits_);
1337#if defined(PROTOBUF_CUSTOM_VTABLE)
1340 : ::google::protobuf::Message(arena) {
1345PROTOBUF_NDEBUG_INLINE ClassAssignment::Impl_::Impl_(
1346 ::google::protobuf::internal::InternalVisibility visibility,
1347 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
1348 const ::operations_research::ClassAssignment& from_msg)
1349 : _has_bits_{from._has_bits_},
1351 time_slots_{visibility, arena, from.time_slots_},
1352 _time_slots_cached_byte_size_{0},
1353 room_indices_{visibility, arena, from.room_indices_},
1354 _room_indices_cached_byte_size_{0} {}
1357 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1358 const ClassAssignment& from)
1359#if defined(PROTOBUF_CUSTOM_VTABLE)
1362 : ::google::protobuf::Message(arena) {
1366 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
1367 from._internal_metadata_);
1368 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1369 ::memcpy(
reinterpret_cast<char *
>(&
_impl_) +
1370 offsetof(Impl_, course_index_),
1371 reinterpret_cast<const char *
>(&from._impl_) +
1372 offsetof(Impl_, course_index_),
1373 offsetof(Impl_, section_number_) -
1374 offsetof(Impl_, course_index_) +
1375 sizeof(Impl_::section_number_));
1379PROTOBUF_NDEBUG_INLINE ClassAssignment::Impl_::Impl_(
1380 ::google::protobuf::internal::InternalVisibility visibility,
1381 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1383 time_slots_{visibility, arena},
1384 _time_slots_cached_byte_size_{0},
1385 room_indices_{visibility, arena},
1386 _room_indices_cached_byte_size_{0} {}
1388inline void ClassAssignment::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1389 new (&
_impl_) Impl_(internal_visibility(), arena);
1390 ::memset(
reinterpret_cast<char *
>(&
_impl_) +
1391 offsetof(Impl_, course_index_),
1393 offsetof(Impl_, section_number_) -
1394 offsetof(Impl_, course_index_) +
1395 sizeof(Impl_::section_number_));
1401inline void ClassAssignment::SharedDtor(MessageLite& self) {
1403 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1404 ABSL_DCHECK(this_.GetArena() ==
nullptr);
1409 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1410 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1414 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1417 InternalGetArenaOffset(
1421 InternalGetArenaOffset(
1424 if (arena_bits.has_value()) {
1425 return ::google::protobuf::internal::MessageCreator::ZeroInit(
1426 sizeof(ClassAssignment), alignof(ClassAssignment), *arena_bits);
1428 return ::google::protobuf::internal::MessageCreator(&ClassAssignment::PlacementNew_,
1429 sizeof(ClassAssignment),
1430 alignof(ClassAssignment));
1434 return ::google::protobuf::internal::ClassDataFull{
1435 ::google::protobuf::internal::ClassData{
1440 &ClassAssignment::MergeImpl,
1441 ::google::protobuf::Message::GetNewImpl<ClassAssignment>(),
1442#if defined(PROTOBUF_CUSTOM_VTABLE)
1443 &ClassAssignment::SharedDtor,
1450 &ClassAssignment::kDescriptorMethods,
1456PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1460PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1466PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1467const ::_pbi::TcParseTable<2, 4, 0, 0, 2>
1468ClassAssignment::_table_ = {
1473 offsetof(
decltype(_table_), field_lookup_table),
1475 offsetof(
decltype(_table_), field_entries),
1478 offsetof(
decltype(_table_), field_names),
1481 ::_pbi::TcParser::GenericFallback,
1482 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1483 ::_pbi::TcParser::GetTable<::operations_research::ClassAssignment>(),
1487 {::_pbi::TcParser::FastV32P1,
1490 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
ClassAssignment,
_impl_.course_index_), 0>(),
1493 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
ClassAssignment,
_impl_.section_number_), 1>(),
1496 {::_pbi::TcParser::FastV32P1,
1503 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1506 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1509 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1512 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1520 ::google::protobuf::internal::TSanWrite(&
_impl_);
1521 ::uint32_t cached_has_bits = 0;
1523 (void) cached_has_bits;
1525 _impl_.time_slots_.Clear();
1526 _impl_.room_indices_.Clear();
1527 cached_has_bits =
_impl_._has_bits_[0];
1528 if ((cached_has_bits & 0x00000003u) != 0) {
1529 ::memset(&
_impl_.course_index_, 0,
static_cast<::
size_t>(
1530 reinterpret_cast<char*
>(&
_impl_.section_number_) -
1531 reinterpret_cast<char*
>(&
_impl_.course_index_)) +
sizeof(
_impl_.section_number_));
1533 _impl_._has_bits_.Clear();
1534 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1537#if defined(PROTOBUF_CUSTOM_VTABLE)
1539 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
1540 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1544 ::uint8_t* PROTOBUF_NONNULL target,
1545 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
1549 ::uint32_t cached_has_bits = 0;
1550 (void)cached_has_bits;
1553 if ((this_.
_impl_._has_bits_[0] & 0x00000001u) != 0) {
1554 if (this_._internal_course_index() != 0) {
1556 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
1557 stream, this_._internal_course_index(), target);
1562 if ((this_.
_impl_._has_bits_[0] & 0x00000002u) != 0) {
1563 if (this_._internal_section_number() != 0) {
1565 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
1566 stream, this_._internal_section_number(), target);
1572 int byte_size = this_.
_impl_._time_slots_cached_byte_size_.Get();
1573 if (byte_size > 0) {
1574 target = stream->WriteInt32Packed(
1575 3, this_._internal_time_slots(), byte_size, target);
1581 int byte_size = this_.
_impl_._room_indices_cached_byte_size_.Get();
1582 if (byte_size > 0) {
1583 target = stream->WriteInt32Packed(
1584 4, this_._internal_room_indices(), byte_size, target);
1588 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1590 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1591 this_._internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1597#if defined(PROTOBUF_CUSTOM_VTABLE)
1605 ::size_t total_size = 0;
1607 ::uint32_t cached_has_bits = 0;
1609 (void)cached_has_bits;
1611 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1616 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1617 this_._internal_time_slots(), 1,
1618 this_._impl_._time_slots_cached_byte_size_);
1623 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1624 this_._internal_room_indices(), 1,
1625 this_._impl_._room_indices_cached_byte_size_);
1628 cached_has_bits = this_._impl_._has_bits_[0];
1629 if ((cached_has_bits & 0x00000003u) != 0) {
1631 if ((cached_has_bits & 0x00000001u) != 0) {
1632 if (this_._internal_course_index() != 0) {
1633 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
1634 this_._internal_course_index());
1638 if ((cached_has_bits & 0x00000002u) != 0) {
1639 if (this_._internal_section_number() != 0) {
1640 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
1641 this_._internal_section_number());
1645 return this_.MaybeComputeUnknownFieldsSize(total_size,
1646 &this_._impl_._cached_size_);
1649void ClassAssignment::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1653 ABSL_DCHECK_NE(&from, _this);
1654 ::uint32_t cached_has_bits = 0;
1655 (void) cached_has_bits;
1657 _this->_internal_mutable_time_slots()->MergeFrom(from._internal_time_slots());
1658 _this->_internal_mutable_room_indices()->MergeFrom(from._internal_room_indices());
1659 cached_has_bits = from._impl_._has_bits_[0];
1660 if ((cached_has_bits & 0x00000003u) != 0) {
1661 if ((cached_has_bits & 0x00000001u) != 0) {
1662 if (from._internal_course_index() != 0) {
1663 _this->_impl_.course_index_ = from._impl_.course_index_;
1666 if ((cached_has_bits & 0x00000002u) != 0) {
1667 if (from._internal_section_number() != 0) {
1668 _this->_impl_.section_number_ = from._impl_.section_number_;
1672 _this->_impl_._has_bits_[0] |= cached_has_bits;
1673 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
1678 if (&from ==
this)
return;
1684void ClassAssignment::InternalSwap(
ClassAssignment* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
1686 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
1687 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
1688 _impl_.time_slots_.InternalSwap(&other->_impl_.time_slots_);
1689 _impl_.room_indices_.InternalSwap(&other->_impl_.room_indices_);
1690 ::google::protobuf::internal::memswap<
1694 reinterpret_cast<char*
>(&
_impl_.course_index_),
1695 reinterpret_cast<char*
>(&other->_impl_.course_index_));
1699 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
1706 decltype(::std::declval<StudentAssignment>()._impl_._has_bits_);
1712#if defined(PROTOBUF_CUSTOM_VTABLE)
1715 : ::google::protobuf::Message(arena) {
1720PROTOBUF_NDEBUG_INLINE StudentAssignment::Impl_::Impl_(
1721 ::google::protobuf::internal::InternalVisibility visibility,
1722 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
1723 const ::operations_research::StudentAssignment& from_msg)
1724 : _has_bits_{from._has_bits_},
1726 course_indices_{visibility, arena, from.course_indices_},
1727 _course_indices_cached_byte_size_{0},
1728 section_indices_{visibility, arena, from.section_indices_},
1729 _section_indices_cached_byte_size_{0} {}
1732 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
1733 const StudentAssignment& from)
1734#if defined(PROTOBUF_CUSTOM_VTABLE)
1737 : ::google::protobuf::Message(arena) {
1741 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
1742 from._internal_metadata_);
1743 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
1744 _impl_.student_index_ = from._impl_.student_index_;
1748PROTOBUF_NDEBUG_INLINE StudentAssignment::Impl_::Impl_(
1749 ::google::protobuf::internal::InternalVisibility visibility,
1750 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
1752 course_indices_{visibility, arena},
1753 _course_indices_cached_byte_size_{0},
1754 section_indices_{visibility, arena},
1755 _section_indices_cached_byte_size_{0} {}
1757inline void StudentAssignment::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
1758 new (&
_impl_) Impl_(internal_visibility(), arena);
1759 _impl_.student_index_ = {};
1767 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
1768 ABSL_DCHECK(this_.GetArena() ==
nullptr);
1773 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
1774 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
1778 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
1781 InternalGetArenaOffset(
1782 ::google::protobuf::Message::internal_visibility()),
1785 InternalGetArenaOffset(
1788 if (arena_bits.has_value()) {
1789 return ::google::protobuf::internal::MessageCreator::ZeroInit(
1790 sizeof(StudentAssignment), alignof(StudentAssignment), *arena_bits);
1792 return ::google::protobuf::internal::MessageCreator(&StudentAssignment::PlacementNew_,
1793 sizeof(StudentAssignment),
1794 alignof(StudentAssignment));
1798 return ::google::protobuf::internal::ClassDataFull{
1799 ::google::protobuf::internal::ClassData{
1804 &StudentAssignment::MergeImpl,
1805 ::google::protobuf::Message::GetNewImpl<StudentAssignment>(),
1806#if defined(PROTOBUF_CUSTOM_VTABLE)
1807 &StudentAssignment::SharedDtor,
1814 &StudentAssignment::kDescriptorMethods,
1820PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
1824PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
1830PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
1831const ::_pbi::TcParseTable<2, 3, 0, 0, 2>
1832StudentAssignment::_table_ = {
1837 offsetof(
decltype(_table_), field_lookup_table),
1839 offsetof(
decltype(_table_), field_entries),
1842 offsetof(
decltype(_table_), field_names),
1845 ::_pbi::TcParser::GenericFallback,
1846 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
1847 ::_pbi::TcParser::GetTable<::operations_research::StudentAssignment>(),
1850 {::_pbi::TcParser::MiniParse, {}},
1855 {::_pbi::TcParser::FastV32P1,
1858 {::_pbi::TcParser::FastV32P1,
1865 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
1868 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1871 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
1879 ::google::protobuf::internal::TSanWrite(&
_impl_);
1880 ::uint32_t cached_has_bits = 0;
1882 (void) cached_has_bits;
1884 _impl_.course_indices_.Clear();
1885 _impl_.section_indices_.Clear();
1886 _impl_.student_index_ = 0;
1887 _impl_._has_bits_.Clear();
1888 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
1891#if defined(PROTOBUF_CUSTOM_VTABLE)
1893 const ::google::protobuf::MessageLite&
base, ::uint8_t* PROTOBUF_NONNULL target,
1894 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
1898 ::uint8_t* PROTOBUF_NONNULL target,
1899 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
1903 ::uint32_t cached_has_bits = 0;
1904 (void)cached_has_bits;
1907 if ((this_.
_impl_._has_bits_[0] & 0x00000001u) != 0) {
1908 if (this_._internal_student_index() != 0) {
1910 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<1>(
1911 stream, this_._internal_student_index(), target);
1917 int byte_size = this_.
_impl_._course_indices_cached_byte_size_.Get();
1918 if (byte_size > 0) {
1919 target = stream->WriteInt32Packed(
1920 2, this_._internal_course_indices(), byte_size, target);
1926 int byte_size = this_.
_impl_._section_indices_cached_byte_size_.Get();
1927 if (byte_size > 0) {
1928 target = stream->WriteInt32Packed(
1929 3, this_._internal_section_indices(), byte_size, target);
1933 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
1935 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
1936 this_._internal_metadata_.
unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
1942#if defined(PROTOBUF_CUSTOM_VTABLE)
1950 ::size_t total_size = 0;
1952 ::uint32_t cached_has_bits = 0;
1954 (void)cached_has_bits;
1956 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
1961 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1962 this_._internal_course_indices(), 1,
1963 this_._impl_._course_indices_cached_byte_size_);
1968 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
1969 this_._internal_section_indices(), 1,
1970 this_._impl_._section_indices_cached_byte_size_);
1975 cached_has_bits = this_._impl_._has_bits_[0];
1976 if ((cached_has_bits & 0x00000001u) != 0) {
1977 if (this_._internal_student_index() != 0) {
1978 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
1979 this_._internal_student_index());
1983 return this_.MaybeComputeUnknownFieldsSize(total_size,
1984 &this_._impl_._cached_size_);
1987void StudentAssignment::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
1991 ABSL_DCHECK_NE(&from, _this);
1992 ::uint32_t cached_has_bits = 0;
1993 (void) cached_has_bits;
1995 _this->_internal_mutable_course_indices()->MergeFrom(from._internal_course_indices());
1996 _this->_internal_mutable_section_indices()->MergeFrom(from._internal_section_indices());
1997 cached_has_bits = from._impl_._has_bits_[0];
1998 if ((cached_has_bits & 0x00000001u) != 0) {
1999 if (from._internal_student_index() != 0) {
2000 _this->_impl_.student_index_ = from._impl_.student_index_;
2003 _this->_impl_._has_bits_[0] |= cached_has_bits;
2004 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2009 if (&from ==
this)
return;
2015void StudentAssignment::InternalSwap(
StudentAssignment* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2017 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2018 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2019 _impl_.course_indices_.InternalSwap(&other->_impl_.course_indices_);
2020 _impl_.section_indices_.InternalSwap(&other->_impl_.section_indices_);
2021 swap(
_impl_.student_index_, other->_impl_.student_index_);
2025 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
2032 decltype(::std::declval<Course>()._impl_._has_bits_);
2033 static constexpr ::int32_t kHasBitsOffset =
2037Course::Course(::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2038#if defined(PROTOBUF_CUSTOM_VTABLE)
2041 : ::google::protobuf::Message(arena) {
2046PROTOBUF_NDEBUG_INLINE Course::Impl_::Impl_(
2047 ::google::protobuf::internal::InternalVisibility visibility,
2048 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
2049 const ::operations_research::Course& from_msg)
2050 : _has_bits_{from._has_bits_},
2052 teacher_indices_{visibility, arena, from.teacher_indices_},
2053 _teacher_indices_cached_byte_size_{0},
2054 teacher_section_counts_{visibility, arena, from.teacher_section_counts_},
2055 _teacher_section_counts_cached_byte_size_{0},
2056 room_indices_{visibility, arena, from.room_indices_},
2057 _room_indices_cached_byte_size_{0},
2058 display_name_(arena, from.display_name_) {}
2061 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2063#if defined(PROTOBUF_CUSTOM_VTABLE)
2066 : ::google::protobuf::Message(arena) {
2068 Course*
const _this =
this;
2070 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
2071 from._internal_metadata_);
2072 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2073 ::memcpy(
reinterpret_cast<char *
>(&
_impl_) +
2074 offsetof(Impl_, meetings_count_),
2075 reinterpret_cast<const char *
>(&from._impl_) +
2076 offsetof(Impl_, meetings_count_),
2077 offsetof(Impl_, consecutive_slots_count_) -
2078 offsetof(Impl_, meetings_count_) +
2079 sizeof(Impl_::consecutive_slots_count_));
2083PROTOBUF_NDEBUG_INLINE Course::Impl_::Impl_(
2084 ::google::protobuf::internal::InternalVisibility visibility,
2085 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2087 teacher_indices_{visibility, arena},
2088 _teacher_indices_cached_byte_size_{0},
2089 teacher_section_counts_{visibility, arena},
2090 _teacher_section_counts_cached_byte_size_{0},
2091 room_indices_{visibility, arena},
2092 _room_indices_cached_byte_size_{0},
2093 display_name_(arena) {}
2095inline void Course::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2096 new (&
_impl_) Impl_(internal_visibility(), arena);
2097 ::memset(
reinterpret_cast<char *
>(&
_impl_) +
2098 offsetof(Impl_, meetings_count_),
2100 offsetof(Impl_, consecutive_slots_count_) -
2101 offsetof(Impl_, meetings_count_) +
2102 sizeof(Impl_::consecutive_slots_count_));
2108inline void Course::SharedDtor(MessageLite& self) {
2110 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2111 ABSL_DCHECK(this_.GetArena() ==
nullptr);
2112 this_.
_impl_.display_name_.Destroy();
2117 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
2118 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2119 return ::new (mem)
Course(arena);
2122 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2123 PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_indices_) +
2125 InternalGetArenaOffset(
2126 ::google::protobuf::Message::internal_visibility()),
2127 PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_section_counts_) +
2129 InternalGetArenaOffset(
2133 InternalGetArenaOffset(
2136 if (arena_bits.has_value()) {
2137 return ::google::protobuf::internal::MessageCreator::CopyInit(
2138 sizeof(Course), alignof(Course), *arena_bits);
2140 return ::google::protobuf::internal::MessageCreator(&Course::PlacementNew_,
2146 return ::google::protobuf::internal::ClassDataFull{
2147 ::google::protobuf::internal::ClassData{
2153 ::google::protobuf::Message::GetNewImpl<Course>(),
2154#if defined(PROTOBUF_CUSTOM_VTABLE)
2155 &Course::SharedDtor,
2162 &Course::kDescriptorMethods,
2168PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2172PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2178PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2179const ::_pbi::TcParseTable<3, 8, 0, 55, 2>
2185 offsetof(
decltype(_table_), field_lookup_table),
2187 offsetof(
decltype(_table_), field_entries),
2190 offsetof(
decltype(_table_), field_names),
2193 ::_pbi::TcParser::GenericFallback,
2194 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2195 ::_pbi::TcParser::GetTable<::operations_research::Course>(),
2199 {::_pbi::TcParser::FastV32P1,
2200 {66, 63, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.room_indices_)}},
2202 {::_pbi::TcParser::FastUS1,
2203 {10, 0, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.display_name_)}},
2205 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
Course,
_impl_.meetings_count_), 1>(),
2206 {16, 1, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.meetings_count_)}},
2208 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
Course,
_impl_.max_capacity_), 2>(),
2209 {24, 2, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.max_capacity_)}},
2211 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
Course,
_impl_.min_capacity_), 3>(),
2212 {32, 3, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.min_capacity_)}},
2214 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
Course,
_impl_.consecutive_slots_count_), 4>(),
2215 {40, 4, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.consecutive_slots_count_)}},
2217 {::_pbi::TcParser::FastV32P1,
2218 {50, 63, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_indices_)}},
2220 {::_pbi::TcParser::FastV32P1,
2221 {58, 63, 0, PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_section_counts_)}},
2227 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
2230 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2233 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2236 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2239 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
2241 {PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_indices_), -1, 0,
2242 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2244 {PROTOBUF_FIELD_OFFSET(
Course,
_impl_.teacher_section_counts_), -1, 0,
2245 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2247 {PROTOBUF_FIELD_OFFSET(
Course,
_impl_.room_indices_), -1, 0,
2248 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2252 "\32\14\0\0\0\0\0\0\0\0\0\0\0\0\0\0"
2253 "operations_research.Course"
2259 ::google::protobuf::internal::TSanWrite(&
_impl_);
2260 ::uint32_t cached_has_bits = 0;
2262 (void) cached_has_bits;
2264 _impl_.teacher_indices_.Clear();
2265 _impl_.teacher_section_counts_.Clear();
2266 _impl_.room_indices_.Clear();
2267 cached_has_bits =
_impl_._has_bits_[0];
2268 if ((cached_has_bits & 0x00000001u) != 0) {
2269 _impl_.display_name_.ClearNonDefaultToEmpty();
2271 if ((cached_has_bits & 0x0000001eu) != 0) {
2272 ::memset(&
_impl_.meetings_count_, 0,
static_cast<::
size_t>(
2273 reinterpret_cast<char*
>(&
_impl_.consecutive_slots_count_) -
2274 reinterpret_cast<char*
>(&
_impl_.meetings_count_)) +
sizeof(
_impl_.consecutive_slots_count_));
2276 _impl_._has_bits_.Clear();
2277 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2280#if defined(PROTOBUF_CUSTOM_VTABLE)
2282 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2283 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2284 const Course& this_ =
static_cast<const Course&
>(base);
2287 ::uint8_t* PROTOBUF_NONNULL target,
2288 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
2289 const Course& this_ = *
this;
2292 ::uint32_t cached_has_bits = 0;
2293 (void)cached_has_bits;
2296 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
2297 if (!this_._internal_display_name().empty()) {
2298 const ::std::string& _s = this_._internal_display_name();
2299 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
2300 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.Course.display_name");
2301 target = stream->WriteStringMaybeAliased(1, _s, target);
2306 if ((this_._impl_._has_bits_[0] & 0x00000002u) != 0) {
2307 if (this_._internal_meetings_count() != 0) {
2309 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
2310 stream, this_._internal_meetings_count(), target);
2315 if ((this_._impl_._has_bits_[0] & 0x00000004u) != 0) {
2316 if (this_._internal_max_capacity() != 0) {
2318 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<3>(
2319 stream, this_._internal_max_capacity(), target);
2324 if ((this_._impl_._has_bits_[0] & 0x00000008u) != 0) {
2325 if (this_._internal_min_capacity() != 0) {
2327 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<4>(
2328 stream, this_._internal_min_capacity(), target);
2333 if ((this_._impl_._has_bits_[0] & 0x00000010u) != 0) {
2334 if (this_._internal_consecutive_slots_count() != 0) {
2336 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<5>(
2337 stream, this_._internal_consecutive_slots_count(), target);
2343 int byte_size = this_._impl_._teacher_indices_cached_byte_size_.Get();
2344 if (byte_size > 0) {
2345 target = stream->WriteInt32Packed(
2346 6, this_._internal_teacher_indices(), byte_size, target);
2352 int byte_size = this_._impl_._teacher_section_counts_cached_byte_size_.Get();
2353 if (byte_size > 0) {
2354 target = stream->WriteInt32Packed(
2355 7, this_._internal_teacher_section_counts(), byte_size, target);
2361 int byte_size = this_._impl_._room_indices_cached_byte_size_.Get();
2362 if (byte_size > 0) {
2363 target = stream->WriteInt32Packed(
2364 8, this_._internal_room_indices(), byte_size, target);
2368 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2370 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2371 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2377#if defined(PROTOBUF_CUSTOM_VTABLE)
2379 const Course& this_ =
static_cast<const Course&
>(base);
2382 const Course& this_ = *
this;
2385 ::size_t total_size = 0;
2387 ::uint32_t cached_has_bits = 0;
2389 (void)cached_has_bits;
2391 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2396 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
2397 this_._internal_teacher_indices(), 1,
2398 this_._impl_._teacher_indices_cached_byte_size_);
2403 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
2404 this_._internal_teacher_section_counts(), 1,
2405 this_._impl_._teacher_section_counts_cached_byte_size_);
2410 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
2411 this_._internal_room_indices(), 1,
2412 this_._impl_._room_indices_cached_byte_size_);
2415 cached_has_bits = this_._impl_._has_bits_[0];
2416 if ((cached_has_bits & 0x0000001fu) != 0) {
2418 if ((cached_has_bits & 0x00000001u) != 0) {
2419 if (!this_._internal_display_name().empty()) {
2420 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
2421 this_._internal_display_name());
2425 if ((cached_has_bits & 0x00000002u) != 0) {
2426 if (this_._internal_meetings_count() != 0) {
2427 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2428 this_._internal_meetings_count());
2432 if ((cached_has_bits & 0x00000004u) != 0) {
2433 if (this_._internal_max_capacity() != 0) {
2434 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2435 this_._internal_max_capacity());
2439 if ((cached_has_bits & 0x00000008u) != 0) {
2440 if (this_._internal_min_capacity() != 0) {
2441 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2442 this_._internal_min_capacity());
2446 if ((cached_has_bits & 0x00000010u) != 0) {
2447 if (this_._internal_consecutive_slots_count() != 0) {
2448 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
2449 this_._internal_consecutive_slots_count());
2453 return this_.MaybeComputeUnknownFieldsSize(total_size,
2454 &this_._impl_._cached_size_);
2457void Course::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2458 auto*
const _this =
static_cast<Course*
>(&to_msg);
2459 auto& from =
static_cast<const Course&
>(from_msg);
2461 ABSL_DCHECK_NE(&from, _this);
2462 ::uint32_t cached_has_bits = 0;
2463 (void) cached_has_bits;
2465 _this->_internal_mutable_teacher_indices()->MergeFrom(from._internal_teacher_indices());
2466 _this->_internal_mutable_teacher_section_counts()->MergeFrom(from._internal_teacher_section_counts());
2467 _this->_internal_mutable_room_indices()->MergeFrom(from._internal_room_indices());
2468 cached_has_bits = from._impl_._has_bits_[0];
2469 if ((cached_has_bits & 0x0000001fu) != 0) {
2470 if ((cached_has_bits & 0x00000001u) != 0) {
2471 if (!from._internal_display_name().empty()) {
2472 _this->_internal_set_display_name(from._internal_display_name());
2474 if (_this->_impl_.display_name_.IsDefault()) {
2475 _this->_internal_set_display_name(
"");
2479 if ((cached_has_bits & 0x00000002u) != 0) {
2480 if (from._internal_meetings_count() != 0) {
2481 _this->_impl_.meetings_count_ = from._impl_.meetings_count_;
2484 if ((cached_has_bits & 0x00000004u) != 0) {
2485 if (from._internal_max_capacity() != 0) {
2486 _this->_impl_.max_capacity_ = from._impl_.max_capacity_;
2489 if ((cached_has_bits & 0x00000008u) != 0) {
2490 if (from._internal_min_capacity() != 0) {
2491 _this->_impl_.min_capacity_ = from._impl_.min_capacity_;
2494 if ((cached_has_bits & 0x00000010u) != 0) {
2495 if (from._internal_consecutive_slots_count() != 0) {
2496 _this->_impl_.consecutive_slots_count_ = from._impl_.consecutive_slots_count_;
2500 _this->_impl_._has_bits_[0] |= cached_has_bits;
2501 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2506 if (&from ==
this)
return;
2512void Course::InternalSwap(
Course* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2514 auto* arena = GetArena();
2515 ABSL_DCHECK_EQ(arena, other->GetArena());
2516 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2517 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2518 _impl_.teacher_indices_.InternalSwap(&other->_impl_.teacher_indices_);
2519 _impl_.teacher_section_counts_.InternalSwap(&other->_impl_.teacher_section_counts_);
2520 _impl_.room_indices_.InternalSwap(&other->_impl_.room_indices_);
2521 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.display_name_, &other->_impl_.display_name_, arena);
2522 ::google::protobuf::internal::memswap<
2523 PROTOBUF_FIELD_OFFSET(
Course,
_impl_.consecutive_slots_count_)
2525 - PROTOBUF_FIELD_OFFSET(
Course,
_impl_.meetings_count_)>(
2526 reinterpret_cast<char*
>(&
_impl_.meetings_count_),
2527 reinterpret_cast<char*
>(&other->_impl_.meetings_count_));
2531 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
2538 decltype(::std::declval<Teacher>()._impl_._has_bits_);
2539 static constexpr ::int32_t kHasBitsOffset =
2544#if defined(PROTOBUF_CUSTOM_VTABLE)
2547 : ::google::protobuf::Message(arena) {
2552PROTOBUF_NDEBUG_INLINE Teacher::Impl_::Impl_(
2553 ::google::protobuf::internal::InternalVisibility visibility,
2554 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
2555 const ::operations_research::Teacher& from_msg)
2556 : _has_bits_{from._has_bits_},
2558 restricted_time_slots_{visibility, arena, from.restricted_time_slots_},
2559 _restricted_time_slots_cached_byte_size_{0},
2560 display_name_(arena, from.display_name_) {}
2563 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2564 const Teacher& from)
2565#if defined(PROTOBUF_CUSTOM_VTABLE)
2568 : ::google::protobuf::Message(arena) {
2572 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
2573 from._internal_metadata_);
2574 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2578PROTOBUF_NDEBUG_INLINE Teacher::Impl_::Impl_(
2579 ::google::protobuf::internal::InternalVisibility visibility,
2580 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2582 restricted_time_slots_{visibility, arena},
2583 _restricted_time_slots_cached_byte_size_{0},
2584 display_name_(arena) {}
2586inline void Teacher::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2587 new (&
_impl_) Impl_(internal_visibility(), arena);
2593inline void Teacher::SharedDtor(MessageLite& self) {
2595 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2596 ABSL_DCHECK(this_.GetArena() ==
nullptr);
2597 this_._impl_.display_name_.Destroy();
2598 this_._impl_.~Impl_();
2602 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
2603 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2604 return ::new (mem)
Teacher(arena);
2607 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2608 PROTOBUF_FIELD_OFFSET(
Teacher,
_impl_.restricted_time_slots_) +
2610 InternalGetArenaOffset(
2611 ::google::protobuf::Message::internal_visibility()),
2613 if (arena_bits.has_value()) {
2614 return ::google::protobuf::internal::MessageCreator::CopyInit(
2623 return ::google::protobuf::internal::ClassDataFull{
2624 ::google::protobuf::internal::ClassData{
2629 &Teacher::MergeImpl,
2630 ::google::protobuf::Message::GetNewImpl<Teacher>(),
2631#if defined(PROTOBUF_CUSTOM_VTABLE)
2632 &Teacher::SharedDtor,
2639 &Teacher::kDescriptorMethods,
2645PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2649PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2655PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2656const ::_pbi::TcParseTable<1, 2, 0, 48, 2>
2662 offsetof(
decltype(_table_), field_lookup_table),
2664 offsetof(
decltype(_table_), field_entries),
2667 offsetof(
decltype(_table_), field_names),
2670 ::_pbi::TcParser::GenericFallback,
2671 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2672 ::_pbi::TcParser::GetTable<::operations_research::Teacher>(),
2676 {::_pbi::TcParser::FastV32P1,
2677 {18, 63, 0, PROTOBUF_FIELD_OFFSET(
Teacher,
_impl_.restricted_time_slots_)}},
2679 {::_pbi::TcParser::FastUS1,
2680 {10, 0, 0, PROTOBUF_FIELD_OFFSET(
Teacher,
_impl_.display_name_)}},
2686 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
2688 {PROTOBUF_FIELD_OFFSET(
Teacher,
_impl_.restricted_time_slots_), -1, 0,
2689 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2693 "\33\14\0\0\0\0\0\0"
2694 "operations_research.Teacher"
2700 ::google::protobuf::internal::TSanWrite(&
_impl_);
2701 ::uint32_t cached_has_bits = 0;
2703 (void) cached_has_bits;
2705 _impl_.restricted_time_slots_.Clear();
2706 cached_has_bits =
_impl_._has_bits_[0];
2707 if ((cached_has_bits & 0x00000001u) != 0) {
2708 _impl_.display_name_.ClearNonDefaultToEmpty();
2710 _impl_._has_bits_.Clear();
2711 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
2714#if defined(PROTOBUF_CUSTOM_VTABLE)
2716 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
2717 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
2721 ::uint8_t* PROTOBUF_NONNULL target,
2722 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
2726 ::uint32_t cached_has_bits = 0;
2727 (void)cached_has_bits;
2730 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
2731 if (!this_._internal_display_name().empty()) {
2732 const ::std::string& _s = this_._internal_display_name();
2733 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
2734 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.Teacher.display_name");
2735 target = stream->WriteStringMaybeAliased(1, _s, target);
2741 int byte_size = this_._impl_._restricted_time_slots_cached_byte_size_.Get();
2742 if (byte_size > 0) {
2743 target = stream->WriteInt32Packed(
2744 2, this_._internal_restricted_time_slots(), byte_size, target);
2748 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
2750 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
2751 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
2757#if defined(PROTOBUF_CUSTOM_VTABLE)
2765 ::size_t total_size = 0;
2767 ::uint32_t cached_has_bits = 0;
2769 (void)cached_has_bits;
2771 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
2776 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
2777 this_._internal_restricted_time_slots(), 1,
2778 this_._impl_._restricted_time_slots_cached_byte_size_);
2783 cached_has_bits = this_._impl_._has_bits_[0];
2784 if ((cached_has_bits & 0x00000001u) != 0) {
2785 if (!this_._internal_display_name().empty()) {
2786 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
2787 this_._internal_display_name());
2791 return this_.MaybeComputeUnknownFieldsSize(total_size,
2792 &this_._impl_._cached_size_);
2795void Teacher::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
2796 auto*
const _this =
static_cast<Teacher*
>(&to_msg);
2797 auto& from =
static_cast<const Teacher&
>(from_msg);
2799 ABSL_DCHECK_NE(&from, _this);
2800 ::uint32_t cached_has_bits = 0;
2801 (void) cached_has_bits;
2803 _this->_internal_mutable_restricted_time_slots()->MergeFrom(from._internal_restricted_time_slots());
2804 cached_has_bits = from._impl_._has_bits_[0];
2805 if ((cached_has_bits & 0x00000001u) != 0) {
2806 if (!from._internal_display_name().empty()) {
2807 _this->_internal_set_display_name(from._internal_display_name());
2809 if (_this->_impl_.display_name_.IsDefault()) {
2810 _this->_internal_set_display_name(
"");
2814 _this->_impl_._has_bits_[0] |= cached_has_bits;
2815 _this->_internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
2820 if (&from ==
this)
return;
2826void Teacher::InternalSwap(
Teacher* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
2828 auto* arena = GetArena();
2829 ABSL_DCHECK_EQ(arena, other->GetArena());
2830 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
2831 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
2832 _impl_.restricted_time_slots_.InternalSwap(&other->_impl_.restricted_time_slots_);
2833 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.display_name_, &other->_impl_.display_name_, arena);
2837 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
2841class Student::_Internal {
2844 decltype(::std::declval<Student>()._impl_._has_bits_);
2845 static constexpr ::int32_t kHasBitsOffset =
2850#if defined(PROTOBUF_CUSTOM_VTABLE)
2853 : ::google::protobuf::Message(arena) {
2858PROTOBUF_NDEBUG_INLINE Student::Impl_::Impl_(
2859 ::google::protobuf::internal::InternalVisibility visibility,
2860 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
2861 const ::operations_research::Student& from_msg)
2862 : _has_bits_{from._has_bits_},
2864 course_indices_{visibility, arena, from.course_indices_},
2865 _course_indices_cached_byte_size_{0},
2866 display_name_(arena, from.display_name_) {}
2869 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
2870 const Student& from)
2871#if defined(PROTOBUF_CUSTOM_VTABLE)
2874 : ::google::protobuf::Message(arena) {
2878 _internal_metadata_.MergeFrom<::google::protobuf::UnknownFieldSet>(
2879 from._internal_metadata_);
2880 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
2884PROTOBUF_NDEBUG_INLINE Student::Impl_::Impl_(
2885 ::google::protobuf::internal::InternalVisibility visibility,
2886 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
2888 course_indices_{visibility, arena},
2889 _course_indices_cached_byte_size_{0},
2890 display_name_(arena) {}
2892inline void Student::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
2893 new (&
_impl_) Impl_(internal_visibility(), arena);
2899inline void Student::SharedDtor(MessageLite& self) {
2901 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
2902 ABSL_DCHECK(this_.GetArena() ==
nullptr);
2903 this_._impl_.display_name_.Destroy();
2904 this_._impl_.~Impl_();
2908 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
2909 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
2910 return ::new (mem)
Student(arena);
2913 constexpr auto arena_bits = ::google::protobuf::internal::EncodePlacementArenaOffsets({
2916 InternalGetArenaOffset(
2919 if (arena_bits.has_value()) {
2920 return ::google::protobuf::internal::MessageCreator::CopyInit(
2921 sizeof(Student), alignof(Student), *arena_bits);
2923 return ::google::protobuf::internal::MessageCreator(&Student::PlacementNew_,
2929 return ::google::protobuf::internal::ClassDataFull{
2930 ::google::protobuf::internal::ClassData{
2935 &Student::MergeImpl,
2936 ::google::protobuf::Message::GetNewImpl<Student>(),
2937#if defined(PROTOBUF_CUSTOM_VTABLE)
2938 &Student::SharedDtor,
2945 &Student::kDescriptorMethods,
2951PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
2955PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
2961PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
2962const ::_pbi::TcParseTable<1, 2, 0, 48, 2>
2968 offsetof(
decltype(_table_), field_lookup_table),
2970 offsetof(
decltype(_table_), field_entries),
2973 offsetof(
decltype(_table_), field_names),
2976 ::_pbi::TcParser::GenericFallback,
2977 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
2978 ::_pbi::TcParser::GetTable<::operations_research::Student>(),
2982 {::_pbi::TcParser::FastV32P1,
2983 {18, 63, 0, PROTOBUF_FIELD_OFFSET(
Student,
_impl_.course_indices_)}},
2985 {::_pbi::TcParser::FastUS1,
2986 {10, 0, 0, PROTOBUF_FIELD_OFFSET(
Student,
_impl_.display_name_)}},
2992 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
2994 {PROTOBUF_FIELD_OFFSET(
Student,
_impl_.course_indices_), -1, 0,
2995 (0 | ::_fl::kFcRepeated | ::_fl::kPackedInt32)},
2999 "\33\14\0\0\0\0\0\0"
3000 "operations_research.Student"
3006 ::google::protobuf::internal::TSanWrite(&
_impl_);
3007 ::uint32_t cached_has_bits = 0;
3009 (void) cached_has_bits;
3012 cached_has_bits =
_impl_._has_bits_[0];
3013 if ((cached_has_bits & 0x00000001u) != 0) {
3014 _impl_.display_name_.ClearNonDefaultToEmpty();
3016 _impl_._has_bits_.Clear();
3017 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
3020#if defined(PROTOBUF_CUSTOM_VTABLE)
3022 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
3023 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
3027 ::uint8_t* PROTOBUF_NONNULL target,
3028 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
3032 ::uint32_t cached_has_bits = 0;
3033 (void)cached_has_bits;
3036 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
3037 if (!this_._internal_display_name().empty()) {
3038 const ::std::string& _s = this_._internal_display_name();
3039 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
3040 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.Student.display_name");
3041 target = stream->WriteStringMaybeAliased(1, _s, target);
3047 int byte_size = this_._impl_._course_indices_cached_byte_size_.Get();
3048 if (byte_size > 0) {
3049 target = stream->WriteInt32Packed(
3050 2, this_._internal_course_indices(), byte_size, target);
3054 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3056 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3057 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3063#if defined(PROTOBUF_CUSTOM_VTABLE)
3071 ::size_t total_size = 0;
3073 ::uint32_t cached_has_bits = 0;
3075 (void)cached_has_bits;
3077 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3082 ::_pbi::WireFormatLite::Int32SizeWithPackedTagSize(
3083 this_._internal_course_indices(), 1,
3084 this_._impl_._course_indices_cached_byte_size_);
3089 cached_has_bits = this_._impl_._has_bits_[0];
3090 if ((cached_has_bits & 0x00000001u) != 0) {
3091 if (!this_._internal_display_name().empty()) {
3092 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
3093 this_._internal_display_name());
3097 return this_.MaybeComputeUnknownFieldsSize(total_size,
3098 &this_._impl_._cached_size_);
3101void Student::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
3102 auto*
const _this =
static_cast<Student*
>(&to_msg);
3103 auto& from =
static_cast<const Student&
>(from_msg);
3105 ABSL_DCHECK_NE(&from, _this);
3106 ::uint32_t cached_has_bits = 0;
3107 (void) cached_has_bits;
3109 _this->_internal_mutable_course_indices()->MergeFrom(from._internal_course_indices());
3110 cached_has_bits = from._impl_._has_bits_[0];
3111 if ((cached_has_bits & 0x00000001u) != 0) {
3112 if (!from._internal_display_name().empty()) {
3113 _this->_internal_set_display_name(from._internal_display_name());
3115 if (_this->
_impl_.display_name_.IsDefault()) {
3116 _this->_internal_set_display_name(
"");
3120 _this->
_impl_._has_bits_[0] |= cached_has_bits;
3121 _this->_internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
3126 if (&from ==
this)
return;
3132void Student::InternalSwap(
Student* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3134 auto* arena = GetArena();
3135 ABSL_DCHECK_EQ(arena, other->GetArena());
3136 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3137 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3138 _impl_.course_indices_.InternalSwap(&other->_impl_.course_indices_);
3139 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.display_name_, &other->_impl_.display_name_, arena);
3143 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
3147class Room::_Internal {
3150 decltype(::std::declval<Room>()._impl_._has_bits_);
3151 static constexpr ::int32_t kHasBitsOffset =
3152 8 * PROTOBUF_FIELD_OFFSET(
Room,
_impl_._has_bits_);
3156#if defined(PROTOBUF_CUSTOM_VTABLE)
3159 : ::google::protobuf::Message(arena) {
3164PROTOBUF_NDEBUG_INLINE Room::Impl_::Impl_(
3165 ::google::protobuf::internal::InternalVisibility visibility,
3166 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
const Impl_& from,
3167 const ::operations_research::Room& from_msg)
3168 : _has_bits_{from._has_bits_},
3170 display_name_(arena, from.display_name_) {}
3173 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena,
3175#if defined(PROTOBUF_CUSTOM_VTABLE)
3178 : ::google::protobuf::Message(arena) {
3182 _internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(
3183 from._internal_metadata_);
3184 new (&
_impl_) Impl_(internal_visibility(), arena, from._impl_, from);
3185 _impl_.capacity_ = from._impl_.capacity_;
3189PROTOBUF_NDEBUG_INLINE Room::Impl_::Impl_(
3190 ::google::protobuf::internal::InternalVisibility visibility,
3191 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena)
3193 display_name_(arena) {}
3195inline void Room::SharedCtor(::_pb::Arena* PROTOBUF_NULLABLE arena) {
3196 new (&
_impl_) Impl_(internal_visibility(), arena);
3203inline void Room::SharedDtor(MessageLite& self) {
3204 Room& this_ =
static_cast<Room&
>(self);
3205 this_._internal_metadata_.Delete<::google::protobuf::UnknownFieldSet>();
3206 ABSL_DCHECK(this_.GetArena() ==
nullptr);
3207 this_._impl_.display_name_.Destroy();
3208 this_._impl_.~Impl_();
3212 const void* PROTOBUF_NONNULL,
void* PROTOBUF_NONNULL mem,
3213 ::google::protobuf::Arena* PROTOBUF_NULLABLE arena) {
3214 return ::new (mem)
Room(arena);
3217 return ::google::protobuf::internal::MessageCreator::CopyInit(
sizeof(
Room),
3221 return ::google::protobuf::internal::ClassDataFull{
3222 ::google::protobuf::internal::ClassData{
3228 ::google::protobuf::Message::GetNewImpl<Room>(),
3229#if defined(PROTOBUF_CUSTOM_VTABLE)
3234 PROTOBUF_FIELD_OFFSET(
Room,
_impl_._cached_size_),
3237 &Room::kDescriptorMethods,
3243PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const
3247PROTOBUF_ATTRIBUTE_WEAK const ::google::protobuf::internal::ClassData* PROTOBUF_NONNULL
3250 ::google::protobuf::internal::PrefetchToLocalCache(
Room_class_data_.tc_table);
3253PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1
3254const ::_pbi::TcParseTable<1, 2, 0, 45, 2>
3257 PROTOBUF_FIELD_OFFSET(
Room,
_impl_._has_bits_),
3260 offsetof(
decltype(_table_), field_lookup_table),
3262 offsetof(
decltype(_table_), field_entries),
3265 offsetof(
decltype(_table_), field_names),
3268 ::_pbi::TcParser::GenericFallback,
3269 #ifdef PROTOBUF_PREFETCH_PARSE_TABLE
3270 ::_pbi::TcParser::GetTable<::operations_research::Room>(),
3274 {::_pbi::TcParser::SingularVarintNoZag1<::uint32_t, offsetof(
Room, _impl_.capacity_), 1>(),
3275 {16, 1, 0, PROTOBUF_FIELD_OFFSET(
Room, _impl_.capacity_)}},
3277 {::_pbi::TcParser::FastUS1,
3278 {10, 0, 0, PROTOBUF_FIELD_OFFSET(
Room, _impl_.display_name_)}},
3283 {PROTOBUF_FIELD_OFFSET(
Room, _impl_.display_name_), _Internal::kHasBitsOffset + 0, 0,
3284 (0 | ::_fl::kFcOptional | ::_fl::kUtf8String | ::_fl::kRepAString)},
3286 {PROTOBUF_FIELD_OFFSET(
Room, _impl_.capacity_), _Internal::kHasBitsOffset + 1, 0,
3287 (0 | ::_fl::kFcOptional | ::_fl::kInt32)},
3291 "\30\14\0\0\0\0\0\0"
3292 "operations_research.Room"
3298 ::google::protobuf::internal::TSanWrite(&
_impl_);
3299 ::uint32_t cached_has_bits = 0;
3301 (void) cached_has_bits;
3303 cached_has_bits =
_impl_._has_bits_[0];
3304 if ((cached_has_bits & 0x00000001u) != 0) {
3305 _impl_.display_name_.ClearNonDefaultToEmpty();
3308 _impl_._has_bits_.Clear();
3309 _internal_metadata_.Clear<::google::protobuf::UnknownFieldSet>();
3312#if defined(PROTOBUF_CUSTOM_VTABLE)
3314 const ::google::protobuf::MessageLite& base, ::uint8_t* PROTOBUF_NONNULL target,
3315 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream) {
3316 const Room& this_ =
static_cast<const Room&
>(base);
3319 ::uint8_t* PROTOBUF_NONNULL target,
3320 ::google::protobuf::io::EpsCopyOutputStream* PROTOBUF_NONNULL stream)
const {
3321 const Room& this_ = *
this;
3324 ::uint32_t cached_has_bits = 0;
3325 (void)cached_has_bits;
3328 if ((this_._impl_._has_bits_[0] & 0x00000001u) != 0) {
3329 if (!this_._internal_display_name().empty()) {
3330 const ::std::string& _s = this_._internal_display_name();
3331 ::google::protobuf::internal::WireFormatLite::VerifyUtf8String(
3332 _s.data(),
static_cast<int>(_s.length()), ::google::protobuf::internal::WireFormatLite::SERIALIZE,
"operations_research.Room.display_name");
3333 target = stream->WriteStringMaybeAliased(1, _s, target);
3338 if ((this_._impl_._has_bits_[0] & 0x00000002u) != 0) {
3339 if (this_._internal_capacity() != 0) {
3341 ::google::protobuf::internal::WireFormatLite::WriteInt32ToArrayWithField<2>(
3342 stream, this_._internal_capacity(), target);
3346 if (ABSL_PREDICT_FALSE(this_._internal_metadata_.have_unknown_fields())) {
3348 ::_pbi::WireFormat::InternalSerializeUnknownFieldsToArray(
3349 this_._internal_metadata_.unknown_fields<::google::protobuf::UnknownFieldSet>(::google::protobuf::UnknownFieldSet::default_instance), target, stream);
3355#if defined(PROTOBUF_CUSTOM_VTABLE)
3357 const Room& this_ =
static_cast<const Room&
>(base);
3360 const Room& this_ = *
this;
3363 ::size_t total_size = 0;
3365 ::uint32_t cached_has_bits = 0;
3367 (void)cached_has_bits;
3369 ::_pbi::Prefetch5LinesFrom7Lines(&this_);
3370 cached_has_bits = this_._impl_._has_bits_[0];
3371 if ((cached_has_bits & 0x00000003u) != 0) {
3373 if ((cached_has_bits & 0x00000001u) != 0) {
3374 if (!this_._internal_display_name().empty()) {
3375 total_size += 1 + ::google::protobuf::internal::WireFormatLite::StringSize(
3376 this_._internal_display_name());
3380 if ((cached_has_bits & 0x00000002u) != 0) {
3381 if (this_._internal_capacity() != 0) {
3382 total_size += ::_pbi::WireFormatLite::Int32SizePlusOne(
3383 this_._internal_capacity());
3387 return this_.MaybeComputeUnknownFieldsSize(total_size,
3388 &this_._impl_._cached_size_);
3391void Room::MergeImpl(::google::protobuf::MessageLite& to_msg, const ::google::protobuf::MessageLite& from_msg) {
3392 auto*
const _this =
static_cast<Room*
>(&to_msg);
3393 auto& from =
static_cast<const Room&
>(from_msg);
3395 ABSL_DCHECK_NE(&from, _this);
3396 ::uint32_t cached_has_bits = 0;
3397 (void) cached_has_bits;
3399 cached_has_bits = from._impl_._has_bits_[0];
3400 if ((cached_has_bits & 0x00000003u) != 0) {
3401 if ((cached_has_bits & 0x00000001u) != 0) {
3402 if (!from._internal_display_name().empty()) {
3403 _this->_internal_set_display_name(from._internal_display_name());
3405 if (_this->
_impl_.display_name_.IsDefault()) {
3406 _this->_internal_set_display_name(
"");
3410 if ((cached_has_bits & 0x00000002u) != 0) {
3411 if (from._internal_capacity() != 0) {
3412 _this->
_impl_.capacity_ = from._impl_.capacity_;
3416 _this->
_impl_._has_bits_[0] |= cached_has_bits;
3417 _this->_internal_metadata_.
MergeFrom<::google::protobuf::UnknownFieldSet>(from._internal_metadata_);
3422 if (&from ==
this)
return;
3428void Room::InternalSwap(
Room* PROTOBUF_RESTRICT PROTOBUF_NONNULL other) {
3430 auto* arena = GetArena();
3431 ABSL_DCHECK_EQ(arena, other->GetArena());
3432 _internal_metadata_.InternalSwap(&other->_internal_metadata_);
3433 swap(
_impl_._has_bits_[0], other->_impl_._has_bits_[0]);
3434 ::_pbi::ArenaStringPtr::InternalSwap(&
_impl_.display_name_, &other->_impl_.display_name_, arena);
3435 swap(
_impl_.capacity_, other->_impl_.capacity_);
3439 return ::google::protobuf::Message::GetMetadataImpl(
GetClassData()->full());
3448PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 static ::std::false_type
3451 ::std::false_type{});
3452#include "google/protobuf/port_undef.inc"
static PROTOBUF_ATTRIBUTE_INIT_PRIORITY2 ::std::false_type _static_init2_
@protoc_insertion_point(global_scope)
static const ::_pb::Message *PROTOBUF_NONNULL const file_default_instances[]
static constexpr ::int32_t kHasBitsOffset
friend class ::google::protobuf::MessageLite
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
static constexpr auto InternalNewImpl_()
void CopyFrom(const ClassAssignment &from)
::size_t ByteSizeLong() const final
::google::protobuf::Metadata GetMetadata() const
~ClassAssignment() PROTOBUF_FINAL
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
friend void swap(ClassAssignment &a, ClassAssignment &b)
void MergeFrom(const ClassAssignment &from)
static constexpr auto InternalGenerateClassData_()
static constexpr ::int32_t kHasBitsOffset
decltype(::std::declval< CourseSchedulingModel >()._impl_._has_bits_) HasBits
friend class ::google::protobuf::MessageLite
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const CourseSchedulingModel &from)
static constexpr auto InternalGenerateClassData_()
::size_t ByteSizeLong() const final
friend void swap(CourseSchedulingModel &a, CourseSchedulingModel &b)
static constexpr auto InternalNewImpl_()
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void CopyFrom(const CourseSchedulingModel &from)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
~CourseSchedulingModel() PROTOBUF_FINAL
decltype(::std::declval< CourseSchedulingResult >()._impl_._has_bits_) HasBits
static constexpr ::int32_t kHasBitsOffset
static constexpr auto InternalNewImpl_()
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
~CourseSchedulingResult() PROTOBUF_FINAL
void MergeFrom(const CourseSchedulingResult &from)
void CopyFrom(const CourseSchedulingResult &from)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::size_t ByteSizeLong() const final
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
static constexpr auto InternalGenerateClassData_()
static constexpr ::int32_t kHasBitsOffset
friend class ::google::protobuf::MessageLite
static constexpr auto InternalGenerateClassData_()
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::size_t ByteSizeLong() const final
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::google::protobuf::Metadata GetMetadata() const
static constexpr auto InternalNewImpl_()
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
void CopyFrom(const Course &from)
void MergeFrom(const Course &from)
friend void swap(Course &a, Course &b)
friend class ::google::protobuf::MessageLite
static constexpr auto InternalGenerateClassData_()
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
static constexpr auto InternalNewImpl_()
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::google::protobuf::Metadata GetMetadata() const
friend void swap(Room &a, Room &b)
::size_t ByteSizeLong() const final
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void CopyFrom(const Room &from)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
void MergeFrom(const Room &from)
static constexpr ::int32_t kHasBitsOffset
friend class ::google::protobuf::MessageLite
static constexpr auto InternalNewImpl_()
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::size_t ByteSizeLong() const final
::google::protobuf::Metadata GetMetadata() const
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
~StudentAssignment() PROTOBUF_FINAL
friend void swap(StudentAssignment &a, StudentAssignment &b)
const ::google::protobuf::UnknownFieldSet & unknown_fields() const ABSL_ATTRIBUTE_LIFETIME_BOUND
void MergeFrom(const StudentAssignment &from)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
void CopyFrom(const StudentAssignment &from)
static constexpr auto InternalGenerateClassData_()
static constexpr ::int32_t kHasBitsOffset
void CopyFrom(const Student &from)
friend class ::google::protobuf::MessageLite
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
void MergeFrom(const Student &from)
friend void swap(Student &a, Student &b)
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
~Student() PROTOBUF_FINAL
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
::size_t ByteSizeLong() const final
static constexpr auto InternalNewImpl_()
::google::protobuf::Metadata GetMetadata() const
static constexpr auto InternalGenerateClassData_()
static constexpr ::int32_t kHasBitsOffset
friend class ::google::protobuf::MessageLite
::uint8_t *PROTOBUF_NONNULL _InternalSerialize(::uint8_t *PROTOBUF_NONNULL target, ::google::protobuf::io::EpsCopyOutputStream *PROTOBUF_NONNULL stream) const final
::google::protobuf::Metadata GetMetadata() const
ABSL_ATTRIBUTE_REINITIALIZES void Clear() PROTOBUF_FINAL
::size_t ByteSizeLong() const final
const ::google::protobuf::internal::ClassData *PROTOBUF_NONNULL GetClassData() const PROTOBUF_FINAL
friend void swap(Teacher &a, Teacher &b)
static void *PROTOBUF_NONNULL PlacementNew_(const void *PROTOBUF_NONNULL, void *PROTOBUF_NONNULL mem, ::google::protobuf::Arena *PROTOBUF_NULLABLE arena)
static constexpr auto InternalGenerateClassData_()
void MergeFrom(const Teacher &from)
static constexpr auto InternalNewImpl_()
void CopyFrom(const Teacher &from)
~Teacher() PROTOBUF_FINAL
static const ::_pb::EnumDescriptor *PROTOBUF_NONNULL file_level_enum_descriptors_ortools_2fscheduling_2fcourse_5fscheduling_2eproto[1]
::absl::once_flag descriptor_table_ortools_2fscheduling_2fcourse_5fscheduling_2eproto_once
PROTOBUF_CONSTINITconst ::_pbi::DescriptorTable descriptor_table_ortools_2fscheduling_2fcourse_5fscheduling_2eproto
static constexprconst ::_pb::ServiceDescriptor *PROTOBUF_NONNULL *PROTOBUF_NULLABLE file_level_service_descriptors_ortools_2fscheduling_2fcourse_5fscheduling_2eproto
const ::uint32_t TableStruct_ortools_2fscheduling_2fcourse_5fscheduling_2eproto::offsets[] ABSL_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold)
In SWIG mode, we don't want anything besides these top-level includes.
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 RoomDefaultTypeInternal _Room_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 TeacherDefaultTypeInternal _Teacher_default_instance_
const ::google::protobuf::EnumDescriptor *PROTOBUF_NONNULL CourseSchedulingResultStatus_descriptor()
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StudentDefaultTypeInternal _Student_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull CourseSchedulingResult_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull ClassAssignment_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CourseSchedulingResultDefaultTypeInternal _CourseSchedulingResult_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CourseDefaultTypeInternal _Course_default_instance_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 CourseSchedulingModelDefaultTypeInternal _CourseSchedulingModel_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Student_class_data_
PROTOBUF_CONSTINIT const uint32_t CourseSchedulingResultStatus_internal_data_[]
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Teacher_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 StudentAssignmentDefaultTypeInternal _StudentAssignment_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Room_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull CourseSchedulingModel_class_data_
PROTOBUF_ATTRIBUTE_NO_DESTROY PROTOBUF_CONSTINIT OR_PROTO_DLL PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 ClassAssignmentDefaultTypeInternal _ClassAssignment_default_instance_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull Course_class_data_
PROTOBUF_CONSTINIT PROTOBUF_ATTRIBUTE_INIT_PRIORITY1 const::google::protobuf::internal::ClassDataFull StudentAssignment_class_data_
CourseSchedulingResultStatus
static constexpr ::_pbi::MigrationSchema *PROTOBUF_NULLABLE schemas
PROTOBUF_CONSTEXPR ClassAssignmentDefaultTypeInternal()
~ClassAssignmentDefaultTypeInternal()
ClassAssignment _instance
~CourseDefaultTypeInternal()
PROTOBUF_CONSTEXPR CourseDefaultTypeInternal()
~CourseSchedulingModelDefaultTypeInternal()
CourseSchedulingModel _instance
PROTOBUF_CONSTEXPR CourseSchedulingModelDefaultTypeInternal()
CourseSchedulingResult _instance
PROTOBUF_CONSTEXPR CourseSchedulingResultDefaultTypeInternal()
~CourseSchedulingResultDefaultTypeInternal()
PROTOBUF_CONSTEXPR RoomDefaultTypeInternal()
~RoomDefaultTypeInternal()
PROTOBUF_CONSTEXPR StudentAssignmentDefaultTypeInternal()
StudentAssignment _instance
~StudentAssignmentDefaultTypeInternal()
PROTOBUF_CONSTEXPR StudentDefaultTypeInternal()
~StudentDefaultTypeInternal()
~TeacherDefaultTypeInternal()
PROTOBUF_CONSTEXPR TeacherDefaultTypeInternal()