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> ABSTRACT_FUNCTION_WITH_BODY = DiagnosticFactory1.create(ERROR, ABSTRACT_MODIFIER);
|
||||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> NON_ABSTRACT_FUNCTION_WITH_NO_BODY =
|
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> NON_ABSTRACT_FUNCTION_WITH_NO_BODY =
|
||||||
DiagnosticFactory1.create(ERROR, DECLARATION_SIGNATURE);
|
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> PRIVATE_FUNCTION_WITH_NO_BODY = DiagnosticFactory1.create(ERROR, PRIVATE_MODIFIER);
|
||||||
|
|
||||||
DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor> NON_MEMBER_FUNCTION_NO_BODY =
|
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_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(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(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(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);
|
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));
|
trace.report(ABSTRACT_FUNCTION_WITH_BODY.on(function, functionDescriptor));
|
||||||
}
|
}
|
||||||
if (!hasBody && inTrait) {
|
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)) {
|
if (function.hasModifier(KtTokens.PRIVATE_KEYWORD)) {
|
||||||
trace.report(PRIVATE_FUNCTION_WITH_NO_BODY.on(function, functionDescriptor));
|
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
|
import org.jetbrains.kotlin.diagnostics.DiagnosticFactory0
|
||||||
|
|
||||||
public val FUNCTION_NO_BODY_ERRORS: List<DiagnosticFactory1<KtFunction, SimpleFunctionDescriptor>> =
|
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>> =
|
public val PROPERTY_NOT_INITIALIZED_ERRORS: List<DiagnosticFactory0<KtProperty>> =
|
||||||
listOf(Errors.MUST_BE_INITIALIZED, Errors.MUST_BE_INITIALIZED_OR_BE_ABSTRACT)
|
listOf(Errors.MUST_BE_INITIALIZED, Errors.MUST_BE_INITIALIZED_OR_BE_ABSTRACT)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
package a
|
package a
|
||||||
|
|
||||||
interface T {
|
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<!> val b : Int
|
||||||
|
|
||||||
<!WRONG_MODIFIER_CONTAINING_DECLARATION!>final<!> fun bar() {}
|
<!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_OR_BE_ABSTRACT.registerFactory(InitializePropertyQuickFixFactory)
|
||||||
MUST_BE_INITIALIZED.registerFactory(InitializePropertyQuickFixFactory)
|
MUST_BE_INITIALIZED.registerFactory(InitializePropertyQuickFixFactory)
|
||||||
|
|
||||||
val removeFinalModifierFactory = RemoveModifierFix.createRemoveModifierFromListOwnerFactory(FINAL_KEYWORD)
|
|
||||||
val addAbstractToClassFactory = AddModifierFix.createFactory(ABSTRACT_KEYWORD, javaClass<KtClass>())
|
val addAbstractToClassFactory = AddModifierFix.createFactory(ABSTRACT_KEYWORD, javaClass<KtClass>())
|
||||||
ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS.registerFactory(removeAbstractModifierFactory, addAbstractToClassFactory)
|
ABSTRACT_PROPERTY_IN_NON_ABSTRACT_CLASS.registerFactory(removeAbstractModifierFactory, addAbstractToClassFactory)
|
||||||
|
|
||||||
@@ -79,8 +78,6 @@ public class QuickFixRegistrar : QuickFixContributor {
|
|||||||
val removeFunctionBodyFactory = RemoveFunctionBodyFix.createFactory()
|
val removeFunctionBodyFactory = RemoveFunctionBodyFix.createFactory()
|
||||||
ABSTRACT_FUNCTION_WITH_BODY.registerFactory(removeAbstractModifierFactory, removeFunctionBodyFactory)
|
ABSTRACT_FUNCTION_WITH_BODY.registerFactory(removeAbstractModifierFactory, removeFunctionBodyFactory)
|
||||||
|
|
||||||
FINAL_FUNCTION_WITH_NO_BODY.registerFactory(removeFinalModifierFactory)
|
|
||||||
|
|
||||||
val addFunctionBodyFactory = AddFunctionBodyFix.createFactory()
|
val addFunctionBodyFactory = AddFunctionBodyFix.createFactory()
|
||||||
NON_ABSTRACT_FUNCTION_WITH_NO_BODY.registerFactory(addAbstractModifierFactory, addFunctionBodyFactory)
|
NON_ABSTRACT_FUNCTION_WITH_NO_BODY.registerFactory(addAbstractModifierFactory, addFunctionBodyFactory)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user