Packages

package inc

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. sealed abstract class APIChange extends AnyRef
  2. final case class APIChangeDueToMacroDefinition (modified0: String) extends APIChange with Product with Serializable

    If we recompile a source file that contains a macro definition then we always assume that it's api has changed.

    If we recompile a source file that contains a macro definition then we always assume that it's api has changed. The reason is that there's no way to determine if changes to macros implementation are affecting its users or not. Therefore we err on the side of caution.

  3. final class APIChanges extends AnyRef
  4. trait APIs extends AnyRef
  5. final class Added extends Change
  6. trait Analysis extends CompileAnalysis
  7. final class AnalyzingCompiler extends CachedCompilerProvider with ScalaCompiler

    Implement a cached incremental ScalaCompiler that has been instrumented with the dependency analysis plugin to do incremental compilation.

  8. sealed abstract class Change extends AnyRef
  9. class ClassToSourceMapper extends AnyRef

    Maps class-based dependencies to source dependencies using classes relation.

    Maps class-based dependencies to source dependencies using classes relation.

    The mapping is performed using two relations that track declared classes before and after recompilation of sources. This way, we can properly map dependencies on classes that have been moved between source files. In such case, a single class can be mapped to two different source files.

  10. trait CompanionsStore extends AnyRef
  11. final class Compilation extends xsbti.compile.analysis.Compilation

    <invalid inheritdoc annotation>

    <invalid inheritdoc annotation>

    Note that this implementation of the interface is part of the public Zinc Scala API.

  12. trait Compilations extends ReadCompilations

    Information about compiler runs accumulated since clean command has been run.

  13. final class CompileConfiguration extends AnyRef

    Configuration used for running an analyzing compiler (a compiler which can extract dependencies between source files and JARs).

  14. class CompileFailed extends xsbti.CompileFailed with FeedbackProvidedException
  15. final class CompilerArguments extends AnyRef

    Construct the list of compiler arguments that are passed to the Scala compiler based on the current xsbti.compile.ScalaInstance and the user-defined xsbti.compile.ClasspathOptions.

    Construct the list of compiler arguments that are passed to the Scala compiler based on the current xsbti.compile.ScalaInstance and the user-defined xsbti.compile.ClasspathOptions.

    This is required because Scala compiler arguments change depending on the Scala version, e.g. the jars for the Scala library and the Scala compiler have to be present in the classpath and match the Scala version of the current Scala compiler.

    The Scala home property (scala.home) must be unset because Scala puts jars in that directory and pass it in as bootclasspath. Therefore, the contents of this property are managed by this implementation and it's strictly forbidden that the client manages this property.

  16. final class CompilerCache extends GlobalsCache

    Manage a number of maxInstance of cached Scala compilers.

  17. final case class ConcreteAnalysisContents (analysis: CompileAnalysis, miniSetup: MiniSetup) extends AnalysisContents with Product with Serializable
  18. final class ConcreteMultipleOutput extends MultipleOutput
  19. case class ConcreteRootPaths (sourceRoot: File, libraryRoot: File, productRoot: File) extends RootPaths with Product with Serializable
  20. final class ConcreteSingleOutput extends SingleOutput
  21. trait ExternalLookup extends xsbti.compile.ExternalHooks.Lookup
  22. sealed trait FileValueCache [T] extends AnyRef
  23. class FilteredReporter extends LoggedReporter

    Defines a filtered reporter to control which messages are reported or not.

    Defines a filtered reporter to control which messages are reported or not.

    This implementation has been adapted from the Pants repository.

  24. final class FreshCompilerCache extends GlobalsCache
  25. final class Hash extends StampBase

    Define the hash of the file contents.

    Define the hash of the file contents. It's a typical stamp for compilation sources.

  26. class IncrementalCompilerImpl extends IncrementalCompiler
  27. final case class InitialChanges (internalSrc: Changes[File], removedProducts: Set[File], binaryDeps: Set[File], external: APIChanges) extends Product with Serializable
  28. class InvalidScalaInstance extends RuntimeException

    Runtime exception representing a failure when finding a ScalaInstance.

  29. class InvalidScalaProvider extends RuntimeException

    Runtime exception representing a failure when finding a ScalaProvider.

  30. final class LastModified extends StampBase

    Define the last modified time of the file.

    Define the last modified time of the file. It's a typical stamp for class files and products.

  31. class LoggedReporter extends Reporter

    Defines a reporter that forwards every reported problem to a wrapped logger.

    Defines a reporter that forwards every reported problem to a wrapped logger.

    This is the most common use of a reporter, where users pass in whichever logger they want. If they are depending on loggers from other libraries, they can create a logger that extends the xsbti logging interface.

  32. trait Lookup extends ExternalLookup

    A trait that encapsulates looking up elements on a classpath and looking up an external (for another subproject) Analysis instance.

  33. class LookupImpl extends Lookup
  34. class ManagedFilteredReporter extends FilteredReporter

    Defines a filtered reporter to control which messages are reported or not.

    Defines a filtered reporter to control which messages are reported or not.

    This reporter is meant to be used with a ManagedLogger, which will be set up. See ManagedLoggedReporter for a similar case.

    This implementation has been adapted from the Pants repository.

  35. class ManagedLoggedReporter extends LoggedReporter

    Defines a logger that uses event logging provided by a ManagedLogger.

    Defines a logger that uses event logging provided by a ManagedLogger.

    This functionality can be use by anyone that wants to get support for event logging and use an underlying, controlled logger under the hood.

    The ManagedLoggedReporter exists for those users that do not want to set up the passed logger. Event logging requires registration of codects to serialize and deserialize Problems. This reporter makes sure to initialize the managed logger so that users do not need to take care of this cumbersome process.

  36. final class MixedAnalyzingCompiler extends AnyRef

    An instance of an analyzing compiler that can run both javac + scalac.

  37. final class Modified extends Change
  38. final case class ModifiedNames (names: Set[UsedName]) extends Product with Serializable

    ModifiedNames are determined by comparing name hashes in two versions of an API representation.

    ModifiedNames are determined by comparing name hashes in two versions of an API representation.

    Note that we distinguish between sets of regular (non-implicit) and implicit modified names. This distinction is needed because the name hashing algorithm makes different decisions based on whether modified name is implicit or not. Implicit names are much more difficult to handle due to difficulty of reasoning about the implicit scope.

  39. final case class NamesChange (modified0: String, modifiedNames: ModifiedNames) extends APIChange with Product with Serializable

    An APIChange that carries information about modified names.

    An APIChange that carries information about modified names.

    This class is used only when name hashing algorithm is enabled.

  40. trait ProblemStringFormats extends AnyRef

    Represent a string that contains the compiler output (warnings and error messages, etc) that have been reported by LoggedReporter and the logger.

  41. class RawCompiler extends AnyRef

    Provide a basic interface to the Scala Compiler that does not analyze dependencies nor does any kind of incremental compilation.

    Provide a basic interface to the Scala Compiler that does not analyze dependencies nor does any kind of incremental compilation.

    This interface is called in the same virtual machine where it's instantiated. It's useful for raw compilation of sources, such as those of the compiler interface (bridge) and plugin code.

  42. trait Relations extends AnyRef

    Provides mappings between source files, generated classes (products), and binaries.

    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.

  43. final class Removed extends Change
  44. final class ScalaInstance extends xsbti.compile.ScalaInstance

    A Scala instance encapsulates all the information that is bound to a concrete Scala version, like the loader or all the JARs required for Scala compilation: library jar, compiler jar and others.

    A Scala instance encapsulates all the information that is bound to a concrete Scala version, like the loader or all the JARs required for Scala compilation: library jar, compiler jar and others.

    Both a ClassLoader and the jars are required because the compiler's boot classpath requires the location of the library and compiler jar on the classpath to compile any Scala program and macros.

    Note

    A jar can actually be any valid classpath entry, not just a jar file.

  45. case class SimpleOutputGroup (getSourceDirectory: File, getOutputDirectory: File) extends OutputGroup with Product with Serializable
  46. trait SourceInfos extends ReadSourceInfos
  47. trait Stamps extends ReadStamps

    Provides a richer interface to read and write stamps associated with files.

    Provides a richer interface to read and write stamps associated with files.

    This interface is meant for internal use and is Scala idiomatic. It implements the Java interface ReadStamps that is exposed in the xsbti.compile.CompileAnalysis.

  48. abstract class UnderlyingChanges [A] extends Changes[A]
  49. final class UninitializedVal extends RuntimeException

    An exception to indicate that while traversing the vals for an instance of className, the val named valName was null.

  50. case class UsedName (name: String, scopes: EnumSet[UseScope]) extends Product with Serializable
  51. trait WithPattern extends AnyRef

