c

scala.tools.nsc.classpath

CtSymClassPath

final class CtSymClassPath extends ClassPath with NoSourcePaths with Closeable

Implementation ClassPath based on the $JAVA_HOME/lib/ct.sym backing https://openjdk.java.net/jeps/247

Source
DirectoryClassPath.scala
Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. CtSymClassPath
  2. Closeable
  3. AutoCloseable
  4. NoSourcePaths
  5. ClassPath
  6. AnyRef
  7. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new CtSymClassPath(ctSym: Path, release: Int)

Value Members

  1. def asClassPathString: String

    The whole classpath in the form of one String.

    The whole classpath in the form of one String.

    Definition Classes
    ClassPath
  2. def asClassPathStrings: Seq[String]
    Definition Classes
    CtSymClassPathClassPath
  3. final def asSourcePathString: String
    Definition Classes
    NoSourcePaths
  4. def asURLs: Seq[URL]
    Definition Classes
    CtSymClassPathClassPath
  5. final def classes(inPackage: String): Seq[ClassFileEntry]
    Definition Classes
    ClassPath
  6. def close(): Unit
    Definition Classes
    CtSymClassPath → Closeable → AutoCloseable
  7. def findClass(className: String): Option[ClassRepresentation]

    Returns the class file and / or source file for a given external name, e.g., "java.lang.String".

    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)

    Definition Classes
    ClassPath
  8. def findClassFile(className: String): Option[AbstractFile]

    Returns the classfile for an external name, e.g., "java.lang.String".

    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.

    Definition Classes
    CtSymClassPathClassPath
  9. final def hasPackage(pkg: String): Boolean
    Definition Classes
    ClassPath
  10. final def list(inPackage: String): ClassPathEntries
    Definition Classes
    ClassPath
  11. final def packages(inPackage: String): Seq[PackageEntry]
    Definition Classes
    ClassPath
  12. final def sources(inPackage: String): Seq[SourceFileEntry]
    Definition Classes
    ClassPath

Deprecated Value Members

  1. def asClasspathString: String
    Definition Classes
    ClassPath
    Annotations
    @deprecated
    Deprecated

    (Since version 2.11.5) use asClassPathString instead of this one