From de37ec61db93ec9c55cd3102ef2f2bb8d2f854c9 Mon Sep 17 00:00:00 2001 From: Sergey Prigogin Date: Mon, 13 Jun 2016 11:00:28 -0700 Subject: [PATCH] Added @noextend to HashTable and its subclasses. Change-Id: I89a5e887cd22e4cb79b96c549fe5c7b79045cf3b --- core/org.eclipse.cdt.core/.settings/.api_filters | 8 -------- .../org/eclipse/cdt/core/parser/util/CharArrayIntMap.java | 2 +- .../eclipse/cdt/core/parser/util/CharArrayObjectMap.java | 4 ++++ .../org/eclipse/cdt/core/parser/util/CharArraySet.java | 7 ++++++- .../org/eclipse/cdt/core/parser/util/CharTable.java | 1 + .../org/eclipse/cdt/core/parser/util/HashTable.java | 1 + .../org/eclipse/cdt/core/parser/util/ObjectMap.java | 6 ++++++ .../org/eclipse/cdt/core/parser/util/ObjectSet.java | 5 ++++- .../org/eclipse/cdt/core/parser/util/ObjectTable.java | 3 +++ 9 files changed, 26 insertions(+), 11 deletions(-) diff --git a/core/org.eclipse.cdt.core/.settings/.api_filters b/core/org.eclipse.cdt.core/.settings/.api_filters index c6c4adc5751..5506da6485d 100644 --- a/core/org.eclipse.cdt.core/.settings/.api_filters +++ b/core/org.eclipse.cdt.core/.settings/.api_filters @@ -1,13 +1,5 @@ - - - - - - - - diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayIntMap.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayIntMap.java index 529fad1a839..410dc451a83 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayIntMap.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayIntMap.java @@ -13,9 +13,9 @@ package org.eclipse.cdt.core.parser.util; /** * @author Doug Schaefer + * @noextend This class is not intended to be subclassed by clients. */ public class CharArrayIntMap extends CharTable { - private int[] valueTable; public final int undefined; diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayObjectMap.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayObjectMap.java index da8a868d072..b90eefeaaac 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayObjectMap.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArrayObjectMap.java @@ -24,8 +24,12 @@ import java.util.function.Consumer; /** * @author Doug Schaefer + * @noextend This class is not intended to be subclassed by clients. */ public class CharArrayObjectMap extends CharTable { + /** + * An empty immutable {@code CharArrayObjectMap}. + */ public static final CharArrayObjectMap EMPTY_MAP = new CharArrayObjectMap(0) { @Override public Object clone() { return this; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArraySet.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArraySet.java index d5d3482ba1a..c15783bc0a5 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArraySet.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharArraySet.java @@ -13,8 +13,13 @@ package org.eclipse.cdt.core.parser.util; import java.util.Collections; import java.util.List; +/** + * @noextend This class is not intended to be subclassed by clients. + */ public class CharArraySet extends CharTable { - + /** + * An empty immutable {@code CharArraySet}. + */ public static final CharArraySet EMPTY_SET = new CharArraySet(0) { @Override public Object clone() { return this; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharTable.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharTable.java index f33b0fa3d20..da8887b03c4 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharTable.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/CharTable.java @@ -18,6 +18,7 @@ import java.util.List; /** * @author ddaoust + * @noextend This class is not intended to be subclassed by clients. */ public class CharTable extends HashTable { protected char[][] keyTable; 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 abceb621d86..53916c04bd6 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 @@ -15,6 +15,7 @@ import java.util.Comparator; /** * @author ddaoust + * @noextend This class is not intended to be subclassed by clients. */ public class HashTable implements Cloneable { // Prime numbers from http://planetmath.org/goodhashtableprimes diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectMap.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectMap.java index fb8943fea6d..996d10ba7f9 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectMap.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectMap.java @@ -15,7 +15,13 @@ import java.util.Collections; import java.util.Comparator; import java.util.List; +/** + * @noextend This class is not intended to be subclassed by clients. + */ public class ObjectMap extends ObjectTable { + /** + * An empty immutable {@code ObjectMap}. + */ public static final ObjectMap EMPTY_MAP = new ObjectMap(0) { @Override public Object clone() { return this; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectSet.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectSet.java index 7b4218889c4..77c344f4a71 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectSet.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/parser/util/ObjectSet.java @@ -13,9 +13,12 @@ package org.eclipse.cdt.core.parser.util; import java.util.Collections; import java.util.List; +/** + * @noextend This class is not intended to be subclassed by clients. + */ public class ObjectSet extends ObjectTable { /** - * Represents the empty ObjectSet + * An empty immutable {@code ObjectSet}. */ @SuppressWarnings("rawtypes") public static final ObjectSet EMPTY_SET = new ObjectSet(0) { 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 a21464ed4a0..1db18fb9a25 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 @@ -18,6 +18,9 @@ import java.util.Iterator; import java.util.List; import java.util.NoSuchElementException; +/** + * @noextend This class is not intended to be subclassed by clients. + */ public abstract class ObjectTable extends HashTable implements Iterable { protected T[] keyTable;