diff options
Diffstat (limited to 'src/google/protobuf/map_entry.h')
-rw-r--r-- | src/google/protobuf/map_entry.h | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/src/google/protobuf/map_entry.h b/src/google/protobuf/map_entry.h index 801def97..fbc792f3 100644 --- a/src/google/protobuf/map_entry.h +++ b/src/google/protobuf/map_entry.h @@ -35,10 +35,17 @@ #include <google/protobuf/map_entry_lite.h> #include <google/protobuf/map_type_handler.h> #include <google/protobuf/metadata.h> +#include <google/protobuf/port.h> #include <google/protobuf/reflection_ops.h> #include <google/protobuf/unknown_field_set.h> #include <google/protobuf/wire_format_lite_inl.h> +#include <google/protobuf/port_def.inc> + +#ifdef SWIG +#error "You cannot SWIG proto headers" +#endif + namespace google { namespace protobuf { class Arena; @@ -48,8 +55,10 @@ template <typename Derived, typename Key, typename Value, WireFormatLite::FieldType kValueFieldType, int default_enum_value> class MapField; } -} +} // namespace protobuf +} // namespace google +namespace google { namespace protobuf { namespace internal { @@ -95,10 +104,24 @@ class MapEntry typedef void InternalArenaConstructable_; typedef void DestructorSkippable_; + typedef + typename MapEntryImpl<Derived, Message, Key, Value, kKeyFieldType, + kValueFieldType, default_enum_value>::KeyTypeHandler + KeyTypeHandler; + typedef typename MapEntryImpl< + Derived, Message, Key, Value, kKeyFieldType, kValueFieldType, + default_enum_value>::ValueTypeHandler ValueTypeHandler; + size_t SpaceUsedLong() const override { + size_t size = sizeof(Derived); + size += KeyTypeHandler::SpaceUsedInMapEntryLong(this->key_); + size += ValueTypeHandler::SpaceUsedInMapEntryLong(this->value_); + return size; + } + InternalMetadataWithArena _internal_metadata_; private: - friend class ::google::protobuf::Arena; + friend class ::PROTOBUF_NAMESPACE_ID::Arena; template <typename C, typename K, typename V, WireFormatLite::FieldType k_wire_type, WireFormatLite::FieldType, int default_enum> @@ -135,6 +158,8 @@ struct DeconstructMapEntry<MapEntry<Derived, K, V, key, value, default_enum> > { } // namespace internal } // namespace protobuf - } // namespace google + +#include <google/protobuf/port_undef.inc> + #endif // GOOGLE_PROTOBUF_MAP_ENTRY_H__ |