本文整理汇总了Java中jdk.internal.org.objectweb.asm.signature.SignatureReader类的典型用法代码示例。如果您正苦于以下问题:Java SignatureReader类的具体用法?Java SignatureReader怎么用?Java SignatureReader使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
SignatureReader类属于jdk.internal.org.objectweb.asm.signature包,在下文中一共展示了SignatureReader类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: visitLocalVariable
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@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());
}
示例2: mapSignature
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
/**
*
* @param typeSignature
* true if signature is a FieldTypeSignature, such as the
* signature parameter of the ClassVisitor.visitField or
* MethodVisitor.visitLocalVariable methods
*/
public String mapSignature(String signature, boolean typeSignature) {
if (signature == null) {
return null;
}
SignatureReader r = new SignatureReader(signature);
SignatureWriter w = new SignatureWriter();
SignatureVisitor a = createRemappingSignatureAdapter(w);
if (typeSignature) {
r.acceptType(a);
} else {
r.accept(a);
}
return w.toString();
}
示例3: mapSignature
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
/**
* @param signature
* signature for mapper
* @param typeSignature
* true if signature is a FieldTypeSignature, such as the
* signature parameter of the ClassVisitor.visitField or
* MethodVisitor.visitLocalVariable methods
* @return signature rewritten as a string
*/
public String mapSignature(String signature, boolean typeSignature) {
if (signature == null) {
return null;
}
SignatureReader r = new SignatureReader(signature);
SignatureWriter w = new SignatureWriter();
SignatureVisitor a = createSignatureRemapper(w);
if (typeSignature) {
r.acceptType(a);
} else {
r.accept(a);
}
return w.toString();
}
示例4: mapSignature
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
/**
*
* @param typeSignature true if signature is a FieldTypeSignature, such as
* the signature parameter of the ClassVisitor.visitField or
* MethodVisitor.visitLocalVariable methods
*/
public String mapSignature(String signature, boolean typeSignature) {
if (signature == null) {
return null;
}
SignatureReader r = new SignatureReader(signature);
SignatureWriter w = new SignatureWriter();
SignatureVisitor a = createRemappingSignatureAdapter(w);
if (typeSignature) {
r.acceptType(a);
} else {
r.accept(a);
}
return w.toString();
}
示例5: visitLocalVariable
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@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());
}
示例6: visit
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public void visit(final int version, final int access, final String name,
final String signature, final String superName,
final String[] interfaces) {
this.access = access;
int major = version & 0xFFFF;
int minor = version >>> 16;
buf.setLength(0);
buf.append("// class version ").append(major).append('.').append(minor)
.append(" (").append(version).append(")\n");
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
buf.append("// DEPRECATED\n");
}
buf.append("// access flags 0x")
.append(Integer.toHexString(access).toUpperCase()).append('\n');
appendDescriptor(CLASS_SIGNATURE, signature);
if (signature != null) {
TraceSignatureVisitor sv = new TraceSignatureVisitor(access);
SignatureReader r = new SignatureReader(signature);
r.accept(sv);
buf.append("// declaration: ").append(name)
.append(sv.getDeclaration()).append('\n');
}
appendAccess(access & ~Opcodes.ACC_SUPER);
if ((access & Opcodes.ACC_ANNOTATION) != 0) {
buf.append("@interface ");
} else if ((access & Opcodes.ACC_INTERFACE) != 0) {
buf.append("interface ");
} else if ((access & Opcodes.ACC_ENUM) == 0) {
buf.append("class ");
}
appendDescriptor(INTERNAL_NAME, name);
if (superName != null && !"java/lang/Object".equals(superName)) {
buf.append(" extends ");
appendDescriptor(INTERNAL_NAME, superName);
buf.append(' ');
}
if (interfaces != null && interfaces.length > 0) {
buf.append(" implements ");
for (int i = 0; i < interfaces.length; ++i) {
appendDescriptor(INTERNAL_NAME, interfaces[i]);
buf.append(' ');
}
}
buf.append(" {\n\n");
text.add(buf.toString());
}
示例7: visitField
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public Textifier visitField(final int access, final String name,
final String desc, final String signature, final Object value) {
buf.setLength(0);
buf.append('\n');
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
buf.append(tab).append("// DEPRECATED\n");
}
buf.append(tab).append("// access flags 0x")
.append(Integer.toHexString(access).toUpperCase()).append('\n');
if (signature != null) {
buf.append(tab);
appendDescriptor(FIELD_SIGNATURE, signature);
TraceSignatureVisitor sv = new TraceSignatureVisitor(0);
SignatureReader r = new SignatureReader(signature);
r.acceptType(sv);
buf.append(tab).append("// declaration: ")
.append(sv.getDeclaration()).append('\n');
}
buf.append(tab);
appendAccess(access);
appendDescriptor(FIELD_DESCRIPTOR, desc);
buf.append(' ').append(name);
if (value != null) {
buf.append(" = ");
if (value instanceof String) {
buf.append('\"').append(value).append('\"');
} else {
buf.append(value);
}
}
buf.append('\n');
text.add(buf.toString());
Textifier t = createTextifier();
text.add(t.getText());
return t;
}
示例8: visitMethod
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public Textifier visitMethod(final int access, final String name,
final String desc, final String signature, final String[] exceptions) {
buf.setLength(0);
buf.append('\n');
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
buf.append(tab).append("// DEPRECATED\n");
}
buf.append(tab).append("// access flags 0x")
.append(Integer.toHexString(access).toUpperCase()).append('\n');
if (signature != null) {
buf.append(tab);
appendDescriptor(METHOD_SIGNATURE, signature);
TraceSignatureVisitor v = new TraceSignatureVisitor(0);
SignatureReader r = new SignatureReader(signature);
r.accept(v);
String genericDecl = v.getDeclaration();
String genericReturn = v.getReturnType();
String genericExceptions = v.getExceptions();
buf.append(tab).append("// declaration: ").append(genericReturn)
.append(' ').append(name).append(genericDecl);
if (genericExceptions != null) {
buf.append(" throws ").append(genericExceptions);
}
buf.append('\n');
}
buf.append(tab);
appendAccess(access & ~Opcodes.ACC_VOLATILE);
if ((access & Opcodes.ACC_NATIVE) != 0) {
buf.append("native ");
}
if ((access & Opcodes.ACC_VARARGS) != 0) {
buf.append("varargs ");
}
if ((access & Opcodes.ACC_BRIDGE) != 0) {
buf.append("bridge ");
}
if ((this.access & Opcodes.ACC_INTERFACE) != 0
&& (access & Opcodes.ACC_ABSTRACT) == 0
&& (access & Opcodes.ACC_STATIC) == 0) {
buf.append("default ");
}
buf.append(name);
appendDescriptor(METHOD_DESCRIPTOR, desc);
if (exceptions != null && exceptions.length > 0) {
buf.append(" throws ");
for (int i = 0; i < exceptions.length; ++i) {
appendDescriptor(INTERNAL_NAME, exceptions[i]);
buf.append(' ');
}
}
buf.append('\n');
text.add(buf.toString());
Textifier t = createTextifier();
text.add(t.getText());
return t;
}
示例9: visit
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public void visit(final int version, final int access, final String name, final String signature, final String superName, final String[] interfaces) {
final int major = version & 0xFFFF;
final int minor = version >>> 16;
currentClassName = name;
final StringBuilder sb = new StringBuilder();
sb.append("// class version ").
append(major).
append('.').
append(minor).append(" (").
append(version).
append(")\n");
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
sb.append("// DEPRECATED\n");
}
sb.append("// access flags 0x"). //TODO TRANSLATE TO WHAT THEY MEAN
append(Integer.toHexString(access).toUpperCase()).
append('\n');
appendDescriptor(sb, CLASS_SIGNATURE, signature);
if (signature != null) {
final TraceSignatureVisitor sv = new TraceSignatureVisitor(access);
final SignatureReader r = new SignatureReader(signature);
r.accept(sv);
sb.append("// declaration: ").
append(name).
append(sv.getDeclaration()).
append('\n');
}
appendAccess(sb, access & ~Opcodes.ACC_SUPER);
if ((access & Opcodes.ACC_ANNOTATION) != 0) {
sb.append("@interface ");
} else if ((access & Opcodes.ACC_INTERFACE) != 0) {
sb.append("interface ");
} else if ((access & Opcodes.ACC_ENUM) == 0) {
sb.append("class ");
}
appendDescriptor(sb, INTERNAL_NAME, name);
if (superName != null && !"java/lang/Object".equals(superName)) {
sb.append(" extends ");
appendDescriptor(sb, INTERNAL_NAME, superName);
sb.append(' ');
}
if (interfaces != null && interfaces.length > 0) {
sb.append(" implements ");
for (final String interface1 : interfaces) {
appendDescriptor(sb, INTERNAL_NAME, interface1);
sb.append(' ');
}
}
sb.append(" {\n");
addText(sb);
}
示例10: visitField
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public NashornTextifier visitField(final int access, final String name, final String desc, final String signature, final Object value) {
final StringBuilder sb = new StringBuilder();
// sb.append('\n');
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
sb.append(tab).append("// DEPRECATED\n");
}
/* sb.append(tab).
append("// access flags 0x").
append(Integer.toHexString(access).toUpperCase()).
append('\n');
*/
if (signature != null) {
sb.append(tab);
appendDescriptor(sb, FIELD_SIGNATURE, signature);
final TraceSignatureVisitor sv = new TraceSignatureVisitor(0);
final SignatureReader r = new SignatureReader(signature);
r.acceptType(sv);
sb.append(tab).
append("// declaration: ").
append(sv.getDeclaration()).
append('\n');
}
sb.append(tab);
appendAccess(sb, access);
final String prunedDesc = desc.endsWith(";") ? desc.substring(0, desc.length() - 1) : desc;
appendDescriptor(sb, FIELD_DESCRIPTOR, prunedDesc);
sb.append(' ').append(name);
if (value != null) {
sb.append(" = ");
if (value instanceof String) {
sb.append('\"').append(value).append('\"');
} else {
sb.append(value);
}
}
sb.append(";\n");
addText(sb);
final NashornTextifier t = createNashornTextifier();
addText(t.getText());
return t;
}
示例11: visitMethod
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public NashornTextifier visitMethod(final int access, final String name, final String desc, final String signature, final String[] exceptions) {
graph = new Graph(name);
final List<Label> extraLabels = cr.getExtraLabels(currentClassName, name, desc);
this.labelIter = extraLabels == null ? null : extraLabels.iterator();
final StringBuilder sb = new StringBuilder();
sb.append('\n');
if ((access & Opcodes.ACC_DEPRECATED) != 0) {
sb.append(tab).
append("// DEPRECATED\n");
}
sb.append(tab).
append("// access flags 0x").
append(Integer.toHexString(access).toUpperCase()).
append('\n');
if (signature != null) {
sb.append(tab);
appendDescriptor(sb, METHOD_SIGNATURE, signature);
final TraceSignatureVisitor v = new TraceSignatureVisitor(0);
final SignatureReader r = new SignatureReader(signature);
r.accept(v);
final String genericDecl = v.getDeclaration();
final String genericReturn = v.getReturnType();
final String genericExceptions = v.getExceptions();
sb.append(tab).
append("// declaration: ").
append(genericReturn).
append(' ').
append(name).
append(genericDecl);
if (genericExceptions != null) {
sb.append(" throws ").append(genericExceptions);
}
sb.append('\n');
}
sb.append(tab);
appendAccess(sb, access);
if ((access & Opcodes.ACC_NATIVE) != 0) {
sb.append("native ");
}
if ((access & Opcodes.ACC_VARARGS) != 0) {
sb.append("varargs ");
}
if ((access & Opcodes.ACC_BRIDGE) != 0) {
sb.append("bridge ");
}
sb.append(name);
appendDescriptor(sb, METHOD_DESCRIPTOR, desc);
if (exceptions != null && exceptions.length > 0) {
sb.append(" throws ");
for (final String exception : exceptions) {
appendDescriptor(sb, INTERNAL_NAME, exception);
sb.append(' ');
}
}
sb.append('\n');
addText(sb);
final NashornTextifier t = createNashornTextifier();
addText(t.getText());
return t;
}
示例12: visitLocalVariable
import jdk.internal.org.objectweb.asm.signature.SignatureReader; //导入依赖的package包/类
@Override
public void visitLocalVariable(final String name, final String desc,final String signature, final Label start, final Label end, final int index) {
final StringBuilder sb = new StringBuilder();
if (!localVarsStarted) {
text.add("\n");
localVarsStarted = true;
graph.addNode("vars");
currentBlock = "vars";
}
sb.append(tab2).append("local ").append(name).append(' ');
final int len = sb.length();
for (int i = 0; i < 25 - len; i++) {
sb.append(' ');
}
String label;
label = appendLabel(sb, start);
for (int i = 0; i < 5 - label.length(); i++) {
sb.append(' ');
}
label = appendLabel(sb, end);
for (int i = 0; i < 5 - label.length(); i++) {
sb.append(' ');
}
sb.append(index).append(tab2);
appendDescriptor(sb, FIELD_DESCRIPTOR, desc);
sb.append('\n');
if (signature != null) {
sb.append(tab2);
appendDescriptor(sb, FIELD_SIGNATURE, signature);
final TraceSignatureVisitor sv = new TraceSignatureVisitor(0);
final SignatureReader r = new SignatureReader(signature);
r.acceptType(sv);
sb.append(tab2).append("// declaration: ")
.append(sv.getDeclaration()).append('\n');
}
addText(sb.toString());
}