AbstractSpanAddingMethodVisitor

abstract class AbstractSpanAddingMethodVisitor(api: Int, originalVisitor: MethodVisitor, access: Int, descriptor: String?) : LocalVariablesSorter

Base class for all MethodVisitor that inject spans bytecode into existing methods. Abstracts away most of the logic like creating a span, setting span status, finishing a span, etc.

Since it inherits from LocalVariablesSorter for introducing new local variables, all child classes must use originalVisitor for all visiting operations, otherwise all variables visits will be always remapped, even those that we don't want to.

Constructors

AbstractSpanAddingMethodVisitor
Link copied to clipboard
fun AbstractSpanAddingMethodVisitor(api: Int, originalVisitor: MethodVisitor, access: Int, descriptor: String?)

Functions

newLocal
Link copied to clipboard
open fun newLocal(p0: Type): Int
newLocalMapping
Link copied to clipboard
open fun newLocalMapping(p0: Type): Int
setLocalType
Link copied to clipboard
open fun setLocalType(p0: Int, p1: Type)
updateNewLocals
Link copied to clipboard
open fun updateNewLocals(p0: Array<Any>)
visitAnnotableParameterCount
Link copied to clipboard
open fun visitAnnotableParameterCount(p0: Int, p1: Boolean)
visitAnnotation
Link copied to clipboard
open fun visitAnnotation(p0: String, p1: Boolean): AnnotationVisitor
visitAnnotationDefault
Link copied to clipboard
open fun visitAnnotationDefault(): AnnotationVisitor
visitAttribute
Link copied to clipboard
open fun visitAttribute(p0: Attribute)
visitCode
Link copied to clipboard
open fun visitCode()
visitEnd
Link copied to clipboard
open fun visitEnd()
visitFieldInsn
Link copied to clipboard
open fun visitFieldInsn(p0: Int, p1: String, p2: String, p3: String)
visitFrame
Link copied to clipboard
open override fun visitFrame(p0: Int, p1: Int, p2: Array<Any>, p3: Int, p4: Array<Any>)
visitIincInsn
Link copied to clipboard
open override fun visitIincInsn(p0: Int, p1: Int)
visitInsn
Link copied to clipboard
open fun visitInsn(p0: Int)
visitInsnAnnotation
Link copied to clipboard
open fun visitInsnAnnotation(p0: Int, p1: TypePath, p2: String, p3: Boolean): AnnotationVisitor
visitIntInsn
Link copied to clipboard
open fun visitIntInsn(p0: Int, p1: Int)
visitInvokeDynamicInsn
Link copied to clipboard
open fun visitInvokeDynamicInsn(p0: String, p1: String, p2: Handle, vararg p3: Any)
visitJumpInsn
Link copied to clipboard
open fun visitJumpInsn(p0: Int, p1: Label)
visitLabel
Link copied to clipboard
open fun visitLabel(p0: Label)
visitLdcInsn
Link copied to clipboard
open fun visitLdcInsn(p0: Any)
visitLineNumber
Link copied to clipboard
open fun visitLineNumber(p0: Int, p1: Label)
visitLocalVariable
Link copied to clipboard
open override fun visitLocalVariable(p0: String, p1: String, p2: String, p3: Label, p4: Label, p5: Int)
visitLocalVariableAnnotation
Link copied to clipboard
open override fun visitLocalVariableAnnotation(p0: Int, p1: TypePath, p2: Array<Label>, p3: Array<Label>, p4: IntArray, p5: String, p6: Boolean): AnnotationVisitor
visitLookupSwitchInsn
Link copied to clipboard
open fun visitLookupSwitchInsn(p0: Label, p1: IntArray, p2: Array<Label>)
visitMaxs
Link copied to clipboard
open override fun visitMaxs(p0: Int, p1: Int)
visitMethodInsn
Link copied to clipboard
open fun visitMethodInsn(p0: Int, p1: String, p2: String, p3: String)
open fun visitMethodInsn(p0: Int, p1: String, p2: String, p3: String, p4: Boolean)
visitMultiANewArrayInsn
Link copied to clipboard
open fun visitMultiANewArrayInsn(p0: String, p1: Int)
visitParameter
Link copied to clipboard
open fun visitParameter(p0: String, p1: Int)
visitParameterAnnotation
Link copied to clipboard
open fun visitParameterAnnotation(p0: Int, p1: String, p2: Boolean): AnnotationVisitor
visitTableSwitchInsn
Link copied to clipboard
open fun visitTableSwitchInsn(p0: Int, p1: Int, p2: Label, vararg p3: Label)
visitTryCatchAnnotation
Link copied to clipboard
open fun visitTryCatchAnnotation(p0: Int, p1: TypePath, p2: String, p3: Boolean): AnnotationVisitor
visitTryCatchBlock
Link copied to clipboard
open fun visitTryCatchBlock(p0: Label, p1: Label, p2: Label, p3: String)
visitTypeAnnotation
Link copied to clipboard
open fun visitTypeAnnotation(p0: Int, p1: TypePath, p2: String, p3: Boolean): AnnotationVisitor
visitTypeInsn
Link copied to clipboard
open fun visitTypeInsn(p0: Int, p1: String)
visitVarInsn
Link copied to clipboard
open override fun visitVarInsn(p0: Int, p1: Int)

Properties

api
Link copied to clipboard
val api: Int
firstLocal
Link copied to clipboard
val firstLocal: Int
mv
Link copied to clipboard
val mv: MethodVisitor
nextLocal
Link copied to clipboard
val nextLocal: Int

Inheritors

AbstractRoomVisitor
Link copied to clipboard
ExecSqlMethodVisitor
Link copied to clipboard
QueryMethodVisitor
Link copied to clipboard
ExecuteStatementMethodVisitor
Link copied to clipboard