]> source.dussan.org Git - aspectj.git/commitdiff
72766 - more helpers for identifying enums/annotations
authoraclement <aclement>
Thu, 2 Dec 2004 10:31:13 +0000 (10:31 +0000)
committeraclement <aclement>
Thu, 2 Dec 2004 10:31:13 +0000 (10:31 +0000)
weaver/src/org/aspectj/weaver/ResolvedTypeX.java
weaver/src/org/aspectj/weaver/TypeX.java

index bb3dda37e253666b53886827a2728fd3ea346dbe..5c5323664bae83645f07e335bc52c76d133ce365 100644 (file)
@@ -455,6 +455,20 @@ public abstract class ResolvedTypeX extends TypeX {
        return false;
     }
     
+    /**
+     * Note: Only overridden by Name subtype.
+     */
+    public boolean isEnum() {
+       return false;
+    }
+    
+    /**
+     * Note: Only overridden by Name subtype.
+     */
+    public boolean isAnnotation() {
+       return false;
+    }
+    
     
     public boolean isSynthetic() {
        return signature.indexOf("$ajc") != -1;
@@ -549,6 +563,14 @@ public abstract class ResolvedTypeX extends TypeX {
            public boolean isAspect() {
                return delegate.isAspect();
            }
+           
+           public boolean isEnum() {
+               return delegate.isEnum();
+           }
+           
+           public boolean isAnnotation() {
+               return delegate.isAnnotation();
+           }
             
         public final boolean needsNoConversionFrom(TypeX o) {
             return isAssignableFrom(o);
@@ -692,6 +714,8 @@ public abstract class ResolvedTypeX extends TypeX {
            
            public abstract boolean isAspect();
            public abstract boolean isInterface();
+           public abstract boolean isEnum();
+           public abstract boolean isAnnotation();
 
                public abstract ResolvedMember[] getDeclaredFields();
 
index eb0ec35b4652caeae9213bf10cca9f28571f3c51..05bf356417348ee09bc0c08927949d4a48c3870c 100644 (file)
@@ -413,6 +413,20 @@ public class TypeX {
     public final boolean isClass(World world) {
         return world.resolve(this).isClass();
     }
+    
+    /**
+     * Determines if this class represents an enum type.
+     */
+    public final boolean isEnum(World world) {
+       return world.resolve(this).isEnum();
+    }
+    
+    /**
+     * Determines if this class represents an annotation type.
+     */
+    public final boolean isAnnotation(World world) {
+       return world.resolve(this).isAnnotation();
+    }
 
 
     /**