WhiteListClasspath

dotty.ammonite.compiler.WhiteListClasspath
class WhiteListClasspath(aggregates: Seq[ClassPath], whitelist: Set[Seq[String]]) extends AggregateClassPath

Attributes

Graph
Supertypes
class AggregateClassPath
trait Serializable
trait Product
trait Equals
trait ClassPath
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Concrete methods

override def findClassFile(name: String): Option[AbstractFile]

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

Definition Classes
AggregateClassPath -> ClassPath
override def list(inPackage: PackageName): ClassPathEntries

Returns packages and classes (source or classfile) that are members of inPackage (not recursively). The inPackage contains a full package name, e.g., "scala.collection".

Returns packages and classes (source or classfile) that are members of inPackage (not recursively). The inPackage contains a full package name, e.g., "scala.collection".

This is the main method uses to find classes, see class PackageLoader. The rootMirror.rootLoader is created with inPackage = "".

Attributes

Definition Classes
AggregateClassPath -> ClassPath
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns:

a string representation of the object.

Definition Classes
AggregateClassPath -> Any

Inherited methods

def asClassPathString: String

The whole classpath in the form of one String.

The whole classpath in the form of one String.

Attributes

Inherited from:
ClassPath
override def asClassPathStrings: Seq[String]

Attributes

Definition Classes
AggregateClassPath -> ClassPath
Inherited from:
AggregateClassPath
override def asSourcePathString: String

The whole sourcepath in the form of one String.

The whole sourcepath in the form of one String.

Attributes

Definition Classes
AggregateClassPath -> ClassPath
Inherited from:
AggregateClassPath
override def asURLs: Seq[URL]

Attributes

Definition Classes
AggregateClassPath -> ClassPath
Inherited from:
AggregateClassPath
final def classes(inPackage: String): Seq[ClassFileEntry]

Attributes

Inherited from:
ClassPath
override def findClass(className: String): Option[ClassRepresentation]

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

Definition Classes
AggregateClassPath -> ClassPath
Inherited from:
AggregateClassPath
final def hasPackage(pkg: String): Boolean

Attributes

Inherited from:
ClassPath
final def list(inPackage: String): ClassPathEntries

Attributes

Inherited from:
ClassPath
final def packages(inPackage: String): Seq[PackageEntry]

Attributes

Inherited from:
ClassPath
def productElementNames: Iterator[String]

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

Attributes

Inherited from:
Product
final def sources(inPackage: String): Seq[SourceFileEntry]

Attributes

Inherited from:
ClassPath

Deprecated and Inherited methods

def asClasspathString: String

Attributes

Deprecated
true
Inherited from:
ClassPath