func _getGoField(fieldObj *heap.Object) *heap.Field { extra := fieldObj.Extra() if extra != nil { return extra.(*heap.Field) } root := fieldObj.GetFieldValue("root", "Ljava/lang/reflect/Field;").(*heap.Object) return root.Extra().(*heap.Field) }
func _extraThread(threadObj *heap.Object) *rtda.Thread { threadObj.RLockState() defer threadObj.RUnlockState() extra := threadObj.Extra() if extra == nil { return nil } else { return extra.(*rtda.Thread) } }
func _getGoMethod(methodObj *heap.Object, isConstructor bool) *heap.Method { extra := methodObj.Extra() if extra != nil { return extra.(*heap.Method) } if isConstructor { root := methodObj.GetFieldValue("root", "Ljava/lang/reflect/Constructor;").(*heap.Object) return root.Extra().(*heap.Method) } else { root := methodObj.GetFieldValue("root", "Ljava/lang/reflect/Method;").(*heap.Object) return root.Extra().(*heap.Method) } }