public interface AnalysisCallback
| Modifier and Type | Method and Description |
|---|---|
void |
api(java.io.File sourceFile,
ClassLike classApi)
Deprecated.
Use @link{#api(VirtualFileRef, xsbti.api.ClassLike)} instead.
|
void |
api(VirtualFileRef sourceFile,
ClassLike classApi)
Register a public API entry coming from a given source file.
|
void |
apiPhaseCompleted()
Communicate to the callback that the API phase has finished.
|
void |
binaryDependency(java.io.File onBinaryEntry,
java.lang.String onBinaryClassName,
java.lang.String fromClassName,
java.io.File fromSourceFile,
DependencyContext context)
Deprecated.
Use @link{#binaryDependency(Path, String, String, VirtualFileRef, DependencyContext)} instead.
|
void |
binaryDependency(java.nio.file.Path onBinaryEntry,
java.lang.String onBinaryClassName,
java.lang.String fromClassName,
VirtualFileRef fromSourceFile,
DependencyContext context)
Indicate that the class
fromClassName depends on a class
named onBinaryClassName coming from class file or jar
onBinaryEntry. |
void |
classDependency(java.lang.String onClassName,
java.lang.String sourceClassName,
DependencyContext context)
Indicate that the class
sourceClassName depends on the
class onClassName. |
java.util.Set<java.lang.String> |
classesInOutputJar()
Return class files in output jar at a given point in time.
|
void |
dependencyPhaseCompleted()
Communicate to the callback that the dependency phase has finished.
|
boolean |
enabled()
Return whether incremental compilation is enabled or not.
|
void |
generatedLocalClass(java.io.File source,
java.io.File classFile)
Deprecated.
Use @link{#generatedLocalClass(VirtualFileRef, Path)} instead.
|
void |
generatedLocalClass(VirtualFileRef source,
java.nio.file.Path classFile)
Map the product relation between
classFile and
source to indicate that classFile is the
product of compilation from source. |
void |
generatedNonLocalClass(java.io.File source,
java.io.File classFile,
java.lang.String binaryClassName,
java.lang.String srcClassName)
Deprecated.
Use @link{#generatedNonLocalClass(VirtualFileRef, Path, String, String)} instead.
|
void |
generatedNonLocalClass(VirtualFileRef source,
java.nio.file.Path classFile,
java.lang.String binaryClassName,
java.lang.String srcClassName)
Map the source class name (
srcClassName) of a top-level
Scala class coming from a given source file to a binary class name
(binaryClassName) coming from a given class file. |
java.util.Optional<xsbti.T2<java.nio.file.Path,java.nio.file.Path>> |
getPickleJarPair() |
boolean |
isPickleJava()
Returns true if -Ypickle-java is on.
|
void |
mainClass(java.io.File sourceFile,
java.lang.String className)
Deprecated.
Use @link{#mainClass(VirtualFileRef, String)} instead.
|
void |
mainClass(VirtualFileRef sourceFile,
java.lang.String className)
Register a class containing an entry point coming from a given source file.
|
void |
problem(java.lang.String what,
xsbti.Position pos,
java.lang.String msg,
xsbti.Severity severity,
boolean reported)
Register a compilation problem.
|
void |
startSource(java.io.File source)
Deprecated.
Use @link{#startSource(VirtualFile)} instead.
|
void |
startSource(VirtualFile source)
Set the source file mapped to a concrete
AnalysisCallback. |
void |
usedName(java.lang.String className,
java.lang.String name,
java.util.EnumSet<UseScope> useScopes)
Register the use of a
name from a given source class name. |
@Deprecated void startSource(java.io.File source)
void startSource(VirtualFile source)
AnalysisCallback.source - Source file mapped to this instance of AnalysisCallback.void classDependency(java.lang.String onClassName,
java.lang.String sourceClassName,
DependencyContext context)
sourceClassName depends on the
class onClassName.
Note that only classes defined in source files included in the current
compilation will passed to this method. Dependencies on classes generated
by sources not in the current compilation will be passed as binary
dependencies to the `binaryDependency` method.onClassName - Class name being depended on.sourceClassName - Dependent class name.context - The kind of dependency established between
onClassName and sourceClassName.DependencyContext@Deprecated
void binaryDependency(java.io.File onBinaryEntry,
java.lang.String onBinaryClassName,
java.lang.String fromClassName,
java.io.File fromSourceFile,
DependencyContext context)
void binaryDependency(java.nio.file.Path onBinaryEntry,
java.lang.String onBinaryClassName,
java.lang.String fromClassName,
VirtualFileRef fromSourceFile,
DependencyContext context)
fromClassName depends on a class
named onBinaryClassName coming from class file or jar
onBinaryEntry.onBinaryEntry - A binary entry represents either the jar or the
concrete class file from which the Scala compiler
knows that onBinaryClassName comes from.onBinaryClassName - Dependent binary name.
Binary name with JVM-like representation. Inner classes
are represented with '$'. For more information on the
binary name format, check section 13.1 of the Java
Language Specification.fromClassName - Represent the class file name where
onBinaryClassName is defined.
Binary name with JVM-like representation. Inner classes
are represented with '$'. For more information on the
binary name format, check section 13.1 of the Java
Language Specification.fromSourceFile - Source file where onBinaryClassName
is defined.context - The kind of dependency established between
onClassName and sourceClassName.for more information on the context.@Deprecated
void generatedNonLocalClass(java.io.File source,
java.io.File classFile,
java.lang.String binaryClassName,
java.lang.String srcClassName)
void generatedNonLocalClass(VirtualFileRef source, java.nio.file.Path classFile, java.lang.String binaryClassName, java.lang.String srcClassName)
srcClassName) of a top-level
Scala class coming from a given source file to a binary class name
(binaryClassName) coming from a given class file.
This relation indicates that classFile is the product of
compilation from source.source - File where srcClassName is defined.classFile - File where binaryClassName is defined. This
class file is the product of source.binaryClassName - Binary name with JVM-like representation. Inner
classes are represented with '$'. For more
information on the binary name format, check
section 13.1 of the Java Language Specification.srcClassName - Class name as defined in source.@Deprecated
void generatedLocalClass(java.io.File source,
java.io.File classFile)
void generatedLocalClass(VirtualFileRef source, java.nio.file.Path classFile)
classFile and
source to indicate that classFile is the
product of compilation from source.source - File that produced classFile.classFile - File product of compilation of source.@Deprecated
void api(java.io.File sourceFile,
ClassLike classApi)
void api(VirtualFileRef sourceFile, ClassLike classApi)
sourceFile - Source file where classApi comes from.classApi - The extracted public class API.@Deprecated
void mainClass(java.io.File sourceFile,
java.lang.String className)
void mainClass(VirtualFileRef sourceFile, java.lang.String className)
public static void main(String[] args);
sourceFile - Source file where className is defined.className - A class containing an entry point.void usedName(java.lang.String className,
java.lang.String name,
java.util.EnumSet<UseScope> useScopes)
name from a given source class name.className - The source class name that uses name.name - The source name used in className.useScopes - Scopes(e.g. patmat, implicit) where name is used className.void problem(java.lang.String what,
xsbti.Position pos,
java.lang.String msg,
xsbti.Severity severity,
boolean reported)
what - The headline of the error.pos - At a given source position.msg - The in-depth description of the error.severity - The severity of the error reported.reported - Flag that confirms whether this error was reported or not.void dependencyPhaseCompleted()
void apiPhaseCompleted()
boolean enabled()
xsbt-analyzer should be added.java.util.Set<java.lang.String> classesInOutputJar()
boolean isPickleJava()
java.util.Optional<xsbti.T2<java.nio.file.Path,java.nio.file.Path>> getPickleJarPair()