Dotty Documentation

0.2.0-bin-SNAPSHOT

case class AggregateClassPath
extends ClassPath with Product

A classpath unifying multiple class- and sourcepath entries. The Classpath can obtain entries for classes and sources independently so it tries to do operations quite optimally - iterating only these collections which are needed in the given moment and only as far as it's necessary.

[-] Constructors

AggregateClassPath ( aggregates: Seq [ ClassPath ] )

[-] Members

[+] val aggregates : Seq [ ClassPath ]
[+] override def asClassPathStrings : Seq [ String ]
[+] override def asSourcePathString : String

The whole sourcepath in the form of one String.

[+] override def asURLs : Seq [ URL ]
[+] override def classes ( inPackage: String ) : Seq [ ClassFileEntry ]
[+] override def findClass ( className: String ) : Option [ ClassRepresentation ]

It returns both classes from class file and source files (as our base ClassRepresentation). So note that it's not so strictly related to findClassFile.

[+] override def findClassFile ( className: String ) : Option [ AbstractFile ]
[+] private def getDistinctEntries ( getEntries: ClassPath => Seq [ EntryType ] ) : Seq [ EntryType ]
[+] override def list ( inPackage: String ) : ClassPathEntries

Allows to get entries for packages and classes merged with sources possibly in one pass.

[+] private def mergeClassesAndSources ( entries: [ Seq [ ClassRepresentation ] ] ) : Seq [ ClassRepresentation ]

Returns only one entry for each name. If there's both a source and a class entry, it creates an entry containing both of them. If there would be more than one class or source entries for the same class it always would use the first entry of each type found on a classpath.

[+] override def packages ( inPackage: String ) : Seq [ PackageEntry ]

Empty string represents root package

[+] override def sources ( inPackage: String ) : Seq [ SourceFileEntry ]