public class StaticInitMerger
extends org.objectweb.asm.ClassVisitor
ClassVisitor
that merges <clinit> methods into a single one. All the existing
<clinit> methods are renamed, and a new one is created, which calls all the renamed
methods.Modifier | Constructor and Description |
---|---|
protected |
StaticInitMerger(int api,
java.lang.String prefix,
org.objectweb.asm.ClassVisitor classVisitor)
Constructs a new
StaticInitMerger . |
|
StaticInitMerger(java.lang.String prefix,
org.objectweb.asm.ClassVisitor classVisitor)
Constructs a new
StaticInitMerger . |
Modifier and Type | Method and Description |
---|---|
void |
visit(int version,
int access,
java.lang.String name,
java.lang.String signature,
java.lang.String superName,
java.lang.String[] interfaces) |
void |
visitEnd() |
org.objectweb.asm.MethodVisitor |
visitMethod(int access,
java.lang.String name,
java.lang.String descriptor,
java.lang.String signature,
java.lang.String[] exceptions) |
public StaticInitMerger(java.lang.String prefix, org.objectweb.asm.ClassVisitor classVisitor)
StaticInitMerger
. Subclasses must not use this constructor.
Instead, they must use the StaticInitMerger(int, String, ClassVisitor)
version.prefix
- the prefix to use to rename the existing <clinit> methods.classVisitor
- the class visitor to which this visitor must delegate method calls. May be
null.protected StaticInitMerger(int api, java.lang.String prefix, org.objectweb.asm.ClassVisitor classVisitor)
StaticInitMerger
.api
- the ASM API version implemented by this visitor. Must be one of Opcodes.ASM4
, Opcodes.ASM5
or Opcodes.ASM6
.prefix
- the prefix to use to rename the existing <clinit> methods.classVisitor
- the class visitor to which this visitor must delegate method calls. May be
null.public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
visit
in class org.objectweb.asm.ClassVisitor
public org.objectweb.asm.MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String descriptor, java.lang.String signature, java.lang.String[] exceptions)
visitMethod
in class org.objectweb.asm.ClassVisitor
public void visitEnd()
visitEnd
in class org.objectweb.asm.ClassVisitor