in scala.collection.mutable
trait HashTable

abstract trait HashTable [A]
extends java.lang.Object
with scala.ScalaObject
This class can be used to construct data structures that are based on hashtables. Class HashTable[A] implements a hashtable that maps keys of type A to values of the fully abstract member type Entry. Classes that make use of HashTable have to provide an implementation for Entry and implement the function entryKey.

There are mainly two parameters that affect the performance of a hashtable: the initial size and the load factor. The size refers to the number of buckets in the hashtable, and the load factor is a measure of how full the hashtable is allowed to get before its size is automatically doubled. Both parameters may be changed by overriding the corresponding values in class HashTable.

Author:
Matthias Zenger
Version:
1.0, 08/07/2003
Direct Known Subclasses:
HashSet, HashMap

Val Summary
protected val initialSize : scala.Int
The initial size of the hash table.
protected val initialThreshold : scala.Int
The initial threshold
protected val loadFactor : scala.Float
The load factor for the hash table.
Var Summary
protected var table : scala.Array[scala.List[HashTable.this.Entry]]
The actual hash table.
protected var tableSize : scala.Int
The number of mappings contained in this hash table.
protected var threshold : scala.Int
The next size value at which to resize (capacity load factor).
Def Summary
protected def addEntry (e: HashTable.this.Entry) : scala.Unit

protected def elemEquals (key1: A, key2: A) : scala.Boolean

protected def elemHashCode (key: A) : scala.Int

protected def entries : scala.Iterator[HashTable.this.Entry]

abstract protected def entryKey (e: HashTable.this.Entry) : A

protected def findEntry (key: A) : scala.Option[HashTable.this.Entry]

final protected def improve (hcode: scala.Int) : scala.Int

final protected def index (hcode: scala.Int) : scala.Int

protected def initTable (tb: scala.Array[scala.List[HashTable.this.Entry]]) : scala.Unit

protected def removeEntry (key: A) : scala.Unit

def size : scala.Int
Returns the size of this hash map.
Val Detail
protected val initialSize : scala.Int
The initial size of the hash table.

protected val initialThreshold : scala.Int
The initial threshold

protected val loadFactor : scala.Float
The load factor for the hash table.

Var Detail
protected var table : scala.Array[scala.List[HashTable.this.Entry]]
The actual hash table.

protected var tableSize : scala.Int
The number of mappings contained in this hash table.

protected var threshold : scala.Int
The next size value at which to resize (capacity load factor).

Def Detail
protected def addEntry (e: HashTable.this.Entry): scala.Unit

protected def elemEquals (key1: A, key2: A): scala.Boolean

protected def elemHashCode (key: A): scala.Int

protected def entries : scala.Iterator[HashTable.this.Entry]

abstract protected def entryKey (e: HashTable.this.Entry): A

protected def findEntry (key: A): scala.Option[HashTable.this.Entry]

final protected def improve (hcode: scala.Int): scala.Int

final protected def index (hcode: scala.Int): scala.Int

protected def initTable (tb: scala.Array[scala.List[HashTable.this.Entry]]): scala.Unit

protected def removeEntry (key: A): scala.Unit

def size : scala.Int
Returns the size of this hash map.