struct contains<NodeTraits, true>
{
template <typename BucketEntry, typename Position, typename Q, typename Compare>
- static bool find( BucketEntry& probeset, Position& pos, unsigned int nTable, size_t nHash, Q const& val, Compare cmp )
+ static bool find( BucketEntry& probeset, Position& pos, unsigned int /*nTable*/, size_t /*nHash*/, Q const& val, Compare cmp )
{
// Ordered version
typedef typename BucketEntry::iterator bucket_iterator;
template <typename Q, typename Predicate>
value_type * erase_with( Q const& val, Predicate pred )
{
+ CDS_UNUSED( pred );
return erase_( val, typename predicate_wrapper<Predicate>::type(), [](value_type const&) {} );
}
template <typename Q, typename Predicate, typename Func>
value_type * erase_with( Q const& val, Predicate pred, Func f )
{
+ CDS_UNUSED( pred );
return erase_( val, typename predicate_wrapper<Predicate>::type(), f );
}
template <typename Q, typename Predicate, typename Func>
bool find_with( Q& val, Predicate pred, Func f )
{
+ CDS_UNUSED( pred );
return find_( val, typename predicate_wrapper<Predicate>::type(), f );
}
template <typename Q, typename Predicate, typename Func>
bool find_with( Q const& val, Predicate pred, Func f )
{
+ CDS_UNUSED( pred );
return find_( val, typename predicate_wrapper<Predicate>::type(), f );
}
template <typename Q, typename Predicate>
bool find_with( Q const& val, Predicate pred )
{
+ CDS_UNUSED( pred );
return find_with( val, typename predicate_wrapper<Predicate>::type(), [](value_type& , Q const& ) {} );
}
static void is_empty( node_type const * pNode )
{
assert( pNode->m_pNext.load( atomics::memory_order_relaxed ) == nullptr );
+ CDS_UNUSED( pNode );
}
};
static void is_empty( const node_type * pNode )
{
assert( pNode->m_pNext.load( atomics::memory_order_relaxed ) == nullptr );
+ CDS_UNUSED( pNode );
}
};
static void is_empty( const node_type * pNode )
{
assert( pNode->m_pNext.load( atomics::memory_order_relaxed ) == nullptr );
+ CDS_UNUSED( pNode );
}
};
template <typename Q, typename Less>
bool erase_with( const Q& key, Less pred )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less, typename Func>
bool erase_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
value_type * get_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
value_type * extract_with_( Q const& val, Less pred )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less, typename Func>
bool find_with_( Q& val, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
bool erase_with( const Q& key, Less pred )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less, typename Func>
bool erase_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
bool extract_with_( typename guarded_ptr::native_guard& guard, Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less, typename Func>
bool find_with_( Q& val, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
typedef ellen_bintree::details::compare<
key_type,
value_type,
template <typename Q, typename Less>
bool erase_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return erase_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less, typename Func>
bool erase_with( const Q& key, Less pred, Func func )
{
+ CDS_UNUSED( pred );
return erase_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), func );
}
template <typename Q, typename Less>
guarded_ptr extract_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
guarded_ptr gp;
extract_at( &m_Head, gp.guard(), key, cds::opt::details::make_comparator_from_less<Less>() );
return gp;
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less>
guarded_ptr get_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
guarded_ptr gp;
get_at( &m_Head, gp.guard(), key, cds::opt::details::make_comparator_from_less<Less>() );
return gp;
template <typename Q, typename Less>
bool erase_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return erase_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>());
}
template <typename Q, typename Less, typename Func>
bool erase_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return erase_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
template <typename Q, typename Less>
guarded_ptr extract_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
guarded_ptr gp;
extract_at( m_pHead, gp.guard(), key, cds::opt::details::make_comparator_from_less<Less>() );
return gp;
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less>
guarded_ptr get_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
guarded_ptr gp;
get_at( m_pHead, gp.guard(), key, cds::opt::details::make_comparator_from_less<Less>() );
return gp;
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
value_type * find_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return find_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less>
bool erase_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return erase_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>());
}
-
/// Deletes the item from the list
/** \anchor cds_intrusive_LazyList_rcu_find_erase_func
The function searches an item with key equal to \p key in the list,
template <typename Q, typename Less, typename Func>
bool erase_with( Q const& key, Less pred, Func func )
{
+ CDS_UNUSED( pred );
return erase_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>(), func );
}
template <typename Q, typename Less>
exempt_ptr extract_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return exempt_ptr( extract_at( &m_Head, key, cds::opt::details::make_comparator_from_less<Less>() ));
}
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<node_type *>( &m_Head ), key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<node_type *>(&m_Head), key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<node_type *>( &m_Head ), key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less>
value_type * get_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
return get_at( const_cast<node_type *>( &m_Head ), key, cds::opt::details::make_comparator_from_less<Less>());
}
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
value_type * find_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return find_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>());
}
template <typename Q, typename Less>
bool erase_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return erase_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less, typename Func>
bool erase_with( Q const& key, Less pred, Func func )
{
+ CDS_UNUSED( pred );
return erase_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>(), func );
}
template <typename Q, typename Less>
exempt_ptr extract_with( Q const& key, Less pred )
{
+ CDS_UNUSED( pred );
return exempt_ptr( extract_at( m_pHead, key, cds::opt::details::make_comparator_from_less<Less>() ));
}
template <typename Q, typename Less, typename Func>
bool find_with( Q& key, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<atomic_node_ptr&>( m_pHead ), key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@cond
template <typename Q, typename Less, typename Func>
bool find_with( Q const& key, Less pred, Func f ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<atomic_node_ptr&>(m_pHead), key, cds::opt::details::make_comparator_from_less<Less>(), f );
}
//@endcond
template <typename Q, typename Less>
bool find_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
return find_at( const_cast<atomic_node_ptr&>( m_pHead ), key, cds::opt::details::make_comparator_from_less<Less>() );
}
template <typename Q, typename Less>
value_type * get_with( Q const& key, Less pred ) const
{
+ CDS_UNUSED( pred );
return get_at( const_cast<atomic_node_ptr&>( m_pHead ), key, cds::opt::details::make_comparator_from_less<Less>());
}
{
assert( pNode->m_pNext.load( atomics::memory_order_relaxed ) == nullptr );
assert( pNode->m_pPrev.load( atomics::memory_order_relaxed ) == nullptr );
+ CDS_UNUSED( pNode );
}
};
{
return &x;
}
- pointer allocate( size_type n, void const * hint = 0)
+ pointer allocate( size_type n, void const * /*hint*/ = 0)
{
static_assert( sizeof(value_type) <= sizeof(typename accessor_type::value_type), "Incompatible type" );
value_type * allocate( size_t n )
{
assert( n == 1 );
+ CDS_UNUSED( n );
value_type * p = m_Queue.pop();
if ( p ) {
void deallocate( value_type * p, size_t n )
{
assert( n == 1 );
+ CDS_UNUSED( n );
if ( p ) {
assert( from_pool( p ));
{}
template <size_t I, typename T>
- typename std::enable_if< (I == sizeof...(Functors)) >::type apply( size_t * dest, T const& v ) const
+ typename std::enable_if< (I == sizeof...(Functors)) >::type apply( size_t * /*dest*/, T const& /*v*/ ) const
{}
template <size_t I, typename T>
};
- pointer allocate( size_t nSize, const void * pHint )
+ pointer allocate( size_t nSize, const void * /*pHint*/ )
{
return reinterpret_cast<pointer>( s_MichaelHeap_NoStat.alloc( sizeof(T) * nSize ) );
}
- void deallocate( pointer p, size_t nCount )
+ void deallocate( pointer p, size_t /*nCount*/ )
{
s_MichaelHeap_NoStat.free( p );
}
alignment = 1
};
- static void stat(summary_stat& s)
+ static void stat(summary_stat& /*s*/)
{}
};
alignment = 1
};
- pointer allocate( size_t nSize, const void * pHint )
+ pointer allocate( size_t nSize, const void * /*pHint*/ )
{
return reinterpret_cast<pointer>( s_MichaelHeap_Stat.alloc( sizeof(T) * nSize ) );
}
- void deallocate( pointer p, size_t nCount )
+ void deallocate( pointer p, size_t /*nCount*/ )
{
s_MichaelHeap_Stat.free( p );
}
alignment = ALIGN
};
- pointer allocate( size_t nSize, const void * pHint )
+ pointer allocate( size_t nSize, const void * /*pHint*/ )
{
return reinterpret_cast<pointer>( s_MichaelHeap_NoStat.alloc_aligned( sizeof(T) * nSize, ALIGN ) );
}
- void deallocate( pointer p, size_t nCount )
+ void deallocate( pointer p, size_t /*nCount*/ )
{
s_MichaelHeap_NoStat.free_aligned( p );
}
alignment = ALIGN
};
- pointer allocate( size_t nSize, const void * pHint )
+ pointer allocate( size_t nSize, const void * /*pHint*/ )
{
return reinterpret_cast<pointer>( s_MichaelHeap_Stat.alloc_aligned( sizeof(T) * nSize, ALIGN ) );
}
- void deallocate( pointer p, size_t nCount )
+ void deallocate( pointer p, size_t /*nCount*/ )
{
s_MichaelHeap_Stat.free_aligned( p );
}
alignment = ALIGN
};
- pointer allocate( size_t nSize, const void * pHint )
+ pointer allocate( size_t nSize, const void * /*pHint*/ )
{
return reinterpret_cast<pointer>( cds::OS::aligned_malloc( sizeof(T) * nSize, ALIGN ) );
}
- void deallocate( pointer p, size_t nCount )
+ void deallocate( pointer p, size_t /*nCount*/ )
{
cds::OS::aligned_free( p );
}
- static void stat(summary_stat& s)
+ static void stat(summary_stat& /*s*/)
{}
};
};
struct ensure_functor {
- void operator()( bool /*bNew*/, item& i, int n )
+ void operator()( bool /*bNew*/, item& i, int /*n*/ )
{
i.nVal = i.nKey * 1024;
}
struct find_functor
{
template <typename Item, typename T>
- void operator()( Item& i, T& val )
+ void operator()( Item& i, T& /*val*/ )
{
++i.nFindCount;
}
template <typename Item, typename T>
- void operator()( Item& i, T const& val )
+ void operator()( Item& i, T const& /*val*/ )
{
++i.nFindCount;
}
struct find_functor
{
template <typename Item, typename T>
- void operator()( Item& i, T& val )
+ void operator()( Item& i, T& /*val*/ ) const
{
++i.nFindCount;
}
template <typename Item, typename T>
- void operator()( Item& i, T const& val )
+ void operator()( Item& i, T const& /*val*/ ) const
{
++i.nFindCount;
}
struct find_functor
{
template <typename T>
- void operator()( value_type& i, T& val )
+ void operator()( value_type& i, T& /*val*/ )
{
++i.stat.nFindFuncCall;
}
template <typename T>
- void operator()( value_type& i, T const& val )
+ void operator()( value_type& i, T const& /*val*/ )
{
++i.stat.nFindConstFuncCall;
}
struct find_functor {
template <typename T, typename Q>
- void operator()( T const& v, Q& q ) const
+ void operator()( T const& v, Q& /*q*/ ) const
{
++v.stat.nFindFuncCall;
}
template <typename T, typename Q>
- void operator()( T const& v, Q const& q ) const
+ void operator()( T const& v, Q const& /*q*/ ) const
{
++v.stat.nFindConstFuncCall;
}
<< "\t\t m_nResizeCount: " << s.m_nResizeCount.get() << "\n"
;
}
- static inline ostream& operator <<( ostream& o, cds::intrusive::cuckoo::empty_refinable_stat const& s )
+ static inline ostream& operator <<( ostream& o, cds::intrusive::cuckoo::empty_refinable_stat const& /*s*/ )
{
return o;
}
;
}
- static inline ostream& operator <<( ostream& o, cds::intrusive::cuckoo::empty_stat const& s )
+ static inline ostream& operator <<( ostream& o, cds::intrusive::cuckoo::empty_stat const& /*s*/ )
{
return o;
}