scala.tools.nsc.backend.icode.analysis

DataFlowAnalysis

trait DataFlowAnalysis[L <: SemiLattice] extends AnyRef

A generic framework for data flow analysis.

Source
DataFlowAnalysis.scala
Linear Supertypes
AnyRef, Any
Known Subclasses
Type Hierarchy Learn more about scaladoc diagrams
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DataFlowAnalysis
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by any2stringfmt
  3. by any2ArrowAssoc
  4. by any2Ensuring
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. abstract type P <: ProgramPoint[P]

    A type for program points.

Abstract Value Members

  1. abstract val lattice: L

  2. abstract def run(): Unit

Concrete Value Members

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

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

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

    Definition Classes
    AnyRef → Any
  4. def +(other: String): String

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to StringAdd performed by method any2stringadd in scala.Predef.
    Definition Classes
    StringAdd
  5. def ->[B](y: B): (DataFlowAnalysis[L], B)

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to ArrowAssoc[DataFlowAnalysis[L]] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  6. final def ==(arg0: AnyRef): Boolean

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

    Definition Classes
    Any
  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def backwardAnalysis(f: (P, L.Elem) ⇒ L.Elem): Unit

    .

    ...

    f

    ...

  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  11. def ensuring(cond: (DataFlowAnalysis[L]) ⇒ Boolean, msg: ⇒ Any): DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: (DataFlowAnalysis[L]) ⇒ Boolean): DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean, msg: ⇒ Any): DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean): DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]] performed by method any2Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  16. def equals(arg0: Any): Boolean

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

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  18. def formatted(fmtstr: String): String

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to StringFormat performed by method any2stringfmt in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  19. def forwardAnalysis(f: (P, L.Elem) ⇒ L.Elem): Unit

    Implements forward dataflow analysis: the transfer function is applied when inputs to a Program point change, to obtain the new output value.

    Implements forward dataflow analysis: the transfer function is applied when inputs to a Program point change, to obtain the new output value.

    f

    the transfer function.

  20. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  21. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  22. val in: Map[P, L.Elem]

  23. def init(f: ⇒ Unit): Unit

  24. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  25. var iterations: Int

    the number of times we iterated before reaching a fixpoint.

  26. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  29. val out: Map[P, L.Elem]

  30. def reinit(f: ⇒ Unit): Unit

    Reinitialize, but keep the old solutions.

    Reinitialize, but keep the old solutions. Should be used when reanalyzing the same method, after some code transformation.

  31. var stat: Boolean

    collect statistics?

  32. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  33. def toString(): String

    Definition Classes
    AnyRef → Any
  34. val visited: HashSet[P]

  35. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  38. val worklist: Set[P]

  39. def [B](y: B): (DataFlowAnalysis[L], B)

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to ArrowAssoc[DataFlowAnalysis[L]] performed by method any2ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Shadowed Implict Value Members

  1. val self: Any

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to StringAdd performed by method any2stringadd in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (dataFlowAnalysis: StringAdd).self
    Definition Classes
    StringAdd
  2. val self: Any

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to StringFormat performed by method any2stringfmt in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (dataFlowAnalysis: StringFormat).self
    Definition Classes
    StringFormat

Deprecated Value Members

  1. def x: DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to ArrowAssoc[DataFlowAnalysis[L]] performed by method any2ArrowAssoc in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (dataFlowAnalysis: ArrowAssoc[DataFlowAnalysis[L]]).x
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use leftOfArrow instead

  2. def x: DataFlowAnalysis[L]

    Implicit information
    This member is added by an implicit conversion from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]] performed by method any2Ensuring in scala.Predef.
    Shadowing
    This implicitly inherited member is ambiguous. One or more implicitly inherited members have similar signatures, so calling this member may produce an ambiguous implicit conversion compiler error.
    To access this member you can use a type ascription:
    (dataFlowAnalysis: Ensuring[DataFlowAnalysis[L]]).x
    Definition Classes
    Ensuring
    Annotations
    @deprecated
    Deprecated

    (Since version 2.10.0) Use resultOfEnsuring instead

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from DataFlowAnalysis[L] to StringAdd

Inherited by implicit conversion any2stringfmt from DataFlowAnalysis[L] to StringFormat

Inherited by implicit conversion any2ArrowAssoc from DataFlowAnalysis[L] to ArrowAssoc[DataFlowAnalysis[L]]

Inherited by implicit conversion any2Ensuring from DataFlowAnalysis[L] to Ensuring[DataFlowAnalysis[L]]

Ungrouped