]> source.dussan.org Git - aspectj.git/commitdiff
added new method, methods() which returns all methods of a type, including itd'd...
authoracolyer <acolyer>
Sun, 21 Aug 2005 19:44:28 +0000 (19:44 +0000)
committeracolyer <acolyer>
Sun, 21 Aug 2005 19:44:28 +0000 (19:44 +0000)
org.aspectj.ajdt.core/src/org/aspectj/ajdt/internal/compiler/lookup/InterTypeMemberFinder.java

index 377ef20d718d05c36ed7f5df753c5dcc2e1aee78..d7744e864a757c648e2855dbb37e20e966eb7c0a 100644 (file)
@@ -354,7 +354,19 @@ public class InterTypeMemberFinder implements IMemberFinder {
 //             return m2.declaringClass;
 //     }
 
-
+       public MethodBinding[] methods(SourceTypeBinding sourceTypeBinding) {
+               MethodBinding[] orig = sourceTypeBinding.methods();
+               if (interTypeMethods.isEmpty()) return orig;
+               
+               List ret = new ArrayList(Arrays.asList(orig));
+               for (int i=0, len=interTypeMethods.size(); i < len; i++) {
+                       MethodBinding method = (MethodBinding)interTypeMethods.get(i);
+                       ret.add(method);
+               }
+               
+               if (ret.isEmpty()) return SourceTypeBinding.NoMethods;
+               return (MethodBinding[])ret.toArray(new MethodBinding[ret.size()]);     
+       }
        
        //XXX conflicts
        public MethodBinding[] getMethods(