|
|
| LazyList () |
| | Default constructor.
|
| |
|
| ~LazyList () |
| | Desctructor clears the list.
|
| |
| template<typename Q > |
| iterator | insert (Q &&val) |
| | Inserts new node. More...
|
| |
| template<typename... Args> |
| iterator | emplace (Args &&...args) |
| | Inserts data of type value_type created from args. More...
|
| |
| template<typename Q > |
| std::pair< iterator, bool > | update (Q &&val, bool bAllowInsert=true) |
| | Updates the item. More...
|
| |
| template<typename Q > |
| iterator | contains (Q const &key) |
| | Checks whether the list contains key. More...
|
| |
| template<typename Q , typename Less , bool Sort = c_bSort> |
| std::enable_if< Sort, iterator >::type | contains (Q const &key, Less pred) |
| | Checks whether the map contains key using pred predicate for searching (ordered list version) More...
|
| |
| template<typename Q , typename Equal , bool Sort = c_bSort> |
| std::enable_if<!Sort, iterator >::type | contains (Q const &key, Equal equal) |
| | Finds the key val using equal predicate for searching (unordered list version) More...
|
| |
|
bool | empty () const |
| | Check if the list is empty.
|
| |
| size_t | size () const |
| | Returns list's item count. More...
|
| |
|
stat const & | statistics () const |
| | Returns const reference to internal statistics.
|
| |
|
void | clear () |
| | Clears the list.
|
| |
|
|
typedef node_type * | auxiliary_head |
| | Auxiliary head type (for split-list support)
|
| |
|
typedef gc::nogc | gc |
| | Garbage collector.
|
| |
|
typedef T | value_type |
| | type of value stored in the list
|
| |
|
typedef Traits | traits |
| | Traits template parameter.
|
| |
|
typedef traits::hook | hook |
| | hook type
|
| |
|
typedef hook::node_type | node_type |
| | node type
|
| |
| typedef implementation_defined | key_comparator |
| | Key comparing functor. More...
|
| |
|
typedef traits::back_off | back_off |
| | Back-off strategy.
|
| |
|
typedef traits::disposer | disposer |
| | disposer
|
| |
|
typedef get_node_traits< value_type, node_type, hook >::type | node_traits |
| | node traits
|
| |
|
typedef lazy_list::get_link_checker< node_type, traits::link_checker >::type | link_checker |
| | link checker
|
| |
|
typedef traits::item_counter | item_counter |
| | Item counting policy used.
|
| |
|
typedef traits::memory_model | memory_model |
| | C++ memory ordering (see lazy_list::traits::memory_model)
|
| |
|
typedef traits::stat | stat |
| | Internal statistics.
|
| |
|
typedef iterator_type< false > | iterator |
| | Forward iterator.
|
| |
|
typedef iterator_type< true > | const_iterator |
| | Const forward iterator.
|
| |
| iterator | begin () |
| | Returns a forward iterator addressing the first element in a list. More...
|
| |
| iterator | end () |
| | Returns an iterator that addresses the location succeeding the last element in a list. More...
|
| |
|
const_iterator | begin () const |
| | Returns a forward const iterator addressing the first element in a list.
|
| |
|
const_iterator | cbegin () const |
| | Returns a forward const iterator addressing the first element in a list.
|
| |
|
const_iterator | end () const |
| | Returns an const iterator that addresses the location succeeding the last element in a list.
|
| |
|
const_iterator | cend () const |
| | Returns an const iterator that addresses the location succeeding the last element in a list.
|
| |
|
| LazyList () |
| | Default constructor initializes empty list.
|
| |
|
| ~LazyList () |
| | Destroys the list object.
|
| |
| bool | insert (value_type &val) |
| | Inserts new node. More...
|
| |
| template<typename Func > |
| std::pair< bool, bool > | update (value_type &val, Func func, bool bAllowInsert=true) |
| | Updates the item. More...
|
| |
| template<typename Q , typename Func > |
| bool | find (Q &key, Func f) |
| | Finds the key key. More...
|
| |
| template<typename Q , typename Less , typename Func , bool Sort = c_bSort> |
| std::enable_if< Sort, bool >::type | find_with (Q &key, Less less, Func f) |
| | Finds the key key using less predicate for searching. Disabled for unordered lists. More...
|
| |
| template<typename Q , typename Equal , typename Func , bool Sort = c_bSort> |
| std::enable_if<!Sort, bool >::type | find_with (Q &key, Equal eq, Func f) |
| | Finds the key key using equal predicate for searching. Disabled for ordered lists. More...
|
| |
| template<typename Q > |
| value_type * | contains (Q const &key) |
| | Checks whether the list contains key. More...
|
| |
| template<typename Q , typename Less , bool Sort = c_bSort> |
| std::enable_if< Sort, value_type * >::type | contains (Q const &key, Less pred) |
| | Checks whether the map contains key using pred predicate for searching (ordered list version) More...
|
| |
| template<typename Q , typename Equal , bool Sort = c_bSort> |
| std::enable_if<!Sort, value_type * >::type | contains (Q const &key, Equal eq) |
| | Checks whether the map contains key using equal predicate for searching (unordered list version) More...
|
| |
| template<typename Disposer > |
| void | clear (Disposer disp) |
| | Clears the list. More...
|
| |
| void | clear () |
| | Clears the list using default disposer. More...
|
| |
|
bool | empty () const |
| | Checks if the list is empty.
|
| |
| size_t | size () const |
| | Returns list's item count. More...
|
| |
|
stat const & | statistics () const |
| | Returns const reference to internal statistics.
|
| |
|
node_type | m_Head |
| | List head (dummy node)
|
| |
|
node_type | m_Tail |
| | List tail (dummy node)
|
| |
|
item_counter | m_ItemCounter |
| | Item counter.
|
| |
|
stat | m_Stat |
| | Internal statistics.
|
| |
|
static constexpr bool const | c_bSort = traits::sort |
| | List type: ordered (true) or unordered (false)
|
| |
template<typename T, typename Traits = lazy_list::traits>
class cds::container::LazyList< cds::gc::nogc, T, Traits >
Lazy ordered single-linked list (template specialization for gc::nogc)
This specialization is so-called append-only when no item reclamation may be performed. The class does not support deleting of list item.
The list can be ordered if Traits::sort is true that is default or unordered otherwise. Unordered list can be maintained by equal_to relationship (Traits::equal_to), but for the ordered list less or compare relations should be specified in Traits.
See cds::container::LazyList<cds::gc::nogc, T, Traits>