From: adam Date: Sun, 3 Jul 2005 02:42:40 +0000 (+0000) Subject: added convenience methods to HasFlags X-Git-Url: http://git.megacz.com/?p=org.ibex.classgen.git;a=commitdiff_plain;h=af026b0fadcaa179db15b8148873952c7286e23d added convenience methods to HasFlags darcs-hash:20050703024240-5007d-479b6c96277dec3d7361e2b7a48945b69e14ab27.gz --- diff --git a/src/org/ibex/classgen/ClassFile.java b/src/org/ibex/classgen/ClassFile.java index f598519..dd8b424 100644 --- a/src/org/ibex/classgen/ClassFile.java +++ b/src/org/ibex/classgen/ClassFile.java @@ -34,6 +34,7 @@ public class ClassFile implements CGConst { } public Type.Class getType() { return thisType; } + public int getFlags() { return flags; } String debugToString() { return debugToString(new StringBuffer(4096)).toString(); } StringBuffer debugToString(StringBuffer sb) { diff --git a/src/org/ibex/classgen/HasFlags.java b/src/org/ibex/classgen/HasFlags.java index 4bbd8f4..20aa90d 100644 --- a/src/org/ibex/classgen/HasFlags.java +++ b/src/org/ibex/classgen/HasFlags.java @@ -1,5 +1,18 @@ package org.ibex.classgen; -public interface HasFlags { - public int getFlags(); +public abstract class HasFlags implements CGConst { + public abstract int getFlags(); + + public boolean isPublic() { return (getFlags() & PUBLIC) != 0; } + public boolean isPrivate() { return (getFlags() & PRIVATE) != 0; } + public boolean isProtected() { return (getFlags() & PROTECTED) != 0; } + public boolean isStatic() { return (getFlags() & STATIC) != 0; } + public boolean isFinal() { return (getFlags() & FINAL) != 0; } + + public boolean isAbstract() { return (getFlags() & ABSTRACT) != 0; } + public boolean isNative() { return (getFlags() & NATIVE) != 0; } + public boolean isConcrete() { return !isAbstract() && !isNative(); } + + public boolean isVolatile() { return (getFlags() & VOLATILE) != 0; } + public boolean isTransient() { return (getFlags() & TRANSIENT) != 0; } }