Class ClassHierarchyFactory
java.lang.Object
com.ibm.wala.ipa.cha.ClassHierarchyFactory
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic ClassHierarchy
make
(AnalysisScope scope) static ClassHierarchy
make
(AnalysisScope scope, ClassLoaderFactory factory) static ClassHierarchy
make
(AnalysisScope scope, ClassLoaderFactory factory, Language language) static ClassHierarchy
make
(AnalysisScope scope, ClassLoaderFactory factory, Language language, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchy
make
(AnalysisScope scope, ClassLoaderFactory factory, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchy
make
(AnalysisScope scope, ClassLoaderFactory factory, Set<Language> languages) static ClassHierarchy
make
(AnalysisScope scope, MonitorUtil.IProgressMonitor monitor) temporarily marking this internal to avoid infinite sleep with randomly chosen IProgressMonitor.static ClassHierarchy
makeWithPhantom
(AnalysisScope scope) NOTE: phantom classes are a work-in-progress and this functionality has known bugs.static ClassHierarchy
makeWithPhantom
(AnalysisScope scope, ClassLoaderFactory factory) static ClassHierarchy
makeWithRoot
(AnalysisScope scope) static ClassHierarchy
makeWithRoot
(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
-