i18n: fix tests

This commit is contained in:
Dmitry Gridin
2020-03-10 23:10:37 +07:00
parent f66e985821
commit 1b9bb77b2f
3 changed files with 112 additions and 100 deletions
@@ -1,42 +1,42 @@
found=found:\u0020
html.0.has.no.corresponding.expected.declaration.1.html=<html>'{'0'}' has no corresponding expected declaration'{'1'}'</html>
html.0.is.not.abstract.and.does.not.implement.abstract.base.class.member.br.1.html=<html>'{'0'}' is not abstract and does not implement abstract base class member<br/>'{'1'}'</html>
html.0.is.not.abstract.and.does.not.implement.abstract.member.br.1.html=<html>'{'0'}' is not abstract and does not implement abstract member<br/>'{'1'}'</html>
html.0.method.may.be.missing.none.of.the.following.functions.will.be.called.ul.1.ul.html=<html>'''''{'0'}''''' method may be missing. None of the following functions will be called: <ul>'{'1'}'</ul></html>
html.0.must.override.1.br.because.it.inherits.many.implementations.of.it.html=<html>'{'0'}' must override '{'1'}'<br />because it inherits many implementations of it</html>
html.accidental.override.0.html=<html>Accidental override: '{'0'}'</html>
html.actual.class.0.has.no.corresponding.members.for.expected.class.members.1.html=<html>Actual class '''''{'0'}''''' has no corresponding members for expected class members:'{'1'}'</html>
html.assignment.operators.ambiguity.all.these.functions.match.ul.0.ul.table.html=<html>Assignment operators ambiguity. All these functions match.<ul>'{'0'}'</ul></table></html>
html.cannot.choose.among.the.following.candidates.without.completing.type.inference.ul.0.ul.html=<html>Cannot choose among the following candidates without completing type inference: <ul>'{'0'}'</ul></html>
html.expected.0.has.no.actual.declaration.in.module.1.2.html=<html>Expected '{'0'}' has no actual declaration in module '{'1'}''{'2'}'</html>
html.function.return.type.mismatch.table.tr.td.expected.td.td.1.td.tr.tr.td.found.td.td.2.td.tr.table.html=<html>Function return type mismatch.<table><tr><td>Expected:</td><td>'{'1'}'</td></tr><tr><td>Found:</td><td>'{'2'}'</td></tr></table></html>
html.getter.return.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Getter return type must be equal to the type of the property.<table><tr><td>Expected:</td><td>'{'0'}'</td></tr><tr><td>Found:</td><td>'{'1'}'</td></tr></table></html>
html.internal.error.occurred.while.analyzing.this.expression.br.table.cellspacing.0.cellpadding.0.tr.td.strong.please.use.the.strong.td.td.img.src.0.td.td.strong.icon.in.the.bottom.right.corner.to.report.this.error.strong.td.tr.table.br.pre.0.pre.html=<html>Internal Error occurred while analyzing this expression <br/><table cellspacing="0" cellpadding="0"><tr><td>(<strong>Please use the "</strong></td><td><img src="{0}"/></td><td><strong>" icon in the bottom-right corner to report this error</strong>):</td></tr></table><br/><pre>'{'0'}'</pre></html>
html.javascript.0.html=<html>JavaScript: '{'0'}'</html>
html.loop.parameter.type.mismatch.table.tr.td.iterated.values.td.td.0.td.tr.tr.td.parameter.td.td.1.td.tr.table.html=<html>Loop parameter type mismatch.<table><tr><td>Iterated values:</td><td>'{'0'}'</td></tr><tr><td>Parameter:</td><td>'{'1'}'</td></tr></table></html>
found.space=found:\u0020
html.0.has.no.corresponding.expected.declaration.1.html=<html>{0} has no corresponding expected declaration{1}</html>
html.0.is.not.abstract.and.does.not.implement.abstract.base.class.member.br.1.html=<html>{0} is not abstract and does not implement abstract base class member<br/>{1}</html>
html.0.is.not.abstract.and.does.not.implement.abstract.member.br.1.html=<html>{0} is not abstract and does not implement abstract member<br/>{1}</html>
html.0.method.may.be.missing.none.of.the.following.functions.will.be.called.ul.1.ul.html=<html>''{0}'' method may be missing. None of the following functions will be called: <ul>{1}</ul></html>
html.expected.0.has.no.actual.declaration.in.module.1.2.html=<html>Expected {0} has no actual declaration in module {1}{2}</html>
html.accidental.override.0.html=<html>Accidental override: {0}</html>
html.method.contains.from.concurrenthashmap.may.have.unexpected.semantics.it.calls.containsvalue.instead.of.containskey.br.use.explicit.form.of.the.call.to.containskey.containsvalue.contains.or.cast.the.value.to.kotlin.collections.map.instead.br.see.https.youtrack.jetbrains.com.issue.kt.18053.for.more.details.html=<html>Method ''contains'' from ConcurrentHashMap may have unexpected semantics: it calls ''containsValue'' instead of ''containsKey''.<br/>Use explicit form of the call to ''containsKey''/''containsValue''/''contains'' or cast the value to kotlin.collections.Map instead.<br/>See https://youtrack.jetbrains.com/issue/KT-18053 for more details</html>
html.method.iterator.is.ambiguous.for.this.expression.ul.0.ul.html=<html>Method ''''iterator()'''' is ambiguous for this expression.<ul>'{'0'}'</ul></html>
html.none.of.the.following.functions.can.be.called.with.the.arguments.supplied.ul.0.ul.html=<html>None of the following functions can be called with the arguments supplied. <ul>'{'0'}'</ul></html>
html.overload.resolution.ambiguity.all.these.functions.match.ul.0.ul.html=<html>Overload resolution ambiguity. All these functions match. <ul>'{'0'}'</ul></html>
html.overload.resolution.ambiguity.on.method.0.all.these.functions.match.ul.1.ul.html=<html>Overload resolution ambiguity on method '''''{'0'}'''''. All these functions match. <ul>'{'1'}'</ul></html>
html.platform.declaration.clash.0.html=<html>Platform declaration clash: '{'0'}'</html>
html.property.delegate.must.have.a.0.method.none.of.the.following.functions.is.suitable.ul.1.ul.html=<html>Property delegate must have a '''''{'0'}''''' method. None of the following functions is suitable. <ul>'{'1'}'</ul></html>
html.property.type.is.0.which.is.not.a.subtype.type.of.overridden.br.1.html=<html>Property type is '''''{'0'}''''', which is not a subtype type of overridden<br/>'{'1'}'</html>
html.return.type.is.0.which.is.not.a.subtype.of.overridden.br.1.html=<html>Return type is '''''{'0'}''''', which is not a subtype of overridden<br/>'{'1'}'</html>
html.return.types.of.inherited.members.are.incompatible.br.0.br.1.html=<html>Return types of inherited members are incompatible:<br/>'{'0'}',<br/>'{'1'}'</html>
html.setter.parameter.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Setter parameter type must be equal to the type of the property.<table><tr><td>Expected:</td><td>'{'0'}'</td></tr><tr><td>Found:</td><td>'{'1'}'</td></tr></table></html>
html.type.argument.is.not.within.its.bounds.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Type argument is not within its bounds.<table><tr><td>Expected:</td><td>'{'0'}'</td></tr><tr><td>Found:</td><td>'{'1'}'</td></tr></table></html>
html.type.inference.failed.0.html=<html>Type inference failed: '{'0'}'</html>
html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.br.projected.type.2.restricts.use.of.br.3.html=<html>Type mismatch.<table><tr><td>Required:</td><td>'{'0'}'</td></tr><tr><td>Found:</td><td>'{'1'}'</td></tr></table><br />\nProjected type '{'2'}' restricts use of <br />\n'{'3'}'\n</html>
html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Type mismatch.<table><tr><td>Required:</td><td>'{'0'}'</td></tr><tr><td>Found:</td><td>'{'1'}'</td></tr></table></html>
html.types.of.inherited.properties.are.incompatible.br.0.br.1.html=<html>Types of inherited properties are incompatible:<br/>'{'0'}',<br/>'{'1'}'</html>
html.types.of.inherited.var.properties.do.not.match.br.0.br.1.html=<html>Types of inherited var-properties do not match:<br/>'{'0'}',<br/>'{'1'}'</html>
html.unresolved.reference.br.none.of.the.following.candidates.is.applicable.because.of.receiver.type.mismatch.ul.0.ul.html=<html>Unresolved reference. <br/> None of the following candidates is applicable because of receiver type mismatch: <ul>'{'0'}'</ul></html>
html.val.property.cannot.override.var.property.br.1.html=<html>Val-property cannot override var-property<br />'{'1'}'</html>
html.val.property.cannot.override.var.property.br.1.html2=<html>Val-property cannot override var-property<br />'{'1'}'</html>
html.var.property.type.is.0.which.is.not.a.type.of.overridden.br.1.html=<html>Var-property type is '''''{'0'}''''', which is not a type of overridden<br/>'{'1'}'</html>
required=required:\u0020
html.javascript.0.html=<html>JavaScript: {0}</html>
html.platform.declaration.clash.0.html=<html>Platform declaration clash: {0}</html>
html.internal.error.occurred.while.analyzing.this.expression.br.table.cellspacing.0.cellpadding.0.tr.td.strong.please.use.the.strong.td.td.img.src.0.td.td.strong.icon.in.the.bottom.right.corner.to.report.this.error.strong.td.tr.table.br.pre.0.pre.html=<html>Internal Error occurred while analyzing this expression <br/><table cellspacing="0" cellpadding="0"><tr><td>(<strong>Please use the "</strong></td><td><img src="{0}"/></td><td><strong>" icon in the bottom-right corner to report this error</strong>):</td></tr></table><br/><pre>{0}</pre></html>
html.property.delegate.must.have.a.0.method.none.of.the.following.functions.is.suitable.ul.1.ul.html=<html>Property delegate must have a ''{0}'' method. None of the following functions is suitable. <ul>{1}</ul></html>
html.overload.resolution.ambiguity.on.method.0.all.these.functions.match.ul.1.ul.html=<html>Overload resolution ambiguity on method ''{0}''. All these functions match. <ul>{1}</ul></html>
html.unresolved.reference.br.none.of.the.following.candidates.is.applicable.because.of.receiver.type.mismatch.ul.0.ul.html=<html>Unresolved reference. <br/> None of the following candidates is applicable because of receiver type mismatch: <ul>{0}</ul></html>
html.cannot.choose.among.the.following.candidates.without.completing.type.inference.ul.0.ul.html=<html>Cannot choose among the following candidates without completing type inference: <ul>{0}</ul></html>
html.none.of.the.following.functions.can.be.called.with.the.arguments.supplied.ul.0.ul.html=<html>None of the following functions can be called with the arguments supplied. <ul>{0}</ul></html>
html.overload.resolution.ambiguity.all.these.functions.match.ul.0.ul.html=<html>Overload resolution ambiguity. All these functions match. <ul>{0}</ul></html>
html.function.return.type.mismatch.table.tr.td.expected.td.td.1.td.tr.tr.td.found.td.td.2.td.tr.table.html=<html>Function return type mismatch.<table><tr><td>Expected:</td><td>{1}</td></tr><tr><td>Found:</td><td>{2}</td></tr></table></html>
html.0.must.override.1.br.because.it.inherits.many.implementations.of.it.html=<html>{0} must override {1}<br />because it inherits many implementations of it</html>
html.types.of.inherited.var.properties.do.not.match.br.0.br.1.html=<html>Types of inherited var-properties do not match:<br/>{0},<br/>{1}</html>
html.types.of.inherited.properties.are.incompatible.br.0.br.1.html=<html>Types of inherited properties are incompatible:<br/>{0},<br/>{1}</html>
html.actual.class.0.has.no.corresponding.members.for.expected.class.members.1.html=<html>Actual class ''{0}'' has no corresponding members for expected class members:{1}</html>
html.val.property.cannot.override.var.property.br.1.html=<html>Val-property cannot override var-property<br />{1}</html>
html.val.property.cannot.override.var.property.br.1.html2=<html>Val-property cannot override var-property<br />{1}</html>
html.var.property.type.is.0.which.is.not.a.type.of.overridden.br.1.html=<html>Var-property type is {0}, which is not a type of overridden<br/>{1}</html>
required.space=required:\u0020
type.inference.failed.expected.type.mismatch=Type inference failed. Expected type mismatch:\u0020
html.setter.parameter.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Setter parameter type must be equal to the type of the property.<table><tr><td>Expected:</td><td>{0}</td></tr><tr><td>Found:</td><td>{1}</td></tr></table></html>
html.property.type.is.0.which.is.not.a.subtype.type.of.overridden.br.1.html=<html>Property type is {0}, which is not a subtype type of overridden<br/>{1}</html>
html.return.types.of.inherited.members.are.incompatible.br.0.br.1.html=<html>Return types of inherited members are incompatible:<br/>{0},<br/>{1}</html>
html.return.type.is.0.which.is.not.a.subtype.of.overridden.br.1.html=<html>Return type is ''{0}'', which is not a subtype of overridden<br/>{1}</html>
html.loop.parameter.type.mismatch.table.tr.td.iterated.values.td.td.0.td.tr.tr.td.parameter.td.td.1.td.tr.table.html=<html>Loop parameter type mismatch.<table><tr><td>Iterated values:</td><td>{0}</td></tr><tr><td>Parameter:</td><td>{1}</td></tr></table></html>
html.type.argument.is.not.within.its.bounds.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Type argument is not within its bounds.<table><tr><td>Expected:</td><td>{0}</td></tr><tr><td>Found:</td><td>{1}</td></tr></table></html>
html.method.iterator.is.ambiguous.for.this.expression.ul.0.ul.html=<html>Method ''iterator()'' is ambiguous for this expression.<ul>{0}</ul></html>
html.getter.return.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Getter return type must be equal to the type of the property.<table><tr><td>Expected:</td><td>{0}</td></tr><tr><td>Found:</td><td>{1}</td></tr></table></html>
html.type.inference.failed.0.html=<html>Type inference failed: {0}</html>
html.assignment.operators.ambiguity.all.these.functions.match.ul.0.ul.table.html=<html>Assignment operators ambiguity. All these functions match.<ul>{0}</ul></table></html>
html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.br.projected.type.2.restricts.use.of.br.3.html=<html>Type mismatch.<table><tr><td>Required:</td><td>{0}</td></tr><tr><td>Found:</td><td>{1}</td></tr></table><br />\nProjected type {2} restricts use of <br />\n{3}\n</html>
html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html=<html>Type mismatch.<table><tr><td>Required:</td><td>{0}</td></tr><tr><td>Found:</td><td>{1}</td></tr></table></html>
intention.suppress.family=Suppress Warnings
intention.suppress.text=Suppress ''{0}'' for {1} {2}
@@ -1,6 +1,17 @@
/*
* Copyright 2010-2020 JetBrains s.r.o. and Kotlin Programming Language contributors.
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
* Copyright 2010-2017 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.kotlin.idea.highlighter;
@@ -48,16 +59,19 @@ public class IdeErrorMessages {
}
static {
MAP.put(TYPE_MISMATCH, KotlinIdeaAnalysisBundle
.message("html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE,
HTML_RENDER_TYPE);
MAP.put(TYPE_MISMATCH,
KotlinIdeaAnalysisBundle
.message("html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS, KotlinIdeaAnalysisBundle
.message("html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE,
HTML_RENDER_TYPE);
MAP.put(NULLABILITY_MISMATCH_BASED_ON_JAVA_ANNOTATIONS,
KotlinIdeaAnalysisBundle
.message("html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(TYPE_MISMATCH_DUE_TO_TYPE_PROJECTIONS, KotlinIdeaAnalysisBundle.message(
"html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.br.projected.type.2.restricts.use.of.br.3.html"),
MAP.put(TYPE_MISMATCH_DUE_TO_TYPE_PROJECTIONS,
KotlinIdeaAnalysisBundle.message(
"html.type.mismatch.table.tr.td.required.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.br.projected.type.2.restricts.use.of.br.3.html"),
object -> {
RenderingContext context = RenderingContext
.of(object.getExpectedType(), object.getExpressionType(), object.getReceiverType(),
@@ -80,97 +94,94 @@ public class IdeErrorMessages {
HTML_TYPE_INFERENCE_NO_INFORMATION_FOR_PARAMETER_RENDERER);
MAP.put(TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR, KotlinIdeaAnalysisBundle.message("html.type.inference.failed.0.html"),
HTML_TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR_RENDERER);
MAP.put(TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH,
tableForTypes(KotlinIdeaAnalysisBundle.message("type.inference.failed.expected.type.mismatch"),
KotlinIdeaAnalysisBundle.message("required"), TextElementType.STRONG,
KotlinIdeaAnalysisBundle.message("found"), TextElementType.ERROR), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(TYPE_INFERENCE_EXPECTED_TYPE_MISMATCH, tableForTypes(
KotlinIdeaAnalysisBundle.message("type.inference.failed.expected.type.mismatch"),
KotlinIdeaAnalysisBundle.message("required.space"), TextElementType.STRONG,
KotlinIdeaAnalysisBundle.message("found.space"), TextElementType.ERROR), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(TYPE_INFERENCE_UPPER_BOUND_VIOLATED, "<html>{0}</html>", HTML_TYPE_INFERENCE_UPPER_BOUND_VIOLATED_RENDERER);
MAP.put(WRONG_SETTER_PARAMETER_TYPE, KotlinIdeaAnalysisBundle.message(
"html.setter.parameter.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
"html.setter.parameter.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(WRONG_GETTER_RETURN_TYPE, KotlinIdeaAnalysisBundle.message(
"html.getter.return.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
"html.getter.return.type.must.be.equal.to.the.type.of.the.property.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(ITERATOR_AMBIGUITY, KotlinIdeaAnalysisBundle.message("html.method.iterator.is.ambiguous.for.this.expression.ul.0.ul.html"),
HTML_AMBIGUOUS_CALLS);
MAP.put(UPPER_BOUND_VIOLATED, KotlinIdeaAnalysisBundle.message(
"html.type.argument.is.not.within.its.bounds.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
"html.type.argument.is.not.within.its.bounds.table.tr.td.expected.td.td.0.td.tr.tr.td.found.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(TYPE_MISMATCH_IN_FOR_LOOP, KotlinIdeaAnalysisBundle.message(
"html.loop.parameter.type.mismatch.table.tr.td.iterated.values.td.td.0.td.tr.tr.td.parameter.td.td.1.td.tr.table.html"),
HTML_RENDER_TYPE, HTML_RENDER_TYPE);
"html.loop.parameter.type.mismatch.table.tr.td.iterated.values.td.td.0.td.tr.tr.td.parameter.td.td.1.td.tr.table.html"), HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(RETURN_TYPE_MISMATCH_ON_OVERRIDE,
KotlinIdeaAnalysisBundle.message("html.return.type.is.0.which.is.not.a.subtype.of.overridden.br.1.html"),
HTML_RENDER_RETURN_TYPE, HTML_WITH_ANNOTATIONS_WHITELIST);
KotlinIdeaAnalysisBundle.message("html.return.type.is.0.which.is.not.a.subtype.of.overridden.br.1.html"), HTML_RENDER_RETURN_TYPE, HTML_WITH_ANNOTATIONS_WHITELIST);
MAP.put(RETURN_TYPE_MISMATCH_ON_INHERITANCE,
KotlinIdeaAnalysisBundle.message("html.return.types.of.inherited.members.are.incompatible.br.0.br.1.html"), HTML, HTML);
KotlinIdeaAnalysisBundle.message("html.return.types.of.inherited.members.are.incompatible.br.0.br.1.html"),
HTML, HTML);
MAP.put(PROPERTY_TYPE_MISMATCH_ON_OVERRIDE,
KotlinIdeaAnalysisBundle.message("html.property.type.is.0.which.is.not.a.subtype.type.of.overridden.br.1.html"),
HTML_RENDER_RETURN_TYPE, HTML);
KotlinIdeaAnalysisBundle.message("html.property.type.is.0.which.is.not.a.subtype.type.of.overridden.br.1.html"), HTML_RENDER_RETURN_TYPE, HTML);
MAP.put(VAR_TYPE_MISMATCH_ON_OVERRIDE,
KotlinIdeaAnalysisBundle.message("html.var.property.type.is.0.which.is.not.a.type.of.overridden.br.1.html"),
HTML_RENDER_RETURN_TYPE, HTML);
KotlinIdeaAnalysisBundle.message("html.var.property.type.is.0.which.is.not.a.type.of.overridden.br.1.html"), HTML_RENDER_RETURN_TYPE, HTML);
MAP.put(PROPERTY_TYPE_MISMATCH_ON_INHERITANCE,
KotlinIdeaAnalysisBundle.message("html.types.of.inherited.properties.are.incompatible.br.0.br.1.html"), HTML, HTML);
KotlinIdeaAnalysisBundle.message("html.types.of.inherited.properties.are.incompatible.br.0.br.1.html"),
HTML, HTML);
MAP.put(VAR_TYPE_MISMATCH_ON_INHERITANCE,
KotlinIdeaAnalysisBundle.message("html.types.of.inherited.var.properties.do.not.match.br.0.br.1.html"), HTML, HTML);
KotlinIdeaAnalysisBundle.message("html.types.of.inherited.var.properties.do.not.match.br.0.br.1.html"),
HTML, HTML);
MAP.put(VAR_OVERRIDDEN_BY_VAL, KotlinIdeaAnalysisBundle.message("html.val.property.cannot.override.var.property.br.1.html2"), HTML,
HTML);
MAP.put(VAR_OVERRIDDEN_BY_VAL, KotlinIdeaAnalysisBundle.message("html.val.property.cannot.override.var.property.br.1.html2"), HTML, HTML);
MAP.put(VAR_OVERRIDDEN_BY_VAL_BY_DELEGATION,
KotlinIdeaAnalysisBundle.message("html.val.property.cannot.override.var.property.br.1.html"), HTML, HTML);
MAP.put(ABSTRACT_MEMBER_NOT_IMPLEMENTED,
KotlinIdeaAnalysisBundle.message("html.0.is.not.abstract.and.does.not.implement.abstract.member.br.1.html"),
RENDER_CLASS_OR_OBJECT, HTML);
KotlinIdeaAnalysisBundle.message("html.0.is.not.abstract.and.does.not.implement.abstract.member.br.1.html"), RENDER_CLASS_OR_OBJECT, HTML);
MAP.put(ABSTRACT_CLASS_MEMBER_NOT_IMPLEMENTED,
KotlinIdeaAnalysisBundle.message("html.0.is.not.abstract.and.does.not.implement.abstract.base.class.member.br.1.html"),
RENDER_CLASS_OR_OBJECT, HTML);
KotlinIdeaAnalysisBundle.message("html.0.is.not.abstract.and.does.not.implement.abstract.base.class.member.br.1.html"), RENDER_CLASS_OR_OBJECT, HTML);
MAP.put(MANY_IMPL_MEMBER_NOT_IMPLEMENTED,
KotlinIdeaAnalysisBundle.message("html.0.must.override.1.br.because.it.inherits.many.implementations.of.it.html"),
RENDER_CLASS_OR_OBJECT, HTML);
MAP.put(RESULT_TYPE_MISMATCH, KotlinIdeaAnalysisBundle
.message("html.function.return.type.mismatch.table.tr.td.expected.td.td.1.td.tr.tr.td.found.td.td.2.td.tr.table.html"),
STRING, HTML_RENDER_TYPE, HTML_RENDER_TYPE);
.message("html.function.return.type.mismatch.table.tr.td.expected.td.td.1.td.tr.tr.td.found.td.td.2.td.tr.table.html"), STRING, HTML_RENDER_TYPE, HTML_RENDER_TYPE);
MAP.put(OVERLOAD_RESOLUTION_AMBIGUITY,
KotlinIdeaAnalysisBundle.message("html.overload.resolution.ambiguity.all.these.functions.match.ul.0.ul.html"),
HTML_AMBIGUOUS_CALLS);
MAP.put(NONE_APPLICABLE, KotlinIdeaAnalysisBundle
.message("html.none.of.the.following.functions.can.be.called.with.the.arguments.supplied.ul.0.ul.html"),
HTML_NONE_APPLICABLE_CALLS);
MAP.put(CANNOT_COMPLETE_RESOLVE, KotlinIdeaAnalysisBundle
MAP.put(CANNOT_COMPLETE_RESOLVE,
KotlinIdeaAnalysisBundle
.message("html.cannot.choose.among.the.following.candidates.without.completing.type.inference.ul.0.ul.html"),
HTML_AMBIGUOUS_CALLS);
MAP.put(UNRESOLVED_REFERENCE_WRONG_RECEIVER, KotlinIdeaAnalysisBundle.message(
"html.unresolved.reference.br.none.of.the.following.candidates.is.applicable.because.of.receiver.type.mismatch.ul.0.ul.html"),
MAP.put(UNRESOLVED_REFERENCE_WRONG_RECEIVER,
KotlinIdeaAnalysisBundle.message(
"html.unresolved.reference.br.none.of.the.following.candidates.is.applicable.because.of.receiver.type.mismatch.ul.0.ul.html"),
HTML_AMBIGUOUS_CALLS);
MAP.put(DELEGATE_SPECIAL_FUNCTION_AMBIGUITY,
KotlinIdeaAnalysisBundle.message("html.overload.resolution.ambiguity.on.method.0.all.these.functions.match.ul.1.ul.html"),
STRING, HTML_AMBIGUOUS_CALLS);
MAP.put(DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE, KotlinIdeaAnalysisBundle
.message("html.property.delegate.must.have.a.0.method.none.of.the.following.functions.is.suitable.ul.1.ul.html"), STRING,
HTML_NONE_APPLICABLE_CALLS);
MAP.put(DELEGATE_PD_METHOD_NONE_APPLICABLE, KotlinIdeaAnalysisBundle
.message("html.0.method.may.be.missing.none.of.the.following.functions.will.be.called.ul.1.ul.html"), STRING,
HTML_NONE_APPLICABLE_CALLS);
MAP.put(CONFLICTING_JVM_DECLARATIONS, KotlinIdeaAnalysisBundle.message("html.platform.declaration.clash.0.html"),
HTML_CONFLICTING_JVM_DECLARATIONS_DATA);
MAP.put(ACCIDENTAL_OVERRIDE, KotlinIdeaAnalysisBundle.message("html.accidental.override.0.html"),
HTML_CONFLICTING_JVM_DECLARATIONS_DATA);
MAP.put(DELEGATE_SPECIAL_FUNCTION_AMBIGUITY,
KotlinIdeaAnalysisBundle.message("html.overload.resolution.ambiguity.on.method.0.all.these.functions.match.ul.1.ul.html"), STRING,
HTML_AMBIGUOUS_CALLS);
MAP.put(DELEGATE_SPECIAL_FUNCTION_NONE_APPLICABLE,
KotlinIdeaAnalysisBundle
.message("html.property.delegate.must.have.a.0.method.none.of.the.following.functions.is.suitable.ul.1.ul.html"),
STRING, HTML_NONE_APPLICABLE_CALLS);
MAP.put(DELEGATE_PD_METHOD_NONE_APPLICABLE,
KotlinIdeaAnalysisBundle
.message("html.0.method.may.be.missing.none.of.the.following.functions.will.be.called.ul.1.ul.html"),
STRING, HTML_NONE_APPLICABLE_CALLS);
MAP.put(CONFLICTING_JVM_DECLARATIONS, KotlinIdeaAnalysisBundle.message("html.platform.declaration.clash.0.html"), HTML_CONFLICTING_JVM_DECLARATIONS_DATA);
MAP.put(ACCIDENTAL_OVERRIDE, KotlinIdeaAnalysisBundle.message("html.accidental.override.0.html"), HTML_CONFLICTING_JVM_DECLARATIONS_DATA);
URL errorIconUrl = AllIcons.class.getResource(ErrorIconUtil.getErrorIconUrl());
MAP.put(EXCEPTION_FROM_ANALYZER, KotlinIdeaAnalysisBundle.message(
"html.internal.error.occurred.while.analyzing.this.expression.br.table.cellspacing.0.cellpadding.0.tr.td.strong.please.use.the.strong.td.td.img.src.0.td.td.strong.icon.in.the.bottom.right.corner.to.report.this.error.strong.td.tr.table.br.pre.0.pre.html",
errorIconUrl), HTML_THROWABLE);
errorIconUrl),
HTML_THROWABLE);
MAP.put(ErrorsJs.JSCODE_ERROR, KotlinIdeaAnalysisBundle.message("html.javascript.0.html"), JsCallDataHtmlRenderer.INSTANCE);
MAP.put(ErrorsJs.JSCODE_WARNING, KotlinIdeaAnalysisBundle.message("html.javascript.0.html"), JsCallDataHtmlRenderer.INSTANCE);
@@ -181,18 +192,19 @@ public class IdeErrorMessages {
MAP.put(EXPERIMENTAL_FEATURE_ERROR, "<html>{0}</html>",
new LanguageFeatureMessageRenderer(LanguageFeatureMessageRenderer.Type.ERROR, true));
MAP.put(NO_ACTUAL_FOR_EXPECT, KotlinIdeaAnalysisBundle.message("html.expected.0.has.no.actual.declaration.in.module.1.2.html"),
DECLARATION_NAME_WITH_KIND, MODULE_WITH_PLATFORM,
new PlatformIncompatibilityDiagnosticRenderer(IdeMultiplatformDiagnosticRenderingMode.INSTANCE));
MAP.put(NO_ACTUAL_FOR_EXPECT, KotlinIdeaAnalysisBundle.message("html.expected.0.has.no.actual.declaration.in.module.1.2.html"), DECLARATION_NAME_WITH_KIND,
MODULE_WITH_PLATFORM, new PlatformIncompatibilityDiagnosticRenderer(IdeMultiplatformDiagnosticRenderingMode.INSTANCE));
MAP.put(ACTUAL_WITHOUT_EXPECT, KotlinIdeaAnalysisBundle.message("html.0.has.no.corresponding.expected.declaration.1.html"),
CAPITALIZED_DECLARATION_NAME_WITH_KIND_AND_PLATFORM,
new PlatformIncompatibilityDiagnosticRenderer(IdeMultiplatformDiagnosticRenderingMode.INSTANCE));
MAP.put(NO_ACTUAL_CLASS_MEMBER_FOR_EXPECTED_CLASS,
KotlinIdeaAnalysisBundle.message("html.actual.class.0.has.no.corresponding.members.for.expected.class.members.1.html"),
NAME, new IncompatibleExpectedActualClassScopesRenderer(IdeMultiplatformDiagnosticRenderingMode.INSTANCE));
String MESSAGE_FOR_CONCURRENT_HASH_MAP_CONTAINS = KotlinIdeaAnalysisBundle.message(
"html.method.contains.from.concurrenthashmap.may.have.unexpected.semantics.it.calls.containsvalue.instead.of.containskey.br.use.explicit.form.of.the.call.to.containskey.containsvalue.contains.or.cast.the.value.to.kotlin.collections.map.instead.br.see.https.youtrack.jetbrains.com.issue.kt.18053.for.more.details.html");
String MESSAGE_FOR_CONCURRENT_HASH_MAP_CONTAINS =
KotlinIdeaAnalysisBundle.message(
"html.method.contains.from.concurrenthashmap.may.have.unexpected.semantics.it.calls.containsvalue.instead.of.containskey.br.use.explicit.form.of.the.call.to.containskey.containsvalue.contains.or.cast.the.value.to.kotlin.collections.map.instead.br.see.https.youtrack.jetbrains.com.issue.kt.18053.for.more.details.html");
MAP.put(CONCURRENT_HASH_MAP_CONTAINS_OPERATOR, MESSAGE_FOR_CONCURRENT_HASH_MAP_CONTAINS);
MAP.put(CONCURRENT_HASH_MAP_CONTAINS_OPERATOR_ERROR, MESSAGE_FOR_CONCURRENT_HASH_MAP_CONTAINS);
@@ -1621,8 +1621,8 @@ make.primary.constructor.0=Make primary constructor {0}
change.visibility.modifier=Change visibility modifier
0.may.break.code={0} (may break code)
convert.to.vararg.parameter=Convert to vararg parameter
replace.with=Replace '||' with '&&'
replace.with2=Replace '&&' with '||'
replace.with=Replace '||' with '\\&\\&'
replace.with2=Replace '\\&\\&' with '||'
can.t.modify.0=Can''t modify {0}
0.already.exists={0} already exists
type.arguments.will.be.lost.after.conversion.0=Type arguments will be lost after conversion: {0}