* java/util/Hashtable.java (internalContainsValue): Removed.
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 7 Dec 2003 21:03:49 +0000 (21:03 +0000)
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 7 Dec 2003 21:03:49 +0000 (21:03 +0000)
(containsValue): Don't delegate to internalContainsValue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@74399 138bc75d-0d04-0410-961f-82ee72b054a4

libjava/ChangeLog
libjava/java/util/Hashtable.java

index 78b8c59..9821039 100644 (file)
@@ -1,3 +1,8 @@
+2002-12-08  Bryce McKinlay  <bryce@mckinlay.net.nz>
+
+       * java/util/Hashtable.java (internalContainsValue): Removed.
+       (containsValue): Don't delegate to internalContainsValue.
+
 2003-12-06  Michael Koch  <konqueror@gmx.de>
 
        * javax/naming/directory/Attribute.java,
index d19b2fb..9cfa925 100644 (file)
@@ -333,11 +333,22 @@ public class Hashtable extends Dictionary
    */
   public synchronized boolean contains(Object value)
   {
-    /* delegate to non-overridable worker method 
-     * to avoid blowing up the stack, when called 
-     * from overridden contains[Value]() method.
-     */
-    return internalContainsValue(value);
+    for (int i = buckets.length - 1; i >= 0; i--)
+      {
+        HashEntry e = buckets[i];
+        while (e != null)
+          {
+            if (value.equals(e.value))
+              return true;
+            e = e.next;
+          }
+      }
+
+    // Must throw on null argument even if the table is empty
+    if (value == null)
+      throw new NullPointerException();
+    return false;  
   }
 
   /**
@@ -354,44 +365,12 @@ public class Hashtable extends Dictionary
    */
   public boolean containsValue(Object value)
   {
-    /* delegate to older method to make sure code overwriting it 
-     * continues to work.
-     */
+    // Delegate to older method to make sure code overriding it continues 
+    // to work.
     return contains(value);
   }
 
   /**
-   * Returns true if this Hashtable contains a value <code>o</code>, such that
-   * <code>o.equals(value)</code>. This is an internal worker method
-   * called by <code>contains()</code> and <code>containsValue()</code>.
-   *
-   * @param value the value to search for in this Hashtable
-   * @return true if at least one key maps to the value
-   * @see #contains(Object)
-   * @see #containsKey(Object)
-   * @throws NullPointerException if <code>value</code> is null
-   */
-  private boolean internalContainsValue(Object value)
-  {
-    for (int i = buckets.length - 1; i >= 0; i--)
-      {
-        HashEntry e = buckets[i];
-        while (e != null)
-          {
-            if (value.equals(e.value))
-              return true;
-            e = e.next;
-          }
-      }
-
-    // Must throw on null argument even if the table is empty
-    if (value == null)
-      throw new NullPointerException();
-    return false;
-  }
-
-  /**
    * Returns true if the supplied object <code>equals()</code> a key
    * in this Hashtable.
    *