Package proguard.analysis.cpa.bam
Interface RebuildOperator
-
- All Known Implementing Classes:
NoOpRebuildOperator
public interface RebuildOperator
This operator is used to avoid collision of program identifiers when returning from a procedure call. This operator does not compute any abstraction, but just performs simple operations as renaming variables, depending on the domain.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description <ContentT extends AbstractState<ContentT>>
JvmAbstractState<ContentT>rebuild(JvmAbstractState<ContentT> predecessorCallState, JvmAbstractState<ContentT> expandedOutputState)
Performs the rebuilding of the return state.
-
-
-
Method Detail
-
rebuild
<ContentT extends AbstractState<ContentT>> JvmAbstractState<ContentT> rebuild(JvmAbstractState<ContentT> predecessorCallState, JvmAbstractState<ContentT> expandedOutputState)
Performs the rebuilding of the return state.- Type Parameters:
ContentT
- The content of the jvm states. For example, this can be aSetAbstractState
of taints for taint analysis or aValueAbstractState
for value analysis.- Parameters:
predecessorCallState
- the state of the caller at the moment of the procedure callexpandedOutputState
- the output ofExpandOperator
- Returns:
- The state of the caller after the procedure call
-
-