public class Hierarchy2 extends Object
Repository class. Callers should
generally expect to handle ClassNotFoundException for when referenced classes
can't be found.| Constructor and Description |
|---|
Hierarchy2() |
| Modifier and Type | Method and Description |
|---|---|
static org.apache.bcel.generic.ObjectType[] |
findDeclaredExceptions(org.apache.bcel.generic.InvokeInstruction inv,
org.apache.bcel.generic.ConstantPoolGen cpg)
Find the declared exceptions for the method called by given instruction.
|
static XMethod |
findExactMethod(org.apache.bcel.generic.InvokeInstruction inv,
org.apache.bcel.generic.ConstantPoolGen cpg,
JavaClassAndMethodChooser chooser)
Look up the method referenced by given InvokeInstruction.
|
static XMethod |
findFirstSuperMethod(XMethod m) |
static XMethod |
findInvocationLeastUpperBound(ClassDescriptor classDesc,
String methodName,
String methodSig,
boolean invokeStatic,
boolean invokeInterface) |
static XMethod |
findInvocationLeastUpperBound(org.apache.bcel.generic.InvokeInstruction inv,
org.apache.bcel.generic.ConstantPoolGen cpg,
JavaClassAndMethodChooser methodChooser) |
static XMethod |
findInvocationLeastUpperBound(XClass jClass,
String methodName,
String methodSig,
boolean invokeStatic,
boolean invokeInterface) |
static XMethod |
findInvocationLeastUpperBound0(XClass jClass,
String methodName,
String methodSig,
boolean invokeStatic,
boolean invokeInterface) |
static XMethod |
findMethod(ClassDescriptor classDescriptor,
String methodName,
String methodSig,
boolean isStatic) |
static Set<XMethod> |
findSuperMethods(XMethod m) |
static Set<XMethod> |
resolveMethodCallTargets(org.apache.bcel.generic.InvokeInstruction invokeInstruction,
TypeFrame typeFrame,
org.apache.bcel.generic.ConstantPoolGen cpg)
Resolve possible method call targets.
|
static Set<XMethod> |
resolveMethodCallTargets(org.apache.bcel.generic.ReferenceType receiverType,
org.apache.bcel.generic.InvokeInstruction invokeInstruction,
org.apache.bcel.generic.ConstantPoolGen cpg)
Resolve possible instance method call targets.
|
static Set<XMethod> |
resolveMethodCallTargets(org.apache.bcel.generic.ReferenceType receiverType,
org.apache.bcel.generic.InvokeInstruction invokeInstruction,
org.apache.bcel.generic.ConstantPoolGen cpg,
boolean receiverTypeIsExact)
Resolve possible instance method call targets.
|
static Set<XMethod> |
resolveVirtualMethodCallTargets(ClassDescriptor receiverDesc,
String methodName,
String methodSig,
boolean receiverTypeIsExact,
boolean invokeSpecial) |
static Set<XMethod> |
resolveVirtualMethodCallTargets(String receiverClassName,
String methodName,
String methodSig,
boolean receiverTypeIsExact,
boolean invokeSpecial) |
static Set<XMethod> |
resolveVirtualMethodCallTargets(XMethod target,
boolean receiverTypeIsExact,
boolean invokeSpecial) |
public static XMethod findExactMethod(org.apache.bcel.generic.InvokeInstruction inv, org.apache.bcel.generic.ConstantPoolGen cpg, JavaClassAndMethodChooser chooser)
inv - the InvokeInstructioncpg - the ConstantPoolGen used by the class the InvokeInstruction
belongs tochooser - JavaClassAndMethodChooser to use to pick the method from among
the candidates@CheckForNull public static XMethod findInvocationLeastUpperBound(org.apache.bcel.generic.InvokeInstruction inv, org.apache.bcel.generic.ConstantPoolGen cpg, JavaClassAndMethodChooser methodChooser)
@CheckForNull public static XMethod findInvocationLeastUpperBound(ClassDescriptor classDesc, String methodName, String methodSig, boolean invokeStatic, boolean invokeInterface)
@CheckForNull public static XMethod findInvocationLeastUpperBound(XClass jClass, String methodName, String methodSig, boolean invokeStatic, boolean invokeInterface)
@CheckForNull public static XMethod findInvocationLeastUpperBound0(XClass jClass, String methodName, String methodSig, boolean invokeStatic, boolean invokeInterface)
@CheckForNull public static XMethod findFirstSuperMethod(XMethod m)
@CheckForNull public static XMethod findMethod(ClassDescriptor classDescriptor, String methodName, String methodSig, boolean isStatic)
@Nonnull public static Set<XMethod> resolveMethodCallTargets(org.apache.bcel.generic.InvokeInstruction invokeInstruction, TypeFrame typeFrame, org.apache.bcel.generic.ConstantPoolGen cpg) throws DataflowAnalysisException, ClassNotFoundException
invokeInstruction - the InvokeInstructiontypeFrame - the TypeFrame containing the types of stack valuescpg - the ConstantPoolGenDataflowAnalysisExceptionClassNotFoundExceptionpublic static Set<XMethod> resolveMethodCallTargets(org.apache.bcel.generic.ReferenceType receiverType, org.apache.bcel.generic.InvokeInstruction invokeInstruction, org.apache.bcel.generic.ConstantPoolGen cpg) throws ClassNotFoundException
receiverType - type of the receiver objectinvokeInstruction - the InvokeInstructioncpg - the ConstantPoolGenClassNotFoundExceptionpublic static Set<XMethod> resolveMethodCallTargets(org.apache.bcel.generic.ReferenceType receiverType, org.apache.bcel.generic.InvokeInstruction invokeInstruction, org.apache.bcel.generic.ConstantPoolGen cpg, boolean receiverTypeIsExact) throws ClassNotFoundException
receiverType - type of the receiver objectinvokeInstruction - the InvokeInstructioncpg - the ConstantPoolGenreceiverTypeIsExact - if true, the receiver type is known exactly, which should
allow a precise resultClassNotFoundExceptionpublic static Set<XMethod> resolveVirtualMethodCallTargets(String receiverClassName, String methodName, String methodSig, boolean receiverTypeIsExact, boolean invokeSpecial) throws ClassNotFoundException
ClassNotFoundExceptionpublic static Set<XMethod> resolveVirtualMethodCallTargets(XMethod target, boolean receiverTypeIsExact, boolean invokeSpecial) throws ClassNotFoundException
ClassNotFoundExceptionpublic static Set<XMethod> resolveVirtualMethodCallTargets(ClassDescriptor receiverDesc, String methodName, String methodSig, boolean receiverTypeIsExact, boolean invokeSpecial) throws ClassNotFoundException
ClassNotFoundException@CheckForNull public static org.apache.bcel.generic.ObjectType[] findDeclaredExceptions(org.apache.bcel.generic.InvokeInstruction inv, org.apache.bcel.generic.ConstantPoolGen cpg)
inv - the InvokeInstructioncpg - the ConstantPoolGen used by the class the InvokeInstruction
belongs toCopyright © 2003–2015. All rights reserved.