Index type based in boost::intrusive::set. More...
#include <interprocess_fwd.hpp>
Public Types | |
typedef index_type::iterator | iterator |
typedef index_type::const_iterator | const_iterator |
typedef index_type::insert_commit_data | insert_commit_data |
typedef index_type::value_type | value_type |
typedef index_type::bucket_ptr | bucket_ptr |
typedef index_type::bucket_type | bucket_type |
typedef index_type::bucket_traits | bucket_traits |
typedef index_type::size_type | size_type |
Public Member Functions | |
iunordered_set_index (segment_manager_base *mngr) | |
Constructor. More... | |
~iunordered_set_index () | |
void | reserve (size_type new_n) |
This reserves memory to optimize the insertion of n elements in the index. More... | |
void | shrink_to_fit () |
This tries to free unused memory previously allocated. More... | |
iterator | find (const intrusive_compare_key_type &key) |
const_iterator | find (const intrusive_compare_key_type &key) const |
std::pair< iterator, bool > | insert_check (const intrusive_compare_key_type &key, insert_commit_data &commit_data) |
iterator | insert_commit (value_type &val, insert_commit_data &commit_data) |
Private Attributes | |
allocator_type | alloc |
bucket_type | init_bucket |
Index type based in boost::intrusive::set.
Just derives from boost::intrusive::set and defines the interface needed by managed memory segments
typedef index_type::bucket_ptr boost::interprocess::iunordered_set_index< MapConfig >::bucket_ptr |
typedef index_type::bucket_traits boost::interprocess::iunordered_set_index< MapConfig >::bucket_traits |
typedef index_type::bucket_type boost::interprocess::iunordered_set_index< MapConfig >::bucket_type |
typedef index_type::const_iterator boost::interprocess::iunordered_set_index< MapConfig >::const_iterator |
typedef index_type::insert_commit_data boost::interprocess::iunordered_set_index< MapConfig >::insert_commit_data |
typedef index_type::iterator boost::interprocess::iunordered_set_index< MapConfig >::iterator |
typedef index_type::size_type boost::interprocess::iunordered_set_index< MapConfig >::size_type |
typedef index_type::value_type boost::interprocess::iunordered_set_index< MapConfig >::value_type |
|
inline |
Constructor.
Takes a pointer to the segment manager. Can throw
|
inline |
|
inline |
References boost::algorithm::find().
|
inline |
References boost::algorithm::find().
|
inline |
|
inline |
|
inline |
This reserves memory to optimize the insertion of n elements in the index.
References boost::interprocess::iunordered_set_index_aux< MapConfig >::allocator_holder::init_bucket.
Referenced by boost::interprocess::iunordered_set_index< MapConfig >::insert_commit().
|
inline |
This tries to free unused memory previously allocated.
References boost::interprocess::iunordered_set_index_aux< MapConfig >::allocator_holder::init_bucket, and boost::size().