]> source.dussan.org Git - aspectj.git/commitdiff
231396: refactoring AspectJ: tidying up
authoraclement <aclement>
Wed, 4 Jun 2008 19:06:15 +0000 (19:06 +0000)
committeraclement <aclement>
Wed, 4 Jun 2008 19:06:15 +0000 (19:06 +0000)
weaver/src/org/aspectj/weaver/JoinPointSignature.java
weaver/src/org/aspectj/weaver/Member.java
weaver/src/org/aspectj/weaver/MemberImpl.java
weaver/src/org/aspectj/weaver/ResolvedMember.java
weaver/src/org/aspectj/weaver/ResolvedMemberImpl.java
weaver/src/org/aspectj/weaver/UnresolvedType.java

index 8c89cde542eeb4a7bfb75322c788ab2255bbcf21..b6bb83b7e6e8c785884558022123bf3a860315ff 100644 (file)
@@ -308,10 +308,6 @@ public class JoinPointSignature implements ResolvedMember {
                return realMember.canBeParameterized();
        }
 
-       public int getCallsiteModifiers() {
-               return realMember.getCallsiteModifiers();
-       }
-
        public String getExtractableName() {
                return realMember.getExtractableName();
        }
index a911722f73d2e4fec3c41d2ec17cd66b38b27d23..3f4605e78968d69aa0401b8f5783385767adfe24 100644 (file)
@@ -16,6 +16,9 @@ package org.aspectj.weaver;
 import java.util.Collection;
 import java.util.Iterator;
 
