Tools.h++ Class Reference
Table Of Contents
- Tools.h++ 7.0 Class Reference
- Intoduction
- Class Hierarchy
- RWAuditStreamBuffer
- RWBag
- RWBagIterator
- RWBench
- RWBinaryTree
- RWBinaryTreeIterator
- RWbistream
- RWBitVec
- RWbostream
- RWBTree
- RWBTreeDictionary
- RWBTreeOnDisk
- RWBufferedPageHeap
- RWCacheManager
- RWCLIPstreambuf
- RWCollectable
- RWCollectableAssociation
- RWCollectableDate
- RWCollectableInt
- RWCollectableString
- RWCollectableTime
- RWCollection
- RWCRegexp
- RWCRExpr
- RWCString
- RWCSubString
- RWCTokenizer
- RWDate
- RWDDEstreambuf
- RWDiskPageHeap
- RWDlistCollectables
- RWDlistCollectablesIterator
- RWeistream
- RWeostream
- RWFactory
- RWFile
- RWFileManager
- RWGBitVec(size)
- RWGDlist(type)
- RWGDlistIterator(type)
- RWGOrderedVector(val)
- RWGQueue(type)
- RWGSlist(type)
- RWGSlistIterator(type)
- RWGSortedVector(val)
- RWGStack(type)
- RWGVector(val)
- RWHashDictionary
- RWHashDictionaryIterator
- rw_hashmap
- rw_hashmultimap
- rw_hashmultiset
- rw_hashset
- RWHashTable
- RWHashTableIterator
- RWIdentityDictionary
- RWIdentitySet
- RWInteger
- RWIterator
- RWLocale
- RWLocaleSnapshot
- RWModel
- RWModelClient
- RWOrdered
- RWOrderedIterator
- RWpistream
- RWpostream
- RWSequenceable
- RWSet
- RWSetIterator
- rw_slist
- RWSlistCollectables
- RWSlistCollectablesIterator
- RWSlistCollectablesQueue
- RWSlistCollectablesStack
- RWSortedVector
- RWTBitVec
- RWTime
- RWTimer
- RWTIsvDlist
- RWTIsvDlistIterator
- RWTIsvSlist
- RWTIsvSlistIterator
- RWTPtrDeque
- RWTPtrDlist
- RWTPtrDlistIterator
- RWTPtrHashDictionary
- RWTPtrHashDictionaryIterator
- RWTPtrHashMap
- RWTPtrHashMapIterator
- RWTPtrHashMultiMap
- RWTPtrHashMultiMapIterator
- RWTPtrHashSet
- RWTPtrHashMultiSetIterator
- RWTPtrHashSetIterator
- RWTPtrHashTable
- RWTPtrHashTableIterator
- RWTPtrMap
- RWTPtrMapIterator
- RWTPtrMultiMap
- RWTPtrMultiMapIterator
- RWTPtrMultiSet
- RWTPtrMultiSetIterator
- RWTPtrOrderedVector
- RWTPtrSet
- RWTPtrSetIterator
- RWTPtrSlist
- RWTPtrSlistIterator
- RWTPtrSortedDlist
- RWTPtrSortedDlistIterator
- RWTPtrSortedVector
- RWTPtrVector
- RWTQueue
- RWTStack
- RWTValDeque
- RWTValDlist
- RWTValDlistIterator
- RWTValHashDictionary
- RWTValHashDictionaryIterator
- RWTValHashMap
- RWTValHashMapIterator
- RWTValHashMultiMap
- RWTValHashMultiMapIterator
- RWTValHashMultiSet
- RWTValHashMultiSetIterator
- RWTValHashSet
- RWTValHashSetIterator
- RWTValHashTable
- RWTValHashTableIterator
- RWTValMap
- RWTValMapIterator
- RWTValMultiMap
- RWTValMultiMapIterator
- RWTValMultiSet
- RWTValMultiSetIterator
- RWTValOrderedVector
- RWTValSet
- RWTValSetIterator
- RWTValSlist
- RWTValSlistIterator
- RWTValSortedDlist
- RWTValSortedDlistIterator
- RWTValSortedVector
- RWTValVector
- RWTValVirtualArray
- RWVirtualPageHeap
- RWvios
- RWvistream
- RWvostream
- RWWString
- RWWSubString
- RWWTokenizer
- RWXDRistream (Unix only)
- RWXDRostream (Unix only)
- RWZone
- RWZoneSimple
- Tools.h++ 7.0 Class Reference Appendix
- RWTPtrDlist
- RWTPtrDlistIterator
- RWTPtrHashDictionary
- RWTPtrHashDictionaryIterator
- RWTPtrHashSet
- RWTPtrHashTable
- RWTPtrHashTableIterator
- RWTPtrOrderedVector
- RWTPtrSlist
- RWTPtrSlistIterator
- RWTPtrSortedVector
- RWTValDlist
- RWTValDlistIterator
- RWTValHashDictionary
- RWTValHashDictionaryIterator
- RWTValHashSet
- RWTValHashTable
- RWTValHashTableIterator
- RWTValOrderedVector
- RWTValSlist
- RWTValSlistIterator
- RWTValSortedVector
- RWTPtrDlist
- Rogue Wave Licensing Statement

Objects within the collection will be grouped together based on an equality object of type EQ.
EQ must ensure this grouping via public member
bool operator()(const T& x, const T& y) const
which should return true if x and y are equivalent, false otherwise.
RWTValHashSet<T,H,EQ> will not accept an item that compares equal to an item already in the
collection. (RWTValHashMultiSet<T,H,EQ> may contain multiple items that compare equal to
each other.) Equality is based on the equality object and not on the == operator.
Persistence
Isomorphic
Example
//
// tvhsstr.cpp
//
#include <rw/tvhset.h>
#include <rw/cstring.h>
#include <iostream.h>
struct silly_hash{
unsigned long operator()(RWCString x) const
{ return x.length() * (long)x(0); }
};
main(){
RWTValHashSet<RWCString,silly_hash,equal_to<RWCString> > set1;
RWTValHashSet<RWCString,silly_hash,equal_to<RWCString> > set2;
set1.insert("one");
set1.insert("two");
set1.insert("three");
//Rejected, no duplicates allowed
set1.insert("one");
cout << set1.entries() << endl; // Prints "3"
set2.insert("one");
set2.insert("five");
//Rejected, no duplicates allowed