class RustMapHelper

Defined at line 1171 of file ../../third_party/protobuf/src/google/protobuf/map.h

The purpose of this class is to give the Rust implementation visibility into

some of the internals of C++ proto maps. We need access to these internals

to be able to implement Rust map operations without duplicating the same

functionality for every message type.

Public Methods

template <typename Key, typename Value>
MapNodeSizeInfoT SizeInfo ()

Defined at line 1177 of file ../../third_party/protobuf/src/google/protobuf/map.h

NodeBase * AllocNode (UntypedMapBase * m, MapNodeSizeInfoT size_info)

Defined at line 1186 of file ../../third_party/protobuf/src/google/protobuf/map.h

void DeallocNode (UntypedMapBase * m, NodeBase * node, MapNodeSizeInfoT size_info)

Defined at line 1190 of file ../../third_party/protobuf/src/google/protobuf/map.h

template <typename Map, typename Key>
NodeAndBucket FindHelper (Map * m, Key key)

Defined at line 1196 of file ../../third_party/protobuf/src/google/protobuf/map.h

template <typename Map>
typename Map::KeyNode * InsertOrReplaceNode (Map * m, NodeBase * node)

Defined at line 1201 of file ../../third_party/protobuf/src/google/protobuf/map.h

template <typename Map>
void EraseNoDestroy (Map * m, map_index_t bucket, NodeBase * node)

Defined at line 1206 of file ../../third_party/protobuf/src/google/protobuf/map.h

google::protobuf::MessageLite * PlacementNew (const MessageLite * prototype, void * mem)

Defined at line 1210 of file ../../third_party/protobuf/src/google/protobuf/map.h

void DestroyMessage (MessageLite * m)

Defined at line 1215 of file ../../third_party/protobuf/src/google/protobuf/map.h

void ClearTable (UntypedMapBase * m, ClearInput input)

Defined at line 1217 of file ../../third_party/protobuf/src/google/protobuf/map.h

bool IsGlobalEmptyTable (const UntypedMapBase * m)

Defined at line 1221 of file ../../third_party/protobuf/src/google/protobuf/map.h

Enumerations

enum 
Name Value
kKeyIsString UntypedMapBase::kKeyIsString
kValueIsProto UntypedMapBase::kValueIsProto

Defined at line 1181 of file ../../third_party/protobuf/src/google/protobuf/map.h