## org.apache.batik.util
Class SoftDoublyIndexedTable

    java.lang.Object
      org.apache.batik.util.SoftDoublyIndexedTable

public class SoftDoublyIndexedTable
extends java.lang.Object

This class represents a doubly indexed hash table, which holds soft references to the contained values..

Nested Class Summary
`protected class` `SoftDoublyIndexedTable.Entry` To manage collisions

Field Summary
`protected int` `count` The number of entries
`protected static int` `INITIAL_CAPACITY` The initial capacity
`protected java.lang.ref.ReferenceQueue` `referenceQueue` The reference queue.
`protected SoftDoublyIndexedTable.Entry[]` `table` The underlying array

Constructor Summary
`SoftDoublyIndexedTable()` Creates a new SoftDoublyIndexedTable.
`SoftDoublyIndexedTable(int c)` Creates a new DoublyIndexedTable.

Method Summary
`void` `clear()` Clears the table.
`java.lang.Object` `get(java.lang.Object o1, java.lang.Object o2)` Gets the value of a variable
`protected int` `hashCode(java.lang.Object o1, java.lang.Object o2)` Computes a hash code corresponding to the given objects.
`java.lang.Object` `put(java.lang.Object o1, java.lang.Object o2, java.lang.Object value)` Sets a new value for the given variable
`protected void` `rehash()` Rehash the table
`protected void` `removeClearedEntries()` Removes the cleared entries.
`int` `size()` Returns the size of this table.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### INITIAL_CAPACITY

    protected static final int INITIAL_CAPACITY

  The initial capacity

  See Also:
    Constant Field Values

### table

    protected SoftDoublyIndexedTable.Entry[] table

  The underlying array

### count

    protected int count

  The number of entries

### referenceQueue

    protected java.lang.ref.ReferenceQueue referenceQueue

  The reference queue.

Constructor Detail

### SoftDoublyIndexedTable

    public SoftDoublyIndexedTable()

  Creates a new SoftDoublyIndexedTable.

### SoftDoublyIndexedTable

    public SoftDoublyIndexedTable(int c)

  Creates a new DoublyIndexedTable.

Parameters:
  `c` - The inital capacity.

Method Detail

### size

    public int size()

  Returns the size of this table.

### get

    public java.lang.Object get(java.lang.Object o1,
                                java.lang.Object o2)

  Gets the value of a variable

  Returns:
    the value or null

### put

    public java.lang.Object put(java.lang.Object o1,
                                java.lang.Object o2,
                                java.lang.Object value)

  Sets a new value for the given variable

  Returns:
    the old value or null

### clear

    public void clear()

  Clears the table.

### rehash

    protected void rehash()

  Rehash the table

### hashCode

    protected int hashCode(java.lang.Object o1,
                           java.lang.Object o2)

  Computes a hash code corresponding to the given objects.

### removeClearedEntries

    protected void removeClearedEntries()

  Removes the cleared entries.

Copyright © 2004 Apache Software Foundation. All Rights Reserved.