summaryrefslogtreecommitdiff
path: root/docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala
diff options
context:
space:
mode:
Diffstat (limited to 'docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala')
-rw-r--r--docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala19
1 files changed, 13 insertions, 6 deletions
diff --git a/docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala b/docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala
index 16b6ce2259..979437c8c2 100644
--- a/docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala
+++ b/docs/examples/plugintemplate/src/plugintemplate/standalone/PluginRunner.scala
@@ -19,10 +19,17 @@ extends Global(settings, reporter) {
*
* @todo: Adapt to specific plugin implementation
*/
- override def phaseDescriptors: List[SubComponent] = List(
- analyzer.namerFactory,
- analyzer.typerFactory,
- superAccessors,
- pickler,
- refchecks) ::: TemplatePlugin.components(this)
+ override protected def computeInternalPhases() : Unit = {
+ phasesSet += syntaxAnalyzer
+ phasesSet += (analyzer.namerFactory: SubComponent) // note: types are there because otherwise
+ phasesSet += (analyzer.typerFactory: SubComponent) // consistency check after refchecks would fail.
+ phasesSet += superAccessors // add super accessors
+ phasesSet += pickler // serialize symbol tables
+ phasesSet += refchecks // perform reference and override checking, translate nested objects
+
+ for (phase <- TemplatePlugin.components(this)) {
+ phasesSet += phase
+ }
+ }
+
}