GuardMethodVisitor

private class GuardMethodVisitor(mv: MethodVisitor, mn: String, val killIdField: String, val evalId: Int) : MethodVisitor

Inlines the guard at method entry (except <init>/<clinit>), loop back-edges and real catch entries — rationale in the class body below.

Constructors

Link copied to clipboard
constructor(mv: MethodVisitor, mn: String, killIdField: String, evalId: Int)

Properties

Link copied to clipboard
protected val api: Int
Link copied to clipboard
private val catchHandlers: HashSet<Label>
Link copied to clipboard
open val delegate: MethodVisitor?
Link copied to clipboard
private val evalId: Int
Link copied to clipboard
private var guardEntry: Boolean
Link copied to clipboard
private val killIdField: String
Link copied to clipboard
protected var mv: MethodVisitor?
Link copied to clipboard
private val seen: HashSet<Label>

Functions

Link copied to clipboard
private fun emitInline()
Link copied to clipboard
open fun visitAnnotableParameterCount(parameterCount: Int, visible: Boolean)
Link copied to clipboard
open fun visitAnnotation(descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open fun visitAnnotationDefault(): AnnotationVisitor?
Link copied to clipboard
open fun visitAttribute(attribute: Attribute?)
Link copied to clipboard
open override fun visitCode()
Link copied to clipboard
open fun visitEnd()
Link copied to clipboard
open fun visitFieldInsn(opcode: Int, owner: String?, name: String?, descriptor: String?)
Link copied to clipboard
open fun visitFrame(type: Int, numLocal: Int, local: Array<out Any?>?, numStack: Int, stack: Array<out Any?>?)
Link copied to clipboard
open fun visitIincInsn(varIndex: Int, increment: Int)
Link copied to clipboard
open fun visitInsn(opcode: Int)
Link copied to clipboard
open fun visitInsnAnnotation(typeRef: Int, typePath: TypePath?, descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open fun visitIntInsn(opcode: Int, operand: Int)
Link copied to clipboard
open fun visitInvokeDynamicInsn(name: String?, descriptor: String?, bootstrapMethodHandle: Handle?, vararg bootstrapMethodArguments: Any?)
Link copied to clipboard
open override fun visitJumpInsn(op: Int, label: Label)
Link copied to clipboard
open override fun visitLabel(label: Label)
Link copied to clipboard
open fun visitLdcInsn(value: Any?)
Link copied to clipboard
open fun visitLineNumber(line: Int, start: Label?)
Link copied to clipboard
open fun visitLocalVariable(name: String?, descriptor: String?, signature: String?, start: Label?, end: Label?, index: Int)
Link copied to clipboard
open fun visitLocalVariableAnnotation(typeRef: Int, typePath: TypePath?, start: Array<out Label?>?, end: Array<out Label?>?, index: IntArray?, descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open override fun visitLookupSwitchInsn(dflt: Label, keys: IntArray?, labels: Array<out Label>)
Link copied to clipboard
open fun visitMaxs(maxStack: Int, maxLocals: Int)
Link copied to clipboard
open fun visitMethodInsn(opcode: Int, owner: String?, name: String?, descriptor: String?)
open fun visitMethodInsn(opcode: Int, owner: String?, name: String?, descriptor: String?, isInterface: Boolean)
Link copied to clipboard
open fun visitMultiANewArrayInsn(descriptor: String?, numDimensions: Int)
Link copied to clipboard
open fun visitParameter(name: String?, access: Int)
Link copied to clipboard
open fun visitParameterAnnotation(parameter: Int, descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open override fun visitTableSwitchInsn(min: Int, max: Int, dflt: Label, vararg labels: Label)
Link copied to clipboard
open fun visitTryCatchAnnotation(typeRef: Int, typePath: TypePath?, descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open override fun visitTryCatchBlock(start: Label, end: Label, handler: Label, type: String?)
Link copied to clipboard
open fun visitTypeAnnotation(typeRef: Int, typePath: TypePath?, descriptor: String?, visible: Boolean): AnnotationVisitor?
Link copied to clipboard
open fun visitTypeInsn(opcode: Int, type: String?)
Link copied to clipboard
open fun visitVarInsn(opcode: Int, varIndex: Int)