yapf/hashtable.hpp
changeset 5081 fe3a6da19d9f
parent 4549 106ed18a7675
child 5082 d7719dfaa7e1
equal deleted inserted replaced
5080:2f268952e410 5081:fe3a6da19d9f
   118 template <class Titem_, int Thash_bits_>
   118 template <class Titem_, int Thash_bits_>
   119 class CHashTableT {
   119 class CHashTableT {
   120 public:
   120 public:
   121 	typedef Titem_ Titem;                       // make Titem_ visible from outside of class
   121 	typedef Titem_ Titem;                       // make Titem_ visible from outside of class
   122 	typedef typename Titem_::Key Tkey;          // make Titem_::Key a property of HashTable
   122 	typedef typename Titem_::Key Tkey;          // make Titem_::Key a property of HashTable
   123 	ST_CONST(int, Thash_bits = Thash_bits_);    // publish num of hash bits
   123 	ST_CONST(int, Thash_bits = Thash_bits_)    // publish num of hash bits
   124 	ST_CONST(int, Tcapacity = 1 << Thash_bits); // and num of slots 2^bits
   124 	ST_CONST(int, Tcapacity = 1 << Thash_bits) // and num of slots 2^bits
   125 
   125 
   126 protected:
   126 protected:
   127 	/** each slot contains pointer to the first item in the list,
   127 	/** each slot contains pointer to the first item in the list,
   128 	 *  Titem contains pointer to the next item - GetHashNext(), SetHashNext() */
   128 	 *  Titem contains pointer to the next item - GetHashNext(), SetHashNext() */
   129 	typedef CHashTableSlotT<Titem_> Slot;
   129 	typedef CHashTableSlotT<Titem_> Slot;