Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorssankaran2014-03-02 11:51:56 +0000
committerssankaran2014-03-02 11:51:56 +0000
commit76778cca3196ed855b1311da8d21741d446bda27 (patch)
treedbbcaef5d3ce13fc950c0ecd66a590eb8add4840
parent6f17c126ff89ea2e3c03f832be8ed25d26113551 (diff)
downloadeclipse.jdt.core-76778cca3196ed855b1311da8d21741d446bda27.tar.gz
eclipse.jdt.core-76778cca3196ed855b1311da8d21741d446bda27.tar.xz
eclipse.jdt.core-76778cca3196ed855b1311da8d21741d446bda27.zip
Fixed Bug 429395 - [1.8][compiler] TypeSystem.getParameterizedType()
method is expensive
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java4
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java4
-rw-r--r--org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java6
3 files changed, 11 insertions, 3 deletions
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
index a647cad3f0..e91a53c9df 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/ParameterizedTypeBinding.java
@@ -93,6 +93,10 @@ public class ParameterizedTypeBinding extends ReferenceBinding implements Substi
return this.type;
}
+ public boolean isParameterizedType() {
+ return true;
+ }
+
/**
* Iterate type arguments, and validate them according to corresponding variable bounds.
*/
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
index 63faae8fd3..326ac8dd30 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/RawTypeBinding.java
@@ -93,6 +93,10 @@ public class RawTypeBinding extends ParameterizedTypeBinding {
return this.environment.createParameterizedGenericMethod(originalMethod, this);
}
+ public boolean isParameterizedType() {
+ return false;
+ }
+
public int kind() {
return RAW_TYPE;
}
diff --git a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
index 7de7915744..edf466fd5b 100644
--- a/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
+++ b/org.eclipse.jdt.core/compiler/org/eclipse/jdt/internal/compiler/lookup/TypeBinding.java
@@ -674,8 +674,8 @@ public final boolean isNumericType() {
* Note that some instances of ParameterizedTypeBinding have no arguments, like for non-generic members
* of a parameterized type. Use {@link #isParameterizedTypeWithActualArguments()} instead to find out.
*/
-public final boolean isParameterizedType() {
- return kind() == Binding.PARAMETERIZED_TYPE;
+public boolean isParameterizedType() {
+ return false;
}
/**
@@ -1409,7 +1409,7 @@ public TypeBinding unannotated() {
return this;
}
-public boolean hasTypeAnnotations() {
+public final boolean hasTypeAnnotations() {
return (this.tagBits & TagBits.HasTypeAnnotations) != 0;
}

Back to the top