ClassPath

dotty.tools.io.ClassPath
See theClassPath companion object
trait ClassPath

A representation of the compiler's class- or sourcepath.

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class JrtClassPath
trait DirectoryLookup[FileEntryType]
trait JFileDirectoryLookup[FileEntryType]
trait ZipArchiveFileLookup[FileEntryType]
Show all

Members list

Value members

Abstract methods

The whole sourcepath in the form of one String.

The whole sourcepath in the form of one String.

Attributes

def asURLs: Seq[URL]

Returns the classfile for an external name, e.g., "java.lang.String". This method does not return source files.

Returns the classfile for an external name, e.g., "java.lang.String". This method does not return source files.

This method is used by the classfile parser. When parsing a Java class, its own inner classes are entered with a ClassfileLoader that parses the classfile returned by this method. It is also used in the backend, by the inliner, to obtain the bytecode when inlining from the classpath. It's also used by scalap.

Attributes

Concrete methods

The whole classpath in the form of one String.

The whole classpath in the form of one String.

Attributes

final def classes(inPackage: String): Seq[ClassFileEntry]

Returns the class file and / or source file for a given external name, e.g., "java.lang.String". If there is both a class file and source file, the compiler can decide whether to read the class file or compile the source file.

Returns the class file and / or source file for a given external name, e.g., "java.lang.String". If there is both a class file and source file, the compiler can decide whether to read the class file or compile the source file.

Internally this seems to be used only by ScriptRunner, but only to call .isDefined. That could probably be implemented differently.

Externally, it is used by sbt's compiler interface: https://github.com/sbt/sbt/blob/v0.13.15/compile/interface/src/main/scala/xsbt/CompilerInterface.scala#L249 Jason has some improvements for that in the works (https://github.com/scala/bug/issues/10289#issuecomment-310022699)

Attributes

final def hasPackage(pkg: String): Boolean
final def list(inPackage: String): ClassPathEntries
final def packages(inPackage: String): Seq[PackageEntry]
final def sources(inPackage: String): Seq[SourceFileEntry]

Deprecated methods

Attributes

Deprecated
true