Vcsn  2.2a
Be Rational
vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual > Class Template Reference

Weighted set: general, unordered, case. More...

#include <wet.hh>

Collaboration diagram for vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >:

Public Types

using self_t = wet_unordered_map
 
using key_t = Key
 
using value_t = Value
 
using welement_t = welement< key_t, value_t >
 
using value_type = typename map_t::value_type
 
using iterator = typename map_t::iterator
 
using const_iterator = typename map_t::const_iterator
 

Public Member Functions

 wet_unordered_map ()=default
 
 wet_unordered_map (std::initializer_list< value_type > l)
 
void set (const key_t &k, const value_t &v)
 
void set (const iterator &i, const value_t &v)
 
template<typename Fun >
void for_each (Fun f) const
 
template<typename... Args>
auto emplace (Args &&...args) -> decltype(map_.emplace(std::forward< Args >(args)...))
 
template<typename... Args>
auto clear (Args &&...args) -> decltype(map_.clear(std::forward< Args >(args)...))
 
template<typename... Args>
auto begin (Args &&...args) const -> decltype(map_.begin(std::forward< Args >(args)...))
 
template<typename... Args>
auto find (Args &&...args) const -> decltype(map_.find(std::forward< Args >(args)...))
 
template<typename... Args>
auto find (Args &&...args) -> decltype(map_.find(std::forward< Args >(args)...))
 
template<typename... Args>
auto erase (Args &&...args) -> decltype(map_.erase(std::forward< Args >(args)...))
 
template<typename... Args>
auto end (Args &&...args) const -> decltype(map_.end(std::forward< Args >(args)...))
 
template<typename... Args>
auto begin (Args &&...args) -> decltype(map_.begin(std::forward< Args >(args)...))
 
template<typename... Args>
auto end (Args &&...args) -> decltype(map_.end(std::forward< Args >(args)...))
 
template<typename... Args>
auto empty (Args &&...args) const -> decltype(map_.empty(std::forward< Args >(args)...))
 
template<typename... Args>
auto size (Args &&...args) const -> decltype(map_.size(std::forward< Args >(args)...))
 

Static Public Member Functions

static const key_tkey_of (const value_type &p)
 
static const value_tvalue_of (const value_type &p)
 

Static Public Attributes

static constexpr wet_kind_t kind = wet_kind_t::unordered_map
 

Private Types

using map_t = std::unordered_map< Key, Value, Hash, KeyEqual >
 

Private Attributes

map_t map_
 

Detailed Description

template<typename Key, typename Value, typename Hash, typename KeyEqual>
class vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >

Weighted set: general, unordered, case.

Definition at line 316 of file wet.hh.

Member Typedef Documentation

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::const_iterator = typename map_t::const_iterator

Definition at line 330 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::iterator = typename map_t::iterator

Definition at line 329 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::key_t = Key

Definition at line 325 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::map_t = std::unordered_map<Key, Value, Hash, KeyEqual>
private

Definition at line 319 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::self_t = wet_unordered_map

Definition at line 323 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::value_t = Value

Definition at line 326 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::value_type = typename map_t::value_type

Definition at line 328 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
using vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::welement_t = welement<key_t, value_t>

Definition at line 327 of file wet.hh.

Constructor & Destructor Documentation

template<typename Key , typename Value , typename Hash , typename KeyEqual >
vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::wet_unordered_map ( )
default
template<typename Key , typename Value , typename Hash , typename KeyEqual >
vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::wet_unordered_map ( std::initializer_list< value_type l)
inline

Definition at line 334 of file wet.hh.

Member Function Documentation

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::begin ( Args &&...  args) const -> decltype(map_. begin (std::forward<Args>(args)...))
inline
template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::begin ( Args &&...  args) -> decltype(map_. begin (std::forward<Args>(args)...))
inline

Definition at line 381 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::clear ( Args &&...  args) -> decltype(map_. clear (std::forward<Args>(args)...))
inline

Definition at line 375 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::emplace ( Args &&...  args) -> decltype(map_. emplace (std::forward<Args>(args)...))
inline

Definition at line 374 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::empty ( Args &&...  args) const -> decltype(map_. empty (std::forward<Args>(args)...))
inline

Definition at line 383 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::end ( Args &&...  args) const -> decltype(map_. end (std::forward<Args>(args)...))
inline
template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::end ( Args &&...  args) -> decltype(map_. end (std::forward<Args>(args)...))
inline

Definition at line 382 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::erase ( Args &&...  args) -> decltype(map_. erase (std::forward<Args>(args)...))
inline

Definition at line 379 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::find ( Args &&...  args) const -> decltype(map_. find (std::forward<Args>(args)...))
inline

Definition at line 377 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::find ( Args &&...  args) -> decltype(map_. find (std::forward<Args>(args)...))
inline

Definition at line 378 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename Fun >
void vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::for_each ( Fun  f) const
inline

Definition at line 359 of file wet.hh.

References vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::begin(), and vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::end().

Here is the call graph for this function:

template<typename Key , typename Value , typename Hash , typename KeyEqual >
static const key_t& vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::key_of ( const value_type p)
inlinestatic

Definition at line 338 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
void vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::set ( const key_t k,
const value_t v 
)
inline

Definition at line 348 of file wet.hh.

References vcsn::detail::v.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
void vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::set ( const iterator i,
const value_t v 
)
inline

Definition at line 353 of file wet.hh.

References vcsn::detail::v.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
template<typename... Args>
auto vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::size ( Args &&...  args) const -> decltype(map_. size (std::forward<Args>(args)...))
inline

Definition at line 384 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
static const value_t& vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::value_of ( const value_type p)
inlinestatic

Definition at line 343 of file wet.hh.

Member Data Documentation

template<typename Key , typename Value , typename Hash , typename KeyEqual >
constexpr wet_kind_t vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::kind = wet_kind_t::unordered_map
static

Definition at line 324 of file wet.hh.

template<typename Key , typename Value , typename Hash , typename KeyEqual >
map_t vcsn::detail::wet_unordered_map< Key, Value, Hash, KeyEqual >::map_
private

Definition at line 320 of file wet.hh.


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