Package edu.umd.cs.findbugs
Class DeepSubtypeAnalysis
- java.lang.Object
-
- edu.umd.cs.findbugs.DeepSubtypeAnalysis
-
public class DeepSubtypeAnalysis extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description DeepSubtypeAnalysis()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static doubledeepInstanceOf(java.lang.String x, java.lang.String y)Given two JavaClasses, try to estimate the probability that an reference of type x is also an instance of type y.static doubledeepInstanceOf(org.apache.bcel.classfile.JavaClass x, org.apache.bcel.classfile.JavaClass y)Given two JavaClasses, try to estimate the probability that an reference of type x is also an instance of type y.static java.lang.StringgetComponentClass(java.lang.String refSig)static java.lang.StringgetComponentClass(org.apache.bcel.generic.ReferenceType refType)static org.apache.bcel.generic.ReferenceTypegetLeastSerializableTypeComponent(org.apache.bcel.generic.ReferenceType type)static doubleisDeepRemote(java.lang.String refSig)static doubleisDeepRemote(org.apache.bcel.generic.ReferenceType refType)static doubleisDeepSerializable(java.lang.String refSig)static doubleisDeepSerializable(org.apache.bcel.classfile.JavaClass x)static doubleisDeepSerializable(org.apache.bcel.generic.ReferenceType type)
-
-
-
Method Detail
-
isDeepSerializable
public static double isDeepSerializable(org.apache.bcel.generic.ReferenceType type) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
getLeastSerializableTypeComponent
public static org.apache.bcel.generic.ReferenceType getLeastSerializableTypeComponent(org.apache.bcel.generic.ReferenceType type) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
isDeepSerializable
public static double isDeepSerializable(@DottedClassName java.lang.String refSig) throws java.lang.ClassNotFoundException
- Throws:
java.lang.ClassNotFoundException
-
isDeepRemote
public static double isDeepRemote(org.apache.bcel.generic.ReferenceType refType)
-
isDeepRemote
public static double isDeepRemote(java.lang.String refSig)
-
getComponentClass
public static java.lang.String getComponentClass(org.apache.bcel.generic.ReferenceType refType)
-
getComponentClass
public static java.lang.String getComponentClass(java.lang.String refSig)
-
isDeepSerializable
public static double isDeepSerializable(org.apache.bcel.classfile.JavaClass x) throws java.lang.ClassNotFoundException- Throws:
java.lang.ClassNotFoundException
-
deepInstanceOf
public static double deepInstanceOf(@DottedClassName java.lang.String x, @DottedClassName java.lang.String y) throws java.lang.ClassNotFoundException
Given two JavaClasses, try to estimate the probability that an reference of type x is also an instance of type y. Will return 0 only if it is impossible and 1 only if it is guaranteed.- Parameters:
x- Known type of objecty- Type queried about- Returns:
- 0 - 1 value indicating probability
- Throws:
java.lang.ClassNotFoundException
-
deepInstanceOf
public static double deepInstanceOf(org.apache.bcel.classfile.JavaClass x, org.apache.bcel.classfile.JavaClass y) throws java.lang.ClassNotFoundExceptionGiven two JavaClasses, try to estimate the probability that an reference of type x is also an instance of type y. Will return 0 only if it is impossible and 1 only if it is guaranteed.- Parameters:
x- Known type of objecty- Type queried about- Returns:
- 0 - 1 value indicating probability
- Throws:
java.lang.ClassNotFoundException
-
-