in plugin-bazel/src/main/kotlin/org/jetbrains/bazel/languages/projectview/ProjectViewToWorkspaceContextConverter.kt [30:66]
fun convert(
projectView: ProjectView,
dotBazelBspDirPath: Path,
workspaceRoot: Path,
): WorkspaceContext {
val dirs = createDirectoriesFromProjectView(projectView, workspaceRoot)
val targets =
if (projectView.deriveTargetsFromDirectories) {
createTargetsFromDirectories(projectView.targets, projectView.directories)
} else {
projectView.targets
}
return WorkspaceContext(
targets = targets,
directories = dirs,
buildFlags = projectView.buildFlags,
syncFlags = projectView.syncFlags,
debugFlags = projectView.debugFlags,
bazelBinary = projectView.bazelBinary?.let { workspaceRoot.resolve(it) }
?: resolveBazelBinary(),
allowManualTargetsSync = projectView.allowManualTargetsSync,
dotBazelBspDirPath = dotBazelBspDirPath,
importDepth = projectView.importDepth,
enabledRules = projectView.enabledRules,
ideJavaHomeOverride = projectView.ideJavaHomeOverride,
shardSync = projectView.shardSync,
targetShardSize = projectView.targetShardSize,
shardingApproach = projectView.shardingApproach,
importRunConfigurations = projectView.importRunConfigurations,
gazelleTarget = projectView.gazelleTarget,
indexAllFilesInDirectories = projectView.indexAllFilesInDirectories,
pythonCodeGeneratorRuleNames = projectView.pythonCodeGeneratorRuleNames,
importIjars = projectView.importIjars,
deriveInstrumentationFilterFromTargets = projectView.deriveInstrumentationFilterFromTargets,
indexAdditionalFilesInDirectories = projectView.indexAdditionalFilesInDirectories,
)
}