From f86527ce55f17e794e5705dfd4b0cb90bdce2672 Mon Sep 17 00:00:00 2001 From: nielsen Date: Thu, 5 Feb 2009 14:09:10 +0000 Subject: Test that make sure the implementation in SIP 0... Test that make sure the implementation in SIP 00002 behaves correctly --- .../neg/plugin-before-parser/src/ThePlugin.scala | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 test/files/neg/plugin-before-parser/src/ThePlugin.scala (limited to 'test/files/neg/plugin-before-parser/src/ThePlugin.scala') diff --git a/test/files/neg/plugin-before-parser/src/ThePlugin.scala b/test/files/neg/plugin-before-parser/src/ThePlugin.scala new file mode 100644 index 0000000000..8714a55dc4 --- /dev/null +++ b/test/files/neg/plugin-before-parser/src/ThePlugin.scala @@ -0,0 +1,32 @@ +package scala.test.plugins + +import scala.tools.nsc +import nsc.Global +import nsc.Phase +import nsc.plugins.Plugin +import nsc.plugins.PluginComponent + +class ThePlugin(val global: Global) extends Plugin { + import global._ + + val name = "beforeparser" + val description = "Declares one plugin that wants to be before the parser phase" + val components = List[PluginComponent](thePhase) + + private object thePhase extends PluginComponent { + val global = ThePlugin.this.global + + val runsAfter = List[String]() + override val runsBefore = List[String]("parser") + + val phaseName = ThePlugin.this.name + + def newPhase(prev: Phase) = new ThePhase(prev) + } + + private class ThePhase(prev: Phase) extends Phase(prev) { + def name = ThePlugin.this.name + def run {} + } +} + -- cgit v1.2.3