org.jacoco.core.internal.instr
Class CondyProbeArrayStrategy

java.lang.Object
  extended by org.jacoco.core.internal.instr.CondyProbeArrayStrategy
All Implemented Interfaces:
IProbeArrayStrategy

public class CondyProbeArrayStrategy
extends Object
implements IProbeArrayStrategy

This strategy for Java 11+ class files uses ConstantDynamic to hold the probe array and adds bootstrap method requesting the probe array from the runtime.


Field Summary
static String B_DESC
          Descriptor of the bootstrap method.
 
Method Summary
 void addMembers(org.objectweb.asm.ClassVisitor cv, int probeCount)
          Adds additional class members required by this strategy.
 int storeInstance(org.objectweb.asm.MethodVisitor mv, boolean clinit, int variable)
          Creates code that stores the probe array instance in the given variable.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

B_DESC

public static final String B_DESC
Descriptor of the bootstrap method.

See Also:
Constant Field Values
Method Detail

storeInstance

public int storeInstance(org.objectweb.asm.MethodVisitor mv,
                         boolean clinit,
                         int variable)
Description copied from interface: IProbeArrayStrategy
Creates code that stores the probe array instance in the given variable.

Specified by:
storeInstance in interface IProbeArrayStrategy
Parameters:
mv - visitor to create code
clinit - true in case of <clinit> method
variable - variable index to store probe array to
Returns:
maximum stack size required by the generated code

addMembers

public void addMembers(org.objectweb.asm.ClassVisitor cv,
                       int probeCount)
Description copied from interface: IProbeArrayStrategy
Adds additional class members required by this strategy. This method is called after all original members of the class has been processed.

Specified by:
addMembers in interface IProbeArrayStrategy
Parameters:
cv - visitor to create fields and methods
probeCount - total number of probes required for this class


Copyright © 2009–2024 Mountainminds GmbH & Co. KG. All rights reserved.