use of org.apache.tapestry5.internal.plastic.asm.signature.SignatureReader in project tapestry-5 by apache.
the class Remapper method mapSignature.
/**
* Returns the given signature, remapped with the {@link SignatureVisitor} returned by {@link
* #createSignatureRemapper(SignatureVisitor)}.
*
* @param signature a <i>JavaTypeSignature</i>, <i>ClassSignature</i> or <i>MethodSignature</i>.
* @param typeSignature whether the given signature is a <i>JavaTypeSignature</i>.
* @return signature the given signature, remapped with the {@link SignatureVisitor} returned by
* {@link #createSignatureRemapper(SignatureVisitor)}.
*/
public String mapSignature(final String signature, final boolean typeSignature) {
if (signature == null) {
return null;
}
SignatureReader signatureReader = new SignatureReader(signature);
SignatureWriter signatureWriter = new SignatureWriter();
SignatureVisitor signatureRemapper = createSignatureRemapper(signatureWriter);
if (typeSignature) {
signatureReader.acceptType(signatureRemapper);
} else {
signatureReader.accept(signatureRemapper);
}
return signatureWriter.toString();
}
use of org.apache.tapestry5.internal.plastic.asm.signature.SignatureReader in project tapestry-5 by apache.
the class Textifier method appendJavaDeclaration.
/**
* 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');
}
Aggregations