Minor: reformat
This commit is contained in:
+13
-10
@@ -69,9 +69,9 @@ class ScriptDependenciesCache(private val project: Project) {
|
||||
this::allLibrarySourcesScope.clearValue()
|
||||
|
||||
val kotlinScriptDependenciesClassFinder =
|
||||
Extensions.getArea(project).getExtensionPoint(PsiElementFinder.EP_NAME).extensions
|
||||
.filterIsInstance<KotlinScriptDependenciesClassFinder>()
|
||||
.single()
|
||||
Extensions.getArea(project).getExtensionPoint(PsiElementFinder.EP_NAME).extensions
|
||||
.filterIsInstance<KotlinScriptDependenciesClassFinder>()
|
||||
.single()
|
||||
|
||||
kotlinScriptDependenciesClassFinder.clearCache()
|
||||
updateHighlighting(files)
|
||||
@@ -91,7 +91,7 @@ class ScriptDependenciesCache(private val project: Project) {
|
||||
|
||||
fun hasNotCachedRoots(scriptDependencies: ScriptDependencies): Boolean {
|
||||
return !allScriptsClasspath.containsAll(ScriptDependenciesManager.toVfsRoots(scriptDependencies.classpath)) ||
|
||||
!allLibrarySources.containsAll(ScriptDependenciesManager.toVfsRoots(scriptDependencies.sources))
|
||||
!allLibrarySources.containsAll(ScriptDependenciesManager.toVfsRoots(scriptDependencies.sources))
|
||||
}
|
||||
|
||||
fun clear() {
|
||||
@@ -143,11 +143,11 @@ class ScriptDependenciesCache(private val project: Project) {
|
||||
}
|
||||
|
||||
return ScriptDependencies(
|
||||
classpath = binaries.distinct(),
|
||||
sources = sources.distinct(),
|
||||
imports = imports.distinct(),
|
||||
scripts = scripts.distinct(),
|
||||
javaHome = relevantEntries.map { it.javaHome }.firstOrNull()
|
||||
classpath = binaries.distinct(),
|
||||
sources = sources.distinct(),
|
||||
imports = imports.distinct(),
|
||||
scripts = scripts.distinct(),
|
||||
javaHome = relevantEntries.map { it.javaHome }.firstOrNull()
|
||||
)
|
||||
}
|
||||
}
|
||||
@@ -157,7 +157,10 @@ private fun <R> KProperty0<R>.clearValue() {
|
||||
(getDelegate() as ClearableLazyValue<*, *>).clear()
|
||||
}
|
||||
|
||||
private class ClearableLazyValue<in R, out T : Any>(private val lock: ReentrantReadWriteLock, private val compute: () -> T): ReadOnlyProperty<R, T> {
|
||||
private class ClearableLazyValue<in R, out T : Any>(
|
||||
private val lock: ReentrantReadWriteLock,
|
||||
private val compute: () -> T
|
||||
) : ReadOnlyProperty<R, T> {
|
||||
override fun getValue(thisRef: R, property: KProperty<*>): T {
|
||||
lock.read {
|
||||
if (value == null) {
|
||||
|
||||
+4
-4
@@ -33,7 +33,7 @@ import kotlin.script.experimental.dependencies.ScriptDependencies
|
||||
// NOTE: this service exists exclusively because ScriptDependencyManager
|
||||
// cannot be registered as implementing two services (state would be duplicated)
|
||||
class IdeScriptDependenciesProvider(
|
||||
private val scriptDependenciesManager: ScriptDependenciesManager
|
||||
private val scriptDependenciesManager: ScriptDependenciesManager
|
||||
) : ScriptDependenciesProvider {
|
||||
override fun getScriptDependencies(file: VirtualFile): ScriptDependencies? {
|
||||
return scriptDependenciesManager.getScriptDependencies(file)
|
||||
@@ -41,8 +41,8 @@ class IdeScriptDependenciesProvider(
|
||||
}
|
||||
|
||||
class ScriptDependenciesManager internal constructor(
|
||||
private val cacheUpdater: ScriptDependenciesUpdater,
|
||||
private val cache: ScriptDependenciesCache
|
||||
private val cacheUpdater: ScriptDependenciesUpdater,
|
||||
private val cache: ScriptDependenciesCache
|
||||
) {
|
||||
fun getScriptClasspath(file: VirtualFile): List<VirtualFile> = toVfsRoots(cacheUpdater.getCurrentDependencies(file).classpath)
|
||||
fun getScriptDependencies(file: VirtualFile): ScriptDependencies = cacheUpdater.getCurrentDependencies(file)
|
||||
@@ -55,7 +55,7 @@ class ScriptDependenciesManager internal constructor(
|
||||
companion object {
|
||||
@JvmStatic
|
||||
fun getInstance(project: Project): ScriptDependenciesManager =
|
||||
ServiceManager.getService(project, ScriptDependenciesManager::class.java)
|
||||
ServiceManager.getService(project, ScriptDependenciesManager::class.java)
|
||||
|
||||
fun toVfsRoots(roots: Iterable<File>): List<VirtualFile> {
|
||||
return roots.mapNotNull { it.classpathEntryToVfs() }
|
||||
|
||||
Reference in New Issue
Block a user