template <typename Key, typename T>

class Map

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

Map is an associative container type used to store protobuf map

fields. Each Map instance may or may not use a different hash function, a

different iteration order, and so on. E.g., please don't examine

implementation details to decide if the following would work:

Map

<int

, int> m0, m1;

m0[0] = m1[0] = m0[1] = m1[1] = 0;

assert(m0.begin()->first == m1.begin()->first); // Bug!

Map's interface is similar to std::unordered_map, except that Map is not

designed to play well with exceptions.

Public Methods

void Map<Key, T> ()

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

void Map<Key, T> (const Map<Key, T> & other)

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

void Map<Key, T> (Arena * arena)

Internal Arena constructors: do not use!

TODO: remove non internal ctors

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

void Map<Key, T> (internal::InternalVisibility , Arena * arena)

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

void Map<Key, T> (internal::InternalVisibility , Arena * arena, const Map<Key, T> & other)

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

void Map<Key, T> (Map<Key, T> && other)

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

Map<Key, T> & operator= (Map<Key, T> && other)

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

template <class InputIt>
void Map<Key, T> (const InputIt & first, const InputIt & last)

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

void ~Map<Key, T> ()

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

iterator begin ()

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

iterator end ()

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

const_iterator begin ()

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

const_iterator end ()

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

const_iterator cbegin ()

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

const_iterator cend ()

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

template <typename K = key_type>
T & operator[] (const key_arg<K> & key)

Element access

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

template <typename K = key_type, typename = typename std::enable_if<!std::is_integral<K>::value>::type>
T & operator[] (key_arg<K> && key)

Disable for integral types to reduce code bloat.

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

template <typename K = key_type>
const T & at (const key_arg<K> & key)

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

template <typename K = key_type>
T & at (const key_arg<K> & key)

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

template <typename K = key_type>
size_type count (const key_arg<K> & key)

Lookup

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

template <typename K = key_type>
const_iterator find (const key_arg<K> & key)

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

template <typename K = key_type>
iterator find (const key_arg<K> & key)

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

template <typename K = key_type>
bool contains (const key_arg<K> & key)

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

template <typename K = key_type>
std::pair<const_iterator, const_iterator> equal_range (const key_arg<K> & key)

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

template <typename K = key_type>
std::pair<iterator, iterator> equal_range (const key_arg<K> & key)

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

template <typename K, typename... Args>
std::pair<iterator, bool> try_emplace (K && k, Args &&... args)

insert

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

std::pair<iterator, bool> insert (init_type && value)

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

template <typename P, RequiresInsertable<P> = 0>
std::pair<iterator, bool> insert (P && value)

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

template <typename... Args>
std::pair<iterator, bool> emplace (Args &&... args)

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

template <class InputIt>
void insert (InputIt first, InputIt last)

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

void insert (std::initializer_list<init_type> values)

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

template <typename P, RequiresNotInit<P> = 0, RequiresInsertable<const P&> = 0>
void insert (std::initializer_list<P> values)

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

template <typename K = key_type>
size_type erase (const key_arg<K> & key)

Erase and clear

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

iterator erase (iterator pos)

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

void erase (iterator first, iterator last)

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

void clear ()

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

Map<Key, T> & operator= (const Map<Key, T> & other)

Assign

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

void swap (Map<Key, T> & other)

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

void InternalSwap (Map<Key, T> * other)

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

hasher hash_function ()

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

size_t SpaceUsedExcludingSelfLong ()

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

size_t InternalGetArenaOffset (internal::InternalVisibility )

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

Records

Friends

template <typename Key, typename T>
class RustMapHelper
template <typename Key, typename T>
class MapBenchmarkPeer
template <typename Key, typename T>
class MapTestPeer
template <typename Key, typename T>
class TcParser
template <typename K, typename V>
class MapFieldLite
template <typename, typename>
class TypeDefinedMapFieldBase
template <typename Keytypename T>
class Arena