Fix propagation of dependency resolution failure reports during script compilation
This commit is contained in:
committed by
Ilya Chernikov
parent
744dfc6bf9
commit
81e2e119e2
@@ -274,13 +274,15 @@ fun ScriptCompilationConfiguration.refineOnAnnotations(
|
||||
val foundAnnotationNames = collectedData[ScriptCollectedData.foundAnnotations]?.mapTo(HashSet()) { it.annotationClass.java.name }
|
||||
if (foundAnnotationNames.isNullOrEmpty()) return this.asSuccess()
|
||||
|
||||
val refinedConfig = this[ScriptCompilationConfiguration.refineConfigurationOnAnnotations]
|
||||
?.fold(this) { config, (annotations, handler) ->
|
||||
// checking that the collected data contains expected annotations
|
||||
if (annotations.none { foundAnnotationNames.contains(it.typeName) }) config
|
||||
else handler.invoke(ScriptConfigurationRefinementContext(script, config, collectedData)).valueOr { return it }
|
||||
}
|
||||
return (refinedConfig ?: this).asSuccess()
|
||||
val thisResult: ResultWithDiagnostics<ScriptCompilationConfiguration> = this.asSuccess()
|
||||
return this[ScriptCompilationConfiguration.refineConfigurationOnAnnotations]
|
||||
?.fold(thisResult) { config, (annotations, handler) ->
|
||||
config.onSuccess {
|
||||
// checking that the collected data contains expected annotations
|
||||
if (annotations.none { foundAnnotationNames.contains(it.typeName) }) it.asSuccess()
|
||||
else handler.invoke(ScriptConfigurationRefinementContext(script, it, collectedData))
|
||||
}
|
||||
} ?: thisResult
|
||||
}
|
||||
|
||||
fun ScriptCompilationConfiguration.refineBeforeCompiling(
|
||||
|
||||
Reference in New Issue
Block a user