public abstract class ExtraFieldInstrumenter
extends org.jetbrains.coverage.org.objectweb.asm.ClassVisitor
public static void main(String[] args) {
new B();
}
class A {
static B b = new B();
}
class B extends A {
B() {
// called before B static initializer
}
}
| Modifier and Type | Field and Description |
|---|---|
protected static int |
ADDED_CODE_STACK_SIZE |
protected java.lang.String |
myInternalClassName |
| Constructor and Description |
|---|
ExtraFieldInstrumenter(org.jetbrains.coverage.org.objectweb.asm.ClassReader cr,
org.jetbrains.coverage.org.objectweb.asm.ClassVisitor classVisitor,
java.lang.String className,
java.lang.String fieldName,
java.lang.String fieldType,
boolean shouldCoverClinit) |
| Modifier and Type | Method and Description |
|---|---|
org.jetbrains.coverage.org.objectweb.asm.MethodVisitor |
createMethodVisitor(org.jetbrains.coverage.org.objectweb.asm.MethodVisitor mv,
java.lang.String name)
Create method visitor that ensures field initialization.
|
protected void |
generateMembers() |
void |
generateMembers(org.jetbrains.coverage.org.objectweb.asm.ClassVisitor cv)
Generate field with
myFieldType array |
java.lang.String |
getInternalClassName() |
abstract void |
initField(org.jetbrains.coverage.org.objectweb.asm.MethodVisitor mv)
Generate code that crete and initialize field.
|
boolean |
isInterface() |
getDelegate, visit, visitAnnotation, visitAttribute, visitEnd, visitField, visitInnerClass, visitMethod, visitModule, visitNestHost, visitNestMember, visitOuterClass, visitPermittedSubclass, visitRecordComponent, visitSource, visitTypeAnnotationprotected static final int ADDED_CODE_STACK_SIZE
protected final java.lang.String myInternalClassName
public ExtraFieldInstrumenter(org.jetbrains.coverage.org.objectweb.asm.ClassReader cr,
org.jetbrains.coverage.org.objectweb.asm.ClassVisitor classVisitor,
java.lang.String className,
java.lang.String fieldName,
java.lang.String fieldType,
boolean shouldCoverClinit)
public abstract void initField(org.jetbrains.coverage.org.objectweb.asm.MethodVisitor mv)
public org.jetbrains.coverage.org.objectweb.asm.MethodVisitor createMethodVisitor(org.jetbrains.coverage.org.objectweb.asm.MethodVisitor mv,
java.lang.String name)
mv - instrumenting method visitorpublic void generateMembers(org.jetbrains.coverage.org.objectweb.asm.ClassVisitor cv)
myFieldType arrayprotected void generateMembers()
public java.lang.String getInternalClassName()
public boolean isInterface()