Package-level declarations

Types

Link copied to clipboard

LincheckJavaAgent represents the Lincheck Java agent responsible for instrumenting bytecode.

Link copied to clipboard
data class LocalVariableInfo(val name: String, val index: Int, val labelIndexRange: Pair<Label, Label>, val type: Type)
Link copied to clipboard
data class MethodVariables(val variables: LocalVariablesMap = emptyMap())
Link copied to clipboard
open class SafeClassWriter : ClassWriter
A ClassWriter that computes the common super class of two classes without actually loading them with a ClassLoader.
Link copied to clipboard
typealias StackSlotIndex = Int

Properties

Link copied to clipboard
const val ASM_API: Int

Functions

Link copied to clipboard
inline fun GeneratorAdapter.ifStatement(condition: GeneratorAdapter.() -> Unit, thenClause: GeneratorAdapter.() -> Unit, elseClause: GeneratorAdapter.() -> Unit = { })

Generates an if-statement in bytecode.

Link copied to clipboard
fun GeneratorAdapter.invokeStatic(function: KFunction<*>)

Invokes a static method represented by a KFunction.

Link copied to clipboard

Converts a string representing a class name in internal format (e.g., "com/example/MyClass") into a canonical class name format with (e.g., "com.example.MyClass").

Link copied to clipboard

Converts a string representing a class name in canonical format (e.g., "com.example.MyClass") into an internal class name format with (e.g., "com/example/MyClass").

Link copied to clipboard

Extracts the simple class name from a fully qualified canonical class name.

Link copied to clipboard
inline fun withLincheckJavaAgent(instrumentationMode: InstrumentationMode, block: () -> Unit)

Executes block with the Lincheck java agent for byte-code instrumentation.