Refactoring: SuppressionManager -> KotlinSuppressCache
This commit is contained in:
+5
-5
@@ -30,14 +30,14 @@ import java.util.Collection;
|
||||
import java.util.Iterator;
|
||||
|
||||
public class DiagnosticsWithSuppression implements Diagnostics {
|
||||
private final BindingContextSuppressionManager suppressionManager;
|
||||
private final KotlinSuppressCache kotlinSuppressCache;
|
||||
private final Collection<Diagnostic> diagnostics;
|
||||
private final DiagnosticsElementsCache elementsCache;
|
||||
|
||||
public DiagnosticsWithSuppression(@NotNull BindingContext context, @NotNull Collection<Diagnostic> diagnostics) {
|
||||
this.diagnostics = diagnostics;
|
||||
this.suppressionManager = new BindingContextSuppressionManager(context);
|
||||
this.elementsCache = new DiagnosticsElementsCache(this, suppressionManager.getFilter());
|
||||
this.kotlinSuppressCache = new BindingContextSuppressCache(context);
|
||||
this.elementsCache = new DiagnosticsElementsCache(this, kotlinSuppressCache.getFilter());
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -52,7 +52,7 @@ public class DiagnosticsWithSuppression implements Diagnostics {
|
||||
return new FilteringIterator<Diagnostic, Diagnostic>(diagnostics.iterator(), new Condition<Diagnostic>() {
|
||||
@Override
|
||||
public boolean value(Diagnostic diagnostic) {
|
||||
return suppressionManager.getFilter().invoke(diagnostic);
|
||||
return kotlinSuppressCache.getFilter().invoke(diagnostic);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -60,7 +60,7 @@ public class DiagnosticsWithSuppression implements Diagnostics {
|
||||
@NotNull
|
||||
@Override
|
||||
public Collection<Diagnostic> all() {
|
||||
return CollectionsKt.filter(diagnostics, suppressionManager.getFilter());
|
||||
return CollectionsKt.filter(diagnostics, kotlinSuppressCache.getFilter());
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
||||
+2
-4
@@ -19,13 +19,11 @@ package org.jetbrains.kotlin.resolve.diagnostics
|
||||
import com.google.common.collect.ImmutableSet
|
||||
import com.intellij.openapi.diagnostic.Logger
|
||||
import com.intellij.openapi.extensions.ExtensionPointName
|
||||
import com.intellij.openapi.util.TextRange
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.util.containers.ConcurrentWeakValueHashMap
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
||||
import org.jetbrains.kotlin.descriptors.annotations.AnnotationDescriptor
|
||||
import org.jetbrains.kotlin.diagnostics.Diagnostic
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory
|
||||
import org.jetbrains.kotlin.diagnostics.Severity
|
||||
import org.jetbrains.kotlin.psi.KtAnnotated
|
||||
import org.jetbrains.kotlin.psi.KtFile
|
||||
@@ -52,7 +50,7 @@ interface DiagnosticSuppressor {
|
||||
}
|
||||
}
|
||||
|
||||
abstract class SuppressionManager {
|
||||
abstract class KotlinSuppressCache {
|
||||
private val LOG = Logger.getInstance(DiagnosticsWithSuppression::class.java)
|
||||
|
||||
private val ADDITIONAL_SUPPRESS_STRING_PROVIDERS = ExtensionProvider.create(SuppressStringProvider.EP_NAME)
|
||||
@@ -259,7 +257,7 @@ abstract class SuppressionManager {
|
||||
}
|
||||
}
|
||||
|
||||
class BindingContextSuppressionManager(val context: BindingContext) : SuppressionManager() {
|
||||
class BindingContextSuppressCache(val context: BindingContext) : KotlinSuppressCache() {
|
||||
override fun getSuppressionAnnotations(annotated: KtAnnotated): List<AnnotationDescriptor> {
|
||||
val descriptor = context.get(BindingContext.DECLARATION_TO_DESCRIPTOR, annotated)
|
||||
|
||||
Reference in New Issue
Block a user