summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/reflect/ReflectMain.scala
blob: a998a44643fa1fa1d4fc7cee3ec1bf6f0e67b549 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package scala.tools
package reflect

import scala.tools.nsc.Driver
import scala.tools.nsc.Global
import scala.tools.nsc.Settings
import scala.tools.nsc.util.ScalaClassLoader
import scala.tools.util.PathResolverFactory

object ReflectMain extends Driver {

  private def classloaderFromSettings(settings: Settings) = {
    val classPathURLs = PathResolverFactory.create(settings).resultAsURLs
    ScalaClassLoader.fromURLs(classPathURLs, getClass.getClassLoader)
  }

  override def newCompiler(): Global = new ReflectGlobal(settings, reporter, classloaderFromSettings(settings))
}