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
- Alphabetic
- By Inheritance
- AnalysisScenario
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new AnalysisScenario(ps: PropertyStore)
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- def +=(cs: ComputationSpecification[A]): AnalysisScenario.this.type
Adds the given computation specification (
cs
) to the set of computation specifications that should be scheduled. - final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def allProperties: Set[PropertyBounds]
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- 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.
- 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:
- all analyses' init method will be called; this may lead to the initialization of properties
- setupPhase is called
- all lazy analyses and all transformers are registered; (Immediately before registration, beforeSchedule is called.)
- all triggered computations are registered; this may trigger computations related to initial properties (Immediately before registration, beforeSchedule is called.)
- all eager analyses are started (Immediately before registration, beforeSchedule is called.)
- when the phase has finished, all analyses' afterPhaseCompletion methods are called.
- propertyStore
required to determine which properties are already computed!
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- 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 propertyp
if the algorithm which computesd
uses the propertyp
.- Note
Can only be called after the schedule method was called! If no schedule could be computed the result of this method is undefined.
- val ps: PropertyStore
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated