blob: 0385d80c52303aa09cedc092212fdd3bd42b3ac0 (
plain) (
tree)
|
|
/* NSC -- new Scala compiler
* Copyright 2005-2012 LAMP/EPFL
* @author Paul Phillips
*/
package dotty.tools
package dotc
package config
import io.{ClassPath, AbstractFile}
import core.Contexts._, core.Symbols._
import core.SymDenotations.ClassCompleter
import core.SymbolLoader
/** The platform dependent pieces of Global.
*/
abstract class Platform(base: ContextBase) {
/** The root symbol loader. */
def rootLoader: ClassCompleter
/** The compiler classpath. */
def classPath(implicit ctx: Context): ClassPath
/** Update classpath with a substitution that maps entries to entries */
def updateClassPath(subst: Map[ClassPath, ClassPath])
/** Any platform-specific phases. */
//def platformPhases: List[SubComponent]
/** The various ways a boxed primitive might materialize at runtime. */
def isMaybeBoxed(sym: Symbol)(implicit ctx: Context): Boolean
/** Create a new class loader to load class file `bin` */
def newClassLoader(bin: AbstractFile): SymbolLoader
}
|