in jvm-agent/src/main/org/jetbrains/lincheck/jvm/agent/OwnerNameAnalyzer.kt [228:274]
override fun visitLdcInsn(value: Any?) {
super.visitLdcInsn(value)
if (!isInitialized) {
return
}
// TODO: need to investigate how to lookup constant name (if available)
when (value) {
is Int -> {
push(null) // TODO
}
is Long -> {
push(null) // TODO
push(null) // TODO
}
is Float -> {
push(null) // TODO
}
is Double -> {
push(null) // TODO
push(null) // TODO
}
is String -> {
push(null) // TODO
}
is Type -> {
val sort = value.sort
when (sort) {
Type.OBJECT, Type.ARRAY -> {
push(null) // TODO
}
Type.METHOD -> {
push(null) // TODO
}
else -> throw IllegalArgumentException()
}
}
is Handle -> {
push(null) // TODO
}
is ConstantDynamic -> {
push(null)
// TODO: adding constant name should be fine
// push(value.name)
}
else -> throw IllegalArgumentException()
}
}