#include <hashed_index_fwd.hpp>
Public Types | |
typedef KeyFromValue::result_type | key_type |
typedef node_type::value_type | value_type |
typedef KeyFromValue | key_from_value |
typedef Hash | hasher |
typedef Pred | key_equal |
typedef tuple< std::size_t, key_from_value, hasher, key_equal > | ctor_args |
typedef super::final_allocator_type | allocator_type |
typedef allocator_type::pointer | pointer |
typedef allocator_type::const_pointer | const_pointer |
typedef allocator_type::reference | reference |
typedef allocator_type::const_reference | const_reference |
typedef std::size_t | size_type |
typedef std::ptrdiff_t | difference_type |
typedef hashed_index_iterator < node_type, bucket_array_type, hashed_index_global_iterator_tag > | iterator |
typedef iterator | const_iterator |
typedef hashed_index_iterator < node_type, bucket_array_type, hashed_index_local_iterator_tag > | local_iterator |
typedef local_iterator | const_local_iterator |
typedef TagList | tag_list |
Public Member Functions | |
hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > & | operator= (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x) |
hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > & | operator= (std::initializer_list< value_type > list) |
allocator_type | get_allocator () const BOOST_NOEXCEPT |
bool | empty () const BOOST_NOEXCEPT |
size_type | size () const BOOST_NOEXCEPT |
size_type | max_size () const BOOST_NOEXCEPT |
iterator | begin () BOOST_NOEXCEPT |
const_iterator | begin () const BOOST_NOEXCEPT |
iterator | end () BOOST_NOEXCEPT |
const_iterator | end () const BOOST_NOEXCEPT |
const_iterator | cbegin () const BOOST_NOEXCEPT |
const_iterator | cend () const BOOST_NOEXCEPT |
iterator | iterator_to (const value_type &x) |
const_iterator | iterator_to (const value_type &x) const |
BOOST_MULTI_INDEX_OVERLOADS_TO_VARTEMPL (emplace_return_type, emplace, emplace_impl) BOOST_MULTI_INDEX_OVERLOADS_TO_VARTEMPL_EXTRA_ARG(iterator | |
position std::pair< iterator, bool > | insert (const value_type &x) |
std::pair< iterator, bool > | insert (BOOST_RV_REF(value_type) x) |
iterator | insert (iterator position, const value_type &x) |
iterator | insert (iterator position, BOOST_RV_REF(value_type) x) |
template<typename InputIterator > | |
void | insert (InputIterator first, InputIterator last) |
void | insert (std::initializer_list< value_type > list) |
iterator | erase (iterator position) |
size_type | erase (key_param_type k) |
iterator | erase (iterator first, iterator last) |
bool | replace (iterator position, const value_type &x) |
bool | replace (iterator position, BOOST_RV_REF(value_type) x) |
template<typename Modifier > | |
bool | modify (iterator position, Modifier mod) |
template<typename Modifier , typename Rollback > | |
bool | modify (iterator position, Modifier mod, Rollback back_) |
template<typename Modifier > | |
bool | modify_key (iterator position, Modifier mod) |
template<typename Modifier , typename Rollback > | |
bool | modify_key (iterator position, Modifier mod, Rollback back_) |
void | clear () BOOST_NOEXCEPT |
void | swap (hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x) |
key_from_value | key_extractor () const |
hasher | hash_function () const |
key_equal | key_eq () const |
template<typename CompatibleKey > | |
iterator | find (const CompatibleKey &k) const |
template<typename CompatibleKey , typename CompatibleHash , typename CompatiblePred > | |
iterator | find (const CompatibleKey &k, const CompatibleHash &hash, const CompatiblePred &eq) const |
template<typename CompatibleKey > | |
size_type | count (const CompatibleKey &k) const |
template<typename CompatibleKey , typename CompatibleHash , typename CompatiblePred > | |
size_type | count (const CompatibleKey &k, const CompatibleHash &hash, const CompatiblePred &eq) const |
template<typename CompatibleKey > | |
std::pair< iterator, iterator > | equal_range (const CompatibleKey &k) const |
template<typename CompatibleKey , typename CompatibleHash , typename CompatiblePred > | |
std::pair< iterator, iterator > | equal_range (const CompatibleKey &k, const CompatibleHash &hash, const CompatiblePred &eq) const |
size_type | bucket_count () const BOOST_NOEXCEPT |
size_type | max_bucket_count () const BOOST_NOEXCEPT |
size_type | bucket_size (size_type n) const |
size_type | bucket (key_param_type k) const |
local_iterator | begin (size_type n) |
const_local_iterator | begin (size_type n) const |
local_iterator | end (size_type n) |
const_local_iterator | end (size_type) const |
const_local_iterator | cbegin (size_type n) const |
const_local_iterator | cend (size_type n) const |
local_iterator | local_iterator_to (const value_type &x) |
const_local_iterator | local_iterator_to (const value_type &x) const |
float | load_factor () const BOOST_NOEXCEPT |
float | max_load_factor () const BOOST_NOEXCEPT |
void | max_load_factor (float z) |
void | rehash (size_type n) |
void | reserve (size_type n) |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | key (tuples::get< 1 >(args_list.get_head())) |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | hash_ (tuples::get< 2 >(args_list.get_head())) |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | eq_ (tuples::get< 3 >(args_list.get_head())) |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | buckets (al, header() ->impl(), tuples::get< 0 >(args_list.get_head())) |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | mlf (1.0f) |
hashed_index (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x) | |
hashed_index (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x, do_not_copy_elements_tag) | |
~hashed_index () | |
iterator | make_iterator (node_type *node) |
const_iterator | make_iterator (node_type *node) const |
local_iterator | make_local_iterator (node_type *node) |
const_local_iterator | make_local_iterator (node_type *node) const |
void | copy_ (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x, const copy_map_type &map) |
void | copy_ (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x, const copy_map_type &map, hashed_unique_tag) |
void | copy_ (const hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x, const copy_map_type &map, hashed_non_unique_tag) |
template<typename Variant > | |
final_node_type * | insert_ (value_param_type v, final_node_type *&x, Variant variant) |
template<typename Variant > | |
final_node_type * | insert_ (value_param_type v, node_type *position, final_node_type *&x, Variant variant) |
void | erase_ (node_type *x) |
void | delete_all_nodes_ () |
void | delete_all_nodes_ (hashed_unique_tag) |
void | delete_all_nodes_ (hashed_non_unique_tag) |
void | clear_ () |
void | swap_ (hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x) |
void | swap_elements_ (hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category > &x) |
template<typename Variant > | |
bool | replace_ (value_param_type v, node_type *x, Variant variant) |
bool | modify_ (node_type *x) |
bool | modify_rollback_ (node_type *x) |
bool | equals (const hashed_index &x) const |
bool | equals (const hashed_index &x, hashed_unique_tag) const |
bool | equals (const hashed_index &x, hashed_non_unique_tag) const |
template<typename Archive > | |
void | save_ (Archive &ar, const unsigned int version, const index_saver_type &sm) const |
template<typename Archive > | |
void | load_ (Archive &ar, const unsigned int version, const index_loader_type &lm) |
Public Attributes | |
emplace_hint | |
emplace_hint_impl | |
iterator | |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS | __pad0__: hashed_index(const ctor_args_list& args_list |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type & | al: super(args_list.get_tail() |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type | al |
Protected Types | |
typedef hashed_index_node < typename super::node_type, Category > | node_type |
typedef super::final_node_type | final_node_type |
typedef tuples::cons < ctor_args, typename super::ctor_args_list > | ctor_args_list |
typedef mpl::push_front < typename super::index_type_list, hashed_index >::type | index_type_list |
typedef mpl::push_front < typename super::iterator_type_list, iterator >::type | iterator_type_list |
typedef mpl::push_front < typename super::const_iterator_type_list, const_iterator >::type | const_iterator_type_list |
typedef super::copy_map_type | copy_map_type |
typedef super::index_saver_type | index_saver_type |
typedef super::index_loader_type | index_loader_type |
Friends | |
template<typename K , typename H , typename P , typename S , typename T , typename C > | |
bool | operator== (const hashed_index< K, H, P, S, T, C > &, const hashed_index< K, H, P, S, T, C > &y) |
typedef super::final_allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::allocator_type |
typedef iterator boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::const_iterator |
|
protected |
typedef local_iterator boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::const_local_iterator |
typedef allocator_type::const_pointer boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::const_pointer |
typedef allocator_type::const_reference boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::const_reference |
|
protected |
typedef tuple<std::size_t, key_from_value,hasher,key_equal> boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::ctor_args |
|
protected |
typedef std::ptrdiff_t boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::difference_type |
|
protected |
typedef Hash boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::hasher |
|
protected |
|
protected |
|
protected |
typedef hashed_index_iterator< node_type,bucket_array_type, hashed_index_global_iterator_tag> boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::iterator |
|
protected |
typedef Pred boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::key_equal |
typedef KeyFromValue boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::key_from_value |
typedef KeyFromValue::result_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::key_type |
typedef hashed_index_iterator< node_type,bucket_array_type, hashed_index_local_iterator_tag> boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::local_iterator |
|
protected |
typedef allocator_type::pointer boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::pointer |
typedef allocator_type::reference boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::reference |
typedef std::size_t boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::size_type |
typedef TagList boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::tag_list |
typedef node_type::value_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::value_type |
|
inline |
|
inline |
|
inline |
|
inline |
References boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::make_iterator(), boost::next(), and boost::prior().
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::cbegin(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equals().
|
inline |
|
inline |
|
inline |
boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::BOOST_MULTI_INDEX_OVERLOADS_TO_VARTEMPL | ( | emplace_return_type | , |
emplace | , | ||
emplace_impl | |||
) |
|
inline |
|
inline |
|
inline |
References boost::flyweights::x.
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::buckets | ( | al | , |
header() ->impl() | , | ||
tuples::get< 0 > | args_list.get_head() | ||
) |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT.
|
inline |
References boost::msm::front::euml::clear_.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References boost::flyweights::x, and boost::polygon::y().
|
inline |
References boost::xpressive::first, boost::flyweights::x, and boost::polygon::y().
|
inline |
|
inline |
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::cend(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equal_range(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equals(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::find().
|
inline |
|
inline |
|
inline |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::eq_ | ( | tuples::get< 3 > | args_list.get_head() | ) |
|
inline |
|
inline |
References boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::tuples::detail::eq(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::make_iterator(), boost::program_options::value(), and boost::flyweights::x.
|
inline |
|
inline |
References boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::find(), boost::it, and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::size().
|
inline |
References boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), count, boost::fusion::distance(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equal_range(), boost::algorithm::find(), boost::it, boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::make_iterator(), boost::expressions::matches(), boost::graph::distributed::scan(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::size().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::tuples::detail::eq(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::make_iterator(), boost::program_options::value(), and boost::flyweights::x.
|
inline |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::hash_ | ( | tuples::get< 2 > | args_list.get_head() | ) |
|
inline |
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT, boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::make_iterator(), and boost::multiprecision::backends::p.
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::insert().
|
inline |
|
inline |
|
inline |
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT, boost::xpressive::first, and boost::last.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::key | ( | tuples::get< 1 > | args_list.get_head() | ) |
|
inline |
|
inline |
|
inline |
References boost::serialization::make_nvp().
|
inline |
|
inline |
|
inline |
|
inline |
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equal_range(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equals(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::find(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::insert(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::iterator_to().
|
inline |
|
inline |
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::begin(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::end(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::local_iterator_to().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT.
|
inline |
|
inline |
|
inline |
|
inline |
References BOOST_CATCH, BOOST_CATCH_END, BOOST_RETHROW, and BOOST_TRY.
|
inline |
|
inline |
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT, boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::bucket_count(), boost::accumulators::extract::max, boost::n, and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::size().
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::reserve().
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT.
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT.
|
inline |
References BOOST_CATCH, BOOST_CATCH_END, BOOST_RETHROW, and BOOST_TRY.
|
inline |
|
inline |
References boost::serialization::make_nvp().
|
inline |
Referenced by boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::copy_(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::equals(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::insert_(), boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::load_factor(), and boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::rehash().
|
inline |
References BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT, and BOOST_MULTI_INDEX_HASHED_INDEX_CHECK_INVARIANT_OF.
Referenced by boost::multi_index::detail::swap().
|
inline |
References boost::multi_index::detail::swap(), and boost::msm::front::euml::swap_.
|
inline |
References boost::multi_index::detail::swap().
|
friend |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::__pad0__ |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type& boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::al |
BOOST_MULTI_INDEX_PROTECTED_IF_MEMBER_TEMPLATE_FRIENDS const allocator_type boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::al |
boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::emplace_hint |
boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::emplace_hint_impl |
boost::multi_index::detail::hashed_index< KeyFromValue, Hash, Pred, SuperMeta, TagList, Category >::iterator |