Additional information to catch EA-75872
This commit is contained in:
+1
-1
@@ -50,7 +50,7 @@ public class DefaultErrorMessagesJvm implements DefaultErrorMessages.Extension {
|
||||
}
|
||||
};
|
||||
|
||||
public static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap();
|
||||
public static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap("JVM");
|
||||
static {
|
||||
MAP.put(ErrorsJvm.CONFLICTING_JVM_DECLARATIONS, "Platform declaration clash: {0}", CONFLICTING_JVM_DECLARATIONS_DATA);
|
||||
MAP.put(ErrorsJvm.ACCIDENTAL_OVERRIDE, "Accidental override: {0}", CONFLICTING_JVM_DECLARATIONS_DATA);
|
||||
|
||||
+3
-2
@@ -55,7 +55,7 @@ public class DefaultErrorMessages {
|
||||
DiagnosticFactoryToRendererMap getMap();
|
||||
}
|
||||
|
||||
private static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap();
|
||||
private static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap("Default");
|
||||
private static final MappedExtensionProvider<Extension, List<DiagnosticFactoryToRendererMap>> RENDERER_MAPS = MappedExtensionProvider.create(
|
||||
Extension.EP_NAME,
|
||||
new Function1<List<? extends Extension>, List<DiagnosticFactoryToRendererMap>>() {
|
||||
@@ -79,7 +79,8 @@ public class DefaultErrorMessages {
|
||||
return renderer.render(diagnostic);
|
||||
}
|
||||
}
|
||||
throw new IllegalArgumentException("Don't know how to render diagnostic of type " + diagnostic.getFactory().getName());
|
||||
throw new IllegalArgumentException("Don't know how to render diagnostic of type " + diagnostic.getFactory().getName() +
|
||||
" with the following renderer maps: " + RENDERER_MAPS.get());
|
||||
}
|
||||
|
||||
@TestOnly
|
||||
|
||||
+14
@@ -30,6 +30,20 @@ public final class DiagnosticFactoryToRendererMap {
|
||||
private final Map<DiagnosticFactory<?>, DiagnosticRenderer<?>> map = new HashMap<DiagnosticFactory<?>, DiagnosticRenderer<?>>();
|
||||
private boolean immutable = false;
|
||||
|
||||
// TO catch EA-75872
|
||||
private final String name;
|
||||
public DiagnosticFactoryToRendererMap(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
public DiagnosticFactoryToRendererMap() {
|
||||
this("<unnamed>");
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
return "DiagnosticFactory#" + name;
|
||||
}
|
||||
//
|
||||
|
||||
private void checkMutability() {
|
||||
if (immutable) {
|
||||
throw new IllegalStateException("factory to renderer map is already immutable");
|
||||
|
||||
@@ -43,7 +43,7 @@ import static org.jetbrains.kotlin.resolve.jvm.diagnostics.ErrorsJvm.CONFLICTING
|
||||
* @see DefaultErrorMessages
|
||||
*/
|
||||
public class IdeErrorMessages {
|
||||
private static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap();
|
||||
private static final DiagnosticFactoryToRendererMap MAP = new DiagnosticFactoryToRendererMap("IDE");
|
||||
|
||||
@NotNull
|
||||
public static String render(@NotNull Diagnostic diagnostic) {
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.diagnostics.rendering.DiagnosticFactoryToRendererMap
|
||||
import org.jetbrains.kotlin.diagnostics.rendering.Renderers
|
||||
|
||||
private val DIAGNOSTIC_FACTORY_TO_RENDERER by lazy {
|
||||
with(DiagnosticFactoryToRendererMap()) {
|
||||
with(DiagnosticFactoryToRendererMap("JS")) {
|
||||
|
||||
put(ErrorsJs.NATIVE_ANNOTATIONS_ALLOWED_ONLY_ON_MEMBER_OR_EXTENSION_FUN,
|
||||
"Annotation ''{0}'' is allowed only on member functions of declaration annotated as ''kotlin.js.native'' or on toplevel extension functions", Renderers.RENDER_TYPE)
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.diagnostics.rendering.Renderers
|
||||
public class DefaultErrorMessagesAndroid : DefaultErrorMessages.Extension {
|
||||
|
||||
private companion object {
|
||||
val MAP = DiagnosticFactoryToRendererMap()
|
||||
val MAP = DiagnosticFactoryToRendererMap("Android")
|
||||
|
||||
init {
|
||||
MAP.put(ErrorsAndroid.SYNTHETIC_INVALID_WIDGET_TYPE,
|
||||
|
||||
Reference in New Issue
Block a user