Package org.eclipse.cdt.core.parser.util

## Class ObjectTable<T>

- java.lang.Object
- - org.eclipse.cdt.core.parser.util.HashTable
  - - org.eclipse.cdt.core.parser.util.ObjectTable<T>

All Implemented Interfaces:
  `Cloneable`, `Iterable<T>`

Direct Known Subclasses:
  `ObjectMap`, `ObjectSet`

    public abstract class ObjectTable<T>
    extends HashTable
    implements Iterable<T>

Restriction:
  This class is not intended to be subclassed by clients.

### Field Summary

Fields
`protected T[]` `keyTable`

### Fields inherited from class org.eclipse.cdt.core.parser.util.HashTable

`currEntry, hashTable, minHashSize, nextTable`

### Constructor Summary

Constructors
`ObjectTable​(int initialSize)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected int` `add​(T obj)`
`void` `clear()`
`Object` `clone()`
`boolean` `containsKey​(T key)`
`protected int` `hash​(int pos)`
`boolean` `isEquivalent​(ObjectTable<T> other, IObjectMatcher matcher)`
`Iterator<T>` `iterator()`
`Object[]` `keyArray()`
`<X> X[]` `keyArray​(Class<X> c)`
`T` `keyAt​(int i)`
`protected int` `lookup​(Object buffer)`
`protected void` `removeEntry​(int i)`
`protected void` `resize​(int size)`
`List<T>` `toList()`
`String` `toString()`

### Methods inherited from class org.eclipse.cdt.core.parser.util.HashTable

`capacity, countCollisions, dumpNexts, isEmpty, linkIntoHashTable, partition, rehash, removeEntry, resize, size, sort`

### Methods inherited from class java.lang.Object

`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.lang.Iterable

`forEach, spliterator`

### Field Detail

#### keyTable

    protected T[] keyTable

### Constructor Detail

#### ObjectTable

    public ObjectTable​(int initialSize)

### Method Detail

#### clone

    public Object clone()

Overrides:
  `clone` in class `HashTable`

#### toList

    public List<T> toList()

#### keyAt

    public T keyAt​(int i)

#### clear

    public void clear()

Overrides:
  `clear` in class `HashTable`

#### hash

    protected final int hash​(int pos)

Overrides:
  `hash` in class `HashTable`

#### resize

    protected void resize​(int size)

Overrides:
  `resize` in class `HashTable`

#### add

    protected final int add​(T obj)

#### removeEntry

    protected void removeEntry​(int i)

#### lookup

    protected final int lookup​(Object buffer)

#### containsKey

    public boolean containsKey​(T key)

#### keyArray

    public Object[] keyArray()

#### keyArray

    public <X> X[] keyArray​(Class<X> c)

#### isEquivalent

    public boolean isEquivalent​(ObjectTable<T> other,
                                IObjectMatcher matcher)

#### iterator

    public Iterator<T> iterator()

Specified by:
  `iterator` in interface `Iterable<T>`
Since:
  5.4

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`