+/**
+ * Abstract representation of a member within a type.
+ */
 public interface Member extends Comparable {
 
        public static final Member[] NONE = new Member[0];
@@ -53,16 +56,12 @@ public interface Member extends Comparable {
 
        public UnresolvedType[] getParameterTypes();
 
-       
        /**
-        * Return full signature, including return type, e.g. "()LFastCar;" for a signature without the return type,
-        * use getParameterSignature() - it is importnant to choose the right one in the face of covariance.
+        * Return full signature, including return type, e.g. "()LFastCar;". For a signature without the return type,
+        * use getParameterSignature() - it is important to choose the right one in the face of covariance.
         */
        public String getSignature();
        
-    /**
-     * All the signatures that a join point with this member as its signature has.
-     */
     public Iterator getJoinPointSignatures(World world);
 
        public int getArity();
@@ -79,7 +78,6 @@ public interface Member extends Comparable {
        
        public int getModifiers();
 
-
     public boolean isStatic();
 
     public boolean isInterface();
@@ -88,12 +86,9 @@ public interface Member extends Comparable {
 
        /**
         * Returns true iff the member is generic (NOT parameterized)
-        * For example, a method declared in a generic type
         */
        public boolean canBeParameterized();
 
-       public int getCallsiteModifiers();
-
        public String getExtractableName();
 
     public AnnotationX[] getAnnotations();
@@ -102,7 +97,6 @@ public interface Member extends Comparable {
        public String getSignatureMakerName();
 
        public String getSignatureType();
-
        
     public Collection/* ResolvedType */getDeclaringTypes(World world);
     
index 4f9c4479bb147056a2d6a1445e993628fb5e8213..66c0dc7b099bcfc78605e1ab80461768c53df4df 100644 (file)
@@ -10,7 +10,6 @@
  *     PARC     initial implementation 
  * ******************************************************************/
 
-
 package org.aspectj.weaver;
 
 import java.lang.reflect.Modifier;
@@ -20,14 +19,14 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
 
-
 public class MemberImpl implements Member {
     
     protected MemberKind kind;
-    protected String name;
-    protected UnresolvedType declaringType;
+
     protected int modifiers; 
+    protected String name;
     protected UnresolvedType returnType;
+    protected UnresolvedType declaringType;
     protected UnresolvedType[] parameterTypes;
     private final String signature;
     private String paramSignature;
@@ -111,6 +110,7 @@ public class MemberImpl implements Member {
      * @param      signature the JVM bytecode method signature string we want to break apart
      * @return     a pair of UnresolvedType, UnresolvedType[] representing the return types and parameter types. 
      */
+    // OPTIMIZE move static util methods out into a memberutils class
     public static String typesToSignature(UnresolvedType returnType, UnresolvedType[] paramTypes, boolean useRawTypes) {
         StringBuffer buf = new StringBuffer();
         buf.append("(");
@@ -365,27 +365,14 @@ public class MemberImpl implements Member {
     
     public UnresolvedType getGenericReturnType() { return getReturnType(); }
     public UnresolvedType[] getGenericParameterTypes() { return getParameterTypes(); }
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getType()
-        */
-    public UnresolvedType getType() { return returnType; }
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getName()
-        */
+    public final UnresolvedType getType() { return returnType; }
     public String getName() { return name; }
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getParameterTypes()
-        */
     public UnresolvedType[]  getParameterTypes() { return parameterTypes; }
-    
-    
+        
     public String getSignature() { return signature; }
        
     public int getArity() { return parameterTypes.length; }
   
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getParameterSignature()
-        */
     public String getParameterSignature() {
        if (paramSignature != null) return paramSignature;
        StringBuffer sb = new StringBuffer();
@@ -460,17 +447,10 @@ public class MemberImpl implements Member {
        return false;
     }
 
-       public final int getCallsiteModifiers() {
-               return modifiers & ~ Modifier.INTERFACE;
-       }
-       
        public int getModifiers() {
                return modifiers;
        }
 
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getExtractableName()
-        */
     public final String getExtractableName() {
     // OPTIMIZE remove silly string compares for init - use kind==CTOR/STATIC_INITIALIZATION
        if (name.equals("<init>")) return "init$";
@@ -478,21 +458,12 @@ public class MemberImpl implements Member {
        else return name;
     }
 
-    
-       /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getAnnotations()
-        */
        public AnnotationX[] getAnnotations() {
                throw new UnsupportedOperationException("You should resolve this member '"+this+"' and call getAnnotations() on the result...");
        }
 
        // ---- fields 'n' stuff
 
-
-    
-    /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getDeclaringTypes(org.aspectj.weaver.World)
-        */
        public Collection/*ResolvedType*/ getDeclaringTypes(World world) {
                ResolvedType myType = getDeclaringType().resolve(world);
                Collection ret = new HashSet();
@@ -574,11 +545,6 @@ public class MemberImpl implements Member {
     }
        
     
-
-
-       /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getSignatureType()
-        */
        public String getSignatureType() {
        MemberKind kind = getKind();
        if (getName().equals("<clinit>")) return "org.aspectj.lang.reflect.InitializerSignature";
@@ -790,9 +756,6 @@ public class MemberImpl implements Member {
         return buf.toString();
     }
 
-       /* (non-Javadoc)
-        * @see org.aspectj.weaver.Member#getParameterNames(org.aspectj.weaver.World)
-        */
        public String[] getParameterNames(World world) {
        ResolvedMember resolved = resolve(world);
        if (resolved == null) {
index b3a23e0a8c1209a81599359034ed66aa2c89dcd1..2edeba6f26e41fb4e23b56c56a928ed473bf952b 100644 (file)
@@ -33,7 +33,8 @@ public interface ResolvedMember extends Member, AnnotatedElement, TypeVariableDe
        public UnresolvedType[] getExceptions();
 
        public ShadowMunger getAssociatedShadowMunger();
-//OPTIMIZE have param annotation (and anno default value) related stuff here rather than above
+       
+       //OPTIMIZE have param annotation (and anno default value) related stuff here rather than above
        // ??? true or false?
        public boolean isAjSynthetic();
 
@@ -41,6 +42,8 @@ public interface ResolvedMember extends Member, AnnotatedElement, TypeVariableDe
 
        public boolean hasAnnotation(UnresolvedType ofType);
 
+       public AnnotationX[] getAnnotations();
+       
        public ResolvedType[] getAnnotationTypes();
 
        public void setAnnotationTypes(UnresolvedType[] annotationtypes);
index a4db3746f3d7c2cb3d3ce2afec0f9c9234d1431c..e36f4bd77dead0e9f0c032b4f0d56ea09b0c4881 100644 (file)
@@ -981,7 +981,7 @@ public class ResolvedMemberImpl extends MemberImpl implements IHasPosition, Anno
           }
           
           // 'declaring' type
-          r.append(getGenericReturnType().toDebugString());
+          r.append(getGenericReturnType().toString());
           r.append(' ');
           
           // name
@@ -997,7 +997,7 @@ public class ResolvedMemberImpl extends MemberImpl implements IHasPosition, Anno
          if (params.length != 0) {
                   for (int i=0, len = params.length; i < len; i++) {
              if (i>0) r.append(", ");
-                        r.append(params[i].toDebugString());
+                        r.append(params[i].toString());
                         if (parameterNamesExist) r.append(" ").append(parameterNames[i]);
                   }
          }
index f734a7c8b4fbc6a2367ae768c113ac6d6e39a343..79d6aa47158ab2db96aa0179f3c02a62ed20dcba 100644 (file)
@@ -28,7 +28,7 @@ import org.aspectj.weaver.tools.Traceable;
  * A UnresolvedType represents a type to the weaver. It has a basic signature that knows 
  * nothing about type variables, type parameters, etc.. UnresolvedTypes are resolved in some World
  * (a repository of types). When a UnresolvedType is resolved it turns into a 
- * ResolvedType which may be a primitive type, an array type or a ReferenceType. 
+ * ResolvedType which may be a primitive type, or a ReferenceType. 
  * ReferenceTypes may refer to simple, generic, parameterized or type-variable
  * based reference types. A ReferenceType is backed by a delegate that provides 
  * information about the type based on some repository (currently either BCEL
@@ -207,34 +207,6 @@ public class UnresolvedType implements Unresolved, Traceable, TypeVariableDeclar
        throw new UnsupportedOperationException("unable to parameterize unresolved type: " + signature);
     }
     
-    /**
-     * protected constructor for use only within UnresolvedType hierarchy. Use
-     * one of the UnresolvedType.forXXX static methods for normal creation of
-     * TypeXs.
-     * Picks apart the signature string to set the type kind and calculates the
-     * corresponding signatureErasure. A SIMPLE type created from a plain
-     * Java signature may turn into a GENERIC type when it is resolved.
-     * 
-     * This method should never be called for a primitive type. (UnresolvedType. forSignature
-     * deals with those).
-     * 
-     * @param signature in the form described in the class comment at the
-     * top of this file. 
-     */
-//    protected UnresolvedType(String aSignature) {
-//     this.signature = aSignature;
-//
-//
-//    }
-    
-    // -----------------------------
-    // old stuff...
-    
-
-       
-       /**
-        * @param      signature   the bytecode string representation of this Type
-        */
     protected UnresolvedType(String signature) {
         super();
         this.signature = signature;
@@ -599,10 +571,6 @@ public class UnresolvedType implements Unresolved, Traceable, TypeVariableDeclar
     public String toString() {
         return getName(); // + " - " + getKind();
     }
-    
-    public String toDebugString() {
-       return getName();
-    }
 
     // ---- requires worlds