/// Michael's ordered list (key-value pair, template specialization for gc::nogc)
/** @ingroup cds_nonintrusive_list
+ @anchor cds_nonintrusive_MichaelKVList_nogc
This specialization is intended for so-called persistent usage when no item
reclamation may be performed. The class does not support deleting of list item.
{
return const_iterator( head() );
}
- const_iterator cbegin()
+ const_iterator cbegin() const
{
return const_iterator( head() );
}
{
return const_iterator();
}
- const_iterator cend()
+ const_iterator cend() const
{
return const_iterator();
}
to the list's item inserted. <tt>item.second</tt> is a reference to item's value that may be changed.
User-defined functor \p func should guarantee that during changing item's value no any other changes
could be made on this list's item by concurrent threads.
- The user-defined functor can be passed by reference using \p std::ref
- and it is called only if the inserting is successful.
The key_type should be constructible from value of type \p K.
template <typename Q, typename Less>
iterator find_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return node_to_iterator( find_at( head(), key, typename maker::template less_wrapper<Less>::type() ) );
}