summaryrefslogtreecommitdiffstats
path: root/src/main/javassist
diff options
context:
space:
mode:
authorkkhan <kkhan@30ef5769-5b8d-40dd-aea6-55b5d6557bb3>2006-06-08 23:54:44 +0000
committerkkhan <kkhan@30ef5769-5b8d-40dd-aea6-55b5d6557bb3>2006-06-08 23:54:44 +0000
commit9a1a73334ffa8b3e6b3bff3269cd0b7e95a26726 (patch)
tree5ad5e31d9064ed10d38eb8e85a240d7c6d2c3222 /src/main/javassist
parentda0396f9416886b5753c314a80d25e7ccfb9820e (diff)
downloadjavassist-9a1a73334ffa8b3e6b3bff3269cd0b7e95a26726.tar.gz
javassist-9a1a73334ffa8b3e6b3bff3269cd0b7e95a26726.zip
Add methods to determine if a CtClass is an annotation or an enum
git-svn-id: http://anonsvn.jboss.org/repos/javassist/trunk@279 30ef5769-5b8d-40dd-aea6-55b5d6557bb3
Diffstat (limited to 'src/main/javassist')
-rw-r--r--src/main/javassist/CtClass.java16
-rw-r--r--src/main/javassist/CtClassType.java8
-rw-r--r--src/main/javassist/Modifier.java16
3 files changed, 40 insertions, 0 deletions
diff --git a/src/main/javassist/CtClass.java b/src/main/javassist/CtClass.java
index 0fbe3438..fe592998 100644
--- a/src/main/javassist/CtClass.java
+++ b/src/main/javassist/CtClass.java
@@ -434,6 +434,22 @@ public abstract class CtClass {
}
/**
+ * Determines whether this object represents an annotation type.
+ * It returns <code>true</code> if this object represents an annotation type.
+ */
+ public boolean isAnnotation() {
+ return false;
+ }
+
+ /**
+ * Determines whether this object represents an enum.
+ * It returns <code>true</code> if this object represents an enum.
+ */
+ public boolean isEnum() {
+ return false;
+ }
+
+ /**
* Returns the modifiers for this class, encoded in an integer.
* For decoding, use <code>javassist.Modifier</code>.
*
diff --git a/src/main/javassist/CtClassType.java b/src/main/javassist/CtClassType.java
index 372e2b22..1a29269c 100644
--- a/src/main/javassist/CtClassType.java
+++ b/src/main/javassist/CtClassType.java
@@ -358,6 +358,14 @@ class CtClassType extends CtClass {
return Modifier.isInterface(getModifiers());
}
+ public boolean isAnnotation() {
+ return Modifier.isAnnotation(getModifiers());
+ }
+
+ public boolean isEnum() {
+ return Modifier.isEnum(getModifiers());
+ }
+
public int getModifiers() {
ClassFile cf = getClassFile2();
int acc = cf.getAccessFlags();
diff --git a/src/main/javassist/Modifier.java b/src/main/javassist/Modifier.java
index 7b3cfc79..730e24b6 100644
--- a/src/main/javassist/Modifier.java
+++ b/src/main/javassist/Modifier.java
@@ -132,6 +132,22 @@ public class Modifier {
}
/**
+ * Returns true if the modifiers include the <tt>annotation</tt>
+ * modifier.
+ */
+ public static boolean isAnnotation(int mod) {
+ return (mod & ANNOTATION) != 0;
+ }
+
+ /**
+ * Returns true if the modifiers include the <tt>enum</tt>
+ * modifier.
+ */
+ public static boolean isEnum(int mod) {
+ return (mod & ENUM) != 0;
+ }
+
+ /**
* Returns true if the modifiers include the <tt>abstract</tt>
* modifier.
*/