accrue

## Class AccrueSchedulerHelper

- java.lang.Object
- - accrue.AccrueSchedulerHelper

- Direct Known Subclasses:
    AccrueJL5Scheduler.AccrueJL5SchedulerHelper

      public class AccrueSchedulerHelper
      extends java.lang.Object

  This class defines a number of Accrue-relevant scheduler goals. This class is a helper class intended to be contained in a Scheduler.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected polyglot.frontend.ExtensionInfo` | `extInfo` The ExtensionInfo for the scheduler this class is helping.
    `protected polyglot.frontend.Scheduler` | `sched` The Scheduler that this class is helping.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AccrueSchedulerHelper(polyglot.frontend.ExtensionInfo extInfo, polyglot.frontend.Scheduler sched)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `polyglot.frontend.goals.Goal` | `AnalysesDone(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `AntiDepAnalysis()`
    `polyglot.frontend.goals.Goal` | `ComputeFinallyStructure(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `ComputeFinallyStructureDone()`
    `polyglot.frontend.goals.Goal` | `DefUseAnalysis()`
    `polyglot.frontend.goals.Goal` | `Dominator()`
    `polyglot.frontend.goals.Goal` | `ExpressionFlattenerGoal(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `InlineFinalConstants(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MakeInstanceInitializersExplicitGoal(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MakeNarrowingAssignmentsExplicit(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MakeTargetsExplicitGoal(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MoveInnerClassesGoal(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MoveLocalClassesGoal(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `MoveStaticFieldInitializers(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `NonFatalPostDominator()`
    `polyglot.frontend.goals.Goal` | `NotNullAnalysis()`
    `polyglot.frontend.goals.Goal` | `PointerAnalysis()`
    `polyglot.frontend.goals.Goal` | `PostDominator()`
    `polyglot.frontend.goals.Goal` | `PostModificationGoal(polyglot.frontend.Job job)` Return a goal that indicates all passes that will modify code to simplify analysis has been performed.
    `polyglot.frontend.goals.Goal` | `PreciseCallGraph()`
    `polyglot.frontend.goals.Goal` | `PreciseExceptionAnalysis(int i)`
    `polyglot.frontend.goals.Goal` | `PreModificationBarrier()` Return a barrier goal, with the intent that any goal that modifies types to simplify the analyses happen only after the barrier.
    `polyglot.frontend.goals.Goal` | `ReadWriteSet()`
    `RegisterDeclsGoal` | `RegisterDecls()`
    `RegisterExpressionsGoal` | `RegisterExpressions()`
    `polyglot.frontend.goals.Goal` | `RegisterPointerStmts(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `RegisterPointerStmtsDone()`
    `polyglot.frontend.goals.Goal` | `RegisterProcedures(polyglot.frontend.Job job)`
    `polyglot.frontend.goals.Goal` | `RegisterProceduresDone()`
    `polyglot.frontend.goals.Goal` | `SimplifyExpressionsGoal(polyglot.frontend.Job job)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### sched

          protected final polyglot.frontend.Scheduler sched

      The Scheduler that this class is helping.

    - #### extInfo

          protected final polyglot.frontend.ExtensionInfo extInfo

      The ExtensionInfo for the scheduler this class is helping.

  - ### Constructor Detail

    - #### AccrueSchedulerHelper

          public AccrueSchedulerHelper(polyglot.frontend.ExtensionInfo extInfo,
                               polyglot.frontend.Scheduler sched)

  - ### Method Detail

    - #### AnalysesDone

          public polyglot.frontend.goals.Goal AnalysesDone(polyglot.frontend.Job job)

    - #### SimplifyExpressionsGoal

          public polyglot.frontend.goals.Goal SimplifyExpressionsGoal(polyglot.frontend.Job job)

    - #### MakeTargetsExplicitGoal

          public polyglot.frontend.goals.Goal MakeTargetsExplicitGoal(polyglot.frontend.Job job)

    - #### MoveStaticFieldInitializers

          public polyglot.frontend.goals.Goal MoveStaticFieldInitializers(polyglot.frontend.Job job)

    - #### MakeNarrowingAssignmentsExplicit

          public polyglot.frontend.goals.Goal MakeNarrowingAssignmentsExplicit(polyglot.frontend.Job job)

    - #### InlineFinalConstants

          public polyglot.frontend.goals.Goal InlineFinalConstants(polyglot.frontend.Job job)

    - #### RegisterProceduresDone

          public polyglot.frontend.goals.Goal RegisterProceduresDone()

    - #### RegisterProcedures

          public polyglot.frontend.goals.Goal RegisterProcedures(polyglot.frontend.Job job)

    - #### PointerAnalysis

          public polyglot.frontend.goals.Goal PointerAnalysis()

    - #### NotNullAnalysis

          public polyglot.frontend.goals.Goal NotNullAnalysis()

    - #### PreciseExceptionAnalysis

          public polyglot.frontend.goals.Goal PreciseExceptionAnalysis(int i)

    - #### ComputeFinallyStructureDone

          public polyglot.frontend.goals.Goal ComputeFinallyStructureDone()

    - #### ComputeFinallyStructure

          public polyglot.frontend.goals.Goal ComputeFinallyStructure(polyglot.frontend.Job job)

    - #### RegisterPointerStmtsDone

          public polyglot.frontend.goals.Goal RegisterPointerStmtsDone()

    - #### RegisterPointerStmts

          public polyglot.frontend.goals.Goal RegisterPointerStmts(polyglot.frontend.Job job)

    - #### MakeInstanceInitializersExplicitGoal

          public polyglot.frontend.goals.Goal MakeInstanceInitializersExplicitGoal(polyglot.frontend.Job job)

    - #### MoveInnerClassesGoal

          public polyglot.frontend.goals.Goal MoveInnerClassesGoal(polyglot.frontend.Job job)

    - #### MoveLocalClassesGoal

          public polyglot.frontend.goals.Goal MoveLocalClassesGoal(polyglot.frontend.Job job)

    - #### DefUseAnalysis

          public polyglot.frontend.goals.Goal DefUseAnalysis()

    - #### PreciseCallGraph

          public polyglot.frontend.goals.Goal PreciseCallGraph()

    - #### AntiDepAnalysis

          public polyglot.frontend.goals.Goal AntiDepAnalysis()

    - #### PostDominator

          public polyglot.frontend.goals.Goal PostDominator()

    - #### Dominator

          public polyglot.frontend.goals.Goal Dominator()

    - #### ReadWriteSet

          public polyglot.frontend.goals.Goal ReadWriteSet()

    - #### NonFatalPostDominator

          public polyglot.frontend.goals.Goal NonFatalPostDominator()

    - #### RegisterExpressions

          public RegisterExpressionsGoal RegisterExpressions()

    - #### RegisterDecls

          public RegisterDeclsGoal RegisterDecls()

    - #### ExpressionFlattenerGoal

          public polyglot.frontend.goals.Goal ExpressionFlattenerGoal(polyglot.frontend.Job job)

    - #### PreModificationBarrier

          public polyglot.frontend.goals.Goal PreModificationBarrier()

      Return a barrier goal, with the intent that any goal that modifies types to simplify the analyses happen only after the barrier.

    - #### PostModificationGoal

          public polyglot.frontend.goals.Goal PostModificationGoal(polyglot.frontend.Job job)

      Return a goal that indicates all passes that will modify code to simplify analysis has been performed.