diff options
author | acolyer <acolyer> | 2005-07-22 15:37:06 +0000 |
---|---|---|
committer | acolyer <acolyer> | 2005-07-22 15:37:06 +0000 |
commit | 4b5c1df961787ae569a1b8ccfe83d666d65320f1 (patch) | |
tree | b9cab1d4dde3284106af114ffc6c90d70e7eb15d /org.aspectj.ajdt.core | |
parent | 61b56c3484d0b9f282dad4b3da494a65bee987f1 (diff) | |
download | aspectj-4b5c1df961787ae569a1b8ccfe83d666d65320f1.tar.gz aspectj-4b5c1df961787ae569a1b8ccfe83d666d65320f1.zip |
also support superinterfaces when converting an Eclipse TypeParameter into a TypeVariable
Diffstat (limited to 'org.aspectj.ajdt.core')
-rw-r--r-- | org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java index 240d2c478..586e06236 100644 --- a/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java +++ b/org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/EclipseSourceType.java @@ -474,7 +474,15 @@ public class EclipseSourceType extends AbstractReferenceTypeDelegate { String name = new String(aTypeParameter.name); ReferenceBinding superclassBinding = aTypeParameter.binding.superclass; UnresolvedType superclass = UnresolvedType.forSignature(new String(superclassBinding.signature())); - // TODO AMC - superinterfaces - return new TypeVariable(name,superclass); + UnresolvedType[] superinterfaces = null; + ReferenceBinding[] superInterfaceBindings = aTypeParameter.binding.superInterfaces; + if (superInterfaceBindings != null) { + superinterfaces = new UnresolvedType[superInterfaceBindings.length]; + for (int i = 0; i < superInterfaceBindings.length; i++) { + superinterfaces[i] = UnresolvedType.forSignature(new String(superInterfaceBindings[i].signature())); + } + } + // XXX what about lower binding? + return new TypeVariable(name,superclass,superinterfaces); } } |