org.eclipse.jdt.internal.compiler.codegen
Class CharArrayCache

java.lang.Object
  extended by org.eclipse.jdt.internal.compiler.codegen.CharArrayCache

public class CharArrayCache
extends java.lang.Object


Field Summary
 char[][] keyTable
           
 int[] valueTable
           
 
Constructor Summary
CharArrayCache()
          Constructs a new, empty hashtable.
CharArrayCache(int initialCapacity)
          Constructs a new, empty hashtable with the specified initial capacity.
 
Method Summary
 void clear()
          Clears the hash table so that it has no more elements in it.
 boolean containsKey(char[] key)
          Returns true if the collection contains an element for the key.
 int get(char[] key)
          Gets the object associated with the specified key in the hashtable.
 int putIfAbsent(char[] key, int value)
          Puts the specified element into the hashtable if it wasn't there already, using the specified key.
 void remove(char[] key)
          Remove the object associated with the specified key in the hashtable.
 char[] returnKeyFor(int value)
          Returns the key corresponding to the value.
 int size()
          Returns the number of elements contained in the hashtable.
 java.lang.String toString()
          Converts to a rather lengthy String.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

keyTable

public char[][] keyTable

valueTable

public int[] valueTable
Constructor Detail

CharArrayCache

public CharArrayCache()
Constructs a new, empty hashtable. A default capacity is used. Note that the hashtable will automatically grow when it gets full.


CharArrayCache

public CharArrayCache(int initialCapacity)
Constructs a new, empty hashtable with the specified initial capacity.

Parameters:
initialCapacity - int the initial number of buckets; must be less than Integer.MAX_VALUE / 2
Method Detail

clear

public void clear()
Clears the hash table so that it has no more elements in it.


containsKey

public boolean containsKey(char[] key)
Returns true if the collection contains an element for the key.

Parameters:
key - char[] the key that we are looking for
Returns:
boolean

get

public int get(char[] key)
Gets the object associated with the specified key in the hashtable.

Parameters:
key - char[] the specified key
Returns:
int the element for the key or -1 if the key is not defined in the hash table.

putIfAbsent

public int putIfAbsent(char[] key,
                       int value)
Puts the specified element into the hashtable if it wasn't there already, using the specified key. The element may be retrieved by doing a get() with the same key. The key and the element cannot be null.

Parameters:
key - the given key in the hashtable
value - the given value
Returns:
int the old value of the key, or -value if it did not have one.

remove

public void remove(char[] key)
Remove the object associated with the specified key in the hashtable.

Parameters:
key - char[] the specified key

returnKeyFor

public char[] returnKeyFor(int value)
Returns the key corresponding to the value. Returns null if the receiver doesn't contain the value.

Parameters:
value - int the value that we are looking for
Returns:
Object

size

public int size()
Returns the number of elements contained in the hashtable.

Returns:
int The size of the table

toString

public java.lang.String toString()
Converts to a rather lengthy String. return String the ascii representation of the receiver

Overrides:
toString in class java.lang.Object