diff options
author | Paul Phillips <paulp@improving.org> | 2011-03-26 19:42:25 +0000 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2011-03-26 19:42:25 +0000 |
commit | 3e5cd92cbb455f046f70552f1dd127404b32f4b2 (patch) | |
tree | 1eb91e77e931d2d9dec86a8d9e5b28358a0b9467 /src/compiler/scala/tools/nsc/util/ClassPath.scala | |
parent | f84a12bfbba20d043800fb8b4af9b2bcf79f9d27 (diff) | |
download | scala-3e5cd92cbb455f046f70552f1dd127404b32f4b2.tar.gz scala-3e5cd92cbb455f046f70552f1dd127404b32f4b2.tar.bz2 scala-3e5cd92cbb455f046f70552f1dd127404b32f4b2.zip |
Some accumulated work and polish on classpath a...
Some accumulated work and polish on classpath and jars. No review.
Diffstat (limited to 'src/compiler/scala/tools/nsc/util/ClassPath.scala')
-rw-r--r-- | src/compiler/scala/tools/nsc/util/ClassPath.scala | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/compiler/scala/tools/nsc/util/ClassPath.scala b/src/compiler/scala/tools/nsc/util/ClassPath.scala index bb404480a9..962062eb2d 100644 --- a/src/compiler/scala/tools/nsc/util/ClassPath.scala +++ b/src/compiler/scala/tools/nsc/util/ClassPath.scala @@ -9,9 +9,9 @@ package util import java.net.URL import scala.collection.mutable.ListBuffer -import io.{ File, Directory, Path, AbstractFile } +import io.{ File, Directory, Path, Jar, AbstractFile, ClassAndJarInfo } import scala.tools.util.StringOps.splitWhere -import Path.isJarOrZip +import Jar.isJarOrZip import File.pathSeparator /** <p> @@ -22,6 +22,14 @@ import File.pathSeparator * @author Stepan Koltsov */ object ClassPath { + def scalaLibrary = locate[ScalaObject] + def scalaCompiler = locate[Global] + + def info[T: ClassManifest] = new ClassAndJarInfo[T] + def locate[T: ClassManifest] = info[T] rootClasspath + def locateJar[T: ClassManifest] = info[T].rootPossibles find (x => isJarOrZip(x)) map (x => File(x)) + def locateDir[T: ClassManifest] = info[T].rootPossibles find (_.isDirectory) map (_.toDirectory) + /** Expand single path entry */ private def expandS(pattern: String): List[String] = { val wildSuffix = File.separator + "*" |