scala.tools.nsc.backend.icode.analysis

CopyPropagation

class CopyPropagation extends AnyRef

A modified copy-propagation like analysis. It is augmented with a record-like value which is used to represent closures.

Attributes
abstract
Source
CopyPropagation.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Hide All
  2. Show all
  1. CopyPropagation
  2. AnyRef
  3. Any
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CopyPropagation ()

Type Members

  1. case class Boxed (l: Location) extends Value with Product with Serializable

    The boxed value of some location.

  2. case class Const (c: Constant) extends Value with Product with Serializable

    The constant value c.

  3. class CopyAnalysis extends DataFlowAnalysis[CopyPropagation.this.copyLattice.type]

    Attributes
    final
  4. case class Deref (l: Location) extends Value with Product with Serializable

    The value of some location in memory.

  5. case class Field (r: Record, sym: Symbol) extends Location with Product with Serializable

  6. case class LocalVar (l: Local) extends Location with Product with Serializable

  7. class Location extends AnyRef

    Locations can be local variables, this, and fields.

  8. case class Record (cls: Symbol, bindings: Map[Symbol, Value]) extends Value with Product with Serializable

  9. class Value extends AnyRef

    Values that can be on the stack.

Abstract Value Members

  1. val global : Global

    Attributes
    abstract

Concrete Value Members

  1. def != (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  2. def != (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  3. def ## (): Int

    Attributes
    final
    Definition Classes
    AnyRef → Any
  4. def == (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  5. def == (arg0: Any): Boolean

    Attributes
    final
    Definition Classes
    Any
  6. object AllRecords extends Record

    The bottom record.

  7. object This extends Location with Product with Serializable

  8. object Unknown extends Value with Product with Serializable

    Unknown.

  9. def asInstanceOf [T0] : T0

    Attributes
    final
    Definition Classes
    Any
  10. def clone (): AnyRef

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  11. object copyLattice extends SemiLattice

    The lattice for this analysis.

  12. def eq (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  13. def equals (arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  14. def finalize (): Unit

    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  15. def getClass (): java.lang.Class[_]

    Attributes
    final
    Definition Classes
    AnyRef → Any
  16. def hashCode (): Int

    Definition Classes
    AnyRef → Any
  17. def isInstanceOf [T0] : Boolean

    Attributes
    final
    Definition Classes
    Any
  18. def ne (arg0: AnyRef): Boolean

    Attributes
    final
    Definition Classes
    AnyRef
  19. def notify (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  20. def notifyAll (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
  21. def synchronized [T0] (arg0: ⇒ T0): T0

    Attributes
    final
    Definition Classes
    AnyRef
  22. def toString (): String

    Definition Classes
    AnyRef → Any
  23. def wait (): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  24. def wait (arg0: Long, arg1: Int): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()
  25. def wait (arg0: Long): Unit

    Attributes
    final
    Definition Classes
    AnyRef
    Annotations
    @throws()

Inherited from AnyRef

Inherited from Any