diff options
author | Martin Odersky <odersky@gmail.com> | 2007-08-22 12:27:22 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2007-08-22 12:27:22 +0000 |
commit | d0310bece6ca4047221698c08de1d85b703bd07d (patch) | |
tree | ba02cb90d292086fea2a545ffed30be06cb72fba /src/compiler/scala/tools/nsc/Global.scala | |
parent | 83767dc5e2181f7953afc2a91a5253f652f8fc11 (diff) | |
download | scala-d0310bece6ca4047221698c08de1d85b703bd07d.tar.gz scala-d0310bece6ca4047221698c08de1d85b703bd07d.tar.bz2 scala-d0310bece6ca4047221698c08de1d85b703bd07d.zip |
cleaned up Trees
Diffstat (limited to 'src/compiler/scala/tools/nsc/Global.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/Global.scala | 34 |
1 files changed, 11 insertions, 23 deletions
diff --git a/src/compiler/scala/tools/nsc/Global.scala b/src/compiler/scala/tools/nsc/Global.scala index fd5e1dcd2e..b550dce067 100644 --- a/src/compiler/scala/tools/nsc/Global.scala +++ b/src/compiler/scala/tools/nsc/Global.scala @@ -32,8 +32,7 @@ import backend.msil.GenMSIL import backend.opt.{Inliners, ClosureElimination, DeadCodeElimination} import backend.icode.analysis._ -class Global(var settings: Settings, var reporter: Reporter) extends SymbolTable - with Trees +class Global(var settings: Settings, var reporter: Reporter) extends Trees with CompilationUnits with Plugins { @@ -57,25 +56,6 @@ class Global(var settings: Settings, var reporter: Reporter) extends SymbolTable } val nodeToString = nodePrinters.nodeToString - object treePrinters extends TreePrinters { - val global: Global.this.type = Global.this - } - val treePrinter = treePrinters.create() - def printTree(tree: Tree, writer: PrintWriter) { - val printer = treePrinters.create(writer) - printer.print(tree) - printer.flush - } - - object treeBrowsers extends TreeBrowsers { - val global: Global.this.type = Global.this - } - val treeBrowser = treeBrowsers.create() - - object treeInfo extends TreeInfo { - val global: Global.this.type = Global.this - } - object gen extends TreeGen { val global: Global.this.type = Global.this } @@ -549,9 +529,9 @@ class Global(var settings: Settings, var reporter: Reporter) extends SymbolTable if (settings.print contains globalPhase.name) if (globalPhase.id >= icodePhase.id) writeICode() else if (settings.Xshowtrees.value) nodePrinters.printAll() - else treePrinter.printAll() + else printAllUnits() if (settings.printLate.value && globalPhase.name == "cleanup") - treePrinter.printAll() + printAllUnits() if (settings.browse contains globalPhase.name) treeBrowser.browse(units) informTime(globalPhase.description, startTime) @@ -640,6 +620,14 @@ class Global(var settings: Settings, var reporter: Reporter) extends SymbolTable } } // class Run + + def printAllUnits() { + print("[[syntax trees at end of " + phase + "]]") + atPhase(phase.next) { + for (unit <- currentRun.units) treePrinter.print(unit) + } + } + def showDef(name: Name, module: Boolean) { def getSym(name: Name, module: Boolean): Symbol = { var i = name.length - 1 |