class Run

A compiler run. Exports various methods to compile source files

Constructors

Run ( comp: Compiler )
Run ( implicit ctx: Context )

Members

[+] private final object NoPrintedTree
[+] private sealed trait PrintedTree
[+] private final case class SomePrintedTree
[+] private final object SomePrintedTree
[+] private val comp : Compiler
[+] private implicit val ctx : Context
[+] var units : List [ CompilationUnit ]
[+] def compile ( fileNames: List [ String ] ) : Unit
[+] def compile ( sourceCode: String ) : Unit
[+] def compileSources ( sources: List [ SourceFile ] ) : Unit

TODO: There's a fundamental design problem here: We assemble phases using squash when we first build the compiler. But we modify them with -Yskip, -Yst...

TODO: There's a fundamental design problem here: We assemble phases using squash when we first build the compiler. But we modify them with -Yskip, -Ystop on each run. That modification needs to either transform the tree structure, or we need to assemble phases on each run, and take -Yskip, -Ystop into account. I think the latter would be preferable.

[+] protected def compileUnits ( ) : Unit
[+] def getSource ( fileName: String ) : SourceFile
[+] def printSummary ( ) : Reporter

Print summary; return # of errors encountered

Print summary; return # of errors encountered

[+] private def printTree ( last: PrintedTree ) ( implicit ctx: Context ) : PrintedTree
[+] def runContext : Context

The context created for this run

The context created for this run

[+] def units_= ( x$1: List [ CompilationUnit ] ) : Unit