diff options
author | aclement <aclement> | 2010-04-05 19:36:55 +0000 |
---|---|---|
committer | aclement <aclement> | 2010-04-05 19:36:55 +0000 |
commit | c1e348cf6d4ab9b7072de00bd67b622ba44fb380 (patch) | |
tree | 9b82b29efb697a355a2e3f2945f4a8f43aedc9d3 /org.aspectj.ajdt.core | |
parent | 852e1e1e925fcc1bed8a1fa582954f0f49fc2c47 (diff) | |
download | aspectj-c1e348cf6d4ab9b7072de00bd67b622ba44fb380.tar.gz aspectj-c1e348cf6d4ab9b7072de00bd67b622ba44fb380.zip |
refactored generic type handling
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java index 56d8ec20e..3d746402e 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseFactory.java @@ -368,7 +368,7 @@ public class EclipseFactory { superinterfaces[i] = fromBinding(aTypeVariableBinding.superInterfaces[i]); } } - tv.setUpperBound(superclassType); + tv.setSuperclass(superclassType); tv.setAdditionalInterfaceBounds(superinterfaces); tv.setRank(aTypeVariableBinding.rank); if (aTypeVariableBinding.declaringElement instanceof MethodBinding) { @@ -1002,12 +1002,14 @@ public class EclipseFactory { // } tvBinding = new TypeVariableBinding(tv.getName().toCharArray(), declaringElement, tv.getRank()); typeVariableToTypeBinding.put(tv.getName(), tvBinding); - tvBinding.superclass = (ReferenceBinding) makeTypeBinding(tv.getUpperBound()); + if (tv.getSuperclass() != null) { + tvBinding.superclass = (ReferenceBinding) makeTypeBinding(tv.getSuperclass()); + } tvBinding.firstBound = makeTypeBinding(tv.getFirstBound()); - if (tv.getAdditionalInterfaceBounds() == null) { + if (tv.getSuperInterfaces() == null) { tvBinding.superInterfaces = TypeVariableBinding.NO_SUPERINTERFACES; } else { - TypeBinding tbs[] = makeTypeBindings(tv.getAdditionalInterfaceBounds()); + TypeBinding tbs[] = makeTypeBindings(tv.getSuperInterfaces()); ReferenceBinding[] rbs = new ReferenceBinding[tbs.length]; for (int i = 0; i < tbs.length; i++) { rbs[i] = (ReferenceBinding) tbs[i]; |