Interface PluggableStatement

  • Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface PluggableStatement
    A Statement that can be dynamically plugged into a CFG in place of another statement. This is used for resolving calls to native constructs (NativeCFGs) that get rewritten into NaryExpressions.

    Note: NativeCFGs will build instances of this interface assuming that the following contract is satisfied. Classes implementing this interface should provide a public static method named build, returning a NaryExpression and with the following parameters: CFG, CodeLocation, Expression[].
    • Method Detail

      • setOriginatingStatement

        void setOriginatingStatement​(Statement st)
        Sets the original Statement that got rewritten by theis pluggable statement.
        Parameters:
        st - the original statement