@Override public SignatureVisitor visitExceptionType() { if (exceptions == null) { exceptions = new StringBuilder(); } else { exceptions.append(COMMA_SEPARATOR); } return new TraceSignatureVisitor(exceptions); }
@Override public SignatureVisitor visitExceptionType() { if (exceptions == null) { exceptions = new StringBuilder(); } else { exceptions.append(COMMA_SEPARATOR); } return new TraceSignatureVisitor(exceptions); }
@Override public SignatureVisitor visitExceptionType() { if (exceptions == null) { exceptions = new StringBuilder(); } else { exceptions.append(", "); } // startType(); return new TraceSignatureVisitor(exceptions); }
@Override public SignatureVisitor visitReturnType() { endFormals(); if (seenParameter) { seenParameter = false; } else { declaration.append('('); } declaration.append(')'); returnType = new StringBuilder(); return new TraceSignatureVisitor(returnType); }
@Override public SignatureVisitor visitReturnType() { endFormals(); if (parameterTypeVisited) { parameterTypeVisited = false; } else { declaration.append('('); } declaration.append(')'); returnType = new StringBuilder(); return new TraceSignatureVisitor(returnType); }
@Override public SignatureVisitor visitReturnType() { endFormals(); if (parameterTypeVisited) { parameterTypeVisited = false; } else { declaration.append('('); } declaration.append(')'); returnType = new StringBuilder(); return new TraceSignatureVisitor(returnType); }
@Override public void visitLocalVariable(final String name, final String desc, final String signature, final Label start, final Label end, final int index) { buf.setLength(0); buf.append(tab2).append("LOCALVARIABLE ").append(name).append(' '); appendDescriptor(FIELD_DESCRIPTOR, desc); buf.append(' '); appendLabel(start); buf.append(' '); appendLabel(end); buf.append(' ').append(index).append('\n'); if (signature != null) { buf.append(tab2); appendDescriptor(FIELD_SIGNATURE, signature); TraceSignatureVisitor sv = new TraceSignatureVisitor(0); SignatureReader r = new SignatureReader(signature); r.acceptType(sv); buf.append(tab2).append("// declaration: ") .append(sv.getDeclaration()).append('\n'); } text.add(buf.toString()); }
/** * Converts a method descriptor / signature into strings like * <pre> * meth(java.lang.String, java.util.Map) * <T extends java.io.IOException>meth(T, double, java.lang.List<T>)</pre> * Notice that the result includes neither the return type nor the accessibility. */ public static String toString(String methodName, String methodDescriptor, @Nullable String methodSignature) { if (methodSignature != null) { TraceSignatureVisitor tsv = new TraceSignatureVisitor(0); new SignatureReader(methodSignature).accept(tsv); return methodName + tsv.getDeclaration(); } StringBuilder sb = new StringBuilder(methodName).append('('); Type[] ats = Type.getArgumentTypes(methodDescriptor); if (ats.length >= 1) { for (int i = 0;;) { sb.append(ats[i++].getClassName()); if (i == ats.length) break; sb.append(", "); } } return sb.append(')').toString(); } }
/** * Converts the given type signature to a human readable type string. * <p> * Example: {@code Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>; -> java.util.Map<java.lang.String, java.lang.String>} */ public static String toReadableType(final String type) { final SignatureReader reader = new SignatureReader(type); final TraceSignatureVisitor visitor = new TraceSignatureVisitor(0); reader.acceptType(visitor); return visitor.getDeclaration(); }
/** * Converts the given type signature to a human readable type string. * <p> * Example: {@code Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>; -> java.util.Map<java.lang.String, java.lang.String>} */ public static String toReadableType(final String type) { final SignatureReader reader = new SignatureReader(type); final TraceSignatureVisitor visitor = new TraceSignatureVisitor(0); reader.acceptType(visitor); return visitor.getDeclaration(); }
appendDescriptor(FIELD_SIGNATURE, signature); TraceSignatureVisitor sv = new TraceSignatureVisitor(0); SignatureReader r = new SignatureReader(signature); r.acceptType(sv);
/** * Appends the Java generic type declaration corresponding to the given signature. * * @param name a class, field or method name. * @param signature a class, field or method signature. */ private void appendJavaDeclaration(final String name, final String signature) { TraceSignatureVisitor traceSignatureVisitor = new TraceSignatureVisitor(access); new SignatureReader(signature).accept(traceSignatureVisitor); stringBuilder.append("// declaration: "); if (traceSignatureVisitor.getReturnType() != null) { stringBuilder.append(traceSignatureVisitor.getReturnType()); stringBuilder.append(' '); } stringBuilder.append(name); stringBuilder.append(traceSignatureVisitor.getDeclaration()); if (traceSignatureVisitor.getExceptions() != null) { stringBuilder.append(" throws ").append(traceSignatureVisitor.getExceptions()); } stringBuilder.append('\n'); }
TraceSignatureVisitor sv = new TraceSignatureVisitor(access); SignatureReader r = new SignatureReader(signature); r.accept(sv);
/** * Appends the Java generic type declaration corresponding to the given signature. * * @param name a class, field or method name. * @param signature a class, field or method signature. */ private void appendJavaDeclaration(final String name, final String signature) { TraceSignatureVisitor traceSignatureVisitor = new TraceSignatureVisitor(access); new SignatureReader(signature).accept(traceSignatureVisitor); stringBuilder.append("// declaration: "); if (traceSignatureVisitor.getReturnType() != null) { stringBuilder.append(traceSignatureVisitor.getReturnType()); stringBuilder.append(' '); } stringBuilder.append(name); stringBuilder.append(traceSignatureVisitor.getDeclaration()); if (traceSignatureVisitor.getExceptions() != null) { stringBuilder.append(" throws ").append(traceSignatureVisitor.getExceptions()); } stringBuilder.append('\n'); }
StringBuilder sb=new StringBuilder(); appendModifiers(sb, access); TraceSignatureVisitor v = new TraceSignatureVisitor(0); new SignatureReader(signature).accept(v);
appendDescriptor(METHOD_SIGNATURE, signature); TraceSignatureVisitor v = new TraceSignatureVisitor(0); SignatureReader r = new SignatureReader(signature); r.accept(v);
TraceSignatureVisitor v = new TraceSignatureVisitor(Opcodes.ACC_PUBLIC); SignatureReader r = new SignatureReader(methodDescriptor); r.accept(v);
public String declaration() { TraceSignatureVisitor visitor = new TraceSignatureVisitor(0); new SignatureReader(desc()).accept(visitor); return name() + visitor.getDeclaration(); }