Diagnostic 'final function with no body' deleted because it's redundant
This commit is contained in:
@@ -381,7 +381,6 @@ public interface Errors {
|
||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> ABSTRACT_FUNCTION_WITH_BODY = DiagnosticFactory1.create(ERROR, ABSTRACT_MODIFIER);
|
||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> NON_ABSTRACT_FUNCTION_WITH_NO_BODY =
|
||||
DiagnosticFactory1.create(ERROR, DECLARATION_SIGNATURE);
|
||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> FINAL_FUNCTION_WITH_NO_BODY = DiagnosticFactory1.create(ERROR, FINAL_MODIFIER);
|
||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> PRIVATE_FUNCTION_WITH_NO_BODY = DiagnosticFactory1.create(ERROR, PRIVATE_MODIFIER);
|
||||
|
||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> NON_MEMBER_FUNCTION_NO_BODY =
|
||||
|
||||
-1
@@ -221,7 +221,6 @@ public class DefaultErrorMessages {
|
||||
MAP.put(ABSTRACT_FUNCTION_IN_NON_ABSTRACT_CLASS, "Abstract function ''{0}'' in non-abstract class ''{1}''", STRING, NAME);
|
||||
MAP.put(ABSTRACT_FUNCTION_WITH_BODY, "A function ''{0}'' with body cannot be abstract", NAME);
|
||||
MAP.put(NON_ABSTRACT_FUNCTION_WITH_NO_BODY, "Function ''{0}'' without a body must be abstract", NAME);
|
||||
MAP.put(FINAL_FUNCTION_WITH_NO_BODY, "Function ''{0}'' without body cannot be final", NAME);
|
||||
MAP.put(PRIVATE_FUNCTION_WITH_NO_BODY, "Function ''{0}'' without body cannot be private", NAME);
|
||||
|
||||
MAP.put(NON_MEMBER_FUNCTION_NO_BODY, "Function ''{0}'' must have a body", NAME);
|
||||
|
||||
@@ -751,9 +751,6 @@ public class DeclarationsChecker {
|
||||
trace.report(ABSTRACT_FUNCTION_WITH_BODY.on(function, functionDescriptor));
|
||||
}
|
||||
if (!hasBody && inTrait) {
|
||||
if (function.hasModifier(KtTokens.FINAL_KEYWORD) && !hasExternalModifier) {
|
||||
trace.report(FINAL_FUNCTION_WITH_NO_BODY.on(function, functionDescriptor));
|
||||
}
|
||||
if (function.hasModifier(KtTokens.PRIVATE_KEYWORD)) {
|
||||
trace.report(PRIVATE_FUNCTION_WITH_NO_BODY.on(function, functionDescriptor));
|
||||
}
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.psi.KtProperty
|
||||
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory0
|
||||
|
||||
public val FUNCTION_NO_BODY_ERRORS: List<DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor>> =
|
||||
listOf(Errors.NON_ABSTRACT_FUNCTION_WITH_NO_BODY, Errors.NON_MEMBER_FUNCTION_NO_BODY, Errors.FINAL_FUNCTION_WITH_NO_BODY)
|
||||
listOf(Errors.NON_ABSTRACT_FUNCTION_WITH_NO_BODY, Errors.NON_MEMBER_FUNCTION_NO_BODY)
|
||||
|
||||
public val PROPERTY_NOT_INITIALIZED_ERRORS: List<DiagnosticFactory0<KtProperty>> =
|
||||
listOf(Errors.MUST_BE_INITIALIZED, Errors.MUST_BE_INITIALIZED_OR_BE_ABSTRACT)
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
package a
|
||||
|
||||
interface T {
|
||||
<!FINAL_FUNCTION_WITH_NO_BODY, WRONG_MODIFIER_CONTAINING_DECLARATION!>final<!> fun foo()
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>final<!> fun foo()
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>final<!> val b : Int
|
||||
|
||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>final<!> fun bar() {}
|
||||
|
||||
@@ -70,7 +70,6 @@ public class QuickFixRegistrar : QuickFixContributor {
|
||||
MUST_BE_INITIALIZED_OR_BE_ABSTRACT.registerFactory(InitializePropertyQuickFixFactory)
|
||||
MUST_BE_INITIALIZED.registerFactory(InitializePropertyQuickFixFactory)
|
||||
|
||||
val removeFinalModifierFactory = RemoveModifierFix.createRemoveModifierFromListOwnerFactory(FINAL_KEYWORD)
|
||||
val addAbstractToClassFactory = AddModifierFix.createFactory(ABSTRACT_KEYWORD, javaClass<KtClass>())
|
||||
ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS.registerFactory(removeAbstractModifierFactory, addAbstractToClassFactory)
|
||||
|
||||
@@ -79,8 +78,6 @@ public class QuickFixRegistrar : QuickFixContributor {
|
||||
val removeFunctionBodyFactory = RemoveFunctionBodyFix.createFactory()
|
||||
ABSTRACT_FUNCTION_WITH_BODY.registerFactory(removeAbstractModifierFactory, removeFunctionBodyFactory)
|
||||
|
||||
FINAL_FUNCTION_WITH_NO_BODY.registerFactory(removeFinalModifierFactory)
|
||||
|
||||
val addFunctionBodyFactory = AddFunctionBodyFix.createFactory()
|
||||
NON_ABSTRACT_FUNCTION_WITH_NO_BODY.registerFactory(addAbstractModifierFactory, addFunctionBodyFactory)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user