diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/HashTable.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/HashTable.java index 35416cd66c0..d2ee7e7c1c9 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/HashTable.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/HashTable.java @@ -16,8 +16,7 @@ import java.util.Comparator; /** * @author ddaoust */ -public class HashTable implements Cloneable{ - +public class HashTable implements Cloneable { protected static final int minHashSize = 2; protected int currEntry = -1; @@ -40,8 +39,7 @@ public class HashTable implements Cloneable{ if (size > minHashSize) { hashTable = new int[size * 2]; nextTable = new int[size]; - } - else { + } else { hashTable = null; nextTable = null; } @@ -81,8 +79,8 @@ public class HashTable implements Cloneable{ return; for (int i = 0; i < capacity(); i++) { - hashTable[2*i] = 0; - hashTable[2*i+1] = 0; + hashTable[2 * i] = 0; + hashTable[2 * i + 1] = 0; nextTable[i] = 0; } } @@ -92,8 +90,8 @@ public class HashTable implements Cloneable{ // clear the table (don't call clear() or else the subclasses stuff will be cleared too) for (int i = 0; i < capacity(); i++) { - hashTable[2*i] = 0; - hashTable[2*i+1] = 0; + hashTable[2 * i] = 0; + hashTable[2 * i + 1] = 0; nextTable[i] = 0; } // Need to rehash everything @@ -103,7 +101,6 @@ public class HashTable implements Cloneable{ } protected void resize(int size) { if (size > minHashSize) { - hashTable = new int[size * 2]; nextTable = new int[size]; diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectTable.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectTable.java index 3ad9b1968ee..404e3cad3fc 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectTable.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectTable.java @@ -23,7 +23,7 @@ import java.util.List; /** * @author aniefer */ -public abstract class ObjectTable extends HashTable implements Cloneable{ +public abstract class ObjectTable extends HashTable { protected T[] keyTable; @SuppressWarnings("unchecked") @@ -47,14 +47,14 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ public List toList(){ List list = new ArrayList(size()); int size = size(); - for( int i = 0; i < size; i++ ){ - list.add( keyAt( i ) ); + for (int i = 0; i < size; i++){ + list.add(keyAt(i)); } return list; } - public T keyAt(int i){ - if(i<0 || i>currEntry) + public T keyAt(int i) { + if (i < 0 || i > currEntry) return null; return keyTable[i]; @@ -63,12 +63,12 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ @Override public void clear(){ super.clear(); - for( int i = 0; i < keyTable.length; i++ ) + for (int i = 0; i < keyTable.length; i++) keyTable[i] = null; } @Override - protected final int hash( int pos ){ + protected final int hash(int pos){ return hash(keyTable[pos]); } @@ -90,7 +90,7 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ if (pos != -1) return pos; - if ( (currEntry + 1) >= capacity()) { + if ((currEntry + 1) >= capacity()) { resize(); } currEntry++; @@ -101,7 +101,6 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ protected void removeEntry(int i) { // Remove the entry from the keyTable, shifting everything over if necessary - int hash = hash(keyTable[i]); if (i < currEntry) System.arraycopy(keyTable, i + 1, keyTable, i, currEntry - i); @@ -110,11 +109,9 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ // Make sure you remove the value before calling super where currEntry will change removeEntry(i, hash); - } - protected final int lookup(Object buffer ){ - + protected final int lookup(Object buffer){ if (hashTable != null) { int hash = hash(buffer); @@ -122,18 +119,19 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ return -1; int i = hashTable[hash] - 1; - if (buffer.equals( keyTable[i] ) ) + if (buffer.equals(keyTable[i])) return i; // Follow the next chain - for (i = nextTable[i] - 1; i >= 0 && nextTable[i] != i + 1; i = nextTable[i] - 1) - if ( buffer.equals( keyTable[i] )) + for (i = nextTable[i] - 1; i >= 0 && nextTable[i] != i + 1; i = nextTable[i] - 1) { + if (buffer.equals(keyTable[i])) return i; + } return -1; } for (int i = 0; i <= currEntry; i++) { - if (buffer.equals( keyTable[i] ) ) + if (buffer.equals(keyTable[i])) return i; } return -1; @@ -143,16 +141,16 @@ public abstract class ObjectTable extends HashTable implements Cloneable{ return lookup(key) != -1; } - public Object [] keyArray(){ - Object [] keys = new Object[ size() ]; - System.arraycopy( keyTable, 0, keys, 0, keys.length ); + public Object[] keyArray(){ + Object[] keys = new Object[size()]; + System.arraycopy(keyTable, 0, keys, 0, keys.length); return keys; } @SuppressWarnings("unchecked") public X[] keyArray(Class c) { - X[] keys = (X[]) Array.newInstance( c, size() ); - System.arraycopy( keyTable, 0, keys, 0, keys.length ); + X[] keys = (X[]) Array.newInstance(c, size()); + System.arraycopy(keyTable, 0, keys, 0, keys.length); return keys; } }