Class JSZeroOrOneXCFABuilder
- java.lang.Object
-
- com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder
-
- com.ibm.wala.ipa.callgraph.propagation.SSAPropagationCallGraphBuilder
-
- com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder
-
- com.ibm.wala.cast.js.ipa.callgraph.JSSSAPropagationCallGraphBuilder
-
- com.ibm.wala.cast.js.ipa.callgraph.JSCFABuilder
-
- com.ibm.wala.cast.js.ipa.callgraph.JSZeroOrOneXCFABuilder
-
- All Implemented Interfaces:
com.ibm.wala.ipa.callgraph.CallGraphBuilder<com.ibm.wala.ipa.callgraph.propagation.InstanceKey>,com.ibm.wala.ipa.callgraph.propagation.HeapModel,com.ibm.wala.ipa.callgraph.propagation.InstanceKeyFactory,com.ibm.wala.ipa.callgraph.propagation.PointerKeyFactory
public class JSZeroOrOneXCFABuilder extends JSCFABuilder
0-x-CFA Call graph builder, optimized to not disambiguate instances of "uninteresting" types
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.ibm.wala.cast.js.ipa.callgraph.JSSSAPropagationCallGraphBuilder
JSSSAPropagationCallGraphBuilder.JSConstraintVisitor, JSSSAPropagationCallGraphBuilder.JSInterestingVisitor, JSSSAPropagationCallGraphBuilder.JSPointerAnalysisImpl
-
Nested classes/interfaces inherited from class com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder
com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder.AstConstraintVisitor, com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder.AstInterestingVisitor, com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder.AstPointerAnalysisImpl
-
Nested classes/interfaces inherited from class com.ibm.wala.ipa.callgraph.propagation.SSAPropagationCallGraphBuilder
com.ibm.wala.ipa.callgraph.propagation.SSAPropagationCallGraphBuilder.ConstraintVisitor, com.ibm.wala.ipa.callgraph.propagation.SSAPropagationCallGraphBuilder.InterestingVisitor
-
Nested classes/interfaces inherited from class com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder
com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.ArrayLoadOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.ArrayStoreOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.FilterOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.GetFieldOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.InstanceArrayStoreOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.InstancePutFieldOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.InverseFilterOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.MutableBoolean, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.PutFieldOperator, com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder.TypedPointerKey
-
-
Field Summary
-
Fields inherited from class com.ibm.wala.cast.js.ipa.callgraph.JSSSAPropagationCallGraphBuilder
DEBUG_LEXICAL, DEBUG_TYPE_INFERENCE, GLOBAL_OBJ_VAR_NAME
-
Fields inherited from class com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder
DEBUG_PROPERTIES
-
-
Constructor Summary
Constructors Constructor Description JSZeroOrOneXCFABuilder(com.ibm.wala.ipa.cha.IClassHierarchy cha, JSAnalysisOptions options, com.ibm.wala.ipa.callgraph.IAnalysisCacheView cache, com.ibm.wala.ipa.callgraph.ContextSelector appContextSelector, com.ibm.wala.ipa.callgraph.propagation.SSAContextInterpreter appContextInterpreter, int instancePolicy, boolean doOneCFA)
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static JSCFABuildermake(JSAnalysisOptions options, com.ibm.wala.ipa.callgraph.IAnalysisCacheView cache, com.ibm.wala.ipa.cha.IClassHierarchy cha, java.lang.ClassLoader cl, com.ibm.wala.ipa.callgraph.AnalysisScope scope, java.lang.String[] xmlFiles, byte instancePolicy, boolean doOneCFA)-
Methods inherited from class com.ibm.wala.cast.js.ipa.callgraph.JSSSAPropagationCallGraphBuilder
addAssignmentsForCatchPointerKey, createEmptyCallGraph, fieldKeyForUnknownWrites, getBaseURL, getGlobalObject, getPointerKeyForGlobalVar, getSomePositionForMethod, isConstantRef, isUncataloguedField, makeInterestingVisitor, makeSystem, makeTypeInference, makeVisitor, processCallingConstraints, processCallingConstraintsInternal, sameMethod, setBaseURL, useObjectCatalog
-
Methods inherited from class com.ibm.wala.cast.ipa.callgraph.AstSSAPropagationCallGraphBuilder
hasNoInterestingUses, makeDefaultContextInterpreters
-
Methods inherited from class com.ibm.wala.ipa.callgraph.propagation.SSAPropagationCallGraphBuilder
addBlockInstructionConstraints, addConstraintsFromNode, addNodeInstructionConstraints, addNodePassthruExceptionConstraints, addNodeValueConstraints, contentsAreInvariant, contentsAreInvariant, getCaughtExceptionTypes, getCFAContextInterpreter, getIncomingPEIs, getInstanceKeyForPEI, getInstanceKeyForPEI, getInvariantContents, getInvariantContents, getTargetPointerKey, getTargetsForCall, getUniqueCatchKey, hasUniqueCatchBlock, iterateCrossProduct, iteratePointerKeys, makeSolver, unconditionallyAddConstraintsFromNode
-
Methods inherited from class com.ibm.wala.ipa.callgraph.propagation.PropagationCallGraphBuilder
addConstraintsFromChangedNode, addConstraintsFromNewNodes, assignInstanceToCatch, catches, customInit, filterForClass, getAnalysisCache, getCallGraph, getClassHierarchy, getContextInterpreter, getContextSelector, getFilteredPointerKeyForLocal, getFilteredPointerKeyForLocal, getFilteredPointerKeyForLocal, getInstanceKeyForAllocation, getInstanceKeyForConstant, getInstanceKeyForMetadataObject, getInstanceKeyForMultiNewArray, getInstanceKeys, getInstanceKeysForClass, getJavaLangObject, getMutableInstanceKeysForClass, getOptions, getPointerAnalysis, getPointerKeyFactory, getPointerKeyForArrayContents, getPointerKeyForExceptionalReturnValue, getPointerKeyForInstanceField, getPointerKeyForLocal, getPointerKeyForReturnValue, getPointerKeyForStaticField, getPropagationSystem, getSolver, getSystem, getTargetForCall, haveAlreadyVisited, isJavaLangObject, makeCallGraph, makeCallGraph, markAlreadyVisited, markChanged, markDiscovered, representsNullType, setContextInterpreter, setContextSelector, setInstanceKeys, setPointerKeyFactory, wasChanged
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.ibm.wala.ipa.callgraph.propagation.InstanceKeyFactory
getInstanceKeyForAllocation, getInstanceKeyForConstant, getInstanceKeyForMetadataObject, getInstanceKeyForMultiNewArray
-
Methods inherited from interface com.ibm.wala.ipa.callgraph.propagation.PointerKeyFactory
getFilteredPointerKeyForLocal, getPointerKeyForArrayContents, getPointerKeyForExceptionalReturnValue, getPointerKeyForInstanceField, getPointerKeyForLocal, getPointerKeyForReturnValue, getPointerKeyForStaticField
-
-
-
-
Constructor Detail
-
JSZeroOrOneXCFABuilder
public JSZeroOrOneXCFABuilder(com.ibm.wala.ipa.cha.IClassHierarchy cha, JSAnalysisOptions options, com.ibm.wala.ipa.callgraph.IAnalysisCacheView cache, com.ibm.wala.ipa.callgraph.ContextSelector appContextSelector, com.ibm.wala.ipa.callgraph.propagation.SSAContextInterpreter appContextInterpreter, int instancePolicy, boolean doOneCFA)
-
-
Method Detail
-
make
public static JSCFABuilder make(JSAnalysisOptions options, com.ibm.wala.ipa.callgraph.IAnalysisCacheView cache, com.ibm.wala.ipa.cha.IClassHierarchy cha, java.lang.ClassLoader cl, com.ibm.wala.ipa.callgraph.AnalysisScope scope, java.lang.String[] xmlFiles, byte instancePolicy, boolean doOneCFA)
- Parameters:
options- options that govern call graph constructioncha- governing class hierarchycl- classloader that can find DOMO resourcesscope- representation of the analysis scopexmlFiles- set of Strings that are names of XML files holding bypass logic specifications.- Returns:
- a 0-1-Opt-CFA Call Graph Builder.
-
-