Value Members

  1. object APIs
  2. object Analysis extends Serializable
  3. object AnalysisStore
  4. object AnalyzingCompiler
  5. object ClassFileManager
  6. object ClassToAPI
  7. object Compilation extends Serializable
  8. object Compilations extends Serializable
  9. object CompileOutput

    Define helpers to create CompileOutput to pass to the incremental compiler.

    Define helpers to create CompileOutput to pass to the incremental compiler. Both SingleOutput and MultipleOutput are supported.

  10. object CompilerArguments
  11. object FileAnalysisStore
  12. object FileValueCache
  13. object Incremental

    Define helpers to run incremental compilation algorithm with name hashing.

  14. object IncrementalCompile

    Helper methods for running incremental compilation.

    Helper methods for running incremental compilation. All this is responsible for is adapting any xsbti.AnalysisCallback into one compatible with the sbt.internal.inc.Incremental class.

  15. object JavaInterfaceUtil
  16. object Locate
  17. object LoggedReporter
  18. object MiniSetupUtil

    Define all the implicit instances that are used in the Scala implementation of the incremental compiler to check the mathematical equivalence relation between two given classes.

    Define all the implicit instances that are used in the Scala implementation of the incremental compiler to check the mathematical equivalence relation between two given classes.

    See also

    scala.math.Equiv for more information on this kind of equivalence.

  19. object MixedAnalyzingCompiler

    Define helpers to create a wrapper around a Scala incremental compiler xsbti.compile.ScalaCompiler and a Java incremental compiler xsbti.compile.JavaCompiler.

    Define helpers to create a wrapper around a Scala incremental compiler xsbti.compile.ScalaCompiler and a Java incremental compiler xsbti.compile.JavaCompiler. Note that the wrapper delegates to the implementation of both compilers and only instructs how to run a cycle of cross Java-Scala compilation.

  20. object ModifiedNames extends Serializable
  21. object ModuleUtilities
  22. object ReflectUtilities
  23. object Relations
  24. object ReporterManager
  25. object ScalaInstance
  26. object SourceInfos
  27. object Stamp
  28. object Stamper
  29. object Stamps
  30. object UsedName extends Serializable
  31. object ZincUtil

    Define a private implementation of the static methods forwarded from ZincCompilerUtil.

Ungrouped