Top Description Fields Constructors Methods
org.glassfish.pfl.tf.spi

public Class Util

extends Object
Class Inheritance
Imports
java.io.PrintWriter, java.util.function.Function, org.objectweb.asm.ClassReader, .ClassVisitor, .ClassWriter, .MethodVisitor, .Opcodes, .Type, org.objectweb.asm.tree.LocalVariableNode, .MethodInsnNode, .MethodNode, org.objectweb.asm.util.CheckClassAdapter, .Printer

Some useful utilities for generating code using ASM. Nothing in here should be specific to the classfile enhancer for tracing.
Author
ken

Field Summary

Modifier and TypeField and Description
private final boolean
private final int

Constructor Summary

AccessConstructor and Description
public
Util(final boolean debug, final int verbose)

Method Summary

Modifier and TypeMethod and Description
public String
public void
public void
public boolean
public String
public String
public String
public String
public boolean
hasAccess(int access, int flag)

public void
info(int level, String str)

public void
public void
loadFromXReturn(MethodVisitor mv, int returnOpcode, LocalVariableNode holder)

public void
msg(String str)

public void
public static String
opcodeToString(int opcode)

public void
storeFromXReturn(MethodVisitor mv, int returnOpcode, LocalVariableNode holder)

public byte[]
transform(final boolean debug, final byte[] cls, final Function<ClassVisitor, ClassVisitor> factory)

private void
verify(byte[] cls)

public int
wrapArg(MethodVisitor mv, int argIndex, Type atype)

public void
wrapArgs(MethodVisitor mv, int access, String desc)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

debugback to summary
private final boolean debug
verboseback to summary
private final int verbose

Constructor Detail

Utilback to summary
public Util(final boolean debug, final int verbose)

Method Detail

augmentInfoMethodDescriptorback to summary
public String augmentInfoMethodDescriptor(String desc)
emitIntConstantback to summary
public void emitIntConstant(MethodVisitor mv, int val)
errorback to summary
public void error(String str)
getDebugback to summary
public boolean getDebug()
getFullMethodDescriptorback to summary
public String getFullMethodDescriptor(String name, String desc)
getFullMethodDescriptorback to summary
public String getFullMethodDescriptor(MethodNode mn)
getFullMethodDescriptorback to summary
public String getFullMethodDescriptor(MethodInsnNode mn)
getFullMethodDescriptorback to summary
public String getFullMethodDescriptor(Method method)
hasAccessback to summary
public boolean hasAccess(int access, int flag)
infoback to summary
public void info(int level, String str)
initLocalback to summary
public void initLocal(MethodVisitor mv, LocalVariableNode var)
loadFromXReturnback to summary
public void loadFromXReturn(MethodVisitor mv, int returnOpcode, LocalVariableNode holder)
msgback to summary
public void msg(String str)
newWithSimpleConstructorback to summary
public void newWithSimpleConstructor(MethodVisitor mv, Class<?> cls)
opcodeToStringback to summary
public static String opcodeToString(int opcode)
storeFromXReturnback to summary
public void storeFromXReturn(MethodVisitor mv, int returnOpcode, LocalVariableNode holder)
transformback to summary
public byte[] transform(final boolean debug, final byte[] cls, final Function<ClassVisitor, ClassVisitor> factory)
verifyback to summary
private void verify(byte[] cls)
wrapArgback to summary
public int wrapArg(MethodVisitor mv, int argIndex, Type atype)
wrapArgsback to summary
public void wrapArgs(MethodVisitor mv, int access, String desc)