public class StaticInitMerger extends ClassAdapter
ClassAdapter
that merges clinit methods into a single one.cv
Constructor and Description |
---|
StaticInitMerger(java.lang.String prefix,
ClassVisitor cv) |
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)
Visits the header of the class.
|
void |
visitEnd()
Visits the end of the class.
|
MethodVisitor |
visitMethod(int access,
java.lang.String name,
java.lang.String desc,
java.lang.String signature,
java.lang.String[] exceptions)
Visits a method of the class.
|
visitAnnotation, visitAttribute, visitField, visitInnerClass, visitOuterClass, visitSource
public StaticInitMerger(java.lang.String prefix, ClassVisitor cv)
public void visit(int version, int access, java.lang.String name, java.lang.String signature, java.lang.String superName, java.lang.String[] interfaces)
ClassVisitor
visit
in interface ClassVisitor
visit
in class ClassAdapter
version
- the class version.access
- the class's access flags (see Opcodes
). This
parameter also indicates if the class is deprecated.name
- the internal name of the class (see
getInternalName
).signature
- the signature of this class. May be null if
the class is not a generic one, and does not extend or implement
generic classes or interfaces.superName
- the internal of name of the super class (see
getInternalName
). For interfaces,
the super class is Object
. May be null, but
only for the Object
class.interfaces
- the internal names of the class's interfaces (see
getInternalName
). May be
null.public MethodVisitor visitMethod(int access, java.lang.String name, java.lang.String desc, java.lang.String signature, java.lang.String[] exceptions)
ClassVisitor
MethodVisitor
instance (or null) each time it is
called, i.e., it should not return a previously returned visitor.visitMethod
in interface ClassVisitor
visitMethod
in class ClassAdapter
access
- the method's access flags (see Opcodes
). This
parameter also indicates if the method is synthetic and/or
deprecated.name
- the method's name.desc
- the method's descriptor (see Type
).signature
- the method's signature. May be null if the
method parameters, return type and exceptions do not use generic
types.exceptions
- the internal names of the method's exception classes
(see getInternalName
). May be
null.public void visitEnd()
ClassVisitor
visitEnd
in interface ClassVisitor
visitEnd
in class ClassAdapter