Remove trailing spaces
[libcds.git] / cds / intrusive / impl / lazy_list.h
index fd19d277f7cd9f6c4b3267a8103da46edbcd6e47..c2c706ea91214113785cc9cf679ab6abf0e8fc4c 100644 (file)
@@ -29,7 +29,7 @@ namespace cds { namespace intrusive {
         - \p GC - Garbage collector used. Note the \p GC must be the same as the GC used for item type \p T (see lazy_list::node).
         - \p T - type to be stored in the list. The type must be based on lazy_list::node (for lazy_list::base_hook)
             or it must have a member of type lazy_list::node (for lazy_list::member_hook).
-        - \p Traits - type traits. See lazy_list::traits for explanation. 
+        - \p Traits - type traits. See lazy_list::traits for explanation.
             It is possible to declare option-based list with cds::intrusive::lazy_list::make_traits metafunction istead of \p Traits template
             argument. For example, the following traits-based declaration of \p gc::HP lazy list
             \code
@@ -183,7 +183,7 @@ namespace cds { namespace intrusive {
         //@cond
         // Rebind traits (split-list support)
         template <typename... Options>
-        struct rebind_options {
+        struct rebind_traits {
             typedef LazyList<
                 gc
                 , value_type
@@ -443,7 +443,7 @@ namespace cds { namespace intrusive {
         {
             return get_const_begin();
         }
-        const_iterator cbegin()
+        const_iterator cbegin() const
         {
             return get_const_begin();
         }
@@ -455,7 +455,7 @@ namespace cds { namespace intrusive {
         {
             return get_const_end();
         }
-        const_iterator cend()
+        const_iterator cend() const
         {
             return get_const_end();
         }
@@ -517,7 +517,8 @@ namespace cds { namespace intrusive {
                 void func( value_type& val );
             \endcode
             where \p val is the item inserted.
-            While the functor \p f is working the item \p val is locked.
+            While the functor \p f is called the item \p val is locked so
+            the functor has an exclusive access to the item.
             The user-defined functor is called only if the inserting is success.
         */
         template <typename Func>
@@ -544,7 +545,8 @@ namespace cds { namespace intrusive {
             refer to the same thing.
 
             The functor may change non-key fields of the \p item.
-            While the functor \p f is working the item \p item is locked.
+            While the functor \p f is working the item \p item is locked,
+            so \p f has exclusive access to the item.
 
             Returns std::pair<bool, bool> where \p first is \p true if operation is successfull,
             \p second is \p true if new item has been added or \p false if the item with \p key