Class StatementStore<A extends AbstractState<A>>

    • Constructor Detail

      • StatementStore

        public StatementStore​(AnalysisState<A> state)
        Builds the store.
        Parameters:
        state - an instance of the underlying lattice
    • Method Detail

      • put

        public AnalysisState<A> put​(Statement st,
                                    AnalysisState<A> state)
        Stores the given state for the given statement. This is a "forced" update, without performing any lattice operation if a mapping for the given expression already exists.
        Parameters:
        st - the statement whose state needs to be set
        state - the state to set
        Returns:
        the previous state mapped to expression, or null
      • forget

        public void forget​(Statement st)
        Removes the stored state for the given statement.
        Parameters:
        st - the statement whose state needs to be forgotten
      • top

        public StatementStore<A> top()
        Description copied from interface: Lattice
        Yields the top element of this lattice. The returned element should be unique across different calls to this method, since Lattice.isTop() uses reference equality by default. If the value returned by this method is not a singleton, override Lattice.isTop() accordingly to provide a coherent test.
        Returns:
        the top element
      • bottom

        public StatementStore<A> bottom()
        Description copied from interface: Lattice
        Yields the bottom element of this lattice. The returned element should be unique across different calls to this method, since Lattice.isBottom() uses reference equality by default. If the value returned by this method is not a singleton, override Lattice.isBottom() accordingly to provide a coherent test.
        Returns:
        the bottom element