diff options
Diffstat (limited to 'org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java')
-rw-r--r-- | org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java | 388 |
1 files changed, 191 insertions, 197 deletions
diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java b/org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java index af1cace6a..d32f7d99f 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/SignatureUtils.java @@ -16,231 +16,225 @@ import java.lang.reflect.Modifier; public class SignatureUtils { - public static String getSignatureString(Member m, World world) { - MemberKind kind = m.getKind(); - if (kind == Member.METHOD) { - return getMethodSignatureString(m,world); - } else if (kind == Member.CONSTRUCTOR) { - return getConstructorSignatureString(m,world); - } else if (kind == Member.FIELD) { - return getFieldSignatureString(m,world); - } else if (kind == Member.HANDLER) { - return getHandlerSignatureString(m,world); - } else if (kind == Member.STATIC_INITIALIZATION) { - return getStaticInitializationSignatureString(m,world); - } else if (kind == Member.ADVICE) { - return getAdviceSignatureString(m,world); - } else if (kind == Member.MONITORENTER || kind == Member.MONITOREXIT) { - return getMonitorSignatureString(m,world); - } else { - throw new BCException("Do not know the signature string for MemberKind "+kind); - } - } - - public static String getSignatureMakerName(Member m) { - MemberKind kind = m.getKind(); - if (kind == Member.METHOD) { - return "makeMethodSig"; - } else if (kind == Member.CONSTRUCTOR) { - return "makeConstructorSig"; - } else if (kind == Member.FIELD) { - return "makeFieldSig"; - } else if (kind == Member.HANDLER) { - return "makeCatchClauseSig"; - } else if (kind == Member.STATIC_INITIALIZATION) { - return "makeInitializerSig"; - } else if (kind == Member.ADVICE) { - return "makeAdviceSig"; - } else if (kind == Member.MONITORENTER) { - return "makeLockSig"; - } else if (kind == Member.MONITOREXIT) { - return "makeUnlockSig"; - } else { - throw new BCException("Do not know the signature maker name for MemberKind "+kind); - } - } + public static String getSignatureString(Member m, World world) { + MemberKind kind = m.getKind(); + if (kind == Member.METHOD) { + return getMethodSignatureString(m, world); + } else if (kind == Member.CONSTRUCTOR) { + return getConstructorSignatureString(m, world); + } else if (kind == Member.FIELD) { + return getFieldSignatureString(m, world); + } else if (kind == Member.HANDLER) { + return getHandlerSignatureString(m, world); + } else if (kind == Member.STATIC_INITIALIZATION) { + return getStaticInitializationSignatureString(m, world); + } else if (kind == Member.ADVICE) { + return getAdviceSignatureString(m, world); + } else if (kind == Member.MONITORENTER || kind == Member.MONITOREXIT) { + return getMonitorSignatureString(m, world); + } else { + throw new BCException("Do not know the signature string for MemberKind " + kind); + } + } + + public static String getSignatureMakerName(Member m) { + MemberKind kind = m.getKind(); + if (kind == Member.METHOD) { + return "makeMethodSig"; + } else if (kind == Member.CONSTRUCTOR) { + return "makeConstructorSig"; + } else if (kind == Member.FIELD) { + return "makeFieldSig"; + } else if (kind == Member.HANDLER) { + return "makeCatchClauseSig"; + } else if (kind == Member.STATIC_INITIALIZATION) { + return "makeInitializerSig"; + } else if (kind == Member.ADVICE) { + return "makeAdviceSig"; + } else if (kind == Member.MONITORENTER) { + return "makeLockSig"; + } else if (kind == Member.MONITOREXIT) { + return "makeUnlockSig"; + } else { + throw new BCException("Do not know the signature maker name for MemberKind " + kind); + } + } public static String getSignatureType(Member m) { - MemberKind kind = m.getKind(); - if (m.getName().equals("<clinit>") && kind!=Member.STATIC_INITIALIZATION) throw new BCException(); -// if (m.getName().equals("<clinit>")) return "org.aspectj.lang.reflect.InitializerSignature"; - - if (kind == Member.METHOD) { - return "org.aspectj.lang.reflect.MethodSignature"; - } else if (kind == Member.CONSTRUCTOR) { - return "org.aspectj.lang.reflect.ConstructorSignature"; - } else if (kind == Member.FIELD) { - return "org.aspectj.lang.reflect.FieldSignature"; - } else if (kind == Member.HANDLER) { - return "org.aspectj.lang.reflect.CatchClauseSignature"; - } else if (kind == Member.STATIC_INITIALIZATION) { - return "org.aspectj.lang.reflect.InitializerSignature"; - } else if (kind == Member.ADVICE) { - return "org.aspectj.lang.reflect.AdviceSignature"; - } else if (kind == Member.MONITORENTER) { - return "org.aspectj.lang.reflect.LockSignature"; - } else if (kind == Member.MONITOREXIT) { - return "org.aspectj.lang.reflect.UnlockSignature"; - } else { - throw new BCException("Do not know the signature type for MemberKind "+kind); - } - } - - - // --- - + MemberKind kind = m.getKind(); + if (m.getName().equals("<clinit>") && kind != Member.STATIC_INITIALIZATION) + throw new BCException(); + // if (m.getName().equals("<clinit>")) return "org.aspectj.lang.reflect.InitializerSignature"; + + if (kind == Member.METHOD) { + return "org.aspectj.lang.reflect.MethodSignature"; + } else if (kind == Member.CONSTRUCTOR) { + return "org.aspectj.lang.reflect.ConstructorSignature"; + } else if (kind == Member.FIELD) { + return "org.aspectj.lang.reflect.FieldSignature"; + } else if (kind == Member.HANDLER) { + return "org.aspectj.lang.reflect.CatchClauseSignature"; + } else if (kind == Member.STATIC_INITIALIZATION) { + return "org.aspectj.lang.reflect.InitializerSignature"; + } else if (kind == Member.ADVICE) { + return "org.aspectj.lang.reflect.AdviceSignature"; + } else if (kind == Member.MONITORENTER) { + return "org.aspectj.lang.reflect.LockSignature"; + } else if (kind == Member.MONITOREXIT) { + return "org.aspectj.lang.reflect.UnlockSignature"; + } else { + throw new BCException("Do not know the signature type for MemberKind " + kind); + } + } + + // --- private static String getHandlerSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(0)); - buf.append('-'); - //buf.append(getName()); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - buf.append(makeString(m.getParameterTypes()[0])); - buf.append('-'); - String pName = "<missing>"; - String[] names = m.getParameterNames(world); - if (names != null) pName = names[0]; - buf.append(pName); - buf.append('-'); - return buf.toString(); + StringBuffer buf = new StringBuffer(); + buf.append(makeString(0)); + buf.append('-'); + // buf.append(getName()); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + buf.append(makeString(m.getParameterTypes()[0])); + buf.append('-'); + String pName = "<missing>"; + String[] names = m.getParameterNames(world); + if (names != null) + pName = names[0]; + buf.append(pName); + buf.append('-'); + return buf.toString(); } - + private static String getStaticInitializationSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(m.getModifiers(world))); - buf.append('-'); - //buf.append(getName()); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - return buf.toString(); + StringBuffer buf = new StringBuffer(); + buf.append(makeString(m.getModifiers(world))); + buf.append('-'); + // buf.append(getName()); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + return buf.toString(); } protected static String getAdviceSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(m.getModifiers(world))); - buf.append('-'); - buf.append(m.getName()); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - buf.append(makeString(m.getParameterTypes())); - buf.append('-'); - buf.append(makeString(m.getParameterNames(world))); - buf.append('-'); - buf.append(makeString(m.getExceptions(world))); - buf.append('-'); - buf.append(makeString(m.getReturnType())); - buf.append('-'); - return buf.toString(); + StringBuffer buf = new StringBuffer(); + buf.append(makeString(m.getModifiers(world))); + buf.append('-'); + buf.append(m.getName()); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + buf.append(makeString(m.getParameterTypes())); + buf.append('-'); + buf.append(makeString(m.getParameterNames(world))); + buf.append('-'); + buf.append(makeString(m.getExceptions(world))); + buf.append('-'); + buf.append(makeString(m.getReturnType())); + buf.append('-'); + return buf.toString(); } - protected static String getMethodSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(m.getModifiers(world))); - buf.append('-'); - buf.append(m.getName()); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - buf.append(makeString(m.getParameterTypes())); - buf.append('-'); - buf.append(makeString(m.getParameterNames(world))); - buf.append('-'); - buf.append(makeString(m.getExceptions(world))); - buf.append('-'); - buf.append(makeString(m.getReturnType())); - buf.append('-'); - return buf.toString(); + StringBuffer buf = new StringBuffer(); + buf.append(makeString(m.getModifiers(world))); + buf.append('-'); + buf.append(m.getName()); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + buf.append(makeString(m.getParameterTypes())); + buf.append('-'); + buf.append(makeString(m.getParameterNames(world))); + buf.append('-'); + buf.append(makeString(m.getExceptions(world))); + buf.append('-'); + buf.append(makeString(m.getReturnType())); + buf.append('-'); + return buf.toString(); } - + protected static String getMonitorSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(Modifier.STATIC)); // modifiers - buf.append('-'); - buf.append(m.getName()); // name - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); // Declaring Type - buf.append('-'); - buf.append(makeString(m.getParameterTypes()[0])); // Parameter Types - buf.append('-'); - buf.append(""); // Parameter names - buf.append('-'); - return buf.toString(); + StringBuffer buf = new StringBuffer(); + buf.append(makeString(Modifier.STATIC)); // modifiers + buf.append('-'); + buf.append(m.getName()); // name + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); // Declaring Type + buf.append('-'); + buf.append(makeString(m.getParameterTypes()[0])); // Parameter Types + buf.append('-'); + buf.append(""); // Parameter names + buf.append('-'); + return buf.toString(); } protected static String getConstructorSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(m.getModifiers(world))); - buf.append('-'); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - buf.append(makeString(m.getParameterTypes())); - buf.append('-'); - buf.append(makeString(m.getParameterNames(world))); - buf.append('-'); - buf.append(makeString(m.getExceptions(world))); - buf.append('-'); - return buf.toString(); - } - - - + StringBuffer buf = new StringBuffer(); + buf.append(makeString(m.getModifiers(world))); + buf.append('-'); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + buf.append(makeString(m.getParameterTypes())); + buf.append('-'); + buf.append(makeString(m.getParameterNames(world))); + buf.append('-'); + buf.append(makeString(m.getExceptions(world))); + buf.append('-'); + return buf.toString(); + } protected static String getFieldSignatureString(Member m, World world) { - StringBuffer buf = new StringBuffer(); - buf.append(makeString(m.getModifiers(world))); - buf.append('-'); - buf.append(m.getName()); - buf.append('-'); - buf.append(makeString(m.getDeclaringType())); - buf.append('-'); - buf.append(makeString(m.getReturnType())); - buf.append('-'); - return buf.toString(); - } + StringBuffer buf = new StringBuffer(); + buf.append(makeString(m.getModifiers(world))); + buf.append('-'); + buf.append(m.getName()); + buf.append('-'); + buf.append(makeString(m.getDeclaringType())); + buf.append('-'); + buf.append(makeString(m.getReturnType())); + buf.append('-'); + return buf.toString(); + } protected static String makeString(int i) { return Integer.toString(i, 16); } protected static String makeString(UnresolvedType t) { - // this is the inverse of the odd behavior for Class.forName w/ arrays - if (t.isArray()) { - // this behavior matches the string used by the eclipse compiler for Foo.class literals - return t.getSignature().replace('/', '.'); - } else { - return t.getName(); - } - } - - + // this is the inverse of the odd behavior for Class.forName w/ arrays + if (t.isArray()) { + // this behavior matches the string used by the eclipse compiler for Foo.class literals + return t.getSignature().replace('/', '.'); + } else { + return t.getName(); + } + } protected static String makeString(UnresolvedType[] types) { - if (types == null) return ""; - StringBuffer buf = new StringBuffer(); - for (int i = 0, len=types.length; i < len; i++) { - buf.append(makeString(types[i])); - buf.append(':'); - } - return buf.toString(); - } - - + if (types == null) + return ""; + StringBuffer buf = new StringBuffer(); + for (int i = 0, len = types.length; i < len; i++) { + buf.append(makeString(types[i])); + buf.append(':'); + } + return buf.toString(); + } protected static String makeString(String[] names) { - if (names == null) return ""; - StringBuffer buf = new StringBuffer(); - for (int i = 0, len=names.length; i < len; i++) { - buf.append(names[i]); - buf.append(':'); - } - return buf.toString(); - } + if (names == null) + return ""; + StringBuffer buf = new StringBuffer(); + for (int i = 0, len = names.length; i < len; i++) { + buf.append(names[i]); + buf.append(':'); + } + return buf.toString(); + } } |