Packages

case class Snapshot(m: Map[String, Subscript]) extends Product with Serializable

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Snapshot
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new Snapshot(m: Map[String, Subscript])

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def ++(other: Snapshot): Snapshot

    Take the union of two snapshots.

    Take the union of two snapshots. When both snapshots mention the same variable, the greater subscript is kept.

  4. def <=(other: Snapshot): Boolean

    returns

    whether every key has same or higher subscript in other snapshot

  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. def addPattern(pat: Expression): Snapshot

    Augment snapshot with all variables freshly bound in the pattern.

  7. def addSet(vars: Set[Variable]): Snapshot

    Add a set of bound variables to a snapshot.

    Add a set of bound variables to a snapshot. This (or increment) should be called wherever variables are assigned. If the variables have been bound before, their subscripts are increased according to SSA.

  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. val asMap: Map[String, Subscript]

    Entry (x -> None) means we saw base variable "x", whereas no "x" entry means we never saw any version of "x".

  10. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  11. def contains(s: String): Boolean
  12. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  13. def filter(p: ((String, Subscript)) ⇒ Boolean): Snapshot
  14. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. def get(s: String): Subscript

    Look up "x" and don't distinguish the "never saw x" case.

    Look up "x" and don't distinguish the "never saw x" case. This can be more convenient, and is adequate so long as we wish for SSA numbering to start at x_0 rather than x.

  16. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  17. def getOpt(s: String): Option[Subscript]

    Look up "x" but distinguish the "never saw x" case (None) vs "only saw x with no index" case (Some(None))

  18. def increment(x: Variable): (Variable, Snapshot)

    Add a variable to a snapshot.

    Add a variable to a snapshot. This (or addSet) should be called wherever a single variable is assigned. If x is already in the snapshot, its subscript is incremented.

    returns

    the variable with its new index and the updated snapshot.

  19. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  20. def keySet: Set[String]
  21. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  22. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  23. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  24. def revisit(x: Variable): Snapshot

    Input should be in SSA form already.

    Input should be in SSA form already. Call this on every variable to reconstruct Snapshot from output of SSA.

  25. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  26. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from AnyRef

Inherited from Any

Ungrouped