Package-level declarations
Types
Register a dependency for the annotated pass. This ensures that the annotated pass is executed before other pass. The softDependency flag decides whether to treat this as a hard dependency (resulting in the pass being registered if not present) or not.
Indicates whether this pass should be executed as the first pass. Note: setting this flag for more than one active pass will yield an error. Note: setting this flag will not activate the pass. You must register the pass manually.
Indicates whether this pass should be executed as the last pass. Note: setting this flag for more than one active pass will yield an error. Note: setting this flag will not activate the pass. You must register the pass manually.
Indicates whether this pass should be executed as late as possible (without breaking any other constraints like ExecuteLast or DependsOn, ...)
The goal of this class is to provide ordered passes when invoking the order function.
A simple helper class to match a pass with its dependencies. dependenciesRemaining shows the currently remaining / unsatisfied dependencies. These values are updated during the ordering procedure.
Register a new default pass required by a frontend. Passes annotated this way are collected by TranslationConfiguration.Builder.registerExtraFrontendPasses and automatically registered in TranslationConfiguration.Builder.build, but only if TranslationConfiguration.Builder.defaultPasses was called.
This annotation can only enable a pass for a given LanguageFrontend. The pass's accept function will not be executed when the current language does not match the required language.
This annotation can only enable a pass if its target language implements a given LanguageTrait.