This commit is contained in:
Valentin Kipyatkov
2015-10-16 22:57:52 +03:00
parent f89d41dcda
commit 627b31f2f7
@@ -47,21 +47,21 @@ public class OperatorModifierInspection : AbstractKotlinInspection() {
val functionDescriptor = function.resolveToDescriptor() as? FunctionDescriptor ?: return val functionDescriptor = function.resolveToDescriptor() as? FunctionDescriptor ?: return
if (!functionDescriptor.isOperator && OperatorChecks.canBeOperator(functionDescriptor)) { if (!functionDescriptor.isOperator && OperatorChecks.canBeOperator(functionDescriptor)) {
holder.registerProblem(nameIdentifier, "Function defines an operator but isn't annotated as such", holder.registerProblem(nameIdentifier, "Function defines an operator but isn't annotated as such",
AddModifierLocalQuickFix()) AddOperatorModifierFix())
} }
} }
} }
} }
}
private class AddModifierLocalQuickFix() : LocalQuickFix { private class AddOperatorModifierFix() : LocalQuickFix {
override fun getName(): String = "Add 'operator' modifier" override fun getName(): String = "Add 'operator' modifier"
override fun getFamilyName(): String = getName() override fun getFamilyName(): String = getName()
override fun applyFix(project: Project, descriptor: ProblemDescriptor) { override fun applyFix(project: Project, descriptor: ProblemDescriptor) {
val modifierListOwner = descriptor.psiElement.getNonStrictParentOfType<JetModifierListOwner>() val function = descriptor.psiElement.getNonStrictParentOfType<JetNamedFunction>()
modifierListOwner?.addModifier(JetTokens.OPERATOR_KEYWORD) function?.addModifier(JetTokens.OPERATOR_KEYWORD)
}
} }
} }