tlds
Transactional Operations for Linked Data Structures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
tm_hash_set< T > Class Template Reference

#include <tm_hash_set.hpp>

Inheritance diagram for tm_hash_set< T >:
Collaboration diagram for tm_hash_set< T >:

Public Member Functions

virtual TRANSACTION_SAFE void insert (const T item)
 
virtual TRANSACTION_SAFE void remove (const T item)
 
virtual bool lookup (const T item)
 
virtual void apply_to_all (void(*f)(T item))
 
 tm_hash_set (int capacity)
 
virtual ~tm_hash_set ()
 
void print_stats ()
 
- Public Member Functions inherited from tm_set< T >
virtual ~tm_set ()
 

Private Member Functions

 tm_hash_set (const tm_hash_set &)
 
tm_hash_setoperator= (const tm_hash_set &)
 
TRANSACTION_SAFE unsigned long hash (T item)
 

Private Attributes

tm_list_set< T > ** bucket
 
int num_buckets
 

Detailed Description

template<typename T>
class tm_hash_set< T >

Copyright (C) 2011 University of Rochester Department of Computer Science and Lehigh University Department of Computer Science and Engineering

License: Modified BSD Please see the file LICENSE.RSTM for licensing information

Constructor & Destructor Documentation

template<typename T >
tm_hash_set< T >::tm_hash_set ( const tm_hash_set< T > &  )
private
template<typename T >
tm_hash_set< T >::tm_hash_set ( int  capacity)
inline
template<typename T >
virtual tm_hash_set< T >::~tm_hash_set ( )
inlinevirtual

Member Function Documentation

template<typename T >
virtual void tm_hash_set< T >::apply_to_all ( void(*)(T item)  f)
inlinevirtual

Implements tm_set< T >.

template<typename T >
TRANSACTION_SAFE unsigned long tm_hash_set< T >::hash ( item)
inlineprivate

Here is the caller graph for this function:

template<typename T >
virtual TRANSACTION_SAFE void tm_hash_set< T >::insert ( const T  item)
inlinevirtual

Implements tm_set< T >.

Here is the call graph for this function:

template<typename T >
virtual bool tm_hash_set< T >::lookup ( const T  item)
inlinevirtual

Implements tm_set< T >.

Here is the call graph for this function:

template<typename T >
tm_hash_set& tm_hash_set< T >::operator= ( const tm_hash_set< T > &  )
private
template<typename T >
void tm_hash_set< T >::print_stats ( )
inline
template<typename T >
virtual TRANSACTION_SAFE void tm_hash_set< T >::remove ( const T  item)
inlinevirtual

Implements tm_set< T >.

Here is the call graph for this function:

Member Data Documentation

template<typename T >
tm_list_set<T>** tm_hash_set< T >::bucket
private
template<typename T >
int tm_hash_set< T >::num_buckets
private

The documentation for this class was generated from the following file: