Packages

case class BasicStore[Addr, Abs](content: Map[Addr, Abs])(implicit evidence$3: Address[Addr], evidence$4: JoinLattice[Abs]) extends Store[Addr, Abs] with Product with Serializable

Basic store with no fancy feature, just a map from addresses to values

Linear Supertypes
Serializable, Serializable, Store[Addr, Abs], MemoHashCode, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BasicStore
  2. Serializable
  3. Serializable
  4. Store
  5. MemoHashCode
  6. Product
  7. Equals
  8. AnyRef
  9. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BasicStore(content: Map[Addr, Abs])(implicit arg0: Address[Addr], arg1: JoinLattice[Abs])

Value Members

  1. def addDelta(delta: Map[Addr, Abs]): Store[Addr, Abs]

    Add a delta to the store.

    Add a delta to the store. This clears the current delta

    Definition Classes
    Store
  2. def cardinalities(withPrimitives: Boolean = false): Map[Addr, Cardinality]

    Returns the cardinality of each lattice element of this store

    Returns the cardinality of each lattice element of this store

    Definition Classes
    Store
  3. val content: Map[Addr, Abs]
  4. def delta: Option[Map[Addr, Abs]]

    Returns a delta of the changes made on this store.

    Returns a delta of the changes made on this store. None if the store doesn't support store deltas

    Definition Classes
    Store
  5. def diff(that: Store[Addr, Abs]): BasicStore[Addr, Abs]

    Returns a store containing items that differ between the two stores

    Returns a store containing items that differ between the two stores

    Definition Classes
    BasicStoreStore
  6. def extend(a: Addr, v: Abs): Store[Addr, Abs]

    Add a new entry in the store

    Add a new entry in the store

    Definition Classes
    BasicStoreStore
  7. def forall(p: ((Addr, Abs)) ⇒ Boolean): Boolean

    Checks if a predicate is true for all elements of the store

    Checks if a predicate is true for all elements of the store

    Definition Classes
    BasicStoreStore
  8. def hashCode(): Int

    Memoized default hash code

    Memoized default hash code

    Definition Classes
    MemoHashCode → AnyRef → Any
  9. def join(that: Store[Addr, Abs]): Store[Addr, Abs]

    Joins two stores together

    Joins two stores together

    Definition Classes
    BasicStoreStore
  10. def keys: Iterable[Addr]

    Gets all the keys of the store

    Gets all the keys of the store

    Definition Classes
    BasicStoreStore
  11. def lookup(a: Addr): Option[Abs]

    Looks up a value in the store

    Looks up a value in the store

    Definition Classes
    BasicStoreStore
  12. def lookupBot(a: Addr): Abs

    Looks up a value in the store, or return bottom if it's not there

    Looks up a value in the store, or return bottom if it's not there

    Definition Classes
    BasicStoreStore
  13. def lookupMF(a: Addr): MayFail[Abs]
    Definition Classes
    Store
  14. def subsumes(that: Store[Addr, Abs]): Boolean

    Checks whether this store subsumes another store

    Checks whether this store subsumes another store

    Definition Classes
    BasicStoreStore
  15. def toString(): String
    Definition Classes
    BasicStore → AnyRef → Any
  16. def update(a: Addr, v: Abs): Store[Addr, Abs]

    Update an entry in the store

    Update an entry in the store

    Definition Classes
    BasicStoreStore
  17. def updateOrExtend(a: Addr, v: Abs): Store[Addr, Abs]

    Tries to update an address if it's already mapped into the store.

    Tries to update an address if it's already mapped into the store. Otherwise, extend the store

    Definition Classes
    BasicStoreStore