Packages

class AnalysisScenario[A] extends AnyRef

Provides functionality to determine whether a set of analyses is compatible and to compute a schedule to execute a set of analyses.

Source
AnalysisScenario.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AnalysisScenario
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new AnalysisScenario(ps: PropertyStore)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. def +=(cs: ComputationSpecification[A]): AnalysisScenario.this.type

    Adds the given computation specification (cs) to the set of computation specifications that should be scheduled.

  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def allProperties: Set[PropertyBounds]
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  8. def computationDependencies: Graph[ComputationSpecification[A]]

    Returns the dependencies between the computations.

    Returns the dependencies between the computations.

    Note

    Can only be called after the schedule method was called! If no schedule could be computed the result of this method is undefined.

  9. def computeSchedule(propertyStore: PropertyStore)(implicit logContext: LogContext): Schedule[A]

    Computes an executable schedule.

    Computes an executable schedule.

    When executing a schedule, the following steps will be performed:

    1. all analyses' init method will be called; this may lead to the initialization of properties
    2. setupPhase is called
    3. all lazy analyses and all transformers are registered; (Immediately before registration, beforeSchedule is called.)
    4. all triggered computations are registered; this may trigger computations related to initial properties (Immediately before registration, beforeSchedule is called.)
    5. all eager analyses are started (Immediately before registration, beforeSchedule is called.)
    6. when the phase has finished, all analyses' afterPhaseCompletion methods are called.
    propertyStore

    required to determine which properties are already computed!

  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  13. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  14. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  15. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  17. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  18. def propertyComputationsDependencies: Graph[PropertyBounds]

    Returns the graph which depicts the dependencies between the computed properties based on the current computation specifications.

    Returns the graph which depicts the dependencies between the computed properties based on the current computation specifications. I.e., a property d depends on another property p if the algorithm which computes d uses the property p.

    Note

    Can only be called after the schedule method was called! If no schedule could be computed the result of this method is undefined.

  19. val ps: PropertyStore
  20. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  23. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  24. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped