package data
- Alphabetic
- Public
- Protected
Type Members
- sealed trait ClientInfo extends AnyRef
- case class JavaSemanticdbSettings(semanticDBVersion: String) extends Product with Serializable
- 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
orJAVA_HOME
.- javaOptions
JDK-specific options to pass at start-up.
- sealed trait LoadedProject extends AnyRef
- case class Origin(path: AbsolutePath, lastModifiedtime: FileTime, size: Long, hash: Int) extends CacheHashCode with Product with Serializable
- sealed trait Platform extends AnyRef
- 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
- case class ScalaSemanticdbSettings(semanticDBVersion: String, supportedScalaVersions: List[String]) extends Product with Serializable
- case class SemanticdbSettings(javaSemanticdbSettings: Option[JavaSemanticdbSettings], scalaSemanticdbSettings: Option[ScalaSemanticdbSettings]) extends Product with Serializable
- case class SourcesGlobs(directory: AbsolutePath, walkDepth: Int, includes: List[PathMatcher], excludes: List[PathMatcher]) extends Product with Serializable
- 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
- 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
- object ClientInfo
- object JdkConfig extends Serializable
- object LoadedProject
- object Origin extends Serializable
- object Platform
- object Project extends Serializable
- object SourcesGlobs extends Serializable
- object TraceSettings extends Serializable
- object WorkspaceSettings extends Serializable