Packages

class AnalysisScenario extends AnyRef

Provides functionality to compute an optimal schedule to execute a set of analyses. Here, optimal means that the schedule will try to minimize the number of notifications due to updated properties. It will run analyses that just use information provided by earlier analyses, but which do not provide information required by the earlier ones, in a later batch/phase.

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. All

Instance Constructors

  1. new AnalysisScenario()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +=(cs: ComputationSpecification): Unit
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. def allProperties: Set[PropertyKind]
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  8. def computationDependencies: Graph[ComputationSpecification]

    Returns the dependencies between the computations.

  9. def computeSchedule(implicit logContext: LogContext): Schedule

    Computes an executable schedule.

    Computes an executable schedule.

    The goal is to find a schedule that:

    • ... schedules as many completely independent analyses in parallel as possible
    • ... does not schedule two analyses A and B at the same time if B has a dependency on the properties computed by A, but A has no dependency on B. Scheduling the computation of B in a later batch potentially minimizes the number of derivations.
    • ... schedules two analyses which collaboratively compute a property in the same batch/ phase.
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  14. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  18. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. def propertyComputationsDependencies: Graph[PropertyKind]

    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.

  20. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  21. def toString(): String
    Definition Classes
    AnyRef → Any
  22. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped