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