Provides mappings between source files, generated classes (products), and binaries. Dependencies that are tracked include internal: a dependency on a source in the same compilation group (project), external: a dependency on a source in another compilation group (tracked as the name of the class), library: a dependency on a class or jar file not generated by a source file in any tracked compilation group, inherited: a dependency that resulted from a public template inheriting, direct: any type of dependency, including inheritance.
- Companion:
- object
Value members
Abstract methods
Concatenates the two relations. Acts naively, i.e., doesn't internalize external deps on added files.
Concatenates the two relations. Acts naively, i.e., doesn't internalize external deps on added files.
Drops all dependency mappings a->b where a is in sources
. Acts naively, i.e., doesn't externalize internal deps on removed files.
Drops all dependency mappings a->b where a is in sources
. Acts naively, i.e., doesn't externalize internal deps on removed files.
All files in another compilation group (project) that are recorded as a source dependency of a source file in this group.
All files in another compilation group (project) that are recorded as a source dependency of a source file in this group.
All files that are recorded as a library dependency of a source file.
All files that are recorded as a library dependency of a source file.
Names (fully qualified, at the pickler phase) of classes defined in source file src
.
Names (fully qualified, at the pickler phase) of classes defined in source file src
.
The relation between a source file and the fully qualified names of classes generated from it.
The relation between a source file and the fully qualified names of classes generated from it.
Source files that generated a class with the given fully qualified name
. This is typically a set containing a single file.
Source files that generated a class with the given fully qualified name
. This is typically a set containing a single file.
The dependency relation between internal and external classes.
The dependency relation between internal and external classes.
External source dependencies that internal source file src
depends on. This includes both direct and inherited dependencies.
External source dependencies that internal source file src
depends on. This includes both direct and inherited dependencies.
Internal source dependencies for src
. This includes both direct and inherited dependencies.
Internal source dependencies for src
. This includes both direct and inherited dependencies.
The dependency relation between library JARs and class names.
The dependency relation between library JARs and class names.
The library class names for the library JAR file lib
.
The library class names for the library JAR file lib
.
The library files that generated a class with the given fully qualified name
. This is typically a set containing a single file.
The library files that generated a class with the given fully qualified name
. This is typically a set containing a single file.
The dependency relation between internal sources and library JARs.
The dependency relation between internal sources and library JARs.
The source files that generated class file prod
. This is typically a set containing a single file.
The source files that generated class file prod
. This is typically a set containing a single file.
The relation between source and product class names.
The relation between source and product class names.
Only non-local classes, objects and traits are tracked by this relation. For classes, nested objects and traits it's 1-1 relation. For top level objects it's 1-2 relation. E.g., for
object A
The binaryClass will have two entries:
A -> A, A -> A$
This reflects Scala's compiler behavior of generating two class files per top level object declaration.
The classes that were generated for source file src
.
The classes that were generated for source file src
.
The relation between internal sources and generated class files.
The relation between internal sources and generated class files.
Internal source dependencies that depend on external source file dep
. This includes both direct and inherited dependencies.
Internal source dependencies that depend on external source file dep
. This includes both direct and inherited dependencies.
Internal source files that depend on internal source dep
. This includes both direct and inherited dependencies.
Internal source files that depend on internal source dep
. This includes both direct and inherited dependencies.
Concrete methods
Records that the file src
generates products products
, has internal dependencies internalDeps
,
has external dependencies externalDeps
and library dependencies libraryDeps
.
Records that the file src
generates products products
, has internal dependencies internalDeps
,
has external dependencies externalDeps
and library dependencies libraryDeps
.