diff options
Diffstat (limited to 'upbc/message_layout.h')
-rw-r--r-- | upbc/message_layout.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/upbc/message_layout.h b/upbc/message_layout.h index a4cb289..c2446a0 100644 --- a/upbc/message_layout.h +++ b/upbc/message_layout.h @@ -2,8 +2,8 @@ #ifndef UPBC_MESSAGE_LAYOUT_H #define UPBC_MESSAGE_LAYOUT_H -#include <unordered_map> #include "absl/base/macros.h" +#include "absl/container/flat_hash_map.h" #include "google/protobuf/descriptor.h" namespace upbc { @@ -70,7 +70,7 @@ class MessageLayout { Size Place(SizeAndAlign size_and_align); template <class K, class V> - static V GetMapValue(const std::unordered_map<K, V>& map, K key) { + static V GetMapValue(const absl::flat_hash_map<K, V>& map, K key) { auto iter = map.find(key); if (iter == map.end()) { fprintf(stderr, "No value for field.\n"); @@ -92,11 +92,11 @@ class MessageLayout { static int64_t FieldLayoutRank( const google::protobuf::FieldDescriptor* field); - std::unordered_map<const google::protobuf::FieldDescriptor*, Size> + absl::flat_hash_map<const google::protobuf::FieldDescriptor*, Size> field_offsets_; - std::unordered_map<const google::protobuf::FieldDescriptor*, int> + absl::flat_hash_map<const google::protobuf::FieldDescriptor*, int> hasbit_indexes_; - std::unordered_map<const google::protobuf::OneofDescriptor*, Size> + absl::flat_hash_map<const google::protobuf::OneofDescriptor*, Size> oneof_case_offsets_; Size maxalign_; Size size_; |