Class DeclaredParamProvider
java.lang.Object
pascal.taie.analysis.pta.core.solver.DeclaredParamProvider
- All Implemented Interfaces:
ParamProvider
This
ParamProvider
creates parameter objects of the declared types,
and the objects pointed to by fields of parameter objects,
as well as elements of array objects. This class ignores
non-instantiable types, i.e., primitive types and abstract classes.-
Constructor Summary
ConstructorDescriptionDeclaredParamProvider
(JMethod method, HeapModel heapModel) DeclaredParamProvider
(JMethod method, HeapModel heapModel, int k) -
Method Summary
-
Constructor Details
-
DeclaredParamProvider
- Parameters:
method
- the entry method.heapModel
- the model for generating mock objects.
-
DeclaredParamProvider
- Parameters:
method
- the entry method.heapModel
- the model for generating mock objects.k
- level of field/array accesses. If this is not 0, the provider generates objects recursively along k field/array accesses.
-
-
Method Details
-
getThisObjs
- Specified by:
getThisObjs
in interfaceParamProvider
- Returns:
- the objects for this variable.
-
getParamObjs
- Specified by:
getParamObjs
in interfaceParamProvider
- Returns:
- the objects for i-th parameter (starting from 0).
-
getFieldObjs
- Specified by:
getFieldObjs
in interfaceParamProvider
- Returns:
- the objects pointed to by parameter objects' fields.
-
getArrayObjs
- Specified by:
getArrayObjs
in interfaceParamProvider
- Returns:
- the elements contained in parameter arrays.
-