Underscore names are now forbidden

This commit is contained in:
Mikhail Glukhikh
2015-10-19 11:55:59 +03:00
parent f61aa18a05
commit 8d88109c00
8 changed files with 18 additions and 18 deletions
@@ -558,7 +558,7 @@ public interface Errors {
DiagnosticFactory1<JetSimpleNameExpression, JetType> COMPARE_TO_TYPE_MISMATCH = DiagnosticFactory1.create(ERROR);
DiagnosticFactory0<PsiElement> UNDERSCORE_IS_DEPRECATED = DiagnosticFactory0.create(WARNING);
DiagnosticFactory0<PsiElement> UNDERSCORE_IS_RESERVED = DiagnosticFactory0.create(ERROR);
DiagnosticFactory1<PsiElement, String> INVALID_CHARACTERS = DiagnosticFactory1.create(ERROR);
DiagnosticFactory0<PsiElement> INAPPLICABLE_OPERATOR_MODIFIER = DiagnosticFactory0.create(WARNING);
@@ -365,7 +365,7 @@ public class DefaultErrorMessages {
MAP.put(COMPARE_TO_TYPE_MISMATCH, "''compareTo()'' must return kotlin.Int, but returns {0}", RENDER_TYPE);
MAP.put(UNDERSCORE_IS_DEPRECATED, "Names _, __, ___, ..., are deprecated");
MAP.put(UNDERSCORE_IS_RESERVED, "Names _, __, ___, ..., are reserved in Kotlin");
MAP.put(INVALID_CHARACTERS, "Name {0}", STRING);
MAP.put(INAPPLICABLE_OPERATOR_MODIFIER, "'operator' modifier is inapplicable on this function");
@@ -30,7 +30,7 @@ object UnderscoreChecker : DeclarationChecker {
fun checkIdentifier(identifier: PsiElement?, diagnosticHolder: DiagnosticSink) {
if (identifier == null || identifier.text.isEmpty()) return
if (identifier.text.all { it == '_' }) {
diagnosticHolder.report(Errors.UNDERSCORE_IS_DEPRECATED.on(identifier))
diagnosticHolder.report(Errors.UNDERSCORE_IS_RESERVED.on(identifier))
}
}
@@ -102,7 +102,7 @@ class LazyImportResolver(
}
for ((alias, import) in explicitClassImports.entries()) {
if (alias.all { it == '_' }) {
traceForImportResolve.report(Errors.UNDERSCORE_IS_DEPRECATED.on(import))
traceForImportResolve.report(Errors.UNDERSCORE_IS_RESERVED.on(import))
}
}
for (alias in explicitClassImports.keySet()) {