Packages

package data

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait ClientInfo extends AnyRef
  2. case class JavaSemanticdbSettings(semanticDBVersion: String) extends Product with Serializable
  3. final case class JdkConfig(javaHome: AbsolutePath, javaOptions: Array[String]) extends Product with Serializable

    The configuration of a JDK for a concrete project.

    The configuration of a JDK for a concrete project. It can be used for either compiling a project (javac config) or running an application or tests (jdk config).

    javaHome

    Can be the location obtained from java.home or JAVA_HOME.

    javaOptions

    JDK-specific options to pass at start-up.

  4. sealed trait LoadedProject extends AnyRef
  5. case class Origin(path: AbsolutePath, lastModifiedtime: FileTime, size: Long, hash: Int) extends CacheHashCode with Product with Serializable
  6. sealed trait Platform extends AnyRef
  7. final case class Project(name: String, baseDirectory: AbsolutePath, workspaceDirectory: Option[AbsolutePath], dependencies: List[String], scalaInstance: Option[ScalaInstance], rawClasspath: List[AbsolutePath], resources: List[AbsolutePath], compileSetup: CompileSetup, genericClassesDir: AbsolutePath, scalacOptions: List[String], javacOptions: List[String], sources: List[AbsolutePath], sourcesGlobs: List[SourcesGlobs], sourceRoots: Option[List[AbsolutePath]], sourceGenerators: List[SourceGenerator], testFrameworks: List[TestFramework], testOptions: TestOptions, out: AbsolutePath, analysisOut: AbsolutePath, platform: Platform, sbt: Option[Sbt], resolution: Option[Resolution], tags: List[String], origin: Origin) extends Product with Serializable
  8. case class ScalaSemanticdbSettings(semanticDBVersion: String, supportedScalaVersions: List[String]) extends Product with Serializable
  9. case class SemanticdbSettings(javaSemanticdbSettings: Option[JavaSemanticdbSettings], scalaSemanticdbSettings: Option[ScalaSemanticdbSettings]) extends Product with Serializable
  10. case class SourcesGlobs(directory: AbsolutePath, walkDepth: Int, includes: List[PathMatcher], excludes: List[PathMatcher]) extends Product with Serializable
  11. case class TraceSettings(serverUrl: Option[String], debugTracing: Option[Boolean], verbose: Option[Boolean], localServiceName: Option[String], traceStartAnnotation: Option[String], traceEndAnnotation: Option[String]) extends Product with Serializable
  12. case class WorkspaceSettings(javaSemanticDBVersion: Option[String], semanticDBVersion: Option[String], supportedScalaVersions: Option[List[String]], refreshProjectsCommand: Option[List[String]], traceSettings: Option[TraceSettings]) extends Product with Serializable

    Defines the settings of a given workspace.

    Defines the settings of a given workspace. A workspace is a URI that has N configuration files associated with it. Typically the workspace is the root directory where all of the projects in the configuration files are defined.

    Workspace settings have a special status in bloop as they change the build load semantics. These changes are represented with DetectedChanges handled in the build loader.

    Both the user and bloop can write workspace settings to this file so bloop needs to handle that scenario carefully.

    Workspace settings can be written to disk when, for example, Metals asks to import a build and Bloop needs to cache the fact that a build needs to enable Metals specific settings based on some inputs from the BSP clients. These keys are usually the fields of the workspace settings.

    Another example is when the user manually goes to the file and changes a setting in it.

    javaSemanticDBVersion

    is the version that should be used to enable the Semanticdb compiler plugin in a Java project.

    semanticDBVersion

    is the version that should be used to enable the Semanticdb compiler plugin in a Scala project.

    refreshProjectsCommand

    is the command that should be run in the BSP server before loading the state and presentings projects to the client.

    traceSettings

    are the settings provided by the user that customize how the bloop server should behave.

Value Members

  1. object ClientInfo
  2. object JdkConfig extends Serializable
  3. object LoadedProject
  4. object Origin extends Serializable
  5. object Platform
  6. object Project extends Serializable
  7. object SourcesGlobs extends Serializable
  8. object TraceSettings extends Serializable
  9. object WorkspaceSettings extends Serializable

Ungrouped