public class NativeMethodInfo extends MethodInfo
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.reflect.Method |
mth |
protected NativePeer |
peer |
argSize, argTypes, attributes, ci, code, exceptionHandlers, genericSignature, globalId, lineNumbers, localVars, maxLocals, maxStack, modifiers, mthTable, name, nArgs, retSize, returnType, signature, thrownExceptionClassNames, uniqueName, warnedLocalInfoannotations, attr, typeAnnotations| Constructor and Description |
|---|
NativeMethodInfo(MethodInfo mi,
java.lang.reflect.Method mth,
NativePeer peer) |
| Modifier and Type | Method and Description |
|---|---|
Instruction |
executeNative(ThreadInfo ti) |
protected java.lang.Object[] |
getArguments(ThreadInfo ti)
Get and convert the native method parameters off the ThreadInfo stack.
|
int |
getLineNumber(Instruction pc)
Returns the line number for a given position.
|
java.lang.reflect.Method |
getMethod() |
NativePeer |
getNativePeer() |
java.lang.String |
getStackTraceSource() |
boolean |
hasEmptyBody() |
boolean |
isJPFExecutable() |
boolean |
isMJI() |
boolean |
isUnresolvedNativeMethod() |
protected boolean |
isUnsatisfiedLinkError(MJIEnv env) |
void |
replace(MethodInfo mi) |
clone, containsLineNumber, create, create, createDirectCallStackFrame, createRunStartStackFrame, dump, finishExceptionHandlerTable, finishLineNumberTable, finishLocalVarTable, finishParameterAnnotations, finishThrownExceptions, getArgumentLocalVars, getArgumentsSize, getArgumentTypeNames, getArgumentTypes, getBaseName, getClassInfo, getClassName, getCompleteName, getExceptions, getFirstInsn, getFullName, getGenericSignature, getGlobalId, getHandlerFor, getInstanceFor, getInstruction, getInstructionAt, getInstructions, getInstructionsForLine, getInstructionsForLineInterval, getJNIName, getLastInsn, getLineNumbers, getLocalVar, getLocalVar, getLocalVariableNames, getLocalVars, getLongName, getMatchingInstructions, getMaxLocals, getMaxStack, getMethodInfo, getModifiers, getName, getNumberOfArguments, getNumberOfCallerStackSlots, getNumberOfInstructions, getNumberOfLoadedMethods, getNumberOfStackArguments, getOverriddenMethodInfo, getParameterAnnotations, getParameterAnnotations, getReturnChoiceGeneratorType, getReturnSize, getReturnType, getReturnTypeCode, getReturnTypeName, getSignature, getSourceFileName, getStackTraceName, getThrownExceptionClassNames, getTypeAnnotatedLocalVars, getTypeAnnotatedLocalVars, getUniqueName, getUniqueName, hasCode, hasParameterAnnotations, hasTypeAnnotatedLocalVars, includesLine, intersectsLineNumbers, isAbstract, isAtomic, isClinit, isClinit, isCtor, isDirectCallStub, isFirewall, isHidden, isInit, isInitOrClinit, isInternalMethod, isJPFInternal, isNative, isPrivate, isProtected, isPublic, isReferenceReturnType, isStatic, isSynchronized, isSyncRelevant, isSynthetic, isThreadEntry, isVarargs, linkToClass, setCode, setException, setExceptionHandler, setExceptionHandlers, setFirewall, setGenericSignature, setLineNumber, setLineNumbers, setLineNumbers, setLocalVar, setLocalVarAnnotations, setLocalVarTable, setMaxLocals, setMaxStack, setParameterAnnotations, setParameterAnnotations, setThrownExceptions, startExceptionHandlerTable, startLineNumberTable, startLocalVarTable, startParameterAnnotations, startTrownExceptions, toStringaddAnnotation, addAnnotations, addAttr, addTypeAnnotation, addTypeAnnotations, attrIterator, attrIterator, getAnnotation, getAnnotations, getAttr, getAttr, getDeclaredAnnotations, getNextAttr, getTargetTypeAnnotations, getTypeAnnotation, getTypeAnnotations, hasAnnotation, hasAnnotations, hasAttr, hasAttr, hasAttrValue, hasTypeAnnotation, hasTypeAnnotations, removeAttr, replaceAttr, setAnnotations, setAttr, setTypeAnnotationsprotected java.lang.reflect.Method mth
protected NativePeer peer
public NativeMethodInfo(MethodInfo mi, java.lang.reflect.Method mth, NativePeer peer)
public void replace(MethodInfo mi)
public boolean isUnresolvedNativeMethod()
isUnresolvedNativeMethod in class MethodInfopublic boolean isMJI()
isMJI in class MethodInfopublic boolean hasEmptyBody()
hasEmptyBody in class MethodInfopublic boolean isJPFExecutable()
isJPFExecutable in class MethodInfopublic NativePeer getNativePeer()
public java.lang.reflect.Method getMethod()
public java.lang.String getStackTraceSource()
getStackTraceSource in class MethodInfopublic int getLineNumber(Instruction pc)
MethodInfogetLineNumber in class MethodInfopublic Instruction executeNative(ThreadInfo ti)
protected boolean isUnsatisfiedLinkError(MJIEnv env)
protected java.lang.Object[] getArguments(ThreadInfo ti)