Class ClassHierarchyFactory
java.lang.Object
com.ibm.wala.ipa.cha.ClassHierarchyFactory
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ClassHierarchymake(AnalysisScope scope) static ClassHierarchymake(AnalysisScope scope, ClassLoaderFactory factory) static ClassHierarchymake(AnalysisScope scope, ClassLoaderFactory factory, Language language) static ClassHierarchymake(AnalysisScope scope, ClassLoaderFactory factory, Language language, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchymake(AnalysisScope scope, ClassLoaderFactory factory, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchymake(AnalysisScope scope, ClassLoaderFactory factory, Set<Language> languages) static ClassHierarchymake(AnalysisScope scope, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchymakeWithPhantom(AnalysisScope scope) NOTE: phantom classes are a work-in-progress and this functionality has known bugs.static ClassHierarchymakeWithPhantom(AnalysisScope scope, ClassLoaderFactory factory) static ClassHierarchymakeWithRoot(AnalysisScope scope) static ClassHierarchymakeWithRoot(AnalysisScope scope, ClassLoaderFactory factory)
-
Constructor Details
-
ClassHierarchyFactory
public ClassHierarchyFactory()
-
-
Method Details
-
make
- Returns:
- a ClassHierarchy object representing the analysis scope
- Throws:
ClassHierarchyException
-
makeWithPhantom
NOTE: phantom classes are a work-in-progress and this functionality has known bugs. At this point, we recommend usingmakeWithRoot(AnalysisScope)instead.- Returns:
- a ClassHierarchy object representing the analysis scope, where phantom classes are created when superclasses are missing
- Throws:
ClassHierarchyException
-
makeWithRoot
- Returns:
- a ClassHierarchy object representing the analysis scope, missing superclasses are replaced by the ClassHierarchy root, i.e. java.lang.Object
- Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, MonitorUtil.IProgressMonitor monitor) throws ClassHierarchyException temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.- Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, ClassLoaderFactory factory) throws ClassHierarchyException - Throws:
ClassHierarchyException
-
makeWithPhantom
public static ClassHierarchy makeWithPhantom(AnalysisScope scope, ClassLoaderFactory factory) throws ClassHierarchyException - Throws:
ClassHierarchyException
-
makeWithRoot
public static ClassHierarchy makeWithRoot(AnalysisScope scope, ClassLoaderFactory factory) throws ClassHierarchyException - Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, ClassLoaderFactory factory, MonitorUtil.IProgressMonitor monitor) throws ClassHierarchyException temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.- Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, ClassLoaderFactory factory, Set<Language> languages) throws ClassHierarchyException - Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, ClassLoaderFactory factory, Language language) throws ClassHierarchyException - Throws:
ClassHierarchyException
-
make
public static ClassHierarchy make(AnalysisScope scope, ClassLoaderFactory factory, Language language, MonitorUtil.IProgressMonitor monitor) throws ClassHierarchyException temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor. TODO: nanny for testgen- Throws:
ClassHierarchyException
-