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 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 a SetAbstractState of taints for taint analysis or a ValueAbstractState for value analysis.
        Parameters:
        predecessorCallState - the state of the caller at the moment of the procedure call
        expandedOutputState - the output of ExpandOperator
        Returns:
        The state of the caller after the procedure call