diff options
author | paltherr <paltherr@epfl.ch> | 2004-03-21 16:49:06 +0000 |
---|---|---|
committer | paltherr <paltherr@epfl.ch> | 2004-03-21 16:49:06 +0000 |
commit | 1e69dfd7774211aa276479d7b031bcee5557d0e2 (patch) | |
tree | 5424a7250392e8203b37a25f17e8cccb9aea0f5e /sources/scalac/Global.java | |
parent | 5ed2fb0f5d44522925e737198aba3249f091d13c (diff) | |
download | scala-1e69dfd7774211aa276479d7b031bcee5557d0e2.tar.gz scala-1e69dfd7774211aa276479d7b031bcee5557d0e2.tar.bz2 scala-1e69dfd7774211aa276479d7b031bcee5557d0e2.zip |
- Simplified method lateEnter in Analyzer and A...
- Simplified method lateEnter in Analyzer and AnalyzerPhase Added
- Global.compileLate Changed SourceCompleter and Analyer to use it
- Removed mixinOnly from SourceCompleter
Diffstat (limited to 'sources/scalac/Global.java')
-rw-r--r-- | sources/scalac/Global.java | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/sources/scalac/Global.java b/sources/scalac/Global.java index d83751926d..5ae1d874ba 100644 --- a/sources/scalac/Global.java +++ b/sources/scalac/Global.java @@ -384,6 +384,19 @@ public abstract class Global { treePrinter.end(); } + /** Compiles an additional source file. */ + public void compileLate(SourceFile source, boolean mixinOnly) { + Unit unit = new Unit(this, source, false, mixinOnly); + Phase backup = currentPhase; + // !!! add code to print/skip/graph as in compile + currentPhase = PHASE.PARSER.phase(); + PHASE.PARSER.phase().apply(new Unit[] {unit}); + currentPhase = PHASE.ANALYZER.phase(); + ((AnalyzerPhase)PHASE.ANALYZER.phase()).lateEnter(unit); + // !!! add code for later phases? + currentPhase = backup; + } + private void print() { if (currentPhase.id == PHASE.MAKEBOXINGEXPLICIT.id()) { boolean html = args.printer.value.equals(PRINTER_HTML); |