CAF 0.17.6
Loading...
Searching...
No Matches
caf::dictionary< V > Class Template Reference

Maps strings to values of type V, but unlike std::map<std::string, V> accepts string_view for looking up keys efficiently. More...

#include <dictionary.hpp>

Public Types

using map_type = std::map<std::string, V>
using key_type = typename map_type::key_type
using mapped_type = typename map_type::mapped_type
using value_type = typename map_type::value_type
using allocator_type = typename map_type::allocator_type
using size_type = typename map_type::size_type
using difference_type = typename map_type::difference_type
using reference = typename map_type::reference
using const_reference = typename map_type::const_reference
using pointer = typename map_type::pointer
using const_pointer = typename map_type::const_pointer
using iterator = typename map_type::iterator
using const_iterator = typename map_type::const_iterator
using reverse_iterator = typename map_type::reverse_iterator
using const_reverse_iterator = typename map_type::const_reverse_iterator
using iterator_bool_pair = std::pair<iterator, bool>

Public Member Functions

 dictionary (dictionary &&)=default
 dictionary (const dictionary &)=default
 dictionary (std::initializer_list< value_type > xs)
template<class InputIterator>
 dictionary (InputIterator first, InputIterator last)
dictionary & operator= (dictionary &&)=default
dictionary & operator= (const dictionary &)=default
iterator begin () noexcept
const_iterator begin () const noexcept
const_iterator cbegin () const noexcept
reverse_iterator rbegin () noexcept
const_reverse_iterator rbegin () const noexcept
const_reverse_iterator crbegin () const noexcept
iterator end () noexcept
const_iterator end () const noexcept
const_iterator cend () const noexcept
reverse_iterator rend () noexcept
const_reverse_iterator rend () const noexcept
const_reverse_iterator crend () const noexcept
bool empty () const noexcept
size_type size () const noexcept
map_type & container () noexcept
 Gives raw access to the underlying container.
const map_type & container () const noexcept
 Gives raw access to the underlying container.
void clear () noexcept
void swap (dictionary &other)
template<class K, class T>
iterator_bool_pair emplace (K &&key, T &&value)
iterator_bool_pair insert (value_type kvp)
iterator insert (iterator hint, value_type kvp)
template<class T>
iterator_bool_pair insert (string_view key, T &&value)
template<class K, class T>
iterator emplace_hint (iterator hint, K &&key, T &&value)
template<class T>
iterator insert (iterator hint, string_view key, T &&value)
void insert (const_iterator first, const_iterator last)
template<class T>
iterator_bool_pair insert_or_assign (string_view key, T &&value)
template<class T>
iterator insert_or_assign (iterator hint, string_view key, T &&value)
bool contains (string_view key) const noexcept
size_t count (string_view key) const noexcept
iterator find (string_view key) noexcept
const_iterator find (string_view key) const noexcept
iterator lower_bound (string_view key)
const_iterator lower_bound (string_view key) const
iterator upper_bound (string_view key)
const_iterator upper_bound (string_view key) const
mapped_type & operator[] (string_view key)

Detailed Description

template<class V>
class caf::dictionary< V >

Maps strings to values of type V, but unlike std::map<std::string, V> accepts string_view for looking up keys efficiently.


The documentation for this class was generated from the following